@charset "utf-8";

.logo_move {
  width: 110%;
  height: 64px;
  background: #000;
  padding: 10px 0;
  transform: rotate(-5deg);
  transform-origin: center;
  position: relative;
  left: -5%;
  z-index: 99;
}
.scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
}
.scroll-infinity__list--left {
  animation: infinity-scroll-left 28s infinite linear 0.5s both;
}
@keyframes infinity-scroll-left {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
.scroll-infinity__item {
  max-width: 610px;
  width: 150vw;
}
.scroll-infinity__item>img {
  width: 100%;
}

.wave_box {
  display: inline-block;
  background: #fff;
  width: calc(100%  + 40px);
  margin: 40px -20px;
  padding: 20px 20px;
  position: relative;
}
.wave_box:before,
.wave_box:after {
  content: '';
  width: 100%;
  height: 40px;
  position: absolute;
  left: 0;
}
.wave_box:before {
  top: -40px;
  background: url(../images/bgi-wave_top.png) no-repeat center top / 100% auto;
}
.wave_box:after {
  bottom: -40px;
  background: url(../images/bgi-wave_btm.png) no-repeat center bottom / 100% auto;
}

#mv {
  background: #000 url(../images/mv-bgi.png) no-repeat center top / 100% auto;
  position: relative;
  padding: 70px 0 30px;
}
#mv h1 {
  width: 100%;
  text-align: center;
  margin: 0 0 35px;
}
#mv h1 img {
  width: 100%;
  max-width: 356px;
}
#mv p {
  width: 100%;
  text-align: center;
  margin: 0 0 20px;
}
#mv p img {
  width: 100%;
  max-width: 280px;
}
#mv .img {
  width: calc(100% + 40px);
  margin: 0 -20px;
}
#mv .logo_move {
  position: absolute;
  left: -5%;
  bottom: -20px;
}
#sub_navi {
  background: rgba(255,255,255,.6);
  padding: 70px 0 90px;
  position: relative;
}
#sub_navi h2 {
  width: 100%;
  text-align: center;
  margin: 0 0 30px;
  animation: flash 4s linear infinite;
}
@keyframes flash {
  0% {
    opacity: 0;
  }
  5% {
    opacity: 1;
  }
  20% {
    opacity: 0;
  }
  25% {
    opacity: 1;
  }
  40% {
    opacity: 0;
  }
  45% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
#sub_navi h2 img {
  width: auto;
  height: 32px;
}
#sub_navi .nav_list {
  flex-direction: column;
  gap: 15px;
}
#sub_navi .nav_list li {
  width: 100%;
}
#sub_navi .nav_list li img {
  width: 100%;
  height: auto;
}
#sub_navi .logo_move {
  position: absolute;
  left: -5%;
  bottom: -20px;
}
#movie {
  padding: 70px 0 90px;
  position: relative;
}
#movie .ttl_box {
  width: 100%;
  text-align: center;
  position: relative;
  margin: 0 0 42px;
}
#movie .ttl_box .icon {
  width: 90px;
  position: absolute;
  right: 20px;
  bottom: -60px;
  z-index: 5;
  transform-origin: center center;
  animation: gentle-shake 1.8s linear infinite;
}
@keyframes gentle-shake {
  0% {
    transform: rotate(0deg);
  }
  25% {
    transform: rotate(5deg);
  }
  50% {
    transform: rotate(0deg);
  }
  75% {
    transform: rotate(-5deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
#movie h2 {
  width: 100%;
  text-align: center;
}
#movie h2 img {
  width: auto;
  height: 60px;
}
#movie .movie_box {
  width: 100%;
}
#movie .movie_box iframe {
  width: 100%;
  height: 100%;
  aspect-ratio: 16 / 9;
}
#movie .logo_move {
  position: absolute;
  left: -5%;
  bottom: -20px;
}
#live {
  padding: 50px 0 60px;
  position: relative;
}
#live h2 {
  width: 100%;
  text-align: center;
  margin: 0 0 30px;
}
#live h2 img {
  width: auto;
  height: 74px;
}
#live .wave_box {
  padding: 20px 46px;
}
#live .wave_box .images {
  width: 100%;
  margin: 0 0 15px;
}
#live .wave_box h3 {
  width: 100%;
  max-width: 275px;
  margin: 0 auto 15px;
}
#live .wave_box h4 {
  width: 100%;
  max-width: 150px;
  margin: 20px auto 35px;
}
#live .movie {
  width: 100%;
  margin: 40px auto 0;
}
#live .movie video {
  width: 100%;
  height: auto;
  border-radius: 15px;
  overflow: hidden;
}
#live .wave_box p {
  width: 100%;
  max-width: 300px;
  margin: 0 auto;
}
#live .wave_box .btn {
  display: block;
  width: 100%;
  max-width: 300px;
  margin: 40px auto 0;
}
#live .comingsoon {
  width: 100%;
  text-align: center;
  padding-top: 50px;
}
#live .comingsoon img {
  width: auto;
  height: 65px;
}
#live .logo_move {
  position: absolute;
  left: -5%;
  bottom: -20px;
}
#event {
  background: #eb8080;
  padding: 60px 0 90px;
  position: relative;
}
#event .comingsoon {
  width: 100%;
  text-align: center;
}
#event .comingsoon img {
  width: 100%;
  max-width: 231px;
}
#event .logo_move {
  position: absolute;
  left: -5%;
  bottom: -20px;
}
#floor_guide {
  background: #38af00;
  padding: 60px 0 0;
  position: relative;
}
#floor_guide h2 {
  width: 100%;
  text-align: center;
  margin: 0 0 30px;
}
#floor_guide h2 img {
  width: auto;
  height: 87px;
}
#floor_guide .wave_box {
  padding-top: 40px;
  padding-bottom: 40px;
  margin-bottom: 0;
}
#floor_guide .comingsoon {
  width: 100%;
  text-align: center;
}
#floor_guide .comingsoon img {
  width: auto;
  height: 29px;
}
#access {
  padding: 80px 0 125px;
  position: relative;
}
#access .page-top {
  position: absolute;
  right: 30px;
  top: 0;
  transform: translate(0,-20%);
  z-index: 55;
}
#access h2 {
  width: 100%;
  text-align: center;
  margin: 0 0 30px;
}
#access h2 img {
  width: auto;
  height: 30px;
}
#access .map {
  width: 100%;
  margin: 0 0 50px;
}
#access .link_list {
  flex-direction: column;
  gap: 30px;
}
#access .link_list li {
  width: 100%;
  text-align: center;
  margin: 0;
  padding: 0;
}
#access .link_list li img {
  width: 100%;
  height: auto;
}



/* ========================================================================================================
   767px以下
   ========================================================================================================*/
@media screen and (max-width: 767px) {
}