@charset "UTF-8";
/* ==========================================

◆各スタイルの単位：rem
	※左右のマージン、幅などはvwを用いること。

========================================== */
:root {
  --color-magenta: #b84c97;
  --color-navy: #181b39;
  --color-light-gray: #efefef;
  --color-gray: #b5b5b6;
  --color-orange: #f15a24;
  --color-bright-yellow: #f7931e;
  --color-sky-blue: #3fa9f5;
  --color-red-purple: #e62e8b;
  --color-emerald-green: #00a99d;
  --color-red: #ed1c24;
  --color-violet: #51469a;
  --color-dark-gray: #999999;
  --color-blue: #0071bc;
  --color-light-pink: #faf1fa;
  --transition-ease: ease all 0.3s;
  --padding-sp-inner01: calc((25/750) * 100vw);
}

/* ============================
Foundation
============================ */
/* reset.cssはRCMSのgadget-common.cssにて定義 */
/* common-font.はRCMSのcommon-font.cssにて定義 */
html {
  font-size: 62.5%;
}
@media screen and (max-width: 940px) {
  html {
    font-size: min(10 / 900 * 100vw, 10px);
  }
}
@media screen and (max-width: 767px) {
  html {
    font-size: calc(10 / 750 * 100vw);
  }
}

body {
  font-family: "Noto Sans Japanese", "游ゴシック体", "Yu Gothic", sans-serif;
  color: initial;
  font-size: inherit;
}

img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
}

a {
  color: var(--color-magenta);
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}

/* ============================
Layout
============================ */
/* Header */
/* Footer */
.l-footer {
  background: var(--color-magenta);
}
@media screen and (max-width: 767px) {
  .l-footer {
    padding-bottom: min(15rem, 90px);
  }
}

/* EditorHTML Root */
.ffb-ticket {
  line-height: 1.6;
}

/* FV */
.l-fv__inner {
  width: min(100%, 900px);
  margin: 0 auto 4rem;
}

/* Section */
.l-section {
  padding-bottom: 9rem;
}
@media screen and (max-width: 767px) {
  .l-section {
    padding-bottom: 11rem;
  }
}
.l-section--pagenav {
  padding-bottom: 6.5rem;
}
@media screen and (max-width: 767px) {
  .l-section--pagenav {
    padding-bottom: 10rem;
  }
}
.l-section--seat {
  padding-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .l-section--seat {
    padding-bottom: 7rem;
  }
}
.l-section--access {
  padding-bottom: 7rem;
}
@media screen and (max-width: 767px) {
  .l-section--access {
    padding-bottom: 10rem;
  }
}
.l-section--contact {
  padding-bottom: 13rem;
}
.l-section__inner {
  width: min(100%, 940px);
  margin: auto;
  padding: 0 min(3.3vw, 20px);
  box-sizing: border-box;
}
/* fixed */
.l-fixed {
  position: fixed;
  right: 4rem;
  bottom: 4rem;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .l-fixed {
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
  }
}

/* ============================
Component
============================ */
/* Title */
.c-ttl01 {
  color: #fff;
  font-weight: 600;
  font-size: 2.6rem;
  padding: 0.2em 0 0.2em 1em;
  background: var(--color-navy);
  border-left: 1rem solid var(--color-magenta);
  margin-bottom: 3.5rem;
}
@media screen and (max-width: 767px) {
  .c-ttl01 {
    margin-bottom: 5rem;
  }
}

.c-ttl02 {
  color: var(--color-magenta);
  font-weight: 600;
  font-size: 2rem;
  padding: 0.45em 0 0.45em 1em;
  background: var(--color-light-pink);
  border-left: 1rem solid var(--color-magenta);
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .c-ttl02 {
    margin-bottom: 2.3rem;
  }
}

.c-ttl03 {
  color: var(--color-magenta);
  font-size: 2rem;
  font-weight: 600;
  padding-bottom: 0.2em;
  border-bottom: 0.3rem solid var(--color-magenta);
  margin-bottom: 3rem;
}

.c-ttl04 {
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.2;
  margin-bottom: 2.5rem;
}

.c-ttl05 .-inner {
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1.2;
  color: var(--color-magenta);
  padding: 1rem 1.4rem;
  border: 0.2rem solid var(--color-magenta);
  display: inline-block;
}

/* Txt */
.c-txt01 {
  font-size: 1.6rem;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .c-txt01 {
    line-height: 1.71;
  }
}
.c-txt01 .-small {
  font-size: 0.875em;
}
.c-txt01 + .c-txt01 {
  margin-top: 2.5em;
}

/* Btn */
.c-btn01 {
  box-sizing: border-box;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: min(100%, 45rem);
  min-height: 6rem;
  padding: 1rem 0;
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.25;
  background: var(--color-navy);
  margin: auto;
  transition: var(--transition-ease);
}
@media screen and (max-width: 767px) {
  .c-btn01 {
    font-size: 2.5rem;
    width: calc(600 / 750 * 100vw);
    min-height: 10rem;
    padding: 2rem 0;
  }
}
.c-btn01--magenta {
  background: var(--color-magenta);
}
.c-btn01 .-icon {
  position: absolute;
  right: 2rem;
  top: 0;
  bottom: 0;
  margin: auto;
  background: var(--color-magenta);
  border-radius: 50%;
  height: 3rem;
  width: 3rem;
}
@media screen and (max-width: 767px) {
  .c-btn01 .-icon {
    height: 5rem;
    width: 5rem;
  }
}
.c-btn01 .-icon:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  height: 1.2rem;
  aspect-ratio: 0.8660254038;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  background: #fff;
  translate: 0.1rem;
}
@media screen and (max-width: 767px) {
  .c-btn01 .-icon:after {
    height: 2rem;
    translate: 0.2rem;
  }
}
.c-btn01--magenta .-icon {
  background: var(--color-navy);
}
.c-btn01:hover {
  opacity: 0.85;
  text-decoration: none;
}
.c-btn01 .-small {
  font-size: 0.8em;
}
@media screen and (max-width: 767px) {
  .c-btn01 .-large-sp {
    font-size: 1.24em;
  }
}

/* Tab */
.c-tab-content:not(.--active) {
  display: none;
}

.c-tab01 {
  display: flex;
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 767px) {
  .c-tab01 {
    margin-bottom: 5rem;
  }
}
.c-tab01__item {
  flex: 1;
  color: #fff;
  font-weight: 600;
  font-size: 3rem;
  line-height: 2.65;
  text-align: center;
  background: var(--color-gray);
  transition: var(--transition-ease);
}
.c-tab01__item.--active {
  background: var(--color-magenta);
}
.c-tab01__item:not(.--active):hover {
  cursor: pointer;
  opacity: 0.85;
}
.c-tab01__item a {
  color: inherit;
}

