@charset "utf-8";/* CSS Document */

html { -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 { font-style:normal } 
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: baseline } 
strong,h1,h2,h3,th { font-weight:inherit } 
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 } 

body { font-family:NanumSquareNeo,sans-serif; font-weight:400; line-height:1.3; color:#111; font-size:16px; -webkit-font-smoothing:antialiased } 
body:not(.pop) { display:flex; flex-direction:column; min-height:100vh; min-height:calc(var(--vh, 1vh) * 100) } 
html.pop body { display:block; min-height:inherit } 
html.hidden { overflow-y:hidden } 

/*inc*/
.conIdx { width:0; height:0; overflow:hidden; visibility:hidden } 
.conIdx.on { width:auto; height:auto; visibility:visible } 

.dwrap { overflow:hidden } 
.dwrap img { display:block; position:relative; width:1980px; left:50%; margin-left:-990px; max-width:none } 

.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 } 
html.pop .popWrap .popTit { position:relative; z-index:1; padding:.5em 1em .5em 2em; display:flex; align-items:center; background:var(--siteC); border-radius:.5em .5em 0 0; transform:translateY(1px); color:#fff } 
html.pop .popWrap .popTit .tit { flex:1 1 100% } 
html.pop .popWrap .popTit .tit .t1 { font-weight:700; font-size:1.375em } 
html.pop .popWrap .popTit .tit .t2 { font-weight:700; font-size:1.125em } 
html.pop .popWrap .popTit .popClose { flex:0 0 auto; text-align:center; width:3em; line-height:3em; border-radius:100%; text-align:center; opacity:.6 } 
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 { opacity:1 } 
html.pop .popWrap .popTit .popClose:hover .xi { transform:rotate(180deg) } 
html.pop .popWrap .popIn { box-sizing:border-box; padding:2em 2em 3em 2em; background:#fff; border-radius:0 0 .5em .5em; box-shadow:1px 1px 10px #333; position:relative } 
html.pop .popWrap .popIn .popCon { min-height:5em } 
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,.8); max-width:100vw; height:100vh; position:fixed; left:0; top:0 } 
html.pop .popWrap.st1 .popTit { background:none; border-bottom:1px solid rgba(255,255,255,.2); color:#fff; padding:.5em 2em } 
html.pop .popWrap.st1 .popTit .popClose { color:#fff } 
html.pop .popWrap.st1 .popIn { flex:1 1 0%; min-height:0; padding:0; background:none; border-radius:0; box-shadow:none; padding:0 } 
html.pop .popWrap.st1 .popIn .popCon { height:100% } 

html.pop .popWrap.popPrivacy { max-width: 42.5vw; border-radius: 1em; overflow: hidden; } 
html.pop .popWrap.popPrivacy .popIn { overflow-y: scroll; } 

.popWrap.def{ width:52em;}
.popWrap.mem{ width:28em;}
.popWrap.msg{ width:38em;}

.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:#1f5aa7 } 
.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.125em; opacity:1; transition:.3s } 
.swiperBtn:before { font-family:xeicon } 
.swiperBtn.prev:before { content:"\e93d" } 
.swiperBtn.next:before { content:"\e940" } 
.swiperBtn.pause:before { content:"\ea3b" } 
.swiperBtn.play:before { content:"\ea3e" } 
.swiperBtn.ab { position:absolute; top:50%; } 
.swiperBtn.ab.prev { left:0; transform:translate(-50%, -50%) } 
.swiperBtn.ab.next { right:0; transform:translate(50%, -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 { width: 1.75em; height: 1.75em; } 
.swiperBtn.s2:hover { background: none; color: #111; } 
.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 { background: #666; color: #fff; } 
.swiperBtn.line.white:hover,
.swiperBtn.line.white.play { background:#1f5aa7; border-color:rgba(255,255,255,.2) } 

.swiperControlWrap { display:flex; align-items:center; gap:.25em } 
.swiperControlWrap .paging.grow { flex:1 1 0%; min-width:0 } 
.swiperControlWrap .paging:first-child { margin-right:1em } 
.swiperControlWrap .paging.swiper-pagination-fraction > span { font-size:.875em } 
.swiperPauseWrap .play { display: none } 
.swiperPauseWrap.pause .play { display: flex; background:var(--siteC); color:#fff } 
.swiperPauseWrap.pause .pause { display: none } 
.swiperPaging span.swiper-pagination-progressbar-fill { background:#111 } 
.slider_wrap { position:relative } 

.con_idx { position: relative}
.con_idx>.idx { position: absolute; left: 0; top: 0; width: 100%; visibility: hidden; filter: alpha(opacity=0); opacity: 0; display: none; } 
.con_idx>.idx.on { position: relative; visibility: visible; filter: alpha(opacity=100); opacity: 1; display: block; } 


.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) } 
 }

.moveDownAni { animation-name: moveDownAni; animation-duration: 3s; transform-origin:center; animation-iteration-count: infinite } 
@keyframes moveDownAni {50% { transform:translateY(1em) } 
 }
.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) } 
 }

.textAniW { display:flex; line-height:1; overflow:hidden } 
.textAni { animation: textAni 10s linear infinite; white-space:nowrap } 
.textAni:before { content:"·"; padding:0 .25em } 
@keyframes textAni {0% { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } 
100% { -webkit-transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0); } 
 }

.scaleAni { animation-name: scaleAni; animation-duration: 4s; animation-iteration-count: infinite; animation-direction:alternate } 
@keyframes scaleAni {100% { transform:scale(1.2) } 
 }

.yAni { animation-name: yAni; animation-duration: 5s; animation-iteration-count: infinite; animation-timing-function:linear; animation-direction:alternate } 
@keyframes yAni {0% { transform:translateY(0) } 
25% { transform:translateY(-.5em) } 
75% { transform:translateY(.5em) } 
100% { transform:translateY(0) } 
 }
.yAni.d1 { animation-delay:.5s } 
.yAni.d2 { animation-delay:1s } 
.yAni.d3 { animation-delay:1.5s } 
.yAni.d4 { animation-delay:2s } 
.yAni.d5 { animation-delay:2.5s } 

.circleAni { animation-name: circleAni; animation-duration: 2s; animation-iteration-count: infinite; opacity:0 } 
@keyframes circleAni {50% { opacity:1 } 
100% { padding:.75em; opacity:0 } 
 }
.circleAni.d1 { animation-delay:.5s } 
.circleAni.d2 { animation-delay:1s } 
.circleAni.d3 { animation-delay:1.5s } 

.visualCircleAni { animation-name: visualCircleAni; animation-duration:40s; animation-iteration-count: infinite; animation-direction:alternate; animation-timing-function:linear } 
@keyframes visualCircleAni {0% { left:-20%; bottom:-20%; transform:scale(.5) } 
30% { left:0%; bottom:40%; transform:scale(1) } 
60% { left:20%; bottom:-10%; transform:scale(.5) } 
100% { left:40%; bottom:10%; transform:scale(1) } 
 }

.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 } 

