@charset "utf-8";
/* CSS Document */
html{-ms-text-size-adjust: 100%;-webkit-text-size-adjust: 100%; word-break:keep-all}
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: middle}
strong,h1,h2,h3,th{ font-weight:inherit}
input[type=button], input[type=submit], button{ cursor:pointer}
select{ max-width:100%}
input[type=text], input[type=button], input[type=submit], input[type=tel], input[type=file], button, label, textarea{ appearance:none;-webkit-appearance:none; -webkit-border-radius:0}
a, input, button, textarea, select, li{ -webkit-tap-highlight-color:transparent}
a:focus, input:focus, button:focus, textarea:focus, select:focus{ outline:none}

a,
a:active,
a:hover{text-decoration:none}

html{overflow-x:hidden}
body{ font-family:var(--fontBase) !important; font-size:16px; font-weight:400; line-height:1.2; color: var(--crBlack); word-break: keep-all; -webkit-font-smoothing:antialiased;}

.pop .popIn,
#contents .doc,
.notranslate{text-transform: none}
body.hidden, html.hidden{ overflow-y:hidden}

/*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:1000}
.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%}
body.pop{background:transparent; display:flex; justify-content:center; align-items:center; width:100vw; height:100vh}
body.pop .popWrap{ position:relative; display:flex; flex-direction:column; justify-content:center; max-width:96vw; height:90vh}
body.pop .popWrap .popTit{ position:relative; z-index:1; padding:1em 1em 1em 2em; display:flex; background:#fff; border-radius:.5em .5em 0 0; transform:translateY(1px)}
body.pop .popWrap .popTit .tit{ flex:1 1 100%; padding-top:1em}
body.pop .popWrap .popTit .tit .t1{ font-weight:700; font-size:1.5em}
body.pop .popWrap .popTit .popClose{ flex:0 0 auto; text-align:center; width:3em; line-height:3em; border-radius:100%; text-align:center; color:#666}
body.pop .popWrap .popTit .popClose .xi{ transition:.3s; font-size:1.75em}
body.pop .popWrap .popTit .popClose .xi:before{ content:"\e9af"}
body.pop .popWrap .popTit .popClose:hover .xi{ transform:rotate(180deg)}
body.pop .popWrap .popIn{ box-sizing:border-box; padding:1em 2em 3em 2em;  background:#fff; border-radius:0 0 .5em .5em; box-shadow:1px 1px 10px #333; position:relative}
body.pop .popWrap .popIn .popCon{ min-height:5em}
body.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}
body.pop .popWrap .popBtn:before{ content:""; position:absolute; left:0; top:0; height:.5em; width:100%; background:#fff}
body.pop .popWrap .popBtn .input_st{ border-radius:0}

body.pop .popWrap.st1{ width:100%; background:rgba(0,0,0,.7); max-width:100vw; height:100vh}
body.pop .popWrap.st1 .popTit{ position:static; padding:0; background:none}
body.pop .popWrap.st1 .popTit .popClose{ position: fixed; right:0; top:0; color:#fff; width:5em; line-height:5em}
body.pop .popWrap.st1 .popIn{ padding:0; background:none; border-radius:0; box-shadow:none}

body.pop_vod{ position:absolute !important; left:0; top:0; width:100%; height:100%}

.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:#7996ad; background-clip: padding-box; border:none}
.scrollst::-webkit-scrollbar-button  { width: 0; height: 0;}

/**/
.addWrap{ display:none; visibility:hidden}
.addWrap.on{ display:block; visibility:visible}

/**/
.pd0{ padding:0 !important;}
.pt0{ padding-top:0 !important;}
.pb0{ padding-bottom:0 !important;}