/* Table */
.c-table01 {
  font-size: 1.5rem;
  line-height: 1.7;
  width: min(100%, 660px);
  margin: auto;
}
@media screen and (max-width: 767px) {
  .c-table01 {
    font-size: 1.8rem;
  }
}
.c-table01 th, .c-table01 td {
  border: 0.15rem solid var(--color-magenta);
}
.c-table01 th .-large, .c-table01 td .-large {
  font-size: 1.15em;
}
.c-table01 th {
  color: #fff;
  font-weight: bold;
  background: var(--color-navy);
  font-size: 1.15em;
  padding: 0.7rem 1.2em;
  text-align: center;
}
.c-table01 td {
  background: #fff;
  padding: 0.7rem 2.2em;
}

/* Accordion */
.c-accordion01 {
  font-size: 1.4rem;
  border: 0.3rem solid #ad3f8b;
  color: #ad3f8b;
  text-align: center;
  padding: 0.6rem 0 0.7rem;
  margin: 4rem 0 0;
  border-radius: 25em;
  position: relative;
  cursor: pointer;
  font-weight: bold;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .c-accordion01 {
    font-size: 2.6em;
    border-width: 0.6rem;
    padding: 1.4rem 0 1.6rem;
  }
}
.c-accordion01 .-toggle {
  position: absolute;
  right: 1rem;
  top: 0;
  bottom: 0;
  margin: auto;
  height: 1.6rem;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 767px) {
  .c-accordion01 .-toggle {
    height: 3.2rem;
    right: 3rem;
  }
}
.c-accordion01 .-toggle:before, .c-accordion01 .-toggle:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  border: 0.2rem solid var(--color-magenta);
  transition: var(--transition-ease);
}
@media screen and (max-width: 767px) {
  .c-accordion01 .-toggle:before, .c-accordion01 .-toggle:after {
    border-width: 0.3rem;
  }
}
.c-accordion01 .-toggle:before {
  rotate: 90deg;
}
.c-accordion01.--active .-toggle {
  rotate: 0deg;
}
.c-accordion01.--active .-toggle:after {
  opacity: 0;
}

/* ============================
Project
============================ */
/* pagenav */
.p-pagenav {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 1.7rem;
}
@media screen and (max-width: 767px) {
  .p-pagenav {
    grid-template-columns: repeat(3, 1fr);
    gap: 2.5rem;
    padding: 0 var(--padding-sp-inner01);
  }
}
.p-pagenav__item {
  transition: var(--transition-ease);
}
.p-pagenav__item:hover {
  opacity: 0.85;
}

