@charset "UTF-8";
/* ----------------------------------------------------------------------
	loading / splash
---------------------------------------------------------------------- */
/* .splash-wrap {
  background: var(--bluegray);
} */



#splash {
	position: fixed;
	width: 100%;
	height: 100%;
	background: var(--bluegray);
	z-index: 9999999;
	text-align:center;
	color: var(--white);
  animation-name: splashBgFadeIn;
  animation-duration: 1.2s;
  animation-timing-function: linear;
  animation-delay: 0;
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode:forwards;
  opacity:0;
  -webkit-animation: fadeInAnime 1s linear 0 1 normal forwards;
  -webkit-opacity: 0;
}

@keyframes splashBgFadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

#splash-logo {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
  animation-name: splashLogoFadeIn;
  animation-duration: 1s;
  animation-timing-function: linear;
  animation-delay: 0.2s;
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode:forwards;
  opacity:0;
  -webkit-animation: fadeInAnime 1s linear 0.8s 1 normal forwards;
  -webkit-opacity: 0;
}

@keyframes splashLogoFadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.splashbg{
  display: none;
}

body.appear .splashbg{
  display: block;
  content: "";
  position:fixed;
	z-index: 999;
  width: 100%;
  height: 100vh;
  top: 0;
	left: 0;
  transform: scaleX(0);
  background-color: var(--midnight);
	animation-name:PageAnime;
	animation-duration:1.2s;
	animation-timing-function:ease-in-out;
	animation-fill-mode:forwards;
}

@keyframes PageAnime{
	0% {
		transform-origin:left;
		transform:scaleX(0);
	}
	50% {
		transform-origin:left;
		transform:scaleX(1);
	}
	50.001% {
		transform-origin:right;
	}
	100% {
		transform-origin:right;
		transform:scaleX(0);
	}
}

#container{
	opacity: 0;
}

body.appear #container{
	animation-name:PageAnimeAppear;
	animation-duration:1s;
	animation-delay: 0.8s;
	animation-fill-mode:forwards;
	opacity: 0;
}

@keyframes PageAnimeAppear{
	0% {
	opacity: 0;
	}
	100% {
	opacity: 1;
  }
}

body.appear2nd #container {
  opacity: 1;
}

/* ----------------------------------------------------------------------
	text animation
---------------------------------------------------------------------- */
.fadeIn {
  opacity: 0;
  perspective: 1000;
}

.fadeIn.is-active {
  animation-name: fadeInAnime;
  animation-duration: 0.6s;
  animation-timing-function: linear;
  animation-delay: 0;
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode:forwards;
  opacity:0;
  -webkit-animation: fadeInAnime 1.5s linear 0 1 normal forwards;
  -webkit-opacity: 0;
}

@keyframes fadeInAnime{
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.fadeUp {
  opacity: 0;
}

.fadeUp.is-active {
  animation-name: fadeUpAnime;
  animation-duration: 1s;
  animation-timing-function: ease-out;
  animation-delay: 0;
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode:forwards;
  opacity:0;
  -webkit-animation: fadeUpAnime 1s ease-out 0 1 normal forwards;
  -webkit-opacity: 0;
}
  
@keyframes fadeUpAnime{
  0% {
    opacity: 0;
    transform: translateY(100px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.eachTextAnime span {
  opacity: 0;
}

.eachTextAnime.is-active span {
  animation-name: textAnimeOn;
  animation-duration: 1s;
  animation-timing-function: ease-out;
  animation-delay: 0;
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode:forwards;
  opacity:0;
  -webkit-animation: textAnimeOn 1s ease-out 0 1 normal forwards;
  -webkit-opacity: 0;
  /* letter-spacing: 0; */
}

@keyframes textAnimeOn {
  0% {
    opacity:0;
  }

  100% {
    opacity:1;
  }
}

.eachTextAnime.is-active span.eTA-item:nth-child(1) {
  animation-delay: 0s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(2) {
  animation-delay: .04s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(3) {
  animation-delay: .08s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(4) {
  animation-delay: .12s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(5) {
  animation-delay: .16s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(6) {
  animation-delay: .20s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(7) {
  animation-delay: .24s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(8) {
  animation-delay: .28s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(9) {
  animation-delay: .32s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(10) {
  animation-delay: .36s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(11) {
  animation-delay: .40s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(12) {
  animation-delay: .44s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(13) {
  animation-delay: .48s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(14) {
  animation-delay: .52s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(15) {
  animation-delay: .56s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(16) {
  animation-delay: .60s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(17) {
  animation-delay: .64s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(18) {
  animation-delay: .68s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(19) {
  animation-delay: .72s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(20) {
  animation-delay: .76s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(21) {
  animation-delay: .80s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(22) {
  animation-delay: .84s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(23) {
  animation-delay: .88s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(24) {
  animation-delay: .92s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(25) {
  animation-delay: .96s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(26) {
  animation-delay: 1s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(27) {
  animation-delay: 1.04s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(28) {
  animation-delay: 1.08s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(29) {
  animation-delay: 1.12s;
}

.eachTextAnime.is-active span.eTA-item:nth-child(30) {
  animation-delay: 1.16s;
}
/* ----------------------------------------------------------------------
	scroll
---------------------------------------------------------------------- */
.scrolldown {
  position:absolute;
  left:90%;
  bottom:1rem;
  height:5rem;
  z-index: 10000;
}

.scrolldown span{
  position: absolute;
  left:-2rem;
  top: -1.5rem;
  color: var(--white);
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  z-index: 10000;
}

.scrolldown::after{
  content: "|";
  position: absolute;
  top: 0;
  width: 0.1rem;
  height: 3rem;
  color: var(--white);
  animation: pathmove 1.4s ease-in-out infinite;
  opacity:0;
  z-index: 10000;
}

@keyframes pathmove{
  0%{
    height:0;
    top:0;
    opacity: 0;
  }
  30%{
    height:30px;
    opacity: 1;
  }
  100%{
    height:0;
    top:50px;
    opacity: 0;
  }
}

/* ----------------------------------------------------------------------
	page top link
---------------------------------------------------------------------- */
#page-top.UpMove{
	animation: UpAnime 1s forwards;
}
@keyframes UpAnime{
  0% {
    opacity: 0;
	  transform: translateY(100px);
  }
  100% {
    opacity: 1;
	  transform: translateY(0);
  }
}

#page-top.DownMove{
	animation: DownAnime 1s forwards;
}
@keyframes DownAnime{
  0% {
  	opacity: 1;
	  transform: translateY(0);
  }
  100% {
  	opacity: 1;
	  transform: translateY(100px);
  }
}