@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: middle}
strong,h1,h2,h3,th{ font-weight:inherit}
input[type=button], input[type=submit], 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:SUIT,sans-serif; font-weight:400; line-height:1.3; color:#111; font-size:16px; -webkit-font-smoothing:antialiased}
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: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; align-items: center; flex-direction:column; justify-content:center; max-width:96vw; height:90vh } 
html.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) } 
html.pop .popWrap .popTit .tit { flex:1 1 100%; padding-top:1em } 
html.pop .popWrap .popTit .tit .t1 { font-weight:800; font-size:1.5em; color: #111; } 
html.pop .popWrap .popTit .popClose { flex:0 0 auto; text-align:center; width:3em; line-height:3em; border-radius:100%; text-align:center; color:#666 } 
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 { position: relative; z-index: 2; background: #fff; box-shadow: 1px 1px 10px rgba(0, 0, 0, .6); text-align: left; white-space: normal; width: 100%; max-width: 96vw; } 
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,.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.popPrivacy { max-width: 42.5vw; border-radius: 1em; overflow: hidden;} 
html.pop .popWrap.popPrivacy .popIn { overflow-y: scroll; } 

.member_agree .agree { padding:3em; border:solid #ddd; border-width:2px 1px 1px 1px; border-top-color:#333; font-size:.95em; color:#777; line-height:1.5em; } 
.member_agree .agree.H { padding:1em 1.5em; border-top-width:1px; height:10em; overflow-y:scroll; } 
.member_agree .agree p { padding:.5em 0; } 
.member_agree .agree * { vertical-align:baseline; } 
.member_agree .agree strong { color:#333; } 
.member_agree .agree h1 { font-size: 1.15em; font-weight: 800; color: #333; margin-bottom: .5em; margin-top: .75em; } 
.member_agree .agree h1:first-of-type { margin-top: 0em; } 
.member_agree .agree h2 { font-size: 1.05em; font-weight: 600; color: #333; margin-bottom: .3em; margin-top: .25em; } 
.member_agree .check { padding:1em 2em; border:solid #ddd; border-width:0 1px }

.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:#e31e26; 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:#e31e26}
.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.25em; 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:rgba(0,0,0,.5); color:#fff}
.swiperBtn.white{ color:#fff; border-color:rgba(255,255,255,.5)}
.swiperBtn.c1{ background:#eee; color:#999;}
.swiperBtn.line.white:hover,
.swiperBtn.line.white.play{ background:rgba(0,0,0,.5); border-color:rgba(255,255,255,.2)}

.swiperPauseWrap .play{ display: none}
.swiperPauseWrap.pause .play{ display: flex}
.swiperPauseWrap.pause .pause{ display: none}
.swiperPaging span.swiper-pagination-progressbar-fill{ background:#e31e26}
.slider_wrap{ position:relative}

.swiperControl{ display:flex; align-items:center; gap:.5em}
.swiperPauseWrap .play{ display: none}
.swiperPauseWrap.pause .play{ display: flex}
.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)}
}
.rotateAni:hover{animation-name: none}

.moveDownAni{ animation-name: moveDownAni; animation-duration: 3s; transform-origin:center; animation-iteration-count: infinite}
@keyframes moveDownAni{
100% {top:150%}
}

.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}

.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);
}
}


.gsSplit > i{ min-width:.25em; transform:translateY(0); opacity:0}
.gsSplit.on > i{ animation-name: splitAni; animation-duration: .5s; animation-fill-mode: forwards;}
@keyframes splitAni{
30% { transform:translateY(-.5em); opacity:0}
100% {transform:translateY(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: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)}

.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(250%,0)}
.gsClass.accordion .el:nth-child(2){ transform:translate(150%,0)}
.gsClass.accordion .el:nth-child(3){ transform:translate(50%,0)}
.gsClass.accordion .el:nth-child(4){ transform:translate(-50%,0)}
.gsClass.accordion .el:nth-child(5){ transform:translate(-150%,0)}
.gsClass.accordion .el:nth-child(6){ transform:translate(-250%,0)}
.gsClass.accordion.on .el{ transform:translate(0,0)}

.soon{background:#fff; border:1px solid #eee; 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;}