#main_visual { position: relative; height: 100vh; overflow: hidden; background: url(/image/mv_bg1.jpg) no-repeat center/cover; }
#main_visual .swrap { height: 100%; }
#main_visual .contents { position: relative; top: 55%; transform: translateY(-50%); display: flex; flex-wrap: nowrap; }
#main_visual .contents .left { position: relative; min-width: max-content; margin-right: 55px; }
#main_visual .contents .left img { display: inline-block; width: 426px; }
#main_visual .contents .right { position: relative; }
#main_visual .contents .right .txtbox { position: relative; margin-top: 5%; }
#main_visual .contents .right .txtbox .txt1 { font-weight: 300; font-size: 24px; color: #3a3a3a; line-height: 1.32; }
#main_visual .contents .right .txtbox .txt1 span { font-weight: 700; font-size: 28px; color: #166cac; }

@media (max-width: 1660px) {
    #main_visual .contents .left { margin-right: calc(35px + 1vw); }
    #main_visual .contents .left img { width: calc(165px + 15vw); }
}
@media (max-width: 1024px) {
    #main_visual .contents .left { margin-right: calc(20px + 1vw); }
    #main_visual .contents .left img { width: calc(140px + 11vw); }
}
@media (max-width: 767px) {
    #main_visual .contents { display: block; }
    #main_visual .contents .left { min-width: initial; margin-right: 0; text-align: center; }
    #main_visual .contents .left img { width: 100%; max-width: 200px; }
    #main_visual .contents .right { margin-top: 25px; }
    #main_visual .contents .right .txtbox { margin-top: 0; text-align: center; }
}
@media (max-width: 524px) {
    #main_visual .contents .right .txtbox .txt1 br { display: none; }
}