/*@include keyframes(sprite-image) {
    0% {
        @include translate(0, 0);
    }
    100% {
        @include translate(0, -100%);
    }
}*/
:root {
  --vh: 100dvh;
  --y: 10px;
}

@font-face {
  font-family: "KobeyaNumber";
  src: url("../fonts/KobeyaNumber.woff2") format("woff2"), url("../fonts/KobeyaNumber.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
body.open {
  touch-action: none;
  -webkit-overflow-scrolling: none;
  overflow: hidden;
  overscroll-behavior: none;
}

.scrollani--opa {
  opacity: 0;
  transform: translateY(var(--y));
}
.scrollani--opa.view {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 1000ms cubic-bezier(0.26, 0.06, 0, 1), transform 800ms cubic-bezier(0.47, 0.16, 0.24, 1);
}

.scrollani--scale {
  transform: scale(0.95);
  opacity: 0;
}
.scrollani--scale.view {
  transform: scale(1);
  opacity: 1;
  transition: opacity 800ms linear, transform 700ms cubic-bezier(0.3, 0.26, 0.38, 1);
}
.scrollani--scale02 {
  transform: scale(0.9);
}
.scrollani--scale02.view {
  transition: opacity 1200ms ease, transform 1200ms ease;
}

.split-line span {
  display: inline-block;
}
.split-line [data-ani-item] {
  opacity: 0;
  transform: translateY(var(--y));
}
.split-line [data-ani-item].active {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 900ms linear, transform 800ms cubic-bezier(0.47, 0.16, 0.24, 1);
}

#header h1,
#header #menu-sp-btn {
  transition: opacity 1000ms cubic-bezier(0.26, 0.06, 0, 1), transform 800ms cubic-bezier(0.47, 0.16, 0.24, 1);
  opacity: 0;
  transform: translateY(var(--y));
}
#header.view h1,
#header.view #menu-sp-btn {
  opacity: 1;
  transform: translateY(0);
}
@media screen and (min-width: 40em) {
  #header {
    transition: opacity 1200ms cubic-bezier(0.26, 0.06, 0, 1), transform 1200ms cubic-bezier(0.47, 0.16, 0.24, 1);
    opacity: 0;
    transform: translateY(var(--y));
  }
  #header h1,
  #header #menu-sp-btn {
    opacity: 1;
    transform: none;
  }
  #header.view {
    opacity: 1;
    transform: translateY(0);
  }
  #header.view h1,
  #header.view #menu-sp-btn {
    opacity: 1;
    transform: none;
  }
}

#kv {
  position: relative;
}
#kv .kv__img {
  opacity: 0;
}
#kv .kv__img--pan {
  transition: opacity 1600ms cubic-bezier(0.43, 0.05, 0.17, 1);
  position: relative;
  z-index: 1;
}
#kv .kv__img--pan.view {
  opacity: 1;
}
#kv .kv__img--shadow {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  transition: opacity 1200ms linear;
}
#kv .kv__img--shadow img {
  margin-top: 0;
}
#kv .kv__img--shadow.view {
  opacity: 1;
}

#statement-content {
  z-index: 3;
}

#message-content {
  z-index: 2;
}

#outroduction-content .outroduction-sns > a {
  opacity: 0;
  transform: translateY(var(--y));
}
#outroduction-content .outroduction-sns > a.active {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 1000ms cubic-bezier(0.26, 0.06, 0, 1), transform 800ms cubic-bezier(0.47, 0.16, 0.24, 1);
}

#loader {
  position: fixed;
  width: 100%;
  height: var(--vh);
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  top: 0;
  left: 0;
  background-color: rgb(168, 150, 93);
  z-index: 100;
}
#loader span {
  font-family: "KobeyaNumber", "Libre Baskerville", serif;
  font-weight: 400;
  font-style: normal;
  font-size: 19.2px;
  color: var(--ivory);
  font-weight: 500;
}