/* seat */
.p-seat {
  display: flex;
  gap: 2rem;
  overflow-y: visible;
  padding-bottom: 9.5rem; /* 矢印ボタンの高さ */
}
@media screen and (max-width: 767px) {
  .p-seat {
    display: block;
    padding-bottom: 3rem;
  }
}
.p-seat__left {
  flex: 1;
}
@media screen and (max-width: 767px) {
  .p-seat__left {
    margin-bottom: 5rem;
  }
}
@media screen and (max-width: 767px) {
  .p-seat__left.-aizu {
    margin-bottom: 2.5rem;
  }
}
.p-seat__right {
  width: 50%;
  overflow: visible;
}
@media screen and (max-width: 767px) {
  .p-seat__right {
    width: initial;
  }
}
.p-seat__right.-aizu {
  width: 43%;
}
@media screen and (max-width: 767px) {
  .p-seat__right.-aizu {
    width: initial;
  }
}
.p-seat__map__item {
  position: relative;
  transition: var(--transition-ease);
  display: block;
}
.p-seat__map__item:hover {
  opacity: 0.85;
  cursor: pointer;
}
.p-seat__map__item .-icon {
  display: block;
  position: absolute;
  left: unset;
  right: 0;
  bottom: 0;
  height: 5rem;
  aspect-ratio: 1/1;
  background: var(--color-magenta);
}
.p-seat__map__item .-icon:before, .p-seat__map__item .-icon:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  border: 0.2rem solid #fff;
  height: 2.1rem;
  width: 0;
}
.p-seat__map__item .-icon:before {
  rotate: 90deg;
}
.p-seat__map__item:not(.--active) {
  display: none;
}
.p-seat__map__item img {
  display: block;
  width: 100%;
  padding: 0;
}
.p-seat__nav {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  justify-content: space-between;
  gap: 2.3rem 2.5rem;
  margin: 2.5rem auto 0;
}
@media screen and (max-width: 767px) {
  .p-seat__nav {
    width: 69.2%;
    margin: 5rem auto 0;
  }
}
.p-seat__nav__item {
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "abolition", sans-serif;
  color: #fff;
  font-size: 4rem;
  line-height: 1;
  aspect-ratio: 1/1;
  background: var(--color-gray);
  transition: var(--transition-ease);
}
.p-seat__nav__item .-small {
  font-size: 0.75em;
}
.p-seat__nav__item:hover {
  cursor: pointer;
}
.p-seat__nav__item:nth-child(1):hover, .p-seat__nav__item:nth-child(1).--active {
  background: var(--color-magenta);
}
.p-seat__nav__item:nth-child(2):hover, .p-seat__nav__item:nth-child(2).--active {
  background: var(--color-orange);
}
.p-seat__nav__item:nth-child(3):hover, .p-seat__nav__item:nth-child(3).--active {
  background: var(--color-bright-yellow);
}
.p-seat__nav__item:nth-child(4):hover, .p-seat__nav__item:nth-child(4).--active {
  background: var(--color-sky-blue);
}
.p-seat__nav__item:nth-child(5):hover, .p-seat__nav__item:nth-child(5).--active {
  background: var(--color-red-purple);
}
.p-seat__nav__item:nth-child(6):hover, .p-seat__nav__item:nth-child(6).--active {
  background: var(--color-emerald-green);
}
.p-seat__nav__item:nth-child(7):hover, .p-seat__nav__item:nth-child(7).--active {
  background: var(--color-emerald-green);
}
.p-seat__nav__item:nth-child(8):hover, .p-seat__nav__item:nth-child(8).--active {
  background: var(--color-emerald-green);
}
.p-seat__nav__item:nth-child(9):hover, .p-seat__nav__item:nth-child(9).--active {
  background: var(--color-red);
}
.p-seat__nav__item:nth-child(10):hover, .p-seat__nav__item:nth-child(10).--active {
  background: var(--color-violet);
}
.p-seat__nav__item:nth-child(11):hover, .p-seat__nav__item:nth-child(11).--active {
  background: var(--color-blue);
}
.p-seat__nav__item:nth-child(12):hover, .p-seat__nav__item:nth-child(12).--active {
  background: var(--color-magenta);
}
.p-seat__content__intro {
  font-size: 2rem;
  font-weight: 600;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-seat__content__intro {
    font-size: 3rem;
  }
}
.p-seat__content__ttl {
  color: #fff;
  font-size: 2.4rem;
  font-weight: 600;
  padding: 0.25em 0 0.25em 1em;
  background: var(--color-navy);
  border-left: 3rem solid var(--color-magenta);
}
.p-seat__content__ttl--orange {
  border-color: var(--color-orange);
}
.p-seat__content__ttl--bright-yellow {
  border-color: var(--color-bright-yellow);
}
.p-seat__content__ttl--sky-blue {
  border-color: var(--color-sky-blue);
}
.p-seat__content__ttl--red-purple {
  border-color: var(--color-red-purple);
}
.p-seat__content__ttl--emerald-green {
  border-color: var(--color-emerald-green);
}
.p-seat__content__ttl--red {
  border-color: var(--color-red);
}
.p-seat__content__ttl--violet {
  border-color: var(--color-violet);
}
.p-seat__content__ttl--blue {
  border-color: var(--color-blue);
}
.p-seat__content__ttl--magenta {
  border-color: var(--color-magenta);
}
@media screen and (max-width: 767px) {
  .p-seat__content__ttl {
    font-size: 3.8rem;
    border-left-width: 4.6rem;
  }
}
.p-seat__content__ttl02 {
  color: #fff;
  font-size: 2rem;
  font-weight: 600;
  text-align: center;
  background: var(--color-magenta);
  padding: 0.35em 0;
}
@media screen and (max-width: 767px) {
  .p-seat__content__ttl02 {
    font-size: 3rem;
    padding: 0.45em 0;
  }
}
.p-seat__content__txts {
  border: 0.3rem solid var(--color-magenta);
  padding: 2.5rem 2.5rem 2rem;
}
@media screen and (max-width: 767px) {
  .p-seat__content__txts {
    border-width: 0.45rem;
    padding: 3rem calc(30 / 750 * 100vw);
  }
}
.p-seat__content__txts:not(.--nottl) {
  border-top: none;
}
.p-seat__content__txts.-aizu {
  border: none;
  padding: 2.3rem 0 0;
}
.p-seat__content__txts img {
  width: 100%;
}
.p-seat__content__txt {
  font-size: 1.4rem;
  line-height: 1.28;
  margin-top: 2rem;
}
.p-seat__content__txt ~ .p-seat__content__txt {
  margin-top: 0.5rem;
}
@media screen and (max-width: 767px) {
  .p-seat__content__txt {
    font-size: 2.2rem;
  }
}
.p-seat__content__txt.-aizu {
  font-size: 1.6rem;
}
@media screen and (max-width: 767px) {
  .p-seat__content__txt.-aizu {
    font-size: 2.35rem;
  }
}
.p-seat__content__check .-ttl {
  font-size: 2rem;
  line-height: 1.25;
  font-weight: 600;
  text-align: center;
  margin-top: 4rem;
}
@media screen and (max-width: 767px) {
  .p-seat__content__check .-ttl {
    font-size: 3rem;
    margin-top: 6.5rem;
  }
}
.p-seat__content__check .-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  justify-content: space-between;
  gap: 1.6rem 1.8rem;
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-seat__content__check .-list {
    margin-top: 3.5rem;
    gap: calc(32 / 750 * 100vw);
  }
}
.p-seat__content__check .-list .-item {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "abolition", sans-serif;
  color: #fff;
  font-size: 5rem;
  line-height: 1;
  aspect-ratio: 1/1;
  background: var(--color-magenta);
  transition: var(--transition-ease);
}
@media screen and (max-width: 767px) {
  .p-seat__content__check .-list .-item {
    font-size: 7.7rem;
  }
}
.p-seat__content__check .-list .-item:hover {
  cursor: pointer;
  text-decoration: none;
  opacity: 0.75;
}
.p-seat__content__check .-list .-item:after {
  display: block;
  content: "＋";
  position: absolute;
  right: 0.25rem;
  bottom: 0.25rem;
  font-size: 2rem;
  font-weight: 600;
}
.p-seat__content__check .-pictures {
  display: none;
}
.p-seat .slick-arrow {
  position: absolute;
  top: 63.5rem;
  left: calc(0% - (7.5rem + 2rem) - 10rem);
  z-index: 1;
  background: var(--color-magenta) !important;
  border-radius: 50%;
  height: 7.5rem;
  width: 7.5rem;
  transition: var(--transition-ease);
}
@media screen and (max-width: 940px) {
  .p-seat .slick-arrow {
    top: calc(600 / 900 * 100vw);
  }
}
@media screen and (max-width: 767px) {
  .p-seat .slick-arrow {
    height: 5rem;
    width: 5rem;
    display: none !important;
  }
}
.p-seat .slick-arrow.slick-prev {
  scale: -1 1;
  left: calc(0% - (90rem - 2rem) / 2 + 10rem);
}
.p-seat .slick-arrow:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  height: 3rem;
  aspect-ratio: 0.8660254038;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  background: #fff;
  translate: 0.4rem;
}
@media screen and (max-width: 767px) {
  .p-seat .slick-arrow:after {
    height: 2rem;
    translate: 0.2rem;
  }
}
.p-seat .slick-arrow:hover {
  opacity: 0.8;
}

/* seat > FancyBOx */
.-pictures__wrap {
  width: min(100%, 74rem);
  padding: 0;
}
.-pictures__wrap ~ .f-caption {
  font-size: 1.8rem;
  font-weight: 600;
  color: #000;
}
@media screen and (max-width: 767px) {
  .-pictures__wrap ~ .f-caption {
    font-size: 2.4rem;
    padding: 4rem 0;
  }
}

/* schedule */
.p-schedule__link {
  position: relative;
  transition: var(--transition-ease);
}
.p-schedule__link:hover {
  opacity: 0.85;
}
.p-schedule__link .-inner {
  padding: 0;
}
.p-schedule__link .-icon {
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  height: 5rem;
  aspect-ratio: 1/1;
  background: var(--color-magenta);
}
.p-schedule__link .-icon:before, .p-schedule__link .-icon:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  border: 0.2rem solid #fff;
  height: 2.1rem;
  width: 0;
}
.p-schedule__link .-icon:before {
  rotate: 90deg;
}

