@charset "UTF-8";
/**
 * ViewPort Mixin and setting rem to pixel.
 */
/** ここでデザインファイルのサイズを入力 */
/**
 * mixin
 */
/**
 * pxをvwで返す関数
 */
/** デスクトップ上でpxをvwを返す */
/** モバイル上でpxをvwを返す */
/** largeDisplay（1536px以上）でウィンドウサイズサイズに追従するための関数 */
/**
 * Colors
 */
.opening-animation {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: #ff3434;
  opacity: 1;
  transition: opacity 0.8s ease-out;
  overflow: hidden;
}
.opening-animation.is-complete {
  opacity: 0;
}
.opening-animation__canvas {
  width: 100%;
  height: 100%;
  max-width: 1920px;
  max-height: 1080px;
}
@media (max-width: 768px) {
  .opening-animation__canvas {
    transform: scale(2.1) translateX(-3rem);
  }
}

body.is-opening-animation {
  overflow: hidden;
}

.opening-animation-other {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: #ff3434;
  opacity: 1;
  transition: opacity 0.8s ease-out;
  overflow: hidden;
}
.opening-animation-other.is-complete {
  opacity: 0;
}
.opening-animation-other__canvas {
  width: 100%;
  height: 100%;
  max-width: 1920px;
  max-height: 1080px;
}
@media (max-width: 768px) {
  .opening-animation-other__canvas {
    transform: scale(2.1) translateX(-3rem);
  }
}