@charset "utf-8";

#mainVisual{position:relative;width:100%;height:100vh}
#mainVisual .img_wrap{overflow:hidden;opacity:.75;position:absolute;top:50%;width:calc(100% - 10%);left:50%;transform:translate(-50%, -50%);height:75vh;border-radius:50px;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:rgba(0,0,0,.5);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:100%;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_img3.jpg')}
#mainVisual .img_wrap ul li.swiper-slide-active{opacity:1!important}

#mainVisual .main_txt{opacity:0;display:flex;position:absolute;justify-content:space-between;align-items:flex-end;bottom:100px;left:50%;z-index:101;width:100%;max-width:var(--mainsize);color:#fff;transform:translateX(-50%);transition:all 1s}
#mainVisual .main_txt .tit{position:relative;font-size:50px;font-weight:700;line-height:1.3;white-space:pre-line}
#mainVisual .main_txt .desc{padding-top:40px;font-size:20px;white-space:pre-line}
#mainVisual .main_txt.on{opacity:1;bottom:150px}

#mainVisual.on .img_wrap{opacity:1;bottom:0;width:100%;height:100vh;border-radius:0}
#mainVisual.on .img_wrap:after{opacity:1}

#mainVisual .control{display:flex}
#mainVisual .control *{display:flex;align-items:center}
#mainVisual .control .pager{gap:10px;margin:0 25px;font-size:17px;opacity:.5}
#mainVisual .control svg{width:33px;height:33px}
#mainVisual .control>span{cursor:pointer}

/* 반응형 [s] */
@media (max-width:1380px){
#mainVisual .main_txt{width:90%}
#mainVisual .main_txt .tit{font-size:47px}
#mainVisual .main_txt .desc{font-size:18px}
}
@media (max-width:1024px){
#mainVisual .main_txt.on{bottom:200px}
#mainVisual .main_txt .tit{font-size:38px}
#mainVisual .main_txt .desc{font-size:16px}
#mainVisual .control svg{width:30px;height:30px}
#mainVisual .control .pager{margin:0 20px}
}
@media (max-width:768px){
#mainVisual{height:500px}
#mainVisual .img_wrap{height:60%}
#mainVisual.on .img_wrap{height:100%}
#mainVisual .main_txt{flex-direction:column;align-items:start;gap:40px;bottom:10px}
#mainVisual .main_txt.on{bottom:50px}
#mainVisual .main_txt .tit{font-size:30px}
#mainVisual .main_txt .desc{padding-top:20px;font-size:15px}
#mainVisual .control svg{width:26px;height:26px}
#mainVisual .control .pager{margin:0 15px;font-size:16px}
}
@media (max-width:480px){
#mainVisual{height:400px}
#mainVisual .main_txt{align-items:center;text-align:center;gap:30px;bottom:5%}
#mainVisual .main_txt.on{bottom:45%;transform:translate(-50%, 50%)}
#mainVisual .main_txt .tit{font-size:24px}
#mainVisual .main_txt .desc{padding-top:15px;font-size:14px;word-break:keep-all}
#mainVisual .control svg{width:22px;height:22px}
#mainVisual .control .pager{margin:0 13px;font-size:15px}
}
@media (max-width:380px){
#mainVisual{height:370px}
#mainVisual .main_txt .tit{font-size:21px}
#mainVisual .main_txt .desc{padding-top:12px;font-size:13px}
#mainVisual .control svg{width:20px;height:20px}
#mainVisual .control .pager{margin:0 10px;font-size:14px}
}
/* 반응형 [e] */