/* ticket-info */
.p-ticket-info {
  display: flex;
  justify-content: space-between;
  gap: 3rem;
  padding-top: 4rem;
}
@media screen and (max-width: 767px) {
  .p-ticket-info {
    display: block;
  }
}
.p-ticket-info__left {
  flex: 1;
}
.p-ticket-info__left__ttl {
  font-size: 1.8rem;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .p-ticket-info__left__ttl {
    font-size: 2.8rem;
  }
}
.p-ticket-info__left__txt {
  font-size: 1.4rem;
  margin-top: 0.4rem;
}
@media screen and (max-width: 767px) {
  .p-ticket-info__left__txt {
    font-size: 1.8rem;
  }
}
.p-ticket-info__left__link {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 5.5rem;
  clip-path: polygon(calc(100% - 2.5rem) 0, 100% 50%, calc(100% - 2.5rem) 100%, 0 100%, 0 0);
  color: #fff;
  font-size: 1.4rem;
  background: var(--color-magenta);
  padding: 1rem 0;
  box-sizing: border-box;
  transition: var(--transition-ease);
  margin-top: 1rem;
}
@media screen and (max-width: 767px) {
  .p-ticket-info__left__link {
    font-size: 2.7rem;
    width: 91%;
    min-height: 8rem;
  }
}
.p-ticket-info__left__link:hover {
  text-decoration: none;
  opacity: 0.85;
}
.p-ticket-info__right {
  width: 60%;
}
@media screen and (max-width: 767px) {
  .p-ticket-info__right {
    margin-top: 3rem;
    width: initial;
  }
}

/* .p-ticket-table */
.p-ticket-table {
  display: grid;
  grid-template-columns: 1fr 80%;
  font-size: 1.5rem;
  border: 0.1rem solid var(--color-dark-gray);
}
@media screen and (max-width: 767px) {
  .p-ticket-table {
    font-size: 2.2rem;
  }
}
.p-ticket-table ~ .p-ticket-table {
  border-top: none;
}
.p-ticket-table__ttl {
  display: grid;
  place-items: center;
  background: #efefef;
}
.p-ticket-table__data {
  padding: 1.5rem 2rem;
}
.p-ticket-table .-marker {
  color: var(--color-magenta);
}
.p-ticket-table .-link {
  text-decoration: underline;
}
.p-ticket-table .-link:hover {
  text-decoration: none;
}

/* FAQ */
.p-faq__q {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.25;
  background: var(--color-light-pink);
  min-height: 5rem;
  position: relative;
  padding: 0 5rem 0 7rem;
  transition: var(--transition-ease);
}
.p-faq__q:hover {
  opacity: 0.85;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .p-faq__q {
    padding: 0.5rem 8rem 0.5rem 7rem;
  }
}
.p-faq__q:before {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "Q";
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 2.6rem;
  font-weight: 600;
  line-height: 1;
  width: 5rem;
  background: var(--color-magenta);
}
.p-faq__q .-toggle {
  position: absolute;
  right: 1rem;
  top: 0;
  bottom: 0;
  margin: auto;
  height: 1.6rem;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 767px) {
  .p-faq__q .-toggle {
    height: 1.7rem;
  }
}
.p-faq__q .-toggle:before, .p-faq__q .-toggle:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  border: 0.2rem solid var(--color-magenta);
  transition: var(--transition-ease);
}
.p-faq__q .-toggle:before {
  rotate: 90deg;
}
.p-faq__q.--active .-toggle:after {
  opacity: 0;
}
.p-faq__q ~ .p-faq__q {
  margin-top: 2.5rem;
}
.p-faq__a {
  font-size: 1.6rem;
  line-height: 1.5;
  margin-top: 2rem;
}

/* Ticket Info Toggle */
.other-sitepay {
  font-size: 1.4rem;
  border: 0.3rem solid #ad3f8b;
  color: #ad3f8b;
  text-align: center;
  padding: 0.6rem 0 0.7rem;
  margin: 3em 0 0;
  border-radius: 25em;
  position: relative;
  cursor: pointer;
  font-weight: bold;
}
.other-sitepay:after {
  content: "＋";
  position: absolute;
  right: 2rem;
  top: 0;
  bottom: 0;
  margin: auto;
  font-size: 1.5em;
}
.other-sitepay.selected:after {
  content: "－";
}

/* Ticket Info */
.ticket-info-inner * {
  color: #000;
}
.ticket-info-inner > div {
  width: 30%;
  margin: 0 4em 0 3em;
}
.ticket-info-inner dl dt, .ticket-info-inner dl dd {
  font-size: 0.85em;
  padding: 0.5em;
  box-sizing: border-box;
  border-bottom: 1px solid #b4b4b4;
}
.ticket-info-inner dl dt:last-of-type, .ticket-info-inner dl dd:last-of-type {
  margin-bottom: -1px;
}
.ticket-info-inner > span {
  display: flex;
  align-items: center;
}
.ticket-info-inner dl {
  width: 60%;
  display: flex;
  flex-wrap: wrap;
  border: 1px solid #b4b4b4;
}
.ticket-info-inner dl dt {
  width: 20%;
  background: rgba(238, 238, 238, 0.9333333333);
}
.ticket-info-inner dl dd {
  width: 80%;
}
.ticket-info-inner dl dd a {
  color: #ad3f8b;
  text-decoration: none;
  margin: 0 0.25em;
}
.ticket-info-inner dl .ticket-pay {
  display: flex;
  font-size: 0.9vw;
  color: #ad3f8b;
  justify-content: center;
  align-items: center;
  font-weight: bold;
}
.ticket-info-inner dl .ticket-pay p {
  font-size: 0.8vw;
  padding: 0 1em;
}
.ticket-info-inner .bticket-link {
  border: 1px solid #ad3f8b;
  border-right: none;
  margin-top: 1em;
  position: relative;
  height: 55px;
  box-sizing: border-box;
  width: 95%;
  background: #ad3f8b;
}
.ticket-info-inner .bticket-link a {
  z-index: 100;
  position: relative;
  padding-left: 0.5em;
  display: block;
  width: 100%;
  text-align: center;
  font-weight: bold;
  color: #fff;
  line-height: 53px;
}
.ticket-info-inner .bticket-link:before {
  content: "";
  width: 38px;
  height: 38px;
  border-top: solid 1px #ad3f8b;
  border-right: solid 1px #ad3f8b;
  position: absolute;
  right: -20px;
  top: 7px;
  transform: rotate(45deg);
  background: #ad3f8b;
}

/* Footer */
.p-footer {
  margin-inline: auto;
  max-width: 750px;
  max-width: 46.875rem;
  padding-bottom: 20px;
  padding-bottom: 1.25rem;
  padding-top: 30px;
  padding-top: 1.875rem;
}
.p-footer__top {
  margin-inline: auto;
  cursor: pointer;
  transition: all 0.3s;
  width: 30rem;
}
.p-footer__top:hover {
  opacity: 0.8;
}
.p-footer__logo {
  margin-inline: auto;
  margin-top: 40px;
  margin-top: 2.5rem;
  width: 250px;
  width: 15.625rem;
}
.p-footer__sns {
  gap: 30px;
  gap: 1.875rem;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 45px;
  margin-top: 2.8125rem;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}
