@charset "utf-8";
#mainVisual{overflow:hidden;position:relative;width:100%}
#mainVisual .inner{display:flex;gap:40px;padding-top:46px} 

/* 메인 슬라이드 */
#mainVisual .fl-l{--width:1074px;position:relative;max-width:var(--width);width:100%;height:606px}
#mainVisual .swiper-container {width:100%;height:100%}
#mainVisual .swiper-slide{max-width:var(--width);width:100% !important;height:100%;background-size:cover;background-position: center;opacity:0 !important;border-radius:var(--main-radius);overflow:hidden}
#mainVisual .swiper-slide-active{opacity:1 !important}
#mainVisual .main_img li.img01{background-image:url('./main_banner01.jpg')}
#mainVisual .main_img li.img02{background-image:url('./main_banner02.jpg')}
#mainVisual .main_img li.img03{background-image:url('./main_banner03.jpg')}
#mainVisual .main_img li.img04{background-image:url('./main_banner04.jpg')}

#mainVisual .main-control{z-index:1;position:absolute;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;width:168px;height:45px;border-radius:0 40px 0 var(--main-radius);color:#fff;background-color:rgba(0,0,0,0.7)}
#mainVisual .main-control button{all:unset;display:flex;align-items:center;justify-content:center;cursor:pointer}
#mainVisual .main-control button svg{width:20px;height:20px;stroke:#fff}
#mainVisual .main-control button.arrow.btn--play{display:none}
#mainVisual .main-control button.arrow.btn--play svg{stroke:none;fill:#fff;width:20px;margin-top:2px}
#mainVisual .main-control button.arrow.btn--pause svg{stroke:none;fill:#fff;width:20px;margin-top:2px}
#mainVisual .main-control button.arrow.btn--pause svg rect{width:3px !important}
#mainVisual .main-control .swiper-pagination-fraction{width:auto;font-family:var(--main-font)}

/* 정책 안내 박스 */
#mainVisual .fl-r{display:flex;flex-direction:column;gap:86px;max-width:626px;width:100%}
#mainVisual .fl-r .link-policy{display:flex;flex-direction:column;justify-content:center;height:285px;padding:0 55px;background-color:#ffebd2;border-radius:var(--main-radius);background-image:url(./simbol.png);background-repeat:no-repeat;background-position:top -30px right -58px}
#mainVisual .fl-r .link-policy .text-box h2.tit{padding-bottom:20px;font-size:25px;line-height:1.2;font-family:var(--main-font);font-weight:700;white-space:pre-line;word-break:keep-all}
#mainVisual .fl-r .link-policy .text-box p.desc{padding-bottom:25px;font-family:var(--main-font);font-size:16px;font-weight:500;line-height:1.6;color:#777;white-space:pre-line;word-break:keep-all}
#mainVisual .fl-r .link-policy .btn--link{display:flex;align-items:center;justify-content:center;width:180px;height:47px;border-radius:100px;background-color:#222;font-family:var(--main-font);font-size:18px;font-weight:700;color:#fff;word-break:keep-all;transition:background-color 0.2s}

#mainVisual .fl-r .banner-item.col-2{display:grid;grid-template-columns:repeat(2,1fr);gap:32px}
#mainVisual .fl-r .banner-item.col-2 .list{position:relative;display:flex;align-items:center;justify-content:center;height:233px;padding:45px 25px 25px;background-color:#f5f5f5;border-radius:var(--main-radius)}
#mainVisual .fl-r .banner-item.col-2 .list .tit{position:absolute;top:-27.5px;right:0;padding:15px 20px;background-color:var(--primary);border-radius:100px;white-space:nowrap}
#mainVisual .fl-r .banner-item.col-2 .list .tit h2{position:relative;z-index:1;font-family:var(--main-font);font-size:20px;font-weight:700;color:#fff;text-align:center}
#mainVisual .fl-r .banner-item.col-2 .list .tit .radius{position:absolute;top:24px;right:0;width:42px;height:54px;background-color:var(--primary);pointer-events:none}
#mainVisual .fl-r .banner-item.col-2 .list .tit .radius::before{position:absolute;content:'';width:70px;height:35px;background-color:#f5f5f5;right:0;bottom:-13px;border-top-right-radius:var(--main-radius);pointer-events:none}
#mainVisual .fl-r .banner-item.col-2 .list ul{position:relative;z-index:1;display:flex;flex-direction:column;gap:6px;width:100%}
#mainVisual .fl-r .banner-item.col-2 .list li a{display:flex;align-items:center;justify-content:space-between;padding:13px 17px;background-color:#fff;border-radius:10px;font-family:var(--main-font);font-size:16px;font-weight:500;color:#aaa;word-break:keep-all;transition:color 0.2s, font-weight 0.2s}
#mainVisual .fl-r .banner-item.col-2 .list li svg{flex-shrink:0;transition:stroke 0.2s}

