@charset "utf-8";

#mainVisual{position:relative;width:100%;height:100vh}
#mainVisual .img_wrap{overflow:hidden;opacity:.75;position:absolute;bottom:50px;width:calc(100% - 180px);left:50%;transform:translateX(-50%);height:50%;border-radius:130px 0;transition:all 1s}
#mainVisual .img_wrap:after{opacity:0;display:block;content:"";position:absolute;left:0;top:0;z-index:100;width:100%;height:100%;background:linear-gradient(180deg, rgba(0,0,0,0.75) 0%, rgba(255,255,255,0) 50%);transition:all 1s .2s}
#mainVisual .img_wrap .main_slide{height:100%}
#mainVisual .img_wrap ul li{opacity:0!important;position:absolute;left:0;top:0;transform:translate3d(0,0,0)!important;width:100%!important;height:100vh;background:url('./main_img1.jpg') center no-repeat;background-size:cover}
#mainVisual .img_wrap ul li.bg02{background-image:url('./main_img2.jpg')}
#mainVisual .img_wrap ul li.bg03{background-image:url('./main_img.jpg')}
#mainVisual .img_wrap ul li.swiper-slide-active{opacity:1!important}

#mainVisual .main_txt{display:flex;gap:125px;position:absolute;top:50%;left:calc((100% - 1480px) / 2);z-index:101;transform:translateY(-50%);width:100%;max-width:1480px;margin-top:-105px;color:#111}
#mainVisual .main_txt .tit{position:relative;padding-left:50px}
#mainVisual .main_txt .tit:before{position:absolute;width:20px;height:20px;background-color:var(--primary);border-radius:100%;content:"";left:0;top:-30px}
#mainVisual .main_txt .tit p{font-size:72px;line-height:1.2;font-weight:100;word-break:keep-all}
#mainVisual .main_txt .tit p span{font-weight:700}
#mainVisual .main_txt .desc{padding-top:10px;font-size:20px;white-space:pre-line;word-break:keep-all}

#mainVisual.on .img_wrap{opacity:1;bottom:0;width:100%;height:100%;border-radius:0}
#mainVisual.on .img_wrap:after{opacity:1}
#mainVisual .main_txt.off{opacity:0;transition:opacity .4s}
#mainVisual .main_txt.on{flex-flow:column;gap:40px;color:#fff}
#mainVisual .main_txt.on .tit p{overflow:hidden;font-size:68px}
#mainVisual .main_txt.on .tit p span{display:inline-block;transform:translateY(100%)}
#mainVisual .main_txt.on .desc{padding:0 0 0 50px}
#mainVisual .main_txt.active{opacity:1;top:65%;transform:none;transition:opacity 1s}
#mainVisual .main_txt.active .tit p span{transform:translateY(0);transition:all 1s .4s}


/* 반응형 [s] */
@media(max-width:1550px){
#mainVisual .main_txt{padding:0 50px}
}
@media(max-width:1480px){
#mainVisual .main_txt{left:0}    
}
@media (max-width:1024px){
#mainVisual{height:calc(100vh - 65px)}
#mainVisual .img_wrap{border-radius:95px 0}
#mainVisual .main_txt{gap:0px;justify-content:space-evenly;padding:0 30px}
#mainVisual .main_txt .tit:before{top:-20px;width:18px;height:18px}
#mainVisual .main_txt .tit p{font-size:44px}
#mainVisual .main_txt .desc{font-size:16px}
#mainVisual .main_txt.on .desc{padding-left:70px}
#mainVisual .main_txt.on .tit p{font-size:44px}
#mainVisual .main_txt.active{top:auto;bottom:15%}
}
@media (max-width:768px){
#mainVisual .img_wrap{border-radius:80px 0}
#mainVisual .main_txt{flex-direction:column;align-items:center;top:41%;padding:0}
#mainVisual .main_txt .tit{padding-left:0px}
#mainVisual .main_txt .tit:before{top:-15px;left:-25px;width:16px;height:16px}
#mainVisual .main_txt .tit p{text-align:center;font-size:38px}
#mainVisual .main_txt .desc{padding-top:15px;text-align:center;font-size:15px}
#mainVisual .main_txt.on{gap:25px}
#mainVisual .main_txt.on .desc{padding:0px}
#mainVisual .main_txt.active{bottom:50%;transform:translateY(50%)}
}
@media (max-width:480px){
#mainVisual .img_wrap{width:calc(100% - 30px);border-radius:60px 0}
#mainVisual .main_txt{top:43%}
#mainVisual .main_txt .tit:before{top:-10px;left:-20px;width:12px;height:12px}
#mainVisual .main_txt .tit p{font-size:34px}
#mainVisual .main_txt .desc{font-size:14px}
#mainVisual .main_txt.on{gap:20px}
#mainVisual .main_txt.on .tit p{font-size:34px}
}
@media (max-width:380px){
#mainVisual .img_wrap{border-radius:45px 0}
#mainVisual .main_txt .tit:before{top:-10px;left:-15px;width:10px;height:10px}
#mainVisual .main_txt .tit p{font-size:28px}
#mainVisual .main_txt .desc{font-size:13px}
#mainVisual .main_txt.on{gap:18px}
#mainVisual .main_txt.on .tit p{font-size:30px}
}
/* 반응형 [e] */