.mg0{ margin:0 !important;}
.cpoint{color:#ce271e}

.mt0{ margin-top:0 !important;}
.mt3{ margin-top:3px !important;}
.mt5{ margin-top:5px !important;}
.mt10{ margin-top:10px !important;}
.mt15{ margin-top:15px !important;}
.mt20{ margin-top:20px !important;}
.mt25{ margin-top:25px !important;}
.mt30{ margin-top:30px !important;}
.mt40{ margin-top:40px !important;}
.mt50{ margin-top:50px !important;}

.mb0{ margin-bottom:0 !important;}
.mb5{ margin-bottom:5px !important;}
.mb10{ margin-bottom:10px !important;}
.mb15{ margin-bottom:15px !important;}
.mb20{ margin-bottom:20px !important;}
.mb25{ margin-bottom:25px !important;}
.mb30{ margin-bottom:30px !important;}
.mb40{ margin-bottom:40px !important;}
.mb50{ margin-bottom:50px !important;}

.ml0{ margin-left:0 !important;}
.ml5{ margin-left:5px !important;}
.ml10{ margin-left:10px !important;}
.ml15{ margin-left:15px !important;}
.ml20{ margin-left:20px !important;}
.ml25{ margin-left:25px !important;}
.ml30{ margin-left:30px !important;}
.ml40{ margin-left:40px !important;}
.ml50{ margin-left:50px !important;}

.mr0{ margin-right:0 !important;}
.mr5{ margin-right:5px !important;}
.mr10{ margin-right:10px !important;}
.mr15{ margin-right:15px !important;}
.mr20{ margin-right:20px !important;}
.mr25{ margin-right:25px !important;}
.mr30{ margin-right:30px !important;}
.mr40{ margin-right:40px !important;}
.mr50{ margin-right:50px !important;}

.pd05{ padding:.5em !important;}
.pd1{ padding:1em !important;}
.pd2{ padding:2em !important;}

.fwB{ font-weight:800 !important;}
.fwMB{ font-weight:600 !important}
.fwM{ font-weight:500 !important}
.fwR{ font-weight:400 !important}
.fwL{ font-weight:300 !important}

.ffGS{ font-family:gs,sans-serif; line-height:1.5}
.ffNS{ font-family:ns,sans-serif}
.ffSerif{ font-family: Georgia, "Times New Roman", Times, serif; letter-spacing:0}

.fs12{ font-size:.75em !important}
.fs13{ font-size:.813em !important}
.fs14{ font-size:.875em !important}
.fs15{ font-size:.938em !important}
.fs16{ font-size:1em !important}
.fs17{ font-size:1.063em !important}
.fs18{ font-size:1.125em !important}
.fs19{ font-size:1.188em !important}
.fs20{ font-size:1.25em !important}
.fs21{ font-size:1.313em !important}
.fs22{ font-size:1.375em !important}
.fs23{ font-size:1.438em !important}
.fs24{ font-size:1.5em !important}
.fs25{ font-size:1.563em !important}
.fs26{ font-size:1.615em !important}
.fs27{ font-size:1.688em !important}
.fs28{ font-size:1.75em !important}
.fs29{ font-size:1.813em !important}
.fs30{ font-size:1.875em !important}
.fs31{ font-size:1.938em !important}
.fs32{ font-size:2em !important}

/**/
.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:#00a3dd}
.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.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:#ddd; color:#666;}
.swiperBtn.line.white:hover,
.swiperBtn.line.white.play{ background:#1f5aa7; border-color:rgba(255,255,255,.2)}

.swiperControl{ display:flex; align-items:center; z-index:10}
.swiperControl.hc{ justify-content:center;}
.swiperControl .paging{ position:relative; width:auto; display:flex; align-items:center; gap:.5em; bottom:unset;}
.swiperControl .paging.grow{ flex:1 1 0%; min-width:0}
.swiperControl .paging:first-child{ margin-right:1em}
.swiperControl .paging.swiper-pagination-progressbar{ height:2px;}
.swiperControl .paging.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{ background:#111}
.swiperControl .paging.swiper-pagination-fraction{ line-height:1}
.swiperControl .paging.swiper-pagination-fraction > span.swiper-pagination-current{ color:var(--siteC); font-size:1.25em; font-weight:700}
.swiperControl .paging.swiper-pagination-fraction > span.swiper-pagination-total{ color:#333; position:relative}
.swiperControl .paging .swiper-pagination-bullet{ position:relative; border:1px solid #111; background:none; opacity:1; border-radius:0; width:.5em; height:.5em; margin:0 .125em; transition:.5s}
.swiperControl .paging .swiper-pagination-bullet.swiper-pagination-bullet-active{ background:#111; transform:rotate(45deg)}
.swiperControl .paging.white.swiper-pagination-progressbar{ filter:brightness(0) invert(1)}

.swiperPauseWrap .play{ display: none}
.swiperPauseWrap.pause .play{ display: flex; background:#111; color:#fff}
.swiperPauseWrap.pause .pause{ display: none}
.swiperPaging span.swiper-pagination-progressbar-fill{ background:#111}
.slider_wrap{ position:relative}

.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 20s 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);
}
}

.textAniY { animation: textAniY 2s linear infinite; } 
@keyframes textAniY {0% { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } 
100% { -webkit-transform: translate3d(0, -100%, 0); transform: translate3d(0, -100%, 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}

.gsSplitY > i{ min-width:.2em; text-align:center; transform:translateY(.5em); opacity:0}
.gsSplitY.on > i{ animation-name: splitAniY; animation-duration:1s; animation-fill-mode: forwards;}
@keyframes splitAniY{
30% { transform:translateY(.5em); opacity:0}
100% {transform:translateY(0); opacity:1}
}

.gsSplit{ opacity:0; transform:translateY(50%); transition:.5s}
.gsSplit > i{ min-width:.375em}
.scroll .gsSplit{ opacity:1; transform:translateY(0)}
.scroll .gsSplit > i{ animation-name: splitAni; animation-duration: 1s}
@keyframes splitAni{
50% { 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(7vh)}
.gsClass.move.mB{ transform:translateY(-7vh)}
.gsClass.move.mL{ transform:translateX(7vw)}
.gsClass.move.mR{ transform:translateX(-7vw)}
.gsClass.move.on{ opacity:1; transform:translate(0)}

.gsClass.blurShow{ opacity: 0; filter: blur(10px); transition: 1s;}
.gsClass.blurShow.mT{ transform:translateY(7vh)}
.gsClass.blurShow.mB{ transform:translateY(-7vh)}
.gsClass.blurShow.mL{ transform:translateX(7vw)}
.gsClass.blurShow.mR{ transform:translateX(-7vw)}
.gsClass.blurShow.on{ opacity: 1; filter: blur(0px); transform: translateY(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{ overflow:hidden}
.gsClass.tShow:first-child{margin-bottom: .2em;}
.gsClass.tShow > i{ transform:translateY(150%); display: block; transition:1s}
.gsClass.tShow.on > i{transform:translateY(0)}
.gsClass.tShow.on.d1 > i{ transition-delay:.2s}
.gsClass.tShow.on.d2 > i{ transition-delay:.4s}
.gsClass.tShow.on.d3 > i{ transition-delay:1.2s}

.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(15%); 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;}