.p-footer__sns li {
  width: 100px;
  width: 6.25rem;
}
.p-footer__sns li a {
  display: block;
}
.p-footer__copy {
  color: white;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.1666666667;
  margin-top: 35px;
  margin-top: 2.1875rem;
  text-align: center;
}

.p-btn-top {
  text-align: right;
  margin-bottom: 1.8rem;
  transition: var(--transition-ease);
}
@media screen and (max-width: 767px) {
  .p-btn-top {
    margin-right: 2vw;
  }
}
.p-btn-top__link {
  transition: inherit;
  cursor: pointer;
  display: none;
}
.p-btn-top__link:hover {
  opacity: 0.8;
}
@media screen and (max-width: 767px) {
  .p-btn-top__link {
    display: inline-block;
    height: 10rem;
    aspect-ratio: 1/1;
  }
}

.p-ticket-fix {
  background: #fff;
}
@media screen and (max-width: 767px) {
  .p-ticket-fix {
    width: 100%;
    background: rgba(255, 255, 255, 0.8);
    text-align: center;
    padding: 1.2rem 0;
  }
}
.p-ticket-fix__link {
  transition: var(--transition-ease);
  width: 80vw;
}
.p-ticket-fix__link:hover {
  opacity: 0.8;
}

/* ============================
Scope
============================ */
/* icon-ticket */
.l-section--seat .-icon-ticket {
  margin: 0px 1.5rem -0.2rem -4rem;
  display: block;
}
@media screen and (max-width: 767px) {
  .l-section--seat .-icon-ticket {
    width: 16rem;
    margin: 0px 3rem -0.2rem -7.7rem;
  }
}

/* icon-gmap */
.l-section--access .-icon-gmap {
  margin: 0px 1.5rem -0.2rem -1rem;
  display: block;
}
@media screen and (max-width: 767px) {
  .l-section--access .-icon-gmap {
    width: 4rem;
    margin: 0px 3rem -0.2rem -3rem;
  }
}

/* Seat Slider */
.p-seat__content .slick-slide {
  margin: 0;
}

/* Method Slider */
.slick-dotted.slick-slider.p-methodslider {
  margin-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .slick-dotted.slick-slider.p-methodslider .slick-slide {
    margin: 0 calc(50 / 750 * 100vw);
  }
}
@media screen and (max-width: 767px) {
  .slick-dotted.slick-slider.p-methodslider .slick-slide img {
    width: calc(600 / 750 * 100vw);
  }
}
.slick-dotted.slick-slider.p-methodslider .slick-dots {
  position: relative;
  bottom: initial;
  margin-top: 4.5rem;
}
@media screen and (max-width: 767px) {
  .slick-dotted.slick-slider.p-methodslider .slick-dots {
    margin-top: 5rem;
  }
}
.slick-dotted.slick-slider.p-methodslider .slick-dots li {
  margin: 0;
  width: auto;
  height: auto;
  width: 3rem;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 767px) {
  .slick-dotted.slick-slider.p-methodslider .slick-dots li {
    width: calc(50 / 750 * 100vw);
  }
}
.slick-dotted.slick-slider.p-methodslider .slick-dots li:nth-child(n+2) {
  margin-left: 2rem;
}
@media screen and (max-width: 767px) {
  .slick-dotted.slick-slider.p-methodslider .slick-dots li:nth-child(n+2) {
    margin-left: calc(40 / 750 * 100vw);
  }
}
.slick-dotted.slick-slider.p-methodslider .slick-dots li button {
  width: 100%;
  height: 100%;
}
.slick-dotted.slick-slider.p-methodslider .slick-dots li button:before {
  content: "";
  background: var(--color-gray);
  width: 100%;
  height: 100%;
  opacity: 1;
}
.slick-dotted.slick-slider.p-methodslider .slick-dots li.slick-active button:before {
  background: var(--color-magenta);
  opacity: 1;
}
.slick-dotted.slick-slider.p-methodslider .slick-arrow {
  background: var(--color-magenta);
  border-radius: 50%;
  width: 5rem;
  height: 5rem;
  z-index: 1;
  transition: var(--transition-ease);
  top: 0;
  bottom: 0;
  margin: auto;
}
@media screen and (max-width: 767px) {
  .slick-dotted.slick-slider.p-methodslider .slick-arrow {
    width: 8rem;
    height: 8rem;
  }
}
.slick-dotted.slick-slider.p-methodslider .slick-arrow:before {
  content: "";
  height: 2rem;
  aspect-ratio: 0.8660254038;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  background: #fff;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  translate: 0.122rem;
}
@media screen and (max-width: 767px) {
  .slick-dotted.slick-slider.p-methodslider .slick-arrow:before {
    height: 3.2rem;
    translate: 0.3rem;
  }
}
.slick-dotted.slick-slider.p-methodslider .slick-arrow.slick-prev {
  scale: -1 1;
  left: 30%;
}
@media screen and (max-width: 940px) {
  .slick-dotted.slick-slider.p-methodslider .slick-arrow.slick-prev {
    left: 26%;
  }
}
@media screen and (max-width: 767px) {
  .slick-dotted.slick-slider.p-methodslider .slick-arrow.slick-prev {
    left: 1.5%;
  }
}
.slick-dotted.slick-slider.p-methodslider .slick-arrow.slick-next {
  right: 30%;
}
@media screen and (max-width: 940px) {
  .slick-dotted.slick-slider.p-methodslider .slick-arrow.slick-next {
    right: 26%;
  }
}
@media screen and (max-width: 767px) {
  .slick-dotted.slick-slider.p-methodslider .slick-arrow.slick-next {
    right: 1.5%;
  }
}
.slick-dotted.slick-slider.p-methodslider .slick-arrow:hover {
  filter: brightness(1.1);
}

/* ============================
Utility
============================ */
/* margin padding */
.u-mt0 {
  margin-top: 0rem !important;
}

.u-mt5 {
  margin-top: 0.5rem !important;
}

.u-mt10 {
  margin-top: 1rem !important;
}

.u-mt15 {
  margin-top: 1.5rem !important;
}

.u-mt20 {
  margin-top: 2rem !important;
}

.u-mt25 {
  margin-top: 2.5rem !important;
}

.u-mt30 {
  margin-top: 3rem !important;
}

.u-mt35 {
  margin-top: 3.5rem !important;
}

.u-mt40 {
  margin-top: 4rem !important;
}

.u-mt45 {
  margin-top: 4.5rem !important;
}

.u-mt50 {
  margin-top: 5rem !important;
}

.u-mt55 {
  margin-top: 5.5rem !important;
}

