@charset "UTF-8";

body{font-family: 'Pretendard', sans-serif;font-weight: 400;font-size: 16px;line-height: 160%;letter-spacing: 0.02em;color: #111111;}
.aos{overflow-x: hidden;}
.over-hidden {overflow: hidden;}
.wrap{position: relative;overflow:hidden;}
.pc-hide {display:none!important;}

.header-wrap{position: fixed;left: 0;right: 0;top: 0;z-index: 100;transition: all 0.6s;height: fit-content;border-bottom: 1px solid rgba(238, 241, 244, 0.2);}
.header-box{max-width: 1520px;margin: auto;}
.main-content-box{max-width: 1520px;margin: auto;}
.main-content-wrap02{background: url(../img/common/sec02.png) no-repeat top right;}
.main-content-wrap03{background: url(../img/common/sec03.jpg) no-repeat center / cover;}
.main-content-wrap04{background: url(../img/common/sec04.png) no-repeat top left;}

.footer-wrap{background: #111;}
.footer-box{max-width: 1520px;margin: auto;}

@media(max-width: 1024px){
	.pc-hide {display:block!important;}
	.mobile-hide {display:none!important;}
	
	.main-content-box{padding: 0 20px;}
	.footer-box{padding: 0 20px;}
}

@media(max-width: 768px){
	.main-content-wrap02{background: transparent;}
	.main-content-wrap03{background: url(../img/common/sec03-sp.jpg) no-repeat center / cover;}
	.main-content-wrap04{background: url(../img/common/sec04-sp.png) no-repeat top left;}
}

.link-type01{font-weight:500;font-size:16px;line-height:100%;letter-spacing:-0.005em;display:flex;gap:2px;align-items:center;padding-bottom:2px;text-decoration:none;cursor:pointer;border-bottom:1px solid #111;background:linear-gradient(to right,#004BAE 50%,#111 50%);background-size:200% 100%;background-position:100% 0;-webkit-background-clip:text;-webkit-text-fill-color:transparent;transition:background-position 0.4s ease;}
.link-type01::before{content:'';position:absolute;bottom:-1px;left:0;width:0;height:1px;background:#004BAE;transition:width 0.4s ease;z-index:1;}
.link-type01::after{content:'';background:url(../img/common/view-more.png) no-repeat center;background-size:contain;width:18px;height:18px;display:inline-block;margin-top:-2px;transition:all 0.4s ease;}
.link-type01:hover{background-position:0 0;}
.link-type01:hover::before{width:100%;}
.link-type01:hover::after{background-image:url(../img/common/view-more02.png);}

@keyframes lineMove{0%{width:0;background:#004BAE;} 100%{width:100%;background:#004BAE;}}

@media(max-width: 1024px){
	.link-type01{border-bottom: 1px solid #2167FF;background: linear-gradient(to right, #004BAE 50%, #004BAE 50%);background-size:200% 100%;background-position:100% 0;-webkit-background-clip:text;-webkit-text-fill-color:transparent;transition:background-position 0.4s ease;}
	.link-type01::after{content:'';background:url(../img/common/view-more02.png) no-repeat center;}
}

/*sub page*/
.wrap.sub{padding-top: 97px;}
.sub-container {max-width: 1560px;margin: 0 auto;padding: 0 20px 180px;position: relative;box-sizing: border-box;}
.sub-visual-wrap {padding: 0 0 100px;}
.full .sub-container {padding: 0 20px 0;}

@media(max-width: 1024px){
	.sub-visual-wrap {padding: 0 0 40px;}
}




.tab-no-connect {
    padding: 0 0 40px;
}

.tab-no-connect .tab-inner {
    display: flex; 
    flex-direction: column; 
    gap: 40px;
}

/* 기본 리스트 초기화 및 가로 스크롤 설정 */
.tab-no-connect .tab-inner ul.tab-list {
    display: flex;
    justify-content: flex-start; 
    margin: 0 !important; 
    width: auto !important; 
    flex-direction: row !important; 
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
    border: 0 !important; 
    border-bottom: 1px solid #E5E5E5 !important; 
    border-radius: 0 !important;
    gap: 0;
    overflow-x: auto !important; 
    -webkit-overflow-scrolling: touch; 
    -ms-overflow-style: none; 
    scrollbar-width: none; 
}

.tab-no-connect .tab-inner ul.tab-list::-webkit-scrollbar { 
    display: none; 
}

.tab-no-connect .tab-inner ul.tab-list > li { 
    max-width: 100% !important; 
    width: auto !important; 
    flex: initial !important; 
    flex-shrink: 0 !important; 
    border: 0 !important;
}

.tab-no-connect .tab-inner ul.tab-list > li > a {
    display: block;
    padding: 0;
    text-decoration: none;
}

.tab-no-connect .tab-inner ul.tab-list > li > a.active {
    background: none; 
    border: 0;
}

/* 탭 텍스트 스타일 */
.tab-no-connect .tab-inner ul.tab-list li a span {
    position: relative; 
    display: inline-block; 
    padding: 17px 20px; 
    font-size: 18px; 
    line-height: 1.45; 
    letter-spacing: -0.02em; 
    font-weight: 600; 
    color: #666666; 
    transition: all .3s;
}

/* 하단 언더라인 바 */
.tab-no-connect .tab-inner ul.tab-list li a span::after { 
    content: ''; 
    position: absolute; 
    bottom: 0; 
    left: 50%; 
    transform: translateX(-50%) scaleX(0); 
    width: 100%; 
    height: 2px; 
    background-color: #1174FF; 
    transition: transform 0.3s ease-in-out; 
    transform-origin: center; 
}

/* 활성화 상태 (li.active, a.active 및 hover 대응) */
.tab-no-connect .tab-inner ul.tab-list li.active a span,
.tab-no-connect .tab-inner ul.tab-list li a.active span,
.tab-no-connect .tab-inner ul.tab-list li a:hover span { 
    color: #1174FF; 
}

.tab-no-connect .tab-inner ul.tab-list li.active a span::after,
.tab-no-connect .tab-inner ul.tab-list li a.active span::after,
.tab-no-connect .tab-inner ul.tab-list li a:hover span::after { 
    transform: translateX(-50%) scaleX(1); 
}

/* Swiper 컨테이너 연동 시 호환 스타일 */
.tab-swiper-container {
    position: relative;
    padding: 0 50px !important; 
    overflow: hidden !important;
    width: 100% !important;
    box-sizing: border-box;
}

.tab-no-connect .tab-inner ul.tab-list.swiper-wrapper {
    display: flex !important;
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
    border-bottom: 0 !important; 
    gap: 0 !important;
    width: max-content !important; 
}

.tab-no-connect .tab-inner ul.tab-list li.swiper-slide {
    width: auto !important; 
    flex-shrink: 0 !important;
}

.tab-swiper-prev,
.tab-swiper-next {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 40px !important;
    height: 40px !important;
    border: 1px solid #111111 !important;
    border-radius: 50% !important;
    background-color: #111111 !important; 
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 11px 18px !important; 
    z-index: 99 !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    display: inline-block; 
}

.tab-swiper-prev {
    left: 0 !important;
    background-image: url("data:image/svg+xml,%3Csvg width='11' height='18' viewBox='0 0 11 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.999999 17L9 9L1 1' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
    transform: translateY(-50%) rotate(180deg) !important; 
}

.tab-swiper-next {
    right: 0 !important;
    background-image: url("data:image/svg+xml,%3Csvg width='11' height='18' viewBox='0 0 11 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.999999 17L9 9L1 1' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

.tab-swiper-prev.swiper-button-disabled,
.tab-swiper-next.swiper-button-disabled {
    background-color: #ffffff !important; 
    border-color: #E5E5E5 !important;
    cursor: default !important;
    pointer-events: none !important;
    opacity: 1 !important; 
}

.tab-swiper-prev.swiper-button-disabled {
    background-image: url("data:image/svg+xml,%3Csvg width='11' height='18' viewBox='0 0 11 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.999999 17L9 9L1 1' stroke='%23CCC' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

.tab-swiper-next.swiper-button-disabled {
    background-image: url("data:image/svg+xml,%3Csvg width='11' height='18' viewBox='0 0 11 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.999999 17L9 9L1 1' stroke='%23CCC' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

.tab-no-connect .tab-inner .tab-swiper-container .tab-swiper-prev.swiper-button-lock,
.tab-no-connect .tab-inner .tab-swiper-container .tab-swiper-next.swiper-button-lock {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

.tab-no-connect .tab-inner .tab-swiper-container.swiper-button-lock {
    padding: 0 !important;
}

/* 반응형 분기 */
@media (max-width: 1024px) {
    .tab-no-connect .tab-inner { gap: 24px; }
    .tab-no-connect .tab-inner ul.tab-list li a span { padding: 15px 18px; font-size: 16px; }
}

@media (max-width: 768px) {
    .tab-no-connect .tab-inner { gap: 16px; }
    .tab-no-connect .tab-inner ul.tab-list li a span { padding: 12px 14px; font-size: 14px; }
    
    .tab-swiper-container {
        padding: 0 45px !important;
    }
    
    .tab-no-connect .tab-inner .tab-swiper-container.swiper-button-lock {
        padding: 0 !important;
    }
    
    .tab-swiper-prev,
    .tab-swiper-next {
        width: 32px !important;
        height: 32px !important;
        background-size: 9px 15px !important;
    }
}