@charset "utf-8"; /* CSS Document */

html { font-size: var(--html-font-size-1); -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; overflow-x:hidden; overflow-y:scroll } 
html,body,div,p,span,a,img,ul,ol,li,dl,dt,dd,h1,h2,h3,h4,form,input,select,textarea,button,label,fieldset,table,tr,td,th,tbody,thead,tfoot,caption,video,strong,em,i,b { margin:0; padding:0; font-size:inherit } 
ul,ol,li { list-style:none } 
img { border:none; max-width:100% } 
em,i,b,span { font-style:normal; vertical-align: baseline !important; } 
table { border-collapse:collapse; border-spacing:0 } 
span, strong, a, em, i, b, input, button, textarea, select, label { display:inline-block; font-size:inherit; font-family:inherit; color:inherit; vertical-align: middle } 
strong,h1,h2,h3,th { font-weight:inherit } 
i { vertical-align: baseline; } 
input[type=button], button, textarea, select { appearance:none; -webkit-appearance:none; -moz-appearance: none; max-width:100%; cursor:pointer } 
select { max-width:100%; background:url(../images/inc/arrow_down.svg) right .75em center no-repeat #fff; background-size:.85em auto } 
a, input, button, textarea, select, li { -webkit-tap-highlight-color:transparent } 
a:focus, input:focus, button:focus, textarea:focus, select:focus { outline:none } 
a:focus:not(:focus-visible), input:focus:not(:focus-visible), button:focus:not(:focus-visible), textarea:focus:not(:focus-visible), select:focus:not(:focus-visible) { outline: none } 
iframe { border:none } 
a,
a:active,
a:hover { text-decoration:none } 

html,
body { /* overflow: auto; scrollbar-width: none; -ms-overflow-style: none; */ } 
body { font-family:'pretendard',sans-serif; font-weight:400; line-height: var(--line-height-normal); color: var(--color-black-3); word-break: keep-all; letter-spacing: -1px; -webkit-font-smoothing:antialiased } 
html.hidden { overflow-y:hidden } 

html::-webkit-scrollbar{ width: 8px;}
html::-webkit-scrollbar-thumb{ background-color: #1e292d;}
html::-webkit-scrollbar-track{ background: #fff;}

/*inc*/
.conIdx { width:0; height:0; overflow:hidden; visibility:hidden } 
.conIdx.on { width:auto; height:auto; visibility:visible } 

.dwrap { position:relative; width:2000px; left:50%; margin-left:-1000px } 

.layerWrap { position:fixed; left:0; top:0; width:100%; height:100%; z-index:1003 } 
.layerWrap .layerBg { position:absolute; z-index:9999; width:100%; height:100%; left:0; top:0; background:#000; opacity:.5 } 
.layerWrap .layerFrame { position:absolute; z-index:10000; left:0; top:0; width:100%; height:100% } 
html.pop { background:transparent; display:flex; justify-content:center; align-items:center; width:100%; height:100vh } 
html.pop .popWrap { position:relative; display:flex; flex-direction:column; justify-content:center; max-width:96vw; height:90vh; margin: auto 0; } 
html.pop .popWrap .popTit { position:relative; z-index:1; padding:1em 1em 1em 2em; display:flex; background:var(--siteC2); border-radius:.5em .5em 0 0; color:#fff; transform:translateY(1px) } 
html.pop .popWrap .popTit .tit { flex:1 1 100%; padding-top:1em } 
html.pop .popWrap .popTit .tit .t1 { font-weight:700; font-size:1.5em } 
html.pop .popWrap .popTit .popClose { flex:0 0 auto; text-align:center; width:3em; line-height:3em; border-radius:100%; text-align:center; color:#fff } 
html.pop .popWrap .popTit .popClose .xi { transition:.3s; font-size:1.75em } 
html.pop .popWrap .popTit .popClose .xi:before { content:"\e9af" } 
html.pop .popWrap .popTit .popClose:hover .xi { transform:rotate(180deg) } 
html.pop .popWrap .popIn { box-sizing:border-box; border-radius: .5em .5em; box-shadow:1px 1px 10px #333; position:relative } 
html.pop .popWrap .popIn .popCon { min-height:5em; padding:1em 2em 3em 2em; background:#fff; } 
html.pop .popWrap .popBtn { position:relative; z-index:1; display:flex; background:#fff; border-radius:0 0 .5em .5em; transform:translateY(1px); overflow:hidden; padding-top:.5em; margin-top:-.5em; box-sizing:border-box } 
html.pop .popWrap .popBtn:before { content:""; position:absolute; left:0; top:0; height:.5em; width:100%; background:#fff } 
html.pop .popWrap .popBtn .input_st { border-radius:0 } 

html.pop .popWrap.st1 { width:100%; background:rgba(0,0,0,.5); max-width:100vw; height:100vh; position:fixed; left:0; top:0 } 
html.pop .popWrap.st1 .popIn { padding:0; background:none; border-radius:0; box-shadow:none } 

html.pop .popWrap.popAgree { width: 900px; } 


.scrollst { overflow-y:auto; scrollbar-width: thin; scrollbar-color: gray transparent; scrollbar-face-color: #666; scrollbar-track-color: #f1f1f1; scrollbar-arrow-color: none; scrollbar-highlight-color: #f1f1f1; scrollbar-3dlight-color: none; scrollbar-shadow-color: #fff; scrollbar-darkshadow-color: none; } 
.scrollst::-webkit-scrollbar { width: 5px } 
.scrollst::-webkit-scrollbar-track { background-color:#f5f5f5 } 
.scrollst::-webkit-scrollbar-thumb { border-radius: 10px; background-color:var(--siteC); background-clip: padding-box; border:none } 
.scrollst::-webkit-scrollbar-button { width: 0; height: 0; } 
.scrollst.c1::-webkit-scrollbar-track { background:#aaa } 
.scrollst.c1::-webkit-scrollbar-thumb { background-color:#333 } 

.wrapHide { position:absolute; opacity:0; width:0; z-index:-1; visibility:hidden } 

/**/
.loading_st { position:fixed; left:0; top:0; width:100%; height:100%; z-index:1001; text-align:center; transition:.3s } 
.loading_st .xi:before { content:"\ec34"; font-size:3em; color:var(--siteC) } 
.load .loading_st { display:none } 

.swiperBtn { width:2.5em; height:2.5em; position: static; display:flex; align-items:center; justify-content:center; z-index:100; cursor:pointer; font-size:1.45em; opacity:1; transition:.3s } 
.swiperBtn:before { font-family:xeicon } 
.swiperBtn.prev:before { content:"\e93c" } 
.swiperBtn.next:before { content:"\e93f" } 
.swiperBtn.pause:before { content:"\ea3b" } 
.swiperBtn.play:before { content:"\ea3e" } 
.swiperBtn.ab { position:absolute; top:50%; } 
.swiperBtn.ab.prev { left:0; transform:translate(-100%, -50%) } 
.swiperBtn.ab.next { right:0; transform:translate(100%, -50%) } 
.swiperBtn.ab.in.prev { transform:translate(.5em, -50%) } 
.swiperBtn.ab.in.next { transform:translate(-.5em, -50%) } 
.swiperBtn.line { border:1px solid #ddd } 
.swiperBtn.round { border-radius:50% } 
.swiperBtn.s1 { font-size:2em } 
.swiperBtn.s2 { font-size:1em; width:2em; height:2em } 
.swiperBtn.ico1.prev:before { content:"\e908" } 
.swiperBtn.ico1.next:before { content:"\e90b" } 
.swiperBtn:hover { background:#111; color:#fff } 
.swiperBtn.white { color:#fff; border-color:rgba(255,255,255,.5) } 
.swiperBtn.c1 { background:#eee; color:#999; } 
.swiperBtn.c2 { color: #666; } 
.swiperBtn.c2:hover { color: #111; } 
.swiperBtn.line.white:hover,
.swiperBtn.line.white.play { background:#1f5aa7; border-color:rgba(255,255,255,.2) } 

.swiperBtn.bgn { width: auto; height: auto; } 
.swiperBtn.bgn:hover { background: transparent; } 

.swiperPauseWrap .play { display: none } 
.swiperPauseWrap.pause .play { display: flex } 
.swiperPauseWrap.pause .pause { display: none } 
.swiperPaging span.swiper-pagination-progressbar-fill { background:#111 } 
.swiperPaging.white { background:rgba(255,255,255,.2) } 
.swiperPaging.white span.swiper-pagination-progressbar-fill { background:#fff } 
.slider_wrap { position:relative } 

.visualControl { position: absolute; left: 50%; transform: translateX(-50%); bottom: 3rem; z-index: 9;} 
.visualControl .swiperControl{ }
.visualControl .swiperControl .swiper-pagination-container{ display: flex; align-items: center; gap: 3rem;}
.visualControl .swiperControl .control_lf{ display: flex; align-items: center; gap: 3rem;}
.visualControl .swiperControl .control_lf .current_wrap{ display: flex; gap: 1rem; align-items: center;}
.visualControl .swiperControl .control_lf .current_wrap .line{ width: 1px; height: 30px; background: rgba(255,255,255, .5);}
.visualControl .swiperControl .control_lf .current_wrap .current-slide{ font-size: var(--font-size-lg); color: #fff; font-weight: 600; width: 2rem;}
.visualControl .swiperControl .control_lf .current_wrap .total-slide{ font-size: var(--font-size-base); font-weight: 600; color: rgba(255,255,255, .5);}
.visualControl .swiperControl .control_rf{ display: flex; gap: .8rem; align-items: center;}
.visualControl .swiperControl .control_rf .swiperBtn{ width: auto; height: auto; background: transparent; color: rgba(255,255,255, .5);}
.visualControl .swiperControl .control_rf .swiperBtn:hover{ color: #fff;}
.visualControl .visualSlider-btn { width: 120px; cursor: pointer; line-height: 2.5em; color: #fff; outline: none; text-align: center } 
.visualControl .visualSlider-btn .xi { font-size: 1.5em } 
.visualControl .visualSlider-btn:hover { color: #fff; opacity: 1 } 
.visualControl .visualProgress { position:relative; text-align: center; margin-right: 2em } 
.visualControl .visualPauseWrap { position: absolute; width: 4.375em; text-align: center; top: 0 } 
.visualControl .visualPauseWrap .visualSlider-btn { line-height: 120px } 
.visualControl .visualPauseWrap .visualSlider-btn .xi { font-size: 1.5em; } 
.visualControl .Btn { color: rgba(255,255,255, .5); cursor: pointer; transition: .3s; } 
.visualControl .Btn:hover { color: rgba(255,255,255, 1); } 
.visualControl .Btn > .xi { font-size: 1.8em; } 
.visualControl .Btn.prev { margin-right: 1.5em; } 
.visualControl .visualPauseWrap .visualSlider-play { display: none } 
.visualControl .visualPauseWrap.pause .visualSlider-pause { display: none } 
.visualControl .visualPauseWrap.pause .visualSlider-play { display: block; opacity: 1; color: #fff } 
.visualControl .visualSlide-pagination {} 
.visualControl .visualSlide-pagination span { width: .48rem; min-width: .48rem; height: .46rem; background: #fff; border-radius: 0; border-radius: 50%; opacity: .5; margin: 0 .3rem !important; transition: .3s } 
.visualControl .visualSlide-pagination span.swiper-pagination-bullet-active { opacity: 1;} 


.fadeAni { animation-name: fadeAni; animation-duration: 2s; animation-iteration-count: infinite } 
@keyframes fadeAni { 30% { opacity:0 } 
50% { opacity:1 } 
 }
.fadeAni:hover { animation-name: none } 

.rotateAni { animation-name: rotateAni; animation-duration: 20s; transform-origin:center; animation-timing-function:linear; animation-iteration-count: infinite } 
@keyframes rotateAni { 100% { transform:rotate(360deg) } 
 }
.rotateAni:hover { animation-name: none } 

.moveDownAni { animation-name: moveDownAni; animation-duration: 3s; transform-origin:center; animation-iteration-count: infinite } 
@keyframes moveDownAni { 100% { top:150% } 
 }
.moveDownAni:hover { animation-name: none } 

.downAni { animation-name: downAni; animation-duration: 3s; animation-iteration-count: infinite } 
@keyframes downAni { 70% { transform:translateY(0) } 
85% { transform:translateY(.5em) } 
100% { transform:translateY(0) } 
 }

.scrollAni { opacity:0 } 
.scrollAni.on { opacity:1; transition:1s; transition-timing-function:ease-out; } 
.scrollAni.on.ts2 { transition:2s } 
.scrollAni.fade { opacity:0 } 
.scrollAni.fade.on { opacity:1 } 
.scrollAni.moveL { transform:translateX(-10rem); } 
.scrollAni.moveL.on { transform:translateX(0); } 
.scrollAni.moveR { transform:translateX(10rem) } 
.scrollAni.moveR.on { transform:translateX(0) } 
.scrollAni.moveT { transform:translateY(10rem) } 
.scrollAni.moveT.on { transform:translateY(0) } 
.scrollAni.moveB { transform:translateY(-10rem) } 
.scrollAni.moveB.on { transform:translateY(0) } 
.scrollAni.width { width:0 } 
.scrollAni.width.on { width:100% } 
.scrollAni.scale.on { transform:scale(1) } 
.scrollAni.scale { transform:scale(0) } 
.scrollAni.scale.on { transform:scale(1) } 
.scrollAni.scaleX { transform:scaleX(0); transform-origin:left top } 
.scrollAni.scaleX.on { transform:scaleX(1) } 
.scrollAni.scaleX.right { transform-origin:right top } 
.scrollAni.scaleY { transform:scaleY(0); transform-origin:left top } 
.scrollAni.scaleY.on { transform:scaleY(1) } 
.scrollAni.zoomOut { transform:scale(1.3) } 
.scrollAni.zoomOut.on { transform:scale(1) } 
.scrollAni.zoomIn { transform:scale(.7); border-radius:1em } 
.scrollAni.zoomIn.on { transform:scale(1); border-radius:0 } 
.scrollAni.radius { border-radius:3em; transition:3s; } 
.scrollAni.radius.on { border-radius:0 } 
.scrollAni.delay.on:nth-child(2) { transition-delay:.3s } 
.scrollAni.delay.on:nth-child(3) { transition-delay:.6s } 
.scrollAni.delay.on:nth-child(4) { transition-delay:.9s } 
.scrollAni.delay.on:nth-child(5) { transition-delay:1.2s } 
.scrollAni.delay.on:nth-child(6) { transition-delay:1.5s } 
.scrollAni.delay.on:nth-child(7) { transition-delay:1.8s } 
.scrollAni.delay.on:nth-child(8) { transition-delay:2.1s } 
.scrollAni.delay.on:nth-child(9) { transition-delay:2.4s } 
.scrollAni.delay.on:nth-child(10) { transition-delay:2.7s } 

.gsClass.opacity { opacity:0; transition:.5s } 
.gsClass.opacity.on { opacity:1 } 

.gsClass.move { opacity:0; transition:1s } 
.gsClass.move.mT { transform:translateY(5vmin) } 
.gsClass.move.mB { transform:translateY(-5vmin) } 
.gsClass.move.mL { transform:translateX(10vmin) } 
.gsClass.move.mR { transform:translateX(-10vmin) } 
.gsClass.move.on { opacity:1; transform:translate(0) } 

.gsClass.tShow .el { display:block; overflow:hidden } 
.gsClass.tShow .el > i { transform:translateY(10vh); transition:1s } 
.gsClass.tShow.on .el > i { transform:translateY(0) } 
.gsClass.tShow.on .el:nth-child(2) > i { transition-delay:.2s } 
.gsClass.tShow.on .el:nth-child(3) > i { transition-delay:.4s } 

.gsClass.tEffect { background: linear-gradient(90deg, #000, #000 50%, rgba(0,0,0,0.2) 0); background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-size: 200% 100%; background-position: 100% } 
.gsClass.tEffect.on { background-position: 0; transition:2s; transition-timing-function:cubic-bezier(0.5, 0, 1, 1) } 

.gsClass.imgShow { overflow:hidden } 
.gsClass.imgShow .el { transition:1s; } 
.gsClass.imgShow.left .el { transform:translateX(-100%) } 
.gsClass.imgShow.right .el { transform:translateX(100%) } 
.gsClass.imgShow.top .el { transform:translateY(-100%) } 
.gsClass.imgShow.bottom .el { transform:translateY(100%) } 
.gsClass.imgShow.on .el { transform:translate(0) } 

.gsClass.listShow .el { transform:translateY(20vmin); opacity:0; transition:1s } 
.gsClass.listShow.lay2 .el { transform: translateY(5vmin); } 
.gsClass.listShow.lay3 .el { transform: translateY(2em); } 
.gsClass.listShow.on .el { transform:translateY(0); opacity:1 } 
.gsClass.listShow.on .el:nth-child(1) { transition-delay:.2s } 
.gsClass.listShow.on .el:nth-child(2) { transition-delay:.4s } 
.gsClass.listShow.on .el:nth-child(3) { transition-delay:.6s } 
.gsClass.listShow.on .el:nth-child(4) { transition-delay:.8s } 
.gsClass.listShow.on .el:nth-child(5) { transition-delay:1s } 
.gsClass.listShow.on .el:nth-child(6) { transition-delay:1.2s } 
.gsClass.listShow.on .el:nth-child(7) { transition-delay:1.4s } 
.gsClass.listShow.on .el:nth-child(8) { transition-delay:1.6s } 
.gsClass.listShow.on .el:nth-child(9) { transition-delay:1.8s } 
.gsClass.listShow.on .el:nth-child(10) { transition-delay:2s } 

.gsClass.listProcess .el { transform:translateX(20vmin); opacity:0; transition:1s } 
.gsClass.listProcess.lay2 .el { transform: translateX(5vmin); } 
.gsClass.listProcess.lay3 .el { transform: translateX(2rem); } 
.gsClass.listProcess.on .el { transform:translateX(0); opacity:1 } 
.gsClass.listProcess.on .el:nth-child(1) { transition-delay:.2s } 
.gsClass.listProcess.on .el:nth-child(2) { transition-delay:.4s } 
.gsClass.listProcess.on .el:nth-child(3) { transition-delay:.6s } 
.gsClass.listProcess.on .el:nth-child(4) { transition-delay:.8s } 
.gsClass.listProcess.on .el:nth-child(5) { transition-delay:1s } 
.gsClass.listProcess.on .el:nth-child(6) { transition-delay:1.2s } 
.gsClass.listProcess.on .el:nth-child(7) { transition-delay:1.4s } 
.gsClass.listProcess.on .el:nth-child(8) { transition-delay:1.6s } 
.gsClass.listProcess.on .el:nth-child(9) { transition-delay:1.8s } 
.gsClass.listProcess.on .el:nth-child(10) { transition-delay:2s } 

.gsClass.accordion .el { transition:1.5s } 
.gsClass.accordion .el:nth-child(1) { transform:translate(0,0) } 
.gsClass.accordion .el:nth-child(2) { transform:translate(-100%,0) } 
.gsClass.accordion .el:nth-child(3) { transform:translate(-200%,0) } 
.gsClass.accordion .el:nth-child(4) { transform:translate(-300%,0) } 
.gsClass.accordion.on .el { transform:translate(0,0) } 

.gsClass.on { } 
.gsClass.on.d1 { transition-delay:.3s } 
.gsClass.on.d2 { transition-delay:.6s } 
.gsClass.on.d3 { transition-delay:.9s } 


.gsSplit { transform: translateY(.2em); transition: transform .8s ease; } 
.gsSplit > i { min-width: .285em; } 
.gsSplit.on { transform: translateY(0); } 
.gsSplit.on > i { animation-name: splitAni; animation-duration: 1s; animation-timing-function: ease-out; animation-fill-mode: both; } 

@keyframes splitAni {0% { transform: translateY(1em); } 
100% { transform: translateY(0); } 
 }

.soon { background:#f5f5f5; border:1px solid #f5f5f5; height:50vh; padding:1em } 
.soon .img { width:10em; padding-bottom:120%; margin-right:2em } 
.soon .xi { font-size:16em; opacity:.1 } 
.soon .tt .t1 { display:block; font-weight:700; font-size:3em; color:#333 } 
.soon .tt .t2 { display:block; font-size:1.25em; color:#999 } 

.animationStop * { animation: none !important; transition: none !important; } 