.u-mt60 {
  margin-top: 6rem !important;
}

.u-mt65 {
  margin-top: 6.5rem !important;
}

.u-mt70 {
  margin-top: 7rem !important;
}

.u-mt75 {
  margin-top: 7.5rem !important;
}

.u-mt80 {
  margin-top: 8rem !important;
}

.u-mt85 {
  margin-top: 8.5rem !important;
}

.u-mt90 {
  margin-top: 9rem !important;
}

.u-mt95 {
  margin-top: 9.5rem !important;
}

.u-mt100 {
  margin-top: 10rem !important;
}

.u-mt105 {
  margin-top: 10.5rem !important;
}

.u-mt110 {
  margin-top: 11rem !important;
}

.u-mt115 {
  margin-top: 11.5rem !important;
}

.u-mt120 {
  margin-top: 12rem !important;
}

.u-mt125 {
  margin-top: 12.5rem !important;
}

.u-mt130 {
  margin-top: 13rem !important;
}

.u-mt135 {
  margin-top: 13.5rem !important;
}

.u-mt140 {
  margin-top: 14rem !important;
}

.u-mt145 {
  margin-top: 14.5rem !important;
}

.u-mt150 {
  margin-top: 15rem !important;
}

@media screen and (max-width: 767px) {
  .u-spmt0 {
    margin-top: 0rem !important;
  }
  .u-spmt5 {
    margin-top: 0.5rem !important;
  }
  .u-spmt10 {
    margin-top: 1rem !important;
  }
  .u-spmt15 {
    margin-top: 1.5rem !important;
  }
  .u-spmt20 {
    margin-top: 2rem !important;
  }
  .u-spmt25 {
    margin-top: 2.5rem !important;
  }
  .u-spmt30 {
    margin-top: 3rem !important;
  }
  .u-spmt35 {
    margin-top: 3.5rem !important;
  }
  .u-spmt40 {
    margin-top: 4rem !important;
  }
  .u-spmt45 {
    margin-top: 4.5rem !important;
  }
  .u-spmt50 {
    margin-top: 5rem !important;
  }
  .u-spmt55 {
    margin-top: 5.5rem !important;
  }
  .u-spmt60 {
    margin-top: 6rem !important;
  }
  .u-spmt65 {
    margin-top: 6.5rem !important;
  }
  .u-spmt70 {
    margin-top: 7rem !important;
  }
  .u-spmt75 {
    margin-top: 7.5rem !important;
  }
  .u-spmt80 {
    margin-top: 8rem !important;
  }
  .u-spmt85 {
    margin-top: 8.5rem !important;
  }
  .u-spmt90 {
    margin-top: 9rem !important;
  }
  .u-spmt95 {
    margin-top: 9.5rem !important;
  }
  .u-spmt100 {
    margin-top: 10rem !important;
  }
  .u-spmt105 {
    margin-top: 10.5rem !important;
  }
  .u-spmt110 {
    margin-top: 11rem !important;
  }
  .u-spmt115 {
    margin-top: 11.5rem !important;
  }
  .u-spmt120 {
    margin-top: 12rem !important;
  }
  .u-spmt125 {
    margin-top: 12.5rem !important;
  }
  .u-spmt130 {
    margin-top: 13rem !important;
  }
  .u-spmt135 {
    margin-top: 13.5rem !important;
  }
  .u-spmt140 {
    margin-top: 14rem !important;
  }
  .u-spmt145 {
    margin-top: 14.5rem !important;
  }
  .u-spmt150 {
    margin-top: 15rem !important;
  }
}
.u-mb0 {
  margin-bottom: 0rem !important;
}

.u-mb5 {
  margin-bottom: 0.5rem !important;
}

.u-mb10 {
  margin-bottom: 1rem !important;
}

.u-mb15 {
  margin-bottom: 1.5rem !important;
}

.u-mb20 {
  margin-bottom: 2rem !important;
}

.u-mb25 {
  margin-bottom: 2.5rem !important;
}

.u-mb30 {
  margin-bottom: 3rem !important;
}

.u-mb35 {
  margin-bottom: 3.5rem !important;
}

.u-mb40 {
  margin-bottom: 4rem !important;
}

.u-mb45 {
  margin-bottom: 4.5rem !important;
}

.u-mb50 {
  margin-bottom: 5rem !important;
}

.u-mb55 {
  margin-bottom: 5.5rem !important;
}

.u-mb60 {
  margin-bottom: 6rem !important;
}

.u-mb65 {
  margin-bottom: 6.5rem !important;
}

.u-mb70 {
  margin-bottom: 7rem !important;
}

.u-mb75 {
  margin-bottom: 7.5rem !important;
}

.u-mb80 {
  margin-bottom: 8rem !important;
}

.u-mb85 {
  margin-bottom: 8.5rem !important;
}

.u-mb90 {
  margin-bottom: 9rem !important;
}

.u-mb95 {
  margin-bottom: 9.5rem !important;
}

.u-mb100 {
  margin-bottom: 10rem !important;
}

.u-mb105 {
  margin-bottom: 10.5rem !important;
}

.u-mb110 {
  margin-bottom: 11rem !important;
}

.u-mb115 {
  margin-bottom: 11.5rem !important;
}

.u-mb120 {
  margin-bottom: 12rem !important;
}

.u-mb125 {
  margin-bottom: 12.5rem !important;
}

.u-mb130 {
  margin-bottom: 13rem !important;
}

.u-mb135 {
  margin-bottom: 13.5rem !important;
}

.u-mb140 {
  margin-bottom: 14rem !important;
}

.u-mb145 {
  margin-bottom: 14.5rem !important;
}

.u-mb150 {
  margin-bottom: 15rem !important;
}