.gsSplit > i { min-width:.25em; text-align:center; transform:translateY(0); opacity:0 } 
.gsSplit.on > i { animation-name: splitAni; animation-duration:1s; animation-fill-mode: forwards; } 
@keyframes splitAni {30% { transform:translateX(1em); opacity:0 } 
100% { transform:translateX(0); opacity:1 } 
 }

.gsSvg > path { transform:translateY(0); opacity:0 } 
.gsSvg.on > path { animation-name: splitSvgAni; animation-duration: 1.5s; animation-fill-mode: forwards; } 
@keyframes splitSvgAni {30% { transform:translateY(-200%); opacity:0 } 
100% { transform:translateY(0); opacity:1 } 
 }
.gsSvg.on > path:nth-child(2) { animation-delay:.1s } 
.gsSvg.on > path:nth-child(3) { animation-delay:.2s } 
.gsSvg.on > path:nth-child(4) { animation-delay:.3s } 
.gsSvg.on > path:nth-child(5) { animation-delay:.4s } 
.gsSvg.on > path:nth-child(6) { animation-delay:.5s } 
.gsSvg.on > path:nth-child(7) { animation-delay:.6s } 
.gsSvg.on > path:nth-child(8) { animation-delay:.7s } 

.gsClass.opacity { opacity:0; transition:1.5s } 
.gsClass.opacity.on { opacity:1 } 

.gsClass.move { opacity:0; transition-duration:1.5s } 
.gsClass.move.mT { transform:translateY(10vh) } 
.gsClass.move.mB { transform:translateY(-10vh) } 
.gsClass.move.mL { transform:translateX(10vw) } 
.gsClass.move.mR { transform:translateX(-10vw) } 
.gsClass.move.on { opacity:1; transform:translate(0) } 

.gsDelay1 { transition-delay:.2s } 
.gsDelay2 { transition-delay:.4s } 
.gsDelay3 { transition-delay:.6s } 
.gsDelay4 { transition-delay:.8s } 
.gsDelay5 { transition-delay:1s } 
.gsDelay6 { transition-delay:1.2s } 
.gsDelay7 { transition-delay:1.4s } 
.gsDelay8 { transition-delay:1.6s } 
.gsDelay9 { transition-delay:1.8s } 
.gsDelay10 { transition-delay:2s } 

.gsClass.tShow .el { overflow:hidden } 
.gsClass.tShow .el > i { transform:translateY(-100%); transition:1s } 
.gsClass.tShow.on .el > i { transform:translateY(0) } 

.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(25%); opacity:0; transition:1s } 
.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.accordion .el { transition:1.5s } 
.gsClass.accordion .el:nth-child(1) { transform:translate(100%,0) } 
.gsClass.accordion .el:nth-child(2) { transform:translate(0,0) } 
.gsClass.accordion .el:nth-child(3) { transform:translate(-100%,0) } 
.gsClass.accordion.on .el { transform:translate(0,0) } 
.gsClass.accordion.on .el:nth-child(2) { transform:translate(0,2em) } 

.soon { background:#f5f5f5; border:1px solid #f5f5f5; color:#333; 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 } 
.soon .tt .t2 { display:block; font-size:1.25em; opacity:.5 } 

.animationStop * { animation: none !important; transition: none !important; } 