#photo {
    width: 48.29vw;
    height: auto;
}

span {
    font-size: 1.4vw;
    padding-bottom: 1.8vw;
}


@media screen and (min-width: 0px) {
    
    .box2 {
        padding-left: 7vw;
        padding-right: 7vw;
    }
    
    #photo {
        width: 86vw;
    }
    
    span {
        font-size: 5.33vw;
        padding-bottom: 6.85vw;
    }
    
}

@media screen and (min-width: 550px) {

    #photo {
        width: 87.6vw;
    }
    span {
        font-size: 2.8vw;
        padding-bottom: 3.6vw;
    }
    
    
}

@media screen and (min-width: 1100px) {
    

    .box2 {
        padding-left: 21vw;
        padding-right: 21vw;
    } 
    /* width(90.29vw) - padding-left - padding-right */
    
    #photo {
        width: 48.29vw;
        height: auto;
    }
    
     span {
        font-size: 1.4vw;
        padding-bottom: 1.8vw;
    }
}