@media screen and (max-width: 767px) {
  .u-spmb0 {
    margin-bottom: 0rem !important;
  }
  .u-spmb5 {
    margin-bottom: 0.5rem !important;
  }
  .u-spmb10 {
    margin-bottom: 1rem !important;
  }
  .u-spmb15 {
    margin-bottom: 1.5rem !important;
  }
  .u-spmb20 {
    margin-bottom: 2rem !important;
  }
  .u-spmb25 {
    margin-bottom: 2.5rem !important;
  }
  .u-spmb30 {
    margin-bottom: 3rem !important;
  }
  .u-spmb35 {
    margin-bottom: 3.5rem !important;
  }
  .u-spmb40 {
    margin-bottom: 4rem !important;
  }
  .u-spmb45 {
    margin-bottom: 4.5rem !important;
  }
  .u-spmb50 {
    margin-bottom: 5rem !important;
  }
  .u-spmb55 {
    margin-bottom: 5.5rem !important;
  }
  .u-spmb60 {
    margin-bottom: 6rem !important;
  }
  .u-spmb65 {
    margin-bottom: 6.5rem !important;
  }
  .u-spmb70 {
    margin-bottom: 7rem !important;
  }
  .u-spmb75 {
    margin-bottom: 7.5rem !important;
  }
  .u-spmb80 {
    margin-bottom: 8rem !important;
  }
  .u-spmb85 {
    margin-bottom: 8.5rem !important;
  }
  .u-spmb90 {
    margin-bottom: 9rem !important;
  }
  .u-spmb95 {
    margin-bottom: 9.5rem !important;
  }
  .u-spmb100 {
    margin-bottom: 10rem !important;
  }
  .u-spmb105 {
    margin-bottom: 10.5rem !important;
  }
  .u-spmb110 {
    margin-bottom: 11rem !important;
  }
  .u-spmb115 {
    margin-bottom: 11.5rem !important;
  }
  .u-spmb120 {
    margin-bottom: 12rem !important;
  }
  .u-spmb125 {
    margin-bottom: 12.5rem !important;
  }
  .u-spmb130 {
    margin-bottom: 13rem !important;
  }
  .u-spmb135 {
    margin-bottom: 13.5rem !important;
  }
  .u-spmb140 {
    margin-bottom: 14rem !important;
  }
  .u-spmb145 {
    margin-bottom: 14.5rem !important;
  }
  .u-spmb150 {
    margin-bottom: 15rem !important;
  }
}
.u-pt0 {
  padding-top: 0rem !important;
}

.u-pt5 {
  padding-top: 0.5rem !important;
}

.u-pt10 {
  padding-top: 1rem !important;
}

.u-pt15 {
  padding-top: 1.5rem !important;
}

.u-pt20 {
  padding-top: 2rem !important;
}

.u-pt25 {
  padding-top: 2.5rem !important;
}

.u-pt30 {
  padding-top: 3rem !important;
}

.u-pt35 {
  padding-top: 3.5rem !important;
}

.u-pt40 {
  padding-top: 4rem !important;
}

.u-pt45 {
  padding-top: 4.5rem !important;
}

.u-pt50 {
  padding-top: 5rem !important;
}

.u-pt55 {
  padding-top: 5.5rem !important;
}

.u-pt60 {
  padding-top: 6rem !important;
}

.u-pt65 {
  padding-top: 6.5rem !important;
}

.u-pt70 {
  padding-top: 7rem !important;
}

.u-pt75 {
  padding-top: 7.5rem !important;
}

.u-pt80 {
  padding-top: 8rem !important;
}

.u-pt85 {
  padding-top: 8.5rem !important;
}

.u-pt90 {
  padding-top: 9rem !important;
}

.u-pt95 {
  padding-top: 9.5rem !important;
}

.u-pt100 {
  padding-top: 10rem !important;
}

.u-pt105 {
  padding-top: 10.5rem !important;
}

.u-pt110 {
  padding-top: 11rem !important;
}

.u-pt115 {
  padding-top: 11.5rem !important;
}

.u-pt120 {
  padding-top: 12rem !important;
}

.u-pt125 {
  padding-top: 12.5rem !important;
}

.u-pt130 {
  padding-top: 13rem !important;
}

.u-pt135 {
  padding-top: 13.5rem !important;
}

.u-pt140 {
  padding-top: 14rem !important;
}

.u-pt145 {
  padding-top: 14.5rem !important;
}

.u-pt150 {
  padding-top: 15rem !important;
}

@media screen and (max-width: 767px) {
  .u-sppt0 {
    padding-top: 0rem !important;
  }
  .u-sppt5 {
    padding-top: 0.5rem !important;
  }
  .u-sppt10 {
    padding-top: 1rem !important;
  }
  .u-sppt15 {
    padding-top: 1.5rem !important;
  }
  .u-sppt20 {
    padding-top: 2rem !important;
  }
  .u-sppt25 {
    padding-top: 2.5rem !important;
  }
  .u-sppt30 {
    padding-top: 3rem !important;
  }
  .u-sppt35 {
    padding-top: 3.5rem !important;
  }
  .u-sppt40 {
    padding-top: 4rem !important;
  }
  .u-sppt45 {
    padding-top: 4.5rem !important;
  }
  .u-sppt50 {
    padding-top: 5rem !important;
  }
  .u-sppt55 {
    padding-top: 5.5rem !important;
  }
  .u-sppt60 {
    padding-top: 6rem !important;
  }
  .u-sppt65 {
    padding-top: 6.5rem !important;
  }
  .u-sppt70 {
    padding-top: 7rem !important;
  }
  .u-sppt75 {
    padding-top: 7.5rem !important;
  }
  .u-sppt80 {
    padding-top: 8rem !important;
  }
  .u-sppt85 {
    padding-top: 8.5rem !important;
  }
  .u-sppt90 {
    padding-top: 9rem !important;
  }
  .u-sppt95 {
    padding-top: 9.5rem !important;
  }
  .u-sppt100 {
    padding-top: 10rem !important;
  }
  .u-sppt105 {
    padding-top: 10.5rem !important;
  }
  .u-sppt110 {
    padding-top: 11rem !important;
  }
  .u-sppt115 {
    padding-top: 11.5rem !important;
  }
  .u-sppt120 {
    padding-top: 12rem !important;
  }
  .u-sppt125 {
    padding-top: 12.5rem !important;
  }
  .u-sppt130 {
    padding-top: 13rem !important;
  }
  .u-sppt135 {
    padding-top: 13.5rem !important;
  }
  .u-sppt140 {
    padding-top: 14rem !important;
  }
  .u-sppt145 {
    padding-top: 14.5rem !important;
  }
  .u-sppt150 {
    padding-top: 15rem !important;
  }
}
.u-pb0 {
  padding-bottom: 0rem !important;
}

.u-pb5 {
  padding-bottom: 0.5rem !important;
}

.u-pb10 {
  padding-bottom: 1rem !important;
}

.u-pb15 {
  padding-bottom: 1.5rem !important;
}

.u-pb20 {
  padding-bottom: 2rem !important;
}

.u-pb25 {
  padding-bottom: 2.5rem !important;
}

.u-pb30 {
  padding-bottom: 3rem !important;
}

.u-pb35 {
  padding-bottom: 3.5rem !important;
}

.u-pb40 {
  padding-bottom: 4rem !important;
}

.u-pb45 {
  padding-bottom: 4.5rem !important;
}

.u-pb50 {
  padding-bottom: 5rem !important;
}

.u-pb55 {
  padding-bottom: 5.5rem !important;
}

.u-pb60 {
  padding-bottom: 6rem !important;
}

.u-pb65 {
  padding-bottom: 6.5rem !important;
}

.u-pb70 {
  padding-bottom: 7rem !important;
}

