/* アニメーション用CSS */

/* ページロード時のフェードインアニメーション用 */
.main-image,
.main-text,
.main-detail,
.l-header {
  opacity: 0;
}

/* 回転アニメーション */
@keyframes rotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.main-movie__scl {
  animation: rotate 15s linear infinite;
}

/* prologue背景動画 */
.prologue {
  position: relative;
  overflow: hidden;
}

.prologue-bg-video {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  object-fit: cover;
  z-index: 0;  opacity: 0;
}

.prologue-bg-video.is-visible {
  opacity: 1;}

.prologue-title,
.prologue-inner {
  position: relative;
  z-index: 1;
}

/* prologueムービー要素の初期状態 */
.prologue-item__movie01,
.prologue-item__movie02,
.prologue-item__movie03,
.prologue-item__movie04,
.prologue-item__movie05 {
  opacity: 0;
}

/* prologueテキスト要素の初期状態（ぼかし） */
.prologue-item01__texts01,
.prologue-item01__texts02,
.prologue-item02__texts01,
.prologue-item02__texts02,
.prologue-item02__texts03,
.prologue-item__text03{
  opacity: 0;
  filter: blur(10px);
}

/* world-itemの高さ */
.world-items {
  position: relative;
  height: 100vh;
  background-color:#000;
}

.world-item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  opacity: 0;
  transition: opacity 0.6s ease;
}

.world-item__inner {
  opacity: 0;
  transition: opacity 0.6s 0.2s ease;
}


/* コンテナの状態に応じて表示を切り替え */
.world-items.-now .world-item.-now,
.world-items.-future .world-item.-future,
.world-items.-past .world-item.-past {
  opacity: 1;
  transition: opacity 0.6s 0.1s ease;
}

.world-items.-now .world-item.-now .world-item__inner,
.world-items.-future .world-item.-future .world-item__inner,
.world-items.-past .world-item.-past .world-item__inner {
  opacity: 1;
}

/* character-textsの初期状態 */
.character-texts {
  opacity: 0;
}

.snowarea{
  position: relative;
}

.snowarea__snow{
  position:fixed;
  left:0;
  top:0;
  width:100vw;
  height:100vh;
  z-index:1;
  pointer-events: none;

}

.main,
.character,
.system,
.creator,
.platform,
.spec,
footer{
  position:relative;
  z-index:2;
}
