@charset "utf-8";
/*ローディング画面*/
#loading {
  width: 100vw;
  height: 100vh;
  transition: all 5s;
  background-color: #000000;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
}
/*アニメーション格納
.loader {
  position: fixed;
  top: 45%;
  left: 45%;
  width: 10%;
  aspect-ratio: 1;
  display: grid;
  -webkit-mask: conic-gradient(from 15deg, #0000, #000);
  animation: l26 1s infinite steps(12);
}
.loader, .loader:before, .loader:after {
  background:
    radial-gradient(closest-side at 50% 12.5%, #ffffff 96%, #0000) 50% 0/20% 80% repeat-y, radial-gradient(closest-side at 12.5% 50%, #ffffff 96%, #0000) 0 50%/80% 20% repeat-x;
}
.loader:before, .loader:after {
  content: "";
  grid-area: 1/1;
  transform: rotate(30deg);
}
.loader:after {
  transform: rotate(60deg);
}
@keyframes l26 {
  100% {
    transform: rotate(1turn)
  }
}*/
.loaded {
  opacity: 0;
  visibility: hidden;
}
/*要素を重ねる*/
[id^="kv_bg"] {
  position: relative;
  background-color: #000000;
  overflow: hidden;
}
[id^="kv_logo"] {
  position: absolute;
  width: 25%;
  padding: 20px;
  top: 50%;
  left: 25%;
  transform: translate(-50%, -50%);
}
[id^="js-fade_kv_bg"] {
  opacity: 0;
  transform: scale(1.1);
  transition: opacity 1.5s ease-out 0.17s, transform 1.5s ease-out 0.17s;
}
[id^="js-fade_kv_bg"].is-active {
  opacity: 1;
  transform: scale(1.0);
}
[id^="js-fade_kv_logo"] {
  opacity: 0;
  transition: opacity 1s ease-out 0.42s;
}
[id^="js-fade_kv_logo"].is-active {
  opacity: 1;
}
@media screen and (max-width: 767px) {
  [id^="kv_logo"] {
    width: 50%;
  }
}