@charset "UTF-8";
.common-text, small.reserve-note, .oc-menu-desc, .op-lead, .game-pro-desc, .game-movie-comment-desc, .game-movie-comment-heading span, .game-movie-digest-list-lead, .game-movie-digest-lead, .game-intro-desc, .about-guide-desc {
  font-size: 1.5rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
  text-align: justify;
}

/* ---------------------------------------*/
/* keyvisual */
/* ---------------------------------------*/
#keyvisual {
  margin: 80px 0 0;
  position: relative;
}

.keyvisual_maintitle {
  width: 85.3%;
  position: absolute;
  top: 17.3px;
  left: 0;
  right: 0;
  margin: auto;
}

/* ---------------------------------------*/
/* ingro */
/* ---------------------------------------*/
#intro {
  padding: 12.8% 0 33.6%;
  position: relative;
}
#intro::after {
  display: block;
  content: "";
  width: 20px;
  height: 76px;
  background: url(../img/intro_arrow.webp) no-repeat center/100%;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

.intro-content {
  padding: 12%;
  position: relative;
  background: url(../img/intro_content_bg.webp) repeat-y center/100%;
}
.intro-content::before {
  display: block;
  content: "";
  aspect-ratio: 660/30;
  width: 100%;
  background: url(../img/intro_content_top.webp) no-repeat center/100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.intro-content::after {
  display: block;
  content: "";
  aspect-ratio: 660/30;
  width: 100%;
  background: url(../img/intro_content_bottom.webp) no-repeat center/100%;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.intro-section-heading {
  margin: 0 0 25px;
}

.intro-desc {
  font-size: 1.6rem;
  letter-spacing: 0.07em;
  text-align: justify;
  color: #fff;
}

/* ---------------------------------------*/
/* about */
/* ---------------------------------------*/
#about {
  margin: -80px 0 0;
  padding: calc(9.3% + 80px) 0 16%;
}

.about-content {
  background: #fff;
  padding: 7.4% 12% 17%;
  position: relative;
}
.about-content::before {
  display: block;
  content: "";
  width: 100%;
  aspect-ratio: 660/20;
  background: url(../img/about_content_top.webp) no-repeat center/100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.about-content::after {
  display: block;
  content: "";
  width: 100%;
  aspect-ratio: 660/71;
  background: url(../img/about_content_bottom.webp) no-repeat center/100%;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.about-section-heading {
  width: 91.6%;
  margin: 0 auto 15px;
}

.about-guide {
  width: 65.8%;
  margin: 0 auto 15px;
}

.about-guide-name {
  font-size: 1.7rem;
  font-weight: 400;
  margin: 0 0 7px;
}

/* ---------------------------------------*/
/* game */
/* ---------------------------------------*/
#game {
  margin: -80px 0 0;
  padding: 80px 0 0;
  position: relative;
}

.game-wrapper {
  padding: 42.6% 0 44%;
  background: #fff;
  position: relative;
}
.game-wrapper::before {
  display: block;
  content: "";
  width: 100%;
  aspect-ratio: 750/99;
  background: url(../img/game_top.webp) no-repeat center/100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.game-wrapper::after {
  display: block;
  content: "";
  width: 100%;
  aspect-ratio: 750/112;
  background: url(../img/game_bottom.webp) no-repeat center/100%;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.game-1,
.game-2 {
  display: none;
}

.game-1.is-active,
.game-2.is-active {
  display: block;
}

.game-intro {
  padding: 15% 0 13.6%;
  margin: 0 0 55px;
  position: relative;
}

.game_intro_balloon {
  display: block;
  width: 45.4%;
  position: absolute;
  top: -25px;
  left: 7.2%;
}

.game-intro-desc {
  color: #fff;
  width: 72.7%;
  margin: 0 auto;
}
.game-intro-desc small {
  font-size: 1.2rem;
}

.game-movie-heading {
  margin: 0 auto 13px;
}

.game-movie {
  aspect-ratio: 330/185;
  margin: 0 0 50px;
}
.game-movie iframe {
  width: 100%;
  aspect-ratio: 330/185;
  border-radius: 10px;
}

.game-movide-digest-heading {
  width: 59.3%;
  margin: 0 auto 12px;
}

.game-movie-digest-lead {
  text-align: center;
  margin: 0 0 30px;
}

.game-movie-digest-list {
  margin: 0 0 100px;
}

.game-movie-digest-list__item {
  margin: 0 0 100px;
}
.game-movie-digest-list__item:last-child {
  margin: 0;
}

.game-movie-digest-list-heading {
  width: 50.3%;
  aspect-ratio: 166/36;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 400;
  font-size: 2.3rem;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #fff;
}

.game-movie-digest-list-image {
  margin: 0 0 10px;
}

.game-movie-digest-list-lead {
  text-align: center;
  margin: 0 0 22px;
}

.game-movie-comment-heading {
  position: relative;
}
.game-movie-comment-heading span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1;
  position: absolute;
  top: 0;
  bottom: -6%;
  right: 20%;
  margin: auto;
}
.game-movie-comment-heading::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 0;
  right: 8.48%;
  width: 9.3%;
  aspect-ratio: 64/88;
}

.game-movie-comment-desc {
  padding: 10px 25px 15px;
  position: relative;
}
.game-movie-comment-desc::before {
  display: block;
  content: "";
  width: 100%;
  aspect-ratio: 660/8;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.game-movie-comment-desc::after {
  display: block;
  content: "";
  width: 100%;
  aspect-ratio: 660/30;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.game-1 .game-intro {
  background: url(../img/game_intro_bg-01.webp) repeat-y center/100%;
}
.game-1 .game-intro::before {
  display: block;
  content: "";
  width: 100%;
  aspect-ratio: 655/32;
  background: url(../img/game_intro_top-01.webp) no-repeat center/100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.game-1 .game-intro::after {
  display: block;
  content: "";
  width: 100%;
  aspect-ratio: 655/32;
  background: url(../img/game_intro_bottom-01.webp) no-repeat center/100%;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}
.game-1 .game-section-heading {
  width: 80.3%;
  margin: 0 auto 21px;
}
.game-1 .game-intro-lead {
  width: 68.1%;
  margin: 0 auto 25px;
}
.game-1 .game-movie-digest-list-heading {
  background: url(../img/game_digest_list_heading-01.webp) no-repeat center/100%;
}
.game-1 .game-movie-comment-heading::after {
  background: url(../img/game_movie_comment_icon-01.webp) no-repeat center/100%;
}
.game-1 .game-movie-comment-desc {
  background: url(../img/game_movie_comment_bg-01.webp) repeat-y center/100%;
}
.game-1 .game-movie-comment-desc::before {
  background: url(../img/game_movie_comment_top-01.webp) no-repeat center/100%;
}
.game-1 .game-movie-comment-desc::after {
  background: url(../img/game_movie_comment_bottom-01.webp) no-repeat center/100%;
}

.game-2 .game-intro {
  background: url(../img/game_intro_bg-02.webp) repeat-y center/100%;
}
.game-2 .game-intro::before {
  display: block;
  content: "";
  width: 100%;
  aspect-ratio: 655/32;
  background: url(../img/game_intro_top-02.webp) no-repeat center/100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.game-2 .game-intro::after {
  display: block;
  content: "";
  width: 100%;
  aspect-ratio: 655/32;
  background: url(../img/game_intro_bottom-02.webp) no-repeat center/100%;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}
.game-2 .game-intro .game-movie-comment-desc {
  background: url(../img/game_movie_comment_bg-02.webp) repeat-y center/100%;
}
.game-2 .game-intro .game-movie-comment-desc::before {
  background: url(../img/game_movie_comment_top-02.webp) no-repeat center/100%;
}
.game-2 .game-intro .game-movie-comment-desc::after {
  background: url(../img/game_movie_comment_bottom-02.webp) no-repeat center/100%;
}
.game-2 .game-section-heading {
  width: 83.3%;
  margin: 0 auto 21px;
}
.game-2 .game-intro-lead {
  width: 70.6%;
  margin: 0 auto 25px;
}
.game-2 .game-movie-digest-list-heading {
  background: url(../img/game_digest_list_heading-02.webp) no-repeat center/100%;
}
.game-2 .game-movie-comment-heading::after {
  background: url(../img/game_movie_comment_icon-02.webp) no-repeat center/100%;
}
.game-2 .game-movie-comment-desc {
  background: url(../img/game_movie_comment_bg-02.webp) repeat-y center/100%;
}
.game-2 .game-movie-comment-desc::before {
  background: url(../img/game_movie_comment_top-02.webp) no-repeat center/100%;
}
.game-2 .game-movie-comment-desc::after {
  background: url(../img/game_movie_comment_bottom-02.webp) no-repeat center/100%;
}

.game-pro {
  position: relative;
  padding: 17.5% 0 12.1%;
}
.game-pro::before {
  display: block;
  content: "";
  width: 100%;
  aspect-ratio: 660/70;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.game-pro::after {
  display: block;
  content: "";
  width: 100%;
  aspect-ratio: 660/70;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.game-1 .game-pro {
  background: url(../img/game_pro_bg-01.webp) repeat-y center/100%;
}
.game-1 .game-pro::before {
  background: url(../img/game_pro_top-01.webp) no-repeat center/100%;
}
.game-1 .game-pro::after {
  background: url(../img/game_pro_bottom-01.webp) no-repeat center/100%;
}

.game-2 .game-pro {
  background: url(../img/game_pro_bg-02.webp) repeat-y center/100%;
}
.game-2 .game-pro::before {
  background: url(../img/game_pro_top-02.webp) no-repeat center/100%;
}
.game-2 .game-pro::after {
  background: url(../img/game_pro_bottom-02.webp) no-repeat center/100%;
}

.game-pro-heading {
  width: 90%;
  margin: 0 auto;
}

.game-pro-content {
  width: 80%;
  margin: 0 auto;
}

.game-pro-person {
  width: 54.7%;
  margin: 0 auto;
}

.game-pro-name {
  margin: 0 0 20px;
}

.game-pro-post {
  padding: 0 0 25px;
  margin: 0 0 25px;
}
.game-pro-post dt {
  font-size: 1.3rem;
  text-align: left;
}
.game-pro-post dt:after {
  content: "：";
}
.game-pro-post dd {
  font-size: 1.3rem;
  line-height: 1.53;
  letter-spacing: 0.28em;
  text-align: left;
}

.game-1 .game-pro-post {
  border-bottom: solid 2px #005E5B;
}

.game-2 .game-pro-post {
  border-bottom: solid 2px #2D4390;
}

.splide {
  margin: 0;
}

.splide__arrow {
  all: unset !important;
}

.splide__arrow > svg {
  display: none !important;
}

.splide__arrows {
  position: absolute;
  left: 0;
  right: 0;
  top: 20%;
  z-index: 2;
}

.splide__arrow {
  width: 45px !important;
  height: 45px !important;
  position: absolute;
}

.splide__arrow--next {
  background: url(../img/game_pro_arrow-fwd.webp) no-repeat center/100% !important;
  position: absolute !important;
  right: 5% !important;
}
.splide__arrow--next:hover {
  -webkit-transition: none;
  transition: none;
  opacity: 1;
  cursor: pointer !important;
  -webkit-filter: drop-shadow(5px 5px 0 #000) !important;
          filter: drop-shadow(5px 5px 0 #000) !important;
}
@media screen and (max-width: 768px) {
  .splide__arrow--next:hover {
    -webkit-transform: none;
            transform: none;
    -webkit-filter: none;
            filter: none;
  }
}

.splide__arrow--prev {
  background: url(../img/game_pro_arrow-prv.webp) no-repeat center/100% !important;
  position: absolute !important;
  left: 5% !important;
}
.splide__arrow--prev:hover {
  -webkit-transition: none;
  transition: none;
  opacity: 1;
  cursor: pointer !important;
  -webkit-filter: drop-shadow(-5px 5px 0 #000) !important;
          filter: drop-shadow(-5px 5px 0 #000) !important;
}

.splide__arrow {
  opacity: 1;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

.splide__arrow:disabled {
  opacity: 0.5 !important;
}
.splide__arrow:disabled:hover {
  cursor: default !important;
  -webkit-filter: none !important;
          filter: none !important;
}

.splide__pagination {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  bottom: -12% !important;
  left: 0;
  right: 0;
  margin: auto;
  position: absolute;
}

.splide__pagination__page {
  all: unset;
  width: 80px !important;
  height: 3px !important;
  border-radius: 99px !important;
  background: #B1B1B1 !important;
  cursor: pointer;
  margin: 0 5px;
}

.splide__pagination__page.is-active {
  background: #2D4390 !important;
  -webkit-transform: none !important;
          transform: none !important;
}

/* ---------------------------------------*/
/* oc */
/* ---------------------------------------*/
#oc {
  margin: -80px 0 0;
  padding: calc(80px + 18.6%) 0 32%;
  position: relative;
}
#oc::after {
  display: block;
  content: "";
  width: 100%;
  aspect-ratio: 750/100;
  background: url(../img/oc_bottom.webp) no-repeat center/100%;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.op-section-heading {
  width: 93.7%;
  margin: 0 auto 38px;
}

.op-lead {
  width: 75%;
  margin: 0 auto 46px;
  text-align: justify;
  color: #fff;
}

.op-schedule-heading {
  margin: 0 0 43px;
}

.op-schedule-list {
  margin: 0 0 62px;
}

.op-schedule-list__item {
  margin: 0 0 49px;
}
.op-schedule-list__item a {
  display: inline-block;
  -webkit-transition: none;
  transition: none;
}
.op-schedule-list__item a:hover {
  -webkit-transform: translate(-10px, -10px);
          transform: translate(-10px, -10px);
  -webkit-filter: drop-shadow(10px 10px 0 #000);
          filter: drop-shadow(10px 10px 0 #000);
  opacity: 1;
}
.op-schedule-list__item:last-child {
  margin: 0;
}
@media screen and (max-width: 768px) {
  .op-schedule-list__item a:hover {
    -webkit-transform: none;
            transform: none;
    -webkit-filter: none;
            filter: none;
  }
}

.op-menu-list__item {
  padding: 21% 7.8% 13.6%;
  background: url(../img/oc_menu_bg.webp) repeat-y center/100%;
  position: relative;
  margin: 0 0 50px;
}
.op-menu-list__item::before {
  display: block;
  content: "";
  width: 100%;
  aspect-ratio: 672/76;
  background: url(../img/oc_menu_top.webp) no-repeat center/100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.op-menu-list__item::after {
  display: block;
  content: "";
  width: 100%;
  aspect-ratio: 672/76;
  background: url(../img/oc_menu_bottom.webp) no-repeat center/100%;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}
.op-menu-list__item:last-child {
  margin: 0;
}

.oc-menu-heading {
  margin: 0 0 25px;
}

.oc-menu-image {
  margin: 0 0 25px;
}

.op-menu-list-02__item {
  margin: 0 0 55px;
}
.op-menu-list-02__item:last-child {
  margin: 0;
}

.oc-menu-desc {
  width: 85%;
  margin: 0 auto;
  text-align: justify;
}

/* ---------------------------------------*/
/* reserve */
/* ---------------------------------------*/
#reserve {
  margin: -80px 0 0;
  padding: 80px 0 0;
}

.reserve-wrapper {
  background: #fff;
  padding: 23.7% 0 17.8%;
}

.reserve-content {
  border: solid 5px #06C755;
  position: relative;
  padding: 70px 11px 24px;
}
.reserve-content::before {
  display: block;
  content: "";
  width: 100%;
  aspect-ratio: 660/70;
  background: url(../img/reserve_top.webp) no-repeat center/100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

.reserve-section-heading {
  margin: 0 0 25px;
}

.reserve-desc {
  font-size: 1.3rem;
  line-height: 1.84;
  letter-spacing: 0.05em;
  text-align: justify;
  padding-left: 23.8%;
  margin: 0 0 40px;
  position: relative;
}
.reserve-desc::before {
  display: block;
  content: "";
  aspect-ratio: 1/1;
  width: 21%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background: url(../img/icon_line.svg) no-repeat center/100%;
}

.reserve-qr {
  width: 74.4%;
  margin: 0 auto 27px;
}

.reserve-btn {
  width: 77.2%;
  margin: 0 auto 48px;
}

small.reserve-note {
  display: block;
  width: 89%;
  margin: 0 auto 1em;
}
small.reserve-note:last-of-type {
  margin: 0 auto;
}