/*------------------------------------
トップページ　ローディング画面用CSS
------------------------------------*/
/* アニメーション */
.animation-content {
  opacity: 0;
  -webkit-transform: translate(0px, 0) scale(0);
          transform: translate(0px, 0) scale(0);
}
.fadeup.is-animated {
  -webkit-animation: fadeup 1.5s cubic-bezier(0.33, 1, 0.68, 1) 1 forwards;
          animation: fadeup 1.5s cubic-bezier(0.33, 1, 0.68, 1) 1 forwards;
}

@-webkit-keyframes fadeup {
  0% {
    -webkit-transform: translateY(30px);
            transform: translateY(30px);
    opacity: 0;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes fadeup {
  0% {
    -webkit-transform: translateY(30px);
            transform: translateY(30px);
    opacity: 0;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

/* ページ読み込み演出：上下カーテン */
.page-intro{
  position: fixed;
  inset: 0;
  z-index: 99999;
  pointer-events: none; /* クリックを邪魔しない */
  display: grid;
  grid-template-rows: 1fr 1fr;
}
/* 上下のパネル */
.page-intro__panel{
  background: #0b1f3a;
  transform: scaleY(1);
  will-change: transform;
}
/* 上は上方向に縮む */
.page-intro__panel--top{
  transform-origin: top;
}
/* 下は下方向に縮む */
.page-intro__panel--bottom{
  transform-origin: bottom;
}
/* 読み込み完了で開く */
body.is-loaded .page-intro__panel--top{
  animation: curtainOpen .9s cubic-bezier(.77,0,.18,1) forwards;
}
body.is-loaded .page-intro__panel--bottom{
  animation: curtainOpen .9s cubic-bezier(.77,0,.18,1) forwards;
}
@keyframes curtainOpen{
  to { transform: scaleY(0); }
}
/* アニメ後にオーバーレイ自体を消す（クリック/表示負荷をゼロに） */
body.is-loaded .page-intro{
  animation: introHide 0s linear .95s forwards;
}
@keyframes introHide{
  to { visibility: hidden; }
}
/* 動きが苦手な人向け */
@media (prefers-reduced-motion: reduce){
  .page-intro,
  .page-intro__panel{
    animation: none !important;
    transform: none !important;
    visibility: hidden;
  }
}

@media only screen and (max-width: 1080px) {
  
}

@media only screen and (max-width: 767px) {
  
}