.u-pb75 {
  padding-bottom: 7.5rem !important;
}

.u-pb80 {
  padding-bottom: 8rem !important;
}

.u-pb85 {
  padding-bottom: 8.5rem !important;
}

.u-pb90 {
  padding-bottom: 9rem !important;
}

.u-pb95 {
  padding-bottom: 9.5rem !important;
}

.u-pb100 {
  padding-bottom: 10rem !important;
}

.u-pb105 {
  padding-bottom: 10.5rem !important;
}

.u-pb110 {
  padding-bottom: 11rem !important;
}

.u-pb115 {
  padding-bottom: 11.5rem !important;
}

.u-pb120 {
  padding-bottom: 12rem !important;
}

.u-pb125 {
  padding-bottom: 12.5rem !important;
}

.u-pb130 {
  padding-bottom: 13rem !important;
}

.u-pb135 {
  padding-bottom: 13.5rem !important;
}

.u-pb140 {
  padding-bottom: 14rem !important;
}

.u-pb145 {
  padding-bottom: 14.5rem !important;
}

.u-pb150 {
  padding-bottom: 15rem !important;
}

@media screen and (max-width: 767px) {
  .u-sppb0 {
    padding-bottom: 0rem !important;
  }
  .u-sppb5 {
    padding-bottom: 0.5rem !important;
  }
  .u-sppb10 {
    padding-bottom: 1rem !important;
  }
  .u-sppb15 {
    padding-bottom: 1.5rem !important;
  }
  .u-sppb20 {
    padding-bottom: 2rem !important;
  }
  .u-sppb25 {
    padding-bottom: 2.5rem !important;
  }
  .u-sppb30 {
    padding-bottom: 3rem !important;
  }
  .u-sppb35 {
    padding-bottom: 3.5rem !important;
  }
  .u-sppb40 {
    padding-bottom: 4rem !important;
  }
  .u-sppb45 {
    padding-bottom: 4.5rem !important;
  }
  .u-sppb50 {
    padding-bottom: 5rem !important;
  }
  .u-sppb55 {
    padding-bottom: 5.5rem !important;
  }
  .u-sppb60 {
    padding-bottom: 6rem !important;
  }
  .u-sppb65 {
    padding-bottom: 6.5rem !important;
  }
  .u-sppb70 {
    padding-bottom: 7rem !important;
  }
  .u-sppb75 {
    padding-bottom: 7.5rem !important;
  }
  .u-sppb80 {
    padding-bottom: 8rem !important;
  }
  .u-sppb85 {
    padding-bottom: 8.5rem !important;
  }
  .u-sppb90 {
    padding-bottom: 9rem !important;
  }
  .u-sppb95 {
    padding-bottom: 9.5rem !important;
  }
  .u-sppb100 {
    padding-bottom: 10rem !important;
  }
  .u-sppb105 {
    padding-bottom: 10.5rem !important;
  }
  .u-sppb110 {
    padding-bottom: 11rem !important;
  }
  .u-sppb115 {
    padding-bottom: 11.5rem !important;
  }
  .u-sppb120 {
    padding-bottom: 12rem !important;
  }
  .u-sppb125 {
    padding-bottom: 12.5rem !important;
  }
  .u-sppb130 {
    padding-bottom: 13rem !important;
  }
  .u-sppb135 {
    padding-bottom: 13.5rem !important;
  }
  .u-sppb140 {
    padding-bottom: 14rem !important;
  }
  .u-sppb145 {
    padding-bottom: 14.5rem !important;
  }
  .u-sppb150 {
    padding-bottom: 15rem !important;
  }
}
/* Text */
.u-txt-c {
  text-align: center !important;
}

.u-txt-l {
  text-align: left !important;
}

.u-txt-r {
  text-align: right !important;
}

.u-txt-j {
  text-align: justify !important;
}

/* Inner */
@media screen and (max-width: 767px) {
  .u-layout-inner01-sp {
    padding-left: var(--padding-sp-inner01) !important;
    padding-right: var(--padding-sp-inner01) !important;
  }
}

/* Display */
@media screen and (min-width: 941px) {
  .u-pc-none {
    display: none !important;
  }
}

@media screen and (max-width: 940px) {
  .u-tab-none {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  .u-sp-none {
    display: none !important;
  }
}

/* ============================
JavaScript
============================ */
.js-toggle__cont:not(.--active) {
  display: none;
}

.fancybox__backdrop {
  background: rgba(255, 255, 255, 0.85);
}
.fancybox__slide .f-button[data-fancybox-close] {
  rotate: 45deg;
  height: 4.5rem;
  width: auto;
  aspect-ratio: 1/1;
  top: -5.5rem;
}
.fancybox__slide .f-button[data-fancybox-close]:before, .fancybox__slide .f-button[data-fancybox-close]:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  border: 0.3rem solid var(--color-navy);
  background: var(--color-navy);
}
@media screen and (max-width: 767px) {
  .fancybox__slide .f-button[data-fancybox-close]:before, .fancybox__slide .f-button[data-fancybox-close]:after {
    border-width: 0.4rem;
  }
}
.fancybox__slide .f-button[data-fancybox-close]:before {
  rotate: 90deg;
}
.fancybox__slide .f-button[data-fancybox-close] svg {
  display: none;
}
.fancybox__carousel.is-ltr .f-button.is-arrow.is-prev, .fancybox__carousel.is-ltr .f-button.is-arrow.is-next {
  left: 0;
  right: 0;
  margin: auto;
}
@media screen and (max-width: 767px) {
  .fancybox__carousel.is-ltr .f-button.is-arrow.is-prev, .fancybox__carousel.is-ltr .f-button.is-arrow.is-next {
    bottom: 0;
    margin: 0;
    width: 6rem;
    height: 6rem;
  }
}
.fancybox__carousel.is-ltr .f-button.is-arrow.is-prev {
  translate: calc(-37rem - 4.5rem) 0%;
}
.fancybox__carousel.is-ltr .f-button.is-arrow.is-next {
  translate: calc(37rem + 4.5rem) 0%;
}
@media screen and (max-width: 767px) {
  .fancybox__carousel.is-ltr .f-button.is-arrow.is-prev {
    right: initial;
    translate: 2vw 23rem;
  }
  .fancybox__carousel.is-ltr .f-button.is-arrow.is-next {
    left: initial;
    translate: -2vw 23rem;
  }
}
.fancybox__carousel.is-ltr .f-button.is-arrow:before, .fancybox__carousel.is-ltr .f-button.is-arrow:after {
  inset: -1rem;
}
@media screen and (max-width: 767px) {
  .fancybox__carousel.is-ltr .f-button.is-arrow svg {
    width: 3.2rem;
    height: 3.2rem;
  }
}

.f-html {
  padding: 0;
}