@media (hover:hover){
#mainVisual .fl-r .link-policy:hover .btn--link{background-color:var(--primary)}
#mainVisual .fl-r .banner-item.col-2 .list li a:hover{color:var(--primary);font-weight:600}
#mainVisual .fl-r .banner-item.col-2 .list li a:hover svg{stroke:var(--primary)}
}

/* 반응형 [s] */
@media (max-width:1800px){
    #mainVisual .inner{padding: 40px 20px 0;}
}
@media (max-width:1600px){
    #mainVisual .inner{gap: 24px;padding: 20px 20px 0;}
    #mainVisual .fl-l{height: auto;}
    #mainVisual .fl-r{gap: 50px;}
    #mainVisual .fl-r .banner-item.col-2{gap: 20px;}
    #mainVisual .fl-r .banner-item.col-2 .list .tit h2{font-size: 18px;}
    #mainVisual .fl-r .banner-item.col-2 .list .tit .radius{top: 27px;height: 47px;}
}
@media (max-width:1400px){
    #mainVisual .fl-r{max-width:570px}
    #mainVisual .fl-r .banner-item.col-2 .list{height: auto;padding: 30px 22px 22px;}
    #mainVisual .fl-r .banner-item.col-2 .list .tit{padding: 12px 20px;}
    #mainVisual .fl-r .banner-item.col-2 .list .tit h2{font-size: 17px;}
    #mainVisual .fl-r .banner-item.col-2 .list .tit .radius{height: 40px;}
    #mainVisual .fl-r .banner-item.col-2 .list li a{font-size: 15px;}
    #mainVisual .fl-r .banner-item.col-2 .list li svg{width: 22px;height: 22px;}

    #mainVisual .fl-r .link-policy{height: auto;padding: 40px 35px;background-size: 220px;background-position: top -26px right -60px;}
    #mainVisual .fl-r .link-policy .text-box h2.tit{padding-bottom: 15px;font-size: 24px;}
    #mainVisual .fl-r .link-policy .text-box p.desc{padding-bottom: 16px;font-size: 15px;}
    #mainVisual .fl-r .link-policy .btn--link{width: 170px;height: 45px;font-size: 16px;}
}
@media (max-width:1200px){
#mainVisual .inner{flex-direction: column;gap: 54px;}
#mainVisual .fl-l{max-width:none;height: 606px;}
#mainVisual .swiper-slide{max-width:none;}
#mainVisual .fl-r{flex-direction: row;gap: 20px;max-width:none;}
#mainVisual .fl-r .banner-item:first-child{flex: 1;}
#mainVisual .fl-r .link-policy{padding: 30px 25px;background-size: 208px;background-position: top -18px right -50px;}
#mainVisual .fl-r .link-policy .text-box h2.tit{padding-bottom: 10px;font-size: 22px;}
#mainVisual .fl-r .link-policy .text-box p.desc{line-height: 1.5;}
#mainVisual .fl-r .banner-item.col-2 .list .tit{top:-22px;padding: 12px 16px;}
#mainVisual .fl-r .banner-item.col-2 .list .tit h2{font-size: 16px;}
#mainVisual .fl-r .banner-item.col-2 .list .tit .radius{top: 26px;height: 35px;}
#mainVisual .fl-r .banner-item.col-2 .list .tit .radius::before{height: 30px;}
}
@media (max-width:1024px){
    #mainVisual .inner{gap: 20px;}
    #mainVisual .fl-l{height: 480px;}
    #mainVisual .fl-r{flex-direction: column;gap: 40px;}
    #mainVisual .fl-r .link-policy .text-box h2.tit{font-size: 20px;}
    #mainVisual .fl-r .link-policy .btn--link{width: 165px;height: 43px;font-size: 15px;}
    #mainVisual .fl-r .link-policy{align-items: center;text-align:center}
    #mainVisual .fl-r .banner-item.col-2 .list{padding: 40px 20px 20px;}
    #mainVisual .fl-r .banner-item.col-2 .list .tit{right: 50%;transform: translateX(50%);padding: 12px 20px;}
    #mainVisual .fl-r .banner-item.col-2 .list .tit .radius{top: 30px;right: 50%;transform: translateX(50%) rotate(45deg);width: 18px;height: 18px;border-radius:3px}
    #mainVisual .fl-r .banner-item.col-2 .list .tit .radius::before{display: none;}
    #mainVisual .fl-r .banner-item.col-2 .list li a{border-radius:5px}
}
@media (max-width:768px){
    #mainVisual .fl-l{height: 350px;}
    #mainVisual .main-control{width: 162px;height: 38px;}
    #mainVisual .fl-r .link-policy{padding: 25px 20px;background-size: 175px;background-position: top -10px right -52px;}
    #mainVisual .fl-r .link-policy .text-box h2.tit{font-size: 18px;}
    #mainVisual .fl-r .link-policy .btn--link{width: 150px;height: 40px;font-size: 14px;}
    #mainVisual .fl-r .banner-item.col-2{gap: 12px;}
    #mainVisual .fl-r .banner-item.col-2 .list .tit h2{font-size: 15px;}
    #mainVisual .fl-r .banner-item.col-2 .list li a{justify-content: center;gap: 4px;text-align: center;}
    #mainVisual .fl-r .banner-item.col-2 .list li svg{width: 20px;height: 20px;}
}
@media (max-width:580px){
    #mainVisual .inner{gap: 12px;}
    #mainVisual .fl-l{height: 258px;}
    #mainVisual .fl-r{gap: 26px;}
    #mainVisual .fl-r .banner-item.col-2{grid-template-columns: repeat(1,1fr);gap: 26px;}
    #mainVisual .fl-r .banner-item.col-2 .list{padding: 34px 20px 20px;}
    #mainVisual .fl-r .banner-item.col-2 .list .tit{top: -20px;padding: 10px 16px;}
    #mainVisual .fl-r .banner-item.col-2 .list .tit .radius{top: 28px;width: 16px;height: 16px;}
    #mainVisual .fl-r .banner-item.col-2 .list li a{padding: 8px 15px;font-size: 14px;}
    #mainVisual .fl-r .banner-item.col-2 .list li svg{width: 18px;height: 18px;}
}
@media (max-width:480px){
    #mainVisual .main-control{width: auto;height: auto;padding: 7px 20px;border-radius:0 20px 0 var(--main-radius)}
    #mainVisual .main-control button svg{width: 18px;height: 18px;}
    #mainVisual .main-control button.arrow.btn--pause svg{width: 16px;height: 16px;}
    #mainVisual .fl-r .link-policy{background-size: 130px;background-position: top -8px right -40px}
    #mainVisual .fl-r .link-policy .text-box h2.tit{padding-bottom: 8px;font-size: 16px;}
    #mainVisual .fl-r .link-policy .text-box p.desc{padding-bottom: 12px;line-height: 1.4;font-size: 14px;}
    #mainVisual .fl-r .link-policy .btn--link{width: auto;height: auto;padding: 10px 22px;}
    #mainVisual .fl-r .banner-item.col-2 .list{padding: 30px 14px 14px;}
    #mainVisual .fl-r .banner-item.col-2 .list .tit{top: -16px;padding: 8px 20px;}
    #mainVisual .fl-r .banner-item.col-2 .list .tit h2{font-size: 14px;}
    #mainVisual .fl-r .banner-item.col-2 .list .tit .radius{top: 22px;}
}
@media (max-width:390px){
    #mainVisual .fl-r{gap: 12px;}
    #mainVisual .fl-r .link-policy{background-image:none;}
    #mainVisual .fl-r .banner-item.col-2{gap: 12px;}
    #mainVisual .fl-r .banner-item.col-2 .list{flex-direction: column;gap: 6px;padding: 14px;}
    #mainVisual .fl-r .banner-item.col-2 .list .tit{position: relative;top:unset;right:unset;width: 100%;transform:none;border-radius:5px;white-space: normal;}
    #mainVisual .fl-r .banner-item.col-2 .list .tit .radius{display: none;}
}
/* 반응형 [e] */