@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Oswald:wght@500&family=Roboto:wght@700&display=swap");
:root {
  --vw: 1vw;
  --gutter: 4rem;
}

body,
input,
select,
textarea,
button {
  font-family: "Noto Sans JP", Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "Hiragino Sans", "メイリオ", "Meiryo", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

.u-oswald {
  font-family: "Oswald", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

.u-roboto {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-variation-settings: "wdth" 100;
}

.u-bold {
  font-weight: bold;
}

.u-nowrap {
  display: inline-block;
}

.u-nowrap-ws {
  white-space: nowrap;
}

.u-ft-l {
  font-size: 1.33em;
}
@media screen and (max-width: 750px) {
  .u-ft-l {
    font-size: 1.4em;
  }
}

.u-ft-s {
  font-size: 0.86em;
}

.u-align-left {
  text-align: left;
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  min-inline-size: 0;
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td,
address {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
}

article,
header,
footer,
main,
aside,
figure,
figcaption,
nav,
section {
  display: block;
}

section {
  position: relative;
}

body {
  color: #000;
  background-color: #FFF;
  margin: 0;
  padding: 0;
  line-height: 1;
  scroll-behavior: smooth;
  text-rendering: optimizeSpeed;
  word-break: break-all;
  overflow-wrap: break-word;
  line-break: strict;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
  text-align: justify;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
}

p {
  margin: 0;
}

strong {
  font-weight: bold;
}

hr {
  border: solid 1px #F0F0F0;
  margin: 0 0 20px;
}

img {
  width: 100%;
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  border: 0;
  outline: 0;
}

figure {
  padding: 0;
  margin: 0;
}

ol,
ul {
  margin: 0;
  padding: 0;
}

ul {
  list-style: none;
}

input,
textarea,
button {
  margin: 0;
  padding: 0;
  border-radius: 0;
  outline: 0;
  background: none;
}

button {
  border: 0;
  color: #000;
}

table {
  border-collapse: collapse;
}

a {
  color: #000;
  text-decoration: none;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
a img {
  backface-visibility: hidden;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
  -webkit-transform: translateZ(0);
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  will-change: transform;
}
a[href^="tel:"] {
  pointer-events: none;
}
@media screen and (max-width: 750px) {
  a[href^="tel:"] {
    pointer-events: auto;
  }
}
@media (hover: hover) {
  a:hover {
    opacity: 0.6;
  }
}

html {
  font-size: 62.5%;
  font-size: calc(0.0073529412 * 100 * var(--vw));
}
@media screen and (min-width: 1361px) {
  html {
    font-size: 10px;
  }
}
@media screen and (max-width: 750px) {
  html {
    font-size: calc(0.0266666667 * 100 * var(--vw));
  }
}

body {
  font-size: 1.4rem;
  line-height: 1.4;
}
body.is-hidden {
  overflow: hidden;
}

ruby {
  padding: 0 0.2em;
}
ruby rt {
  margin-bottom: -0.8em;
}

@-webkit-keyframes anim-fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes anim-fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes anim-fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes anim-fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes anim-bounce {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
  }
  50% {
    opacity: 1;
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes anim-bounce {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
  }
  50% {
    opacity: 1;
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes anim-riseUp {
  0% {
    top: 100%;
    opacity: 0;
  }
  1% {
    opacity: 1;
  }
  99% {
    opacity: 1;
  }
  100% {
    top: 0;
    opacity: 0;
  }
}
@keyframes anim-riseUp {
  0% {
    top: 100%;
    opacity: 0;
  }
  1% {
    opacity: 1;
  }
  99% {
    opacity: 1;
  }
  100% {
    top: 0;
    opacity: 0;
  }
}
@-webkit-keyframes anim-floating {
  0% {
    -webkit-transform: translateX(-0.5rem) scale(0.8);
            transform: translateX(-0.5rem) scale(0.8);
  }
  50% {
    -webkit-transform: translateX(0.5rem) scale(1.2);
            transform: translateX(0.5rem) scale(1.2);
  }
  100% {
    -webkit-transform: translateX(-0.5rem) scale(0.8);
            transform: translateX(-0.5rem) scale(0.8);
  }
}
@keyframes anim-floating {
  0% {
    -webkit-transform: translateX(-0.5rem) scale(0.8);
            transform: translateX(-0.5rem) scale(0.8);
  }
  50% {
    -webkit-transform: translateX(0.5rem) scale(1.2);
            transform: translateX(0.5rem) scale(1.2);
  }
  100% {
    -webkit-transform: translateX(-0.5rem) scale(0.8);
            transform: translateX(-0.5rem) scale(0.8);
  }
}
@-webkit-keyframes anim-slideIn {
  from {
    -webkit-transform: translateY(15%);
            transform: translateY(15%);
  }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes anim-slideIn {
  from {
    -webkit-transform: translateY(15%);
            transform: translateY(15%);
  }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes anim-slideOut {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(15%);
            transform: translateY(15%);
  }
}
@keyframes anim-slideOut {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(15%);
            transform: translateY(15%);
  }
}
.l-container {
  position: relative;
  overflow: hidden;
}
.l-container__img {
  position: absolute;
  z-index: 2;
  width: 9.2rem;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (max-width: 750px) {
  .l-container__img {
    width: 6rem;
    -webkit-transform: none;
            transform: none;
  }
}
.l-container__img01 {
  top: calc(8.6764705882 * var(--vw) + 236.3rem);
  left: calc(50% + 59rem);
}
@media screen and (max-width: 750px) {
  .l-container__img01 {
    top: -3.6rem;
    left: initial;
    right: 1.6rem;
  }
}
.l-container__img02 {
  top: calc(8.6764705882 * var(--vw) + 306.8rem);
  left: calc(50% - 59.4rem);
}
@media screen and (max-width: 750px) {
  .l-container__img02 {
    bottom: 4.5rem;
    top: initial;
    left: -1rem;
  }
}
.l-container__img03 {
  top: calc(8.6764705882 * var(--vw) + 406.4rem);
  left: calc(50% + 60.1rem);
}
@media screen and (max-width: 750px) {
  .l-container__img03 {
    top: 19.5rem;
    left: initial;
    right: -0.6rem;
  }
}
.l-container__img04 {
  top: calc(8.6764705882 * var(--vw) + 487.6rem);
  left: calc(50% - 60.7rem);
}
@media screen and (max-width: 750px) {
  .l-container__img04 {
    left: initial;
    right: 2.4rem;
    top: 15rem;
  }
}
.l-container__img05 {
  top: calc(8.6764705882 * var(--vw) + 688.4rem);
  left: calc(50% + 56.2rem);
}
@media screen and (max-width: 750px) {
  .l-container__img05 {
    top: 1.1rem;
    left: initial;
    right: -0.8rem;
  }
}
.l-container__img06 {
  top: calc(8.6764705882 * var(--vw) + 825.7rem);
  left: calc(50% - 56.2rem);
}
@media screen and (max-width: 750px) {
  .l-container__img06 {
    top: 156.2rem;
    left: -0.7rem;
  }
}
.l-container__img07 {
  top: calc(8.6764705882 * var(--vw) + 1158.3rem);
  left: calc(50% + 61.1rem);
}
@media screen and (max-width: 750px) {
  .l-container__img07 {
    top: 8.8rem;
    left: initial;
    right: 2.4rem;
  }
}
.l-container__bg {
  position: relative;
}
.l-container__bg-box {
  position: absolute;
  z-index: 2;
  top: -4rem;
  height: calc(100% + 4rem);
  width: calc((100 * var(--vw) - (93rem + var(--gutter) * 2)) / 2);
}
.l-container__bg-box.--left {
  left: 0;
  width: calc((100 * var(--vw) - (93rem + var(--gutter) * 2)) / 2 - var(--gutter) / 2);
}
.l-container__bg-box.--right {
  right: 0;
  width: calc((100 * var(--vw) - (93rem + var(--gutter) * 2)) / 2);
}
.l-container__bg-box .block {
  position: relative;
  width: 100%;
  height: 14.2857142857%;
}
.l-container__bg-box .sparkle {
  position: absolute;
  display: block;
  bottom: 100%;
  pointer-events: none;
  -webkit-animation: anim-riseUp 14s linear infinite, anim-floating 1.2s ease-in-out infinite;
          animation: anim-riseUp 14s linear infinite, anim-floating 1.2s ease-in-out infinite;
  background: url(../img/icn_sparkle.png) no-repeat center/100%;
  width: 2rem;
  height: auto;
  aspect-ratio: 1;
}
.l-container__top {
  position: fixed;
  bottom: 3rem;
  right: 3rem;
  z-index: 4;
  display: none;
}
@media screen and (max-width: 750px) {
  .l-container__top {
    bottom: 1.4rem;
    right: 1.4rem;
  }
}
.l-container__top a {
  display: block;
  width: 5rem;
  height: 5rem;
  outline: 0.2rem solid #000;
  border-radius: 50%;
  background: -webkit-gradient(linear, left top, left bottom, from(#555555), to(black));
  background: linear-gradient(180deg, #555555 0%, black 100%);
  opacity: 1;
}
@media screen and (max-width: 750px) {
  .l-container__top a {
    width: 4rem;
    height: 4rem;
  }
}
.l-container__top a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 999rem;
  background: -webkit-gradient(linear, left top, left bottom, from(rgb(120, 120, 120)), to(rgb(29, 29, 29)));
  background: linear-gradient(180deg, rgb(120, 120, 120) 0%, rgb(29, 29, 29) 100%);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media (hover: hover) {
  .l-container__top a:hover {
    -webkit-transform: scale(1.1) translateZ(0);
            transform: scale(1.1) translateZ(0);
  }
}
@media (hover: hover) {
  .l-container__top a:hover::before {
    opacity: 0;
  }
}

.l-inner {
  position: relative;
  z-index: 1;
  width: calc(93rem + var(--gutter) * 2);
  padding: 0 calc(var(--gutter));
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  .l-inner {
    width: 100%;
    padding: 0 1.6rem;
  }
}

/* ヘッダー */
.l-header__logo {
  position: fixed;
  z-index: 7;
  top: 1.7rem;
  left: 1.9rem;
  width: calc(7.7941176471 * var(--vw));
  height: auto;
  aspect-ratio: 1;
  outline: 0.4rem solid #000;
  background-color: #FFF;
}
@media screen and (max-width: 750px) {
  .l-header__logo {
    top: 0.8rem;
    left: 0.8rem;
    width: 6.4rem;
    outline: 0.2rem solid #000;
  }
}
.is-open .l-header__logo {
  z-index: 2;
}
.l-header__logo a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  opacity: 1;
}
.l-header__logo img {
  width: 77.4%;
}
.l-header__menu {
  position: fixed;
  z-index: 5;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  pointer-events: none;
}
.is-open .l-header__menu {
  pointer-events: all;
}
.l-header__menu-overlay {
  position: fixed;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  opacity: 0;
  pointer-events: none;
}
.is-open .l-header__menu-overlay {
  opacity: 1;
  pointer-events: all;
}
.l-header__menu-block {
  position: absolute;
  top: 0;
  right: -100%;
  overflow-y: auto;
  background-color: #FFF;
  width: 100%;
  height: 100%;
  max-width: 40rem;
  margin-left: auto;
  -webkit-transition: all 0.6s ease-in-out;
  transition: all 0.6s ease-in-out;
  padding: 6.5rem;
  pointer-events: none;
}
@media screen and (max-width: 750px) {
  .l-header__menu-block {
    right: 0;
    top: -100%;
  }
}
.is-open .l-header__menu-block {
  right: 0;
  pointer-events: all;
}
@media screen and (max-width: 750px) {
  .is-open .l-header__menu-block {
    top: 0;
  }
}
@media screen and (max-width: 750px) {
  .l-header__menu-block {
    padding: 5rem 4rem;
  }
}
.l-header__menu-logo {
  width: 13.2rem;
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  .l-header__menu-logo {
    width: 10.8rem;
  }
}
.l-header__menu-logo a {
  opacity: 1;
}
.l-header__menu-list {
  margin-top: 4.6rem;
}
@media screen and (max-width: 750px) {
  .l-header__menu-list {
    margin-top: 3.5rem;
  }
}
.l-header__menu-item {
  border-top: 0.2rem solid #F0F0F0;
}
.l-header__menu-item:last-child {
  border-bottom: 0.2rem solid #F0F0F0;
}
.l-header__menu-item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 2.2rem;
  font-weight: 900;
  letter-spacing: 0.09em;
  padding: 2.4rem 1rem;
  line-height: 1;
  opacity: 1;
}
@media screen and (max-width: 750px) {
  .l-header__menu-item a {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 1rem;
    font-size: 1.8rem;
    padding: 2rem 1rem;
  }
}
.l-header__menu-item a::after {
  content: "";
  display: block;
  width: 0.9em;
  height: auto;
  aspect-ratio: 1;
  border-radius: 50%;
  background: #000 url(../img/icn_arrow_right_white.svg) no-repeat center/100%;
  margin-top: 0.1em;
  -webkit-transition: inherit;
  transition: inherit;
}
@media screen and (max-width: 750px) {
  .l-header__menu-item a::after {
    width: 1em;
  }
}
@media (hover: hover) {
  .l-header__menu-item a:hover {
    color: #FF5500;
  }
}
@media (hover: hover) {
  .l-header__menu-item a:hover::after {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
    background-color: #FF5500;
  }
}
.l-header__menu-sns {
  width: 4.3rem;
  margin: 2.7rem auto 0;
}
.l-header__menu-sns a {
  opacity: 1;
  display: inline-block;
}
@media (hover: hover) {
  .l-header__menu-sns a:hover {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
    opacity: 0.8;
  }
}
.l-header__hamb {
  position: fixed;
  top: 2rem;
  right: 2.4rem;
  z-index: 6;
  cursor: pointer;
  width: 7rem;
  height: auto;
  aspect-ratio: 1;
  background-color: #FFF;
  border-radius: 50%;
  -webkit-box-shadow: 0 0 1.1rem 1.1rem #A4F3F7, inset 0 0 1.5rem 1.5rem #8DF4F6;
          box-shadow: 0 0 1.1rem 1.1rem #A4F3F7, inset 0 0 1.5rem 1.5rem #8DF4F6;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-filter: blur(0);
          filter: blur(0);
  -webkit-transform-origin: center center;
          transform-origin: center center;
  will-change: transform;
}
@media (hover: hover) {
  .l-header__hamb:hover {
    -webkit-transform: scale(1.2) translateZ(0);
            transform: scale(1.2) translateZ(0);
  }
}
@media screen and (max-width: 750px) {
  .l-header__hamb {
    top: 1rem;
    right: 1rem;
    width: 4.2rem;
    -webkit-box-shadow: 0 0 0.5rem 0.5rem #A4F3F7, inset 0 0 0.6rem 0.4rem #8DF4F6;
            box-shadow: 0 0 0.5rem 0.5rem #A4F3F7, inset 0 0 0.6rem 0.4rem #8DF4F6;
  }
}
.l-header__hamb .lines {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.7rem;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  -webkit-box-shadow: inset 0 0 0.7rem 0.02rem #3BE7E6;
          box-shadow: inset 0 0 0.7rem 0.02rem #3BE7E6;
}
@media screen and (max-width: 750px) {
  .l-header__hamb .lines {
    gap: 0.45rem;
    -webkit-box-shadow: inset 0 0 0.44rem 0.01rem #3BE7E6;
            box-shadow: inset 0 0 0.44rem 0.01rem #3BE7E6;
  }
}
.is-open .l-header__hamb .lines {
  padding: 0.1em 0 0 0.1em;
}
.l-header__hamb .line {
  display: block;
  width: 43%;
  height: 0.4rem;
  background-color: #000;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  -webkit-transform-origin: top left;
          transform-origin: top left;
}
@media screen and (max-width: 750px) {
  .l-header__hamb .line {
    height: 0.24rem;
  }
}
.is-open .l-header__hamb .line {
  width: 44%;
}
@media screen and (max-width: 750px) {
  .is-open .l-header__hamb .line {
    width: 50%;
  }
}
.is-open .l-header__hamb .line:nth-of-type(1) {
  -webkit-transform: rotate(45deg) translate(0.2em, -0.25em);
          transform: rotate(45deg) translate(0.2em, -0.25em);
}
@media screen and (max-width: 750px) {
  .is-open .l-header__hamb .line:nth-of-type(1) {
    -webkit-transform: rotate(45deg) translate(0.15em, -0.2em);
            transform: rotate(45deg) translate(0.15em, -0.2em);
  }
}
.is-open .l-header__hamb .line:nth-of-type(2) {
  opacity: 0;
}
.is-open .l-header__hamb .line:nth-of-type(3) {
  -webkit-transform: rotate(-45deg) translate(0.12em, 0);
          transform: rotate(-45deg) translate(0.12em, 0);
}
@media screen and (max-width: 750px) {
  .is-open .l-header__hamb .line:nth-of-type(3) {
    -webkit-transform: rotate(-45deg) translate(0.08em, 0.08em);
            transform: rotate(-45deg) translate(0.08em, 0.08em);
  }
}

/* フッター */
.l-footer {
  border-top: 1px solid #D8D8D8;
}
.l-footer__inner {
  width: 136rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (max-width: 750px) {
  .l-footer__inner {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 3.5rem 0 3.6rem;
  }
}
.l-footer__block {
  padding: 4.9rem 1rem 0;
}
@media screen and (max-width: 750px) {
  .l-footer__block {
    padding: 0;
  }
}
.l-footer__block.--left {
  padding-left: 1rem;
}
@media screen and (max-width: 750px) {
  .l-footer__block.--left {
    padding-left: 0;
    margin-top: 4rem;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
@media screen and (max-width: 750px) {
  .l-footer__block.--right {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}
.l-footer__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.3rem 3rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
@media screen and (max-width: 750px) {
  .l-footer__box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.--right .l-footer__box {
  gap: 1rem 1.2rem;
}
@media screen and (max-width: 750px) {
  .--right .l-footer__box {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}
.--right .l-footer__box .l-footer__box-item {
  height: 5.5rem;
}
@media screen and (max-width: 750px) {
  .--right .l-footer__box .l-footer__box-item {
    height: auto;
    width: 27rem;
  }
}
.--right .l-footer__box .l-footer__box-item img {
  height: 100%;
  width: auto;
}
@media screen and (max-width: 750px) {
  .--right .l-footer__box .l-footer__box-item img {
    height: auto;
    width: 100%;
  }
}
.l-footer__box-item.--toei {
  width: 29.6rem;
}
@media screen and (max-width: 750px) {
  .l-footer__box-item.--toei {
    width: 25rem;
  }
}
.l-footer__box-item.--bandai {
  width: 21.3rem;
}
@media screen and (max-width: 750px) {
  .l-footer__box-item.--bandai {
    width: 18rem;
  }
}
.l-footer__copyright {
  font-size: 1.2rem;
  margin-top: 1.3rem;
  line-height: 1.6;
  padding-bottom: 5.6rem;
}
@media screen and (max-width: 750px) {
  .l-footer__copyright {
    text-align: center;
    font-size: 1rem;
    margin-top: 3.1rem;
    padding-bottom: 0;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}

.c-btn-primary a {
  position: relative;
  opacity: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.25em;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: 900;
  color: #FFF;
  margin: 0 auto;
  border-radius: 999rem;
  outline: 0.4rem solid #000;
  letter-spacing: 0.1em;
  -webkit-box-shadow: 0 0.6rem 0 0.3rem rgb(0, 0, 0);
          box-shadow: 0 0.6rem 0 0.3rem rgb(0, 0, 0);
  background: -webkit-gradient(linear, left top, left bottom, from(#B7000E), color-stop(50%, #B7000E), color-stop(50%, #E60012), to(#E60012));
  background: linear-gradient(180deg, #B7000E 0%, #B7000E 50%, #E60012 50%, #E60012 100%);
}
@media screen and (max-width: 750px) {
  .c-btn-primary a {
    gap: 0.35em;
    -webkit-box-shadow: 0 0.5rem 0 0.1rem rgb(0, 0, 0);
            box-shadow: 0 0.5rem 0 0.1rem rgb(0, 0, 0);
  }
}
.c-btn-primary a .txt {
  position: relative;
}
.c-btn-primary a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 999rem;
  background: -webkit-gradient(linear, left top, left bottom, from(#E60012), color-stop(50%, #E60012), color-stop(50%, #FF5500), to(#FF5500));
  background: linear-gradient(180deg, #E60012 0%, #E60012 50%, #FF5500 50%, #FF5500 100%);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media (hover: hover) {
  .c-btn-primary a:hover {
    -webkit-transform: translateY(0.6rem);
            transform: translateY(0.6rem);
    -webkit-box-shadow: 0 0 0 0.3rem rgb(0, 0, 0);
            box-shadow: 0 0 0 0.3rem rgb(0, 0, 0);
  }
}
@media (hover: hover) {
  .c-btn-primary a:hover::before {
    opacity: 0;
  }
}
.c-btn-primary a::after {
  content: "";
  position: relative;
  display: block;
  width: 0.835em;
  height: auto;
  aspect-ratio: 1;
  border-radius: 50%;
  background: #000 url(../img/icn_arrow_right_white.svg) no-repeat center/100%;
  margin-top: 0.05em;
}
@media screen and (max-width: 750px) {
  .c-btn-primary a::after {
    width: 1.05em;
    background-image: url(../img/icn_arrow_right_white_thin.svg);
  }
}
.c-btn-primary.--finished a {
  background: #c1bcb9;
  padding-bottom: 0.2em;
  pointer-events: none;
}
.c-btn-primary.--finished a::before, .c-btn-primary.--finished a::after {
  display: none;
}
.c-btn-secondary a,
.c-btn-secondary button {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.3em;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: 900;
  color: #FFF;
  background: -webkit-gradient(linear, left top, left bottom, from(#555555), to(black));
  background: linear-gradient(180deg, #555555 0%, black 100%);
  margin: 0 auto;
  border-radius: 999rem;
  outline: 1.37px solid #000;
  letter-spacing: 0.1em;
  -webkit-box-shadow: 0 calc(0.092rem + 1.37px) 0 rgb(0, 0, 0);
          box-shadow: 0 calc(0.092rem + 1.37px) 0 rgb(0, 0, 0);
  opacity: 1;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  cursor: pointer;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-filter: blur(0);
          filter: blur(0);
  -webkit-transform-origin: center center;
          transform-origin: center center;
  will-change: transform;
}
.c-btn-secondary a .txt,
.c-btn-secondary button .txt {
  position: relative;
}
.c-btn-secondary a::before,
.c-btn-secondary button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 999rem;
  background: -webkit-gradient(linear, left top, left bottom, from(rgb(120, 120, 120)), to(rgb(29, 29, 29)));
  background: linear-gradient(180deg, rgb(120, 120, 120) 0%, rgb(29, 29, 29) 100%);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media (hover: hover) {
  .c-btn-secondary a:hover,
  .c-btn-secondary button:hover {
    -webkit-transform: scale(1.05) translateZ(0);
            transform: scale(1.05) translateZ(0);
  }
}
@media (hover: hover) {
  .c-btn-secondary a:hover::before,
  .c-btn-secondary button:hover::before {
    opacity: 0;
  }
}
.c-btn-secondary a::after,
.c-btn-secondary button::after {
  content: "";
  position: relative;
  display: block;
  width: 1em;
  height: auto;
  aspect-ratio: 1;
  border-radius: 50%;
  background: url(../img/icn_arrow_bottom_black.svg) no-repeat center/100%;
  margin-top: 0.05em;
}
.c-btn-secondary.--top a::after {
  background-image: url(../img/icn_arrow_top_black.svg);
}
.c-btn-secondary.--arrow-r a::after {
  background-image: url(../img/icn_arrow_right_black.svg);
}

.c-ttl.--center {
  text-align: center;
}
.c-ttl.--center .en {
  margin: 0 auto;
}
.c-ttl > span {
  display: block;
}
.c-ttl .en {
  padding-top: 1.2rem;
}
.c-ttl .ja {
  font-size: 2.8rem;
  font-weight: 900;
}
@media screen and (max-width: 750px) {
  .c-ttl .ja {
    font-size: 2rem;
  }
}

.c-ttl-sub {
  margin: 0 auto;
  padding: 7.2rem 0 14rem;
}
@media screen and (max-width: 750px) {
  .c-ttl-sub {
    padding: 4.6rem 0 6.5rem;
  }
}

.p-fv {
  background-color: #FFC900;
  padding: calc(8.6764705882 * var(--vw)) 0 1.1rem;
}
@media screen and (max-width: 750px) {
  .p-fv {
    padding: 0 0 0.7rem;
  }
}
.p-fv__menu {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 6;
}
.p-fv__menu-bg {
  height: calc(8.6764705882 * var(--vw));
}
.p-fv__menu-bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: bottom center;
     object-position: bottom center;
}
.p-fv__menu-list {
  position: absolute;
  top: 35%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  right: 0;
  z-index: 2;
  padding-right: 2.3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.8rem;
}
.p-fv__menu-item {
  position: relative;
}
.p-fv__menu-item a {
  position: relative;
  display: block;
  opacity: 1;
  min-height: 2rem;
}
.p-fv__menu-item a img {
  -webkit-filter: drop-shadow(0 0.2rem 0 rgb(0, 0, 0)) blur(0);
          filter: drop-shadow(0 0.2rem 0 rgb(0, 0, 0)) blur(0);
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-font-smoothing: antialiased;
  -webkit-transform-origin: center center;
          transform-origin: center center;
}
.p-fv__menu-item a img.--default {
  z-index: 2;
}
.p-fv__menu-item a img.--hover {
  z-index: 1;
}
@media (hover: hover) {
  .p-fv__menu-item a:hover img {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
  .p-fv__menu-item a:hover img.--default {
    opacity: 0;
  }
  .p-fv__menu-item a:hover img.--hover {
    opacity: 1;
  }
}
.p-fv__menu-item.--lt03 a {
  width: 3.9rem;
}
.p-fv__menu-item.--lt04-s a {
  width: 7rem;
}
.p-fv__menu-item.--lt04-m a {
  width: 7.1rem;
}
.p-fv__menu-item.--lt04-l a {
  width: 7.2rem;
}
.p-fv__menu-item.--lt06 a {
  width: 8.9rem;
}
.p-fv__menu-item.--lt07 a {
  width: 12.4rem;
}
.p-fv__menu-item.--sns {
  padding-left: 0.5rem;
}
.p-fv__menu-item.--sns a {
  width: 4.3rem;
}
@media (hover: hover) {
  .p-fv__menu-item.--sns a:hover {
    opacity: 0.8;
  }
}
.p-fv__menu-item.--sns a img {
  position: relative;
  -webkit-filter: none;
          filter: none;
}
.p-fv__main {
  position: relative;
  width: 100%;
}
.p-fv__img01 {
  position: absolute;
  z-index: 3;
  top: calc(50% + 4.8rem);
  left: calc(50% - 2.8rem);
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  right: 0;
  width: 98.7rem;
}
.p-fv__img01 img {
  -webkit-animation: anim-bounce 1s 0.5s both;
          animation: anim-bounce 1s 0.5s both;
}
@media screen and (max-width: 750px) {
  .p-fv__img01 {
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    top: 8.5rem;
    left: calc(50% + 0.55rem);
    width: 38.2rem;
  }
}
.p-fv__img02 {
  position: absolute;
  top: calc(50% - 12.5rem);
  left: calc(50% + 2rem);
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  right: 0;
  margin: auto;
  width: 147%;
}
.p-fv__img02 img {
  -webkit-animation: anim-bounce 1s 0.5s both;
          animation: anim-bounce 1s 0.5s both;
}
@media screen and (max-width: 750px) {
  .p-fv__img02 {
    top: -6.7rem;
    left: calc(50% + 2.5rem);
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    width: 235%;
  }
}
.p-fv__img03 {
  width: 124.9rem;
  margin: 0 auto;
  padding-top: 3.4rem;
}
@media screen and (max-width: 750px) {
  .p-fv__img03 {
    width: 100%;
    padding-top: 10.2rem;
  }
}
.p-fv__img04 {
  position: absolute;
  z-index: 2;
  width: 21.9rem;
  top: calc(50% + 32.5rem);
  left: calc(50% + 49.6rem);
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.p-fv__info {
  padding: 0 8.7rem 0 8.2rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 83.3rem calc(100% - 117.1rem) 33.8rem;
  grid-template-columns: 83.3rem 33.8rem;
  gap: 1.15rem calc(100% - 117.1rem);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 2.9rem auto 0;
  max-width: 136rem;
}
@media screen and (max-width: 750px) {
  .p-fv__info {
    max-width: 29.8rem;
    padding: 0;
    display: block;
  }
}
@media screen and (max-width: 750px) {
  .p-fv__txt01 {
    margin-top: 1rem;
  }
}
.p-fv__txt02 {
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-left: 9.5rem;
  gap: 3.1rem;
}
@media screen and (max-width: 750px) {
  .p-fv__txt02 {
    margin-top: 1.8rem;
    gap: 0.2rem;
    padding-left: 0;
  }
}
.p-fv__txt02-line {
  font-weight: 900;
}
@media screen and (max-width: 750px) {
  .p-fv__txt02-line {
    width: calc(50% - 0.1rem);
  }
}
.p-fv__txt02-line .head {
  text-align: center;
  display: inline-block;
  font-size: 2rem;
  letter-spacing: 0.3em;
  color: #ECBA00;
  background-color: #000;
  vertical-align: bottom;
  line-height: 1;
  padding: 0.2em 0.25em 0.35em 0.5em;
}
@media screen and (max-width: 750px) {
  .p-fv__txt02-line .head {
    display: block;
    font-size: 1.5rem;
    padding-top: 0.45em;
    padding-bottom: 0.55em;
  }
}
.p-fv__txt02-line .txt {
  font-size: 2.42rem;
  padding-left: 0.8rem;
}
@media screen and (max-width: 750px) {
  .p-fv__txt02-line .txt {
    font-size: 1.4rem;
    text-align: center;
    padding-left: 0;
    display: block;
    margin-top: 0.6rem;
  }
}
.p-fv__txt02-line:nth-of-type(2) .txt {
  font-size: 2.59rem;
}
@media screen and (max-width: 750px) {
  .p-fv__txt02-line:nth-of-type(2) .txt {
    font-size: 1.4rem;
  }
}
.p-fv__btn {
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3;
  margin-top: 0.4rem;
}
@media screen and (max-width: 750px) {
  .p-fv__btn {
    margin-top: 1.2rem;
  }
}
.p-fv__btn a {
  width: 24rem;
  height: 3.8rem;
  font-size: 1.6rem;
}
@media screen and (max-width: 750px) {
  .p-fv__btn a {
    width: 21rem;
    height: 3rem;
    font-size: 1.3rem;
  }
}
.p-fv__btn a::after {
  background: #FFF url(../img/icn_arrow_right_black.svg) no-repeat center/100%;
  width: 1em;
}

.p-intro {
  background-color: #FFC900;
  padding: 5.8rem 0 8.8rem;
}
@media screen and (max-width: 750px) {
  .p-intro {
    padding: 6.3rem 0 9.6rem;
  }
}
.p-intro__block {
  position: relative;
  z-index: 1;
  max-width: 70rem;
  aspect-ratio: 1;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 3rem;
  padding-bottom: 1.6rem;
}
@media screen and (max-width: 750px) {
  .p-intro__block {
    padding: 8.9rem 0 9.7rem;
    row-gap: 2.3rem;
  }
}
.p-intro__block:before {
  content: "";
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  background-color: #FFF;
  border-radius: 50%;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 750px) {
  .p-intro__block:before {
    width: 53.8rem;
  }
}
.p-intro__ttl {
  position: relative;
  width: 60.3rem;
}
@media screen and (max-width: 750px) {
  .p-intro__ttl {
    width: 108%;
    margin-left: -0.5rem;
  }
}
.p-intro__txt {
  position: relative;
  text-align: center;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.7;
}
@media screen and (max-width: 750px) {
  .p-intro__txt {
    font-size: 1.6rem;
  }
}
.p-intro__txt .line {
  margin-top: 1.6rem;
  display: block;
}
@media screen and (max-width: 750px) {
  .p-intro__txt .line {
    margin-top: 1.15rem;
  }
}
.p-intro__txt .line:first-child {
  margin-top: 0;
}
.p-intro__bg {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.p-intro__bg .sparkle {
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.p-intro__bg .sparkle-m {
  width: 10rem;
}
.p-intro__bg .sparkle-s {
  width: 6.4rem;
}
@media screen and (max-width: 750px) {
  .p-intro__bg .sparkle-s {
    width: 7.4rem;
  }
}
.p-intro__bg .sparkle-l {
  width: 11.3rem;
}
@media screen and (max-width: 750px) {
  .p-intro__bg .sparkle-l {
    width: 9rem;
  }
}
.p-intro__bg .sparkle01 {
  top: calc(50% - 38.5rem);
}
@media screen and (max-width: 750px) {
  .p-intro__bg .sparkle01 {
    top: calc(50% - 29.5rem);
    left: calc(50% - 15rem);
  }
}
.p-intro__bg .sparkle02 {
  top: calc(50% - 7.8rem);
}
@media screen and (max-width: 750px) {
  .p-intro__bg .sparkle02 {
    top: calc(50% + 26.2rem);
    left: calc(50% - 13.4rem);
  }
}
.p-intro__bg .sparkle03 {
  top: calc(50% + 28.6rem);
}
@media screen and (max-width: 750px) {
  .p-intro__bg .sparkle03 {
    top: calc(50% + 30rem);
    left: calc(50% - 1.1rem);
    width: 7rem;
  }
}
.p-intro__bg .sparkle04 {
  top: calc(50% + 36.5rem);
}
@media screen and (max-width: 750px) {
  .p-intro__bg .sparkle04 {
    top: calc(50% + 26.3rem);
    left: calc(50% + 13.6rem);
  }
}
.p-intro__bg .sparkle05 {
  top: calc(50% - 37.9rem);
}
@media screen and (max-width: 750px) {
  .p-intro__bg .sparkle05 {
    top: calc(50% - 30.2rem);
    left: calc(50% + 14.6rem);
  }
}
.p-intro__bg .sparkle06 {
  top: calc(50% - 21.1rem);
}
.p-intro__bg .sparkle07 {
  top: calc(50% + 15.4rem);
}
.p-intro__bg .sparkle08 {
  top: calc(50% + 29.5rem);
}
.p-intro__bg .sparkle09 {
  top: calc(50% - 24.3rem);
}
.p-intro__bg .sparkle10 {
  top: calc(50% + 12.1rem);
}
.p-intro__bg .sparkle.is-appear {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) scale(0.5);
          transform: translate(-50%, -50%) scale(0.5);
}
.p-intro__bg-block {
  width: 50%;
  height: 100%;
}
.p-intro__bg-left .sparkle01 {
  left: calc(50% - 59.4rem);
}
.p-intro__bg-left .sparkle02 {
  left: calc(50% - 57.6rem);
}
.p-intro__bg-left .sparkle03 {
  left: calc(50% - 58rem);
}
.p-intro__bg-left .sparkle04 {
  left: calc(50% - 26rem);
}
.p-intro__bg-left .sparkle05 {
  left: calc(50% - 37.6rem);
}
.p-intro__bg-left .sparkle06 {
  left: calc(50% - 62.3rem);
}
.p-intro__bg-left .sparkle07 {
  left: calc(50% - 62.7rem);
}
.p-intro__bg-left .sparkle08 {
  left: calc(50% - 39.9rem);
}
.p-intro__bg-left .sparkle09 {
  left: calc(50% - 47.8rem);
}
.p-intro__bg-left .sparkle10 {
  left: calc(50% - 48.2rem);
}
.p-intro__bg-right .sparkle01 {
  left: calc(50% + 58.8rem);
}
.p-intro__bg-right .sparkle02 {
  left: calc(50% + 56.9rem);
}
.p-intro__bg-right .sparkle03 {
  left: calc(50% + 57.6rem);
}
.p-intro__bg-right .sparkle04 {
  left: calc(50% + 26rem);
}
.p-intro__bg-right .sparkle05 {
  left: calc(50% + 37rem);
}
.p-intro__bg-right .sparkle06 {
  left: calc(50% + 61.5rem);
}
.p-intro__bg-right .sparkle07 {
  left: calc(50% + 61.8rem);
}
.p-intro__bg-right .sparkle08 {
  left: calc(50% + 38.9rem);
}
.p-intro__bg-right .sparkle09 {
  left: calc(50% + 47rem);
}
.p-intro__bg-right .sparkle10 {
  left: calc(50% + 47.7rem);
}

.p-news {
  background-color: #FFBB00;
  padding: 6.2rem 0 12.8rem;
}
@media screen and (max-width: 750px) {
  .p-news {
    padding: 4.2rem 0 9.1rem;
  }
}
.p-news .simplebar-scrollbar::before {
  background: #EA5404;
  opacity: 1;
}
.p-news .simplebar-track {
  background-color: #F0F0F0;
  border-radius: 999rem;
}
.p-news .simplebar-track.simplebar-vertical {
  width: 10px;
}
.p-news__ttl {
  position: relative;
  z-index: 1;
  text-align: center;
  font-size: 2.56rem;
  letter-spacing: 0.1em;
  font-weight: 900;
  color: #FF5500;
  margin-bottom: -3.3rem;
}
@media screen and (max-width: 750px) {
  .p-news__ttl {
    font-size: 2.4rem;
    margin-bottom: -3.1rem;
  }
}
.p-news__ttl .txt {
  display: inline-block;
  background-color: #FFF;
  border: 0.3rem solid #000;
  border-radius: 999rem;
  padding: 0.5rem 3.2rem 0.7rem;
}
@media screen and (max-width: 750px) {
  .p-news__ttl .txt {
    padding: 0.3rem 2.5rem 0.7rem;
  }
}
.p-news__block {
  padding: 0 1.5%;
  position: relative;
}
.p-news__block::before, .p-news__block::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 1.1rem;
  background-color: #EA5404;
  outline: 0.3rem solid #000;
}
.p-news__block::before {
  top: 0;
}
.p-news__block::after {
  bottom: 0;
}
.p-news__box {
  padding: 3.9rem 1.3rem;
  background-color: #FFF;
}
@media screen and (max-width: 750px) {
  .p-news__box {
    padding: 4.4rem 1.1rem 3.3rem;
  }
}
.p-news__list {
  overflow-y: auto;
  height: 100%;
  max-height: 20rem;
  padding: 0 2.5rem;
}
@media screen and (max-width: 750px) {
  .p-news__list {
    max-height: 30rem;
    padding: 0 2.4rem 0 1.2rem;
  }
}
.p-news__item {
  border-bottom: 1px solid #F0F0F0;
}
@media screen and (max-width: 750px) {
  .p-news__item:first-child .p-news__item-ttl {
    padding-top: 0;
  }
}
.p-news__item-ttl {
  display: -ms-grid;
  display: grid;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  -ms-grid-columns: 7.6rem 1.8rem 1fr;
  grid-template-columns: 7.6rem 1fr;
  gap: 1.8rem;
  padding: 1.15rem 0;
  text-align: left;
  line-height: 1.2;
}
@media screen and (max-width: 750px) {
  .p-news__item-ttl {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 0;
    line-height: 1.2;
  }
}
.p-news__item-ttl > span {
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.02em;
}
.p-news__item-ttl .time {
  color: #EA5404;
}
.p-news__item-ttl .txt {
  width: 100%;
}
@media screen and (max-width: 750px) {
  .p-news__item-ttl .txt {
    padding-top: 0.3rem;
  }
}

.p-ticket {
  position: relative;
  z-index: 1;
  padding: 8.2rem 0 4.7rem;
}
@media screen and (max-width: 750px) {
  .p-ticket {
    padding: 5.3rem 0 0.1rem;
  }
}
.p-ticket.--sub {
  padding-bottom: 12.7rem;
}
@media screen and (max-width: 750px) {
  .p-ticket.--sub {
    padding-bottom: 6rem;
  }
}
.p-ticket::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #F0F0F0;
}
.p-ticket__bg {
  position: absolute;
  width: 100%;
  left: 0;
}
@media screen and (max-width: 750px) {
  .p-ticket__bg {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 140%;
  }
}
.p-ticket__bg.--top {
  height: 7.2rem;
  top: -7rem;
}
.p-ticket__bg.--bottom {
  height: 8.1rem;
  bottom: -7.9rem;
}
.p-ticket__bg img {
  width: 100%;
  height: 100%;
}
.p-ticket__ttl .en {
  width: 42.2rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__ttl .en {
    width: 24.5rem;
  }
}
.p-ticket__outline {
  margin-top: 4.5rem;
  background-color: #FFC900;
  border-radius: 2rem;
  padding-top: 1.7rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__outline {
    margin-top: 2.8rem;
    padding-top: 2.2rem;
  }
}
.p-ticket__outline-ttl {
  text-align: center;
  font-weight: 900;
  font-size: 3.4rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__outline-ttl {
    font-size: 2.8rem;
    line-height: 1.2;
  }
}
.p-ticket__outline-txt {
  text-align: center;
  margin-top: 0.7rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__outline-txt {
    margin-top: 1.1rem;
  }
}
.p-ticket__outline-txt .txt {
  color: #FFF;
  display: inline-block;
  font-weight: 900;
  font-size: 1.6rem;
  background-color: #000;
  border-radius: 999rem;
  padding: 0.2rem 2rem 0.4rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__outline-txt .txt {
    font-size: 1.4rem;
    padding: 0.5rem 2.3rem 0.6rem;
  }
}
.p-ticket__outline-box {
  margin-top: 1.2rem;
  background-color: #FFDC5A;
  border: 0.8rem solid #FFC900;
  border-radius: 0 0 2rem 2rem;
  padding: 1.4rem 4.9rem 1.9rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 3.7rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.6rem 3.7rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__outline-box {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 1rem 0;
    border-width: 0.6rem;
    padding: 1.9rem 1.8rem 2.4rem;
  }
}
@media screen and (max-width: 750px) {
  .p-ticket__outline-box-inner:nth-of-type(1) {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
  }
}
@media screen and (max-width: 750px) {
  .p-ticket__outline-box-inner:nth-of-type(2) {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    margin-top: 1.6rem;
  }
}
.p-ticket__outline-box-inner.--finished .p-ticket__outline-box-ttl .txt {
  opacity: 0.6;
}
.p-ticket__outline-box-inner.--finished .p-ticket__outline-box-item {
  background-color: #EFD05E;
}
.p-ticket__outline-box-inner.--finished .p-ticket__outline-box-item .ttl:after {
  background-color: #BFA64B;
}
.p-ticket__outline-box-inner.--finished .p-ticket__outline-box-item > span {
  opacity: 0.6;
}
.p-ticket__outline-box-ttl {
  font-weight: 900;
  text-align: center;
  font-size: 2rem;
  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;
  gap: 1rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__outline-box-ttl {
    font-size: 1.8rem;
  }
}
.p-ticket__outline-box-ttl .note {
  display: inline-block;
  font-size: 0.7em;
  background-color: #E60012;
  color: #FFF;
  border-radius: 999rem;
  padding: 0.2rem 1.6rem 0.4rem;
  margin-top: 0.2rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__outline-box-ttl .note {
    padding: 0.3rem 1.2rem 0.5rem;
    font-size: 0.67em;
  }
}
.p-ticket__outline-box-list {
  margin-top: 1.2rem;
}
.p-ticket__outline-box-item {
  background-color: #FFF;
  padding: 1.3rem 1.8rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__outline-box-item {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 6.9rem 1fr;
    grid-template-columns: 6.9rem 1fr;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
.p-ticket__outline-box-item + .p-ticket__outline-box-item {
  margin-top: 0.4rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__outline-box-item .ttl {
    white-space: nowrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
  }
}
.p-ticket__outline-box-item .ttl::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 1.14em;
  background-color: #C4C4C4;
  margin: 0 0.6em -0.2em 0.85em;
}
@media screen and (max-width: 750px) {
  .p-ticket__outline-box-item .ttl::after {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    margin: 0;
  }
}
@media screen and (max-width: 750px) {
  .p-ticket__outline-box-item .txt {
    padding-left: 1.2rem;
  }
}
.p-ticket__outline-box-notes {
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .p-ticket__outline-box-notes {
    text-align: left;
  }
}
.p-ticket__outline-box-note {
  font-size: 1.2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.1em;
}
@media screen and (max-width: 750px) {
  .p-ticket__outline-box-note {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
.p-ticket__outline-box-note::before {
  content: "※";
}
@media screen and (max-width: 750px) {
  .p-ticket__outline-box-note > .txt {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
.p-ticket__outline-box-note + .p-ticket__outline-box-note {
  margin-top: 0.4rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__outline-box-note + .p-ticket__outline-box-note {
    margin-top: 0.5rem;
  }
}
.p-ticket__type {
  margin-top: 3rem;
}
.p-ticket__type-ttl {
  text-align: center;
  margin-bottom: -2rem;
}
.p-ticket__type-ttl .txt {
  display: inline-block;
  font-size: 2rem;
  color: #FFF;
  font-weight: 900;
  background-color: #000;
  border-radius: 999rem;
  padding: 0.5rem 3.7rem 0.7rem;
}
.p-ticket__type-box {
  background-color: #FFF;
  border-radius: 2rem;
  padding: 4rem 5.6rem 3rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__type-box {
    padding: 4rem 2.4rem 2.8rem;
  }
}
.p-ticket__type-box-list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1rem 1fr 1rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.4rem 1rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__type-box-list {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.p-ticket__type-box-item {
  background-color: #FFF5D0;
  padding: 1.2rem 0 1.4rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__type-box-item {
    padding: 0.9rem 0 1.1rem;
  }
}
.p-ticket__type-box-item > span {
  display: block;
  text-align: center;
  font-weight: 900;
  line-height: 1.5;
}
.p-ticket__type-box-item .head {
  font-size: 2rem;
}
.p-ticket__type-box-item .txt {
  font-size: 1.6rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__type-box-item .txt {
    margin-top: 0.2rem;
  }
}
.p-ticket__type-box-notes {
  margin-top: 1.2rem;
}
.p-ticket__type-box-note {
  font-size: 1.2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.1em;
}
@media screen and (max-width: 750px) {
  .p-ticket__type-box-note {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
.p-ticket__type-box-note::before {
  content: "※";
}
@media screen and (max-width: 750px) {
  .p-ticket__type-box-note > .txt {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
.p-ticket__apply {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 4rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__apply {
    margin-top: 3rem;
  }
}
.p-ticket__apply-txts {
  text-align: center;
  padding: 0 3.8rem;
  position: relative;
}
@media screen and (max-width: 750px) {
  .p-ticket__apply-txts {
    padding: 0.2rem 1.8rem 0.4rem;
  }
}
.p-ticket__apply-txts::before, .p-ticket__apply-txts:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 0.4rem;
  height: 100%;
  border-radius: 999rem;
  background-color: #000;
}
@media screen and (max-width: 750px) {
  .p-ticket__apply-txts::before, .p-ticket__apply-txts:after {
    width: 0.3rem;
    height: 100%;
  }
}
.p-ticket__apply-txts::before {
  left: 0;
  -webkit-transform-origin: top left;
          transform-origin: top left;
  -webkit-transform: rotate(-11deg);
          transform: rotate(-11deg);
}
@media screen and (max-width: 750px) {
  .p-ticket__apply-txts::before {
    left: -0.9rem;
    -webkit-transform: rotate(-6.6deg);
            transform: rotate(-6.6deg);
  }
}
.p-ticket__apply-txts::after {
  right: 0;
  -webkit-transform-origin: top right;
          transform-origin: top right;
  -webkit-transform: rotate(11deg);
          transform: rotate(11deg);
}
@media screen and (max-width: 750px) {
  .p-ticket__apply-txts::after {
    right: -0.9rem;
    -webkit-transform: rotate(6.6deg);
            transform: rotate(6.6deg);
  }
}
.p-ticket__apply-txts .txt {
  font-size: 2.4rem;
  font-weight: 900;
}
@media screen and (max-width: 750px) {
  .p-ticket__apply-txts .txt {
    font-size: 2rem;
  }
}
.p-ticket__apply-txts .note {
  font-size: 1.6rem;
  margin-top: 1.4rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__apply-txts .note {
    font-size: 1.4rem;
    margin-top: 1.3rem;
  }
}
.p-ticket__apply-txts .note-sub {
  display: block;
  font-size: 85%;
  padding-top: 0.5em;
}
.p-ticket__btn01 {
  margin-top: 4rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__btn01 {
    margin-top: 3.1rem;
  }
}
.p-ticket__btn01 a {
  width: 40rem;
  height: 7.7rem;
  font-size: 3rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__btn01 a {
    width: 29.5rem;
    height: 7rem;
    font-size: 2.4rem;
  }
}
.p-ticket__btn02 {
  margin-top: 3.9rem;
}
@media screen and (max-width: 750px) {
  .p-ticket__btn02 {
    margin-top: 2.8rem;
  }
}
.p-ticket__btn02 + .p-ticket__btn02 {
  margin-top: 1.6rem;
}
.p-ticket__btn02 a {
  width: 22rem;
  height: 3.6rem;
}

.p-map {
  padding: 17rem 0 16.6rem;
}
@media screen and (max-width: 750px) {
  .p-map {
    padding: 11.8rem 0 8.2rem;
  }
}
.p-map.u-bg-plaid {
  background-position: left 47% top 47.4%;
}
.p-map__ttl .en {
  width: 28.8rem;
}
@media screen and (max-width: 750px) {
  .p-map__ttl .en {
    width: 16.8rem;
  }
}
.p-map__block {
  background-color: #F0F0F0;
  border-radius: 2rem;
  width: 100%;
  height: auto;
  aspect-ratio: 4.4927536232;
  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;
  margin-top: 5.4rem;
}
@media screen and (max-width: 750px) {
  .p-map__block {
    margin-top: 2.9rem;
    aspect-ratio: 2.3493150685;
  }
}
.p-map__block .cs {
  width: 40.9rem;
}
@media screen and (max-width: 750px) {
  .p-map__block .cs {
    width: 24.6rem;
  }
}

.p-stage {
  position: relative;
  padding: 8rem 0 16.5rem;
}
@media screen and (max-width: 750px) {
  .p-stage {
    padding: 4.7rem 0 8.6rem;
  }
}
.p-stage::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #FFC900;
}
.p-stage__bg {
  position: absolute;
  width: 100%;
  left: 0;
}
@media screen and (max-width: 750px) {
  .p-stage__bg {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 140%;
  }
}
@media screen and (max-width: 750px) and (max-width: 750px) {
  .p-stage__bg {
    width: 150%;
  }
}
.p-stage__bg.--top {
  height: 8.1rem;
  top: -7.5rem;
}
.p-stage__bg img {
  width: 100%;
  height: 100%;
}
.p-stage__block {
  margin-top: 4.8rem;
  border-radius: 2rem;
  background-color: #FFF;
  border: 0.4rem solid #000;
  padding: 4.6rem 5.2rem;
}
@media screen and (max-width: 750px) {
  .p-stage__block {
    border-width: 0.3rem;
    margin-top: 2.5rem;
    padding: 2.9rem 2.1rem 2.8rem;
  }
}
.p-stage__ttl .en {
  width: 38.5rem;
  margin-left: -0.2rem;
}
@media screen and (max-width: 750px) {
  .p-stage__ttl .en {
    width: 22.4rem;
    margin-left: 0;
  }
}
.p-stage__list {
  position: relative;
}
.p-stage__list::before {
  content: "";
  width: 0.54rem;
  height: 85%;
  background: url(../img/line_dots.png) no-repeat center/100%;
  position: absolute;
  top: calc(50% + 0.7rem);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 1.1rem;
}
@media screen and (max-width: 750px) {
  .p-stage__list::before {
    background-image: url(../img/line_dots_sp.png);
    -webkit-transform: none;
            transform: none;
    top: 1.9rem;
    left: -0.25rem;
    width: 0.557rem;
  }
}
.p-stage__item {
  position: relative;
  padding-left: 5.9rem;
  height: 6.5rem;
}
@media screen and (max-width: 750px) {
  .p-stage__item {
    padding-left: 2.9rem;
    height: auto;
  }
}
.p-stage__item::before {
  content: "";
  width: 2.8rem;
  height: auto;
  aspect-ratio: 1;
  border-radius: 50%;
  background-color: #FFC900;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
}
@media screen and (max-width: 750px) {
  .p-stage__item::before {
    width: 1.925rem;
    left: -0.9rem;
    top: 2.25rem;
  }
}
.p-stage__item + .p-stage__item {
  margin-top: 1.02rem;
}
@media screen and (max-width: 750px) {
  .p-stage__item + .p-stage__item {
    margin-top: 0.8rem;
  }
}
.p-stage__item .inner {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 16rem 1fr;
  grid-template-columns: 16rem 1fr;
  height: 100%;
}
@media screen and (max-width: 750px) {
  .p-stage__item .inner {
    display: block;
  }
}
.p-stage__item .inner > .time,
.p-stage__item .inner > .txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-stage__item .inner > .time {
  position: relative;
  font-size: 2.4rem;
  letter-spacing: -0.015em;
  background-color: #FFC900;
  border-radius: 0.8rem 0 0 0.8rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 750px) {
  .p-stage__item .inner > .time {
    font-size: 1.8rem;
    border-radius: 0.8rem 0.8rem 0 0;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    padding: 1rem 1.7rem;
  }
}
.p-stage__item .inner > .time::before {
  content: "";
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
  width: 2rem;
  height: 2.2rem;
  background-color: #FFC900;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: -1.8rem;
}
@media screen and (max-width: 750px) {
  .p-stage__item .inner > .time::before {
    left: -1.2rem;
  }
}
.p-stage__item .inner > .txt {
  position: relative;
  font-size: 1.6rem;
  font-weight: 700;
  background-color: #FFF5D0;
  border-radius: 0 0.8rem 0.8rem 0;
  padding-left: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.7rem 2.2rem;
}
@media screen and (max-width: 750px) {
  .p-stage__item .inner > .txt {
    font-size: 1.4rem;
    border-radius: 0 0 0.8rem 0.8rem;
    padding: 1.3rem 1.7rem 1.28rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.p-stage__item .inner > .txt.--star::after {
  content: "";
  width: 2.8rem;
  height: auto;
  aspect-ratio: 1;
  background: url(../img/icn_star.svg) no-repeat center/100%;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 2rem;
}
@media screen and (max-width: 750px) {
  .p-stage__item .inner > .txt.--star::after {
    width: 2.3rem;
    right: 1.5rem;
  }
}
.p-stage__item .inner .btn button {
  width: 10.3rem;
  height: 2.4rem;
  font-size: 1.4rem;
  background: #FF5500;
}
.p-stage__item .inner .btn button::before {
  display: none;
}
.p-stage__item .inner .btn button::after {
  background-image: url(../img/icn_arrow_right_black.svg);
}
.p-stage__notes {
  margin-top: 2.1rem;
}
@media screen and (max-width: 750px) {
  .p-stage__notes {
    margin-top: 2.2rem;
  }
}
.p-stage__note {
  font-size: 1.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.1em;
  font-weight: 700;
}
@media screen and (max-width: 750px) {
  .p-stage__note {
    text-align: left;
  }
}
.p-stage__note::before {
  content: "※";
}
@media screen and (max-width: 750px) {
  .p-stage__note > .txt {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
.p-stage__note + .p-stage__note {
  margin-top: 0.3rem;
}
@media screen and (max-width: 750px) {
  .p-stage__note + .p-stage__note {
    margin-top: 0.5rem;
  }
}
.p-stage__note .star {
  display: inline-block;
  width: 1.85rem;
  margin-top: -0.55em;
  vertical-align: middle;
}
@media screen and (max-width: 750px) {
  .p-stage__note .star {
    width: 1.8rem;
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    margin-top: -0.5em;
  }
}
.p-stage__special {
  margin-top: 8rem;
  position: relative;
  background-color: #FFF;
  border: 0.4rem solid #000;
  border-radius: 2rem;
  padding: 4.6rem 5.2rem 5.2rem;
}
@media screen and (max-width: 750px) {
  .p-stage__special {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 0;
    margin-top: 4rem;
    border-width: 0.3rem;
    padding: 4.6rem 2.1rem 3.5rem;
  }
}
.p-stage__special-box {
  position: relative;
}
.p-stage__special-box:nth-of-type(1) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4.9rem;
}
@media screen and (max-width: 750px) {
  .p-stage__special-box:nth-of-type(1) {
    display: block;
  }
}
.p-stage__special-box:nth-of-type(2) {
  margin-top: 1.9rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 38.7rem 1fr;
  grid-template-columns: 38.7rem 1fr;
}
@media screen and (max-width: 750px) {
  .p-stage__special-box:nth-of-type(2) {
    display: block;
  }
}
.p-stage__special-ttl {
  margin-top: -7.1rem;
  padding-bottom: 1.9rem;
}
@media screen and (max-width: 750px) {
  .p-stage__special-ttl {
    margin-top: -6.3rem;
    padding-bottom: 0.2rem;
  }
}
.p-stage__special-ttl .en {
  display: block;
  width: 34.6rem;
}
@media screen and (max-width: 750px) {
  .p-stage__special-ttl .en {
    width: 23.2rem;
    margin: 0 auto;
  }
}
.p-stage__special-ttl .ja {
  display: inline-block;
  font-size: 2.4rem;
  font-weight: 900;
  padding: 0 0.3rem 1rem 0;
  margin-top: 2.1rem;
  border-bottom: 0.3rem dotted #000;
}
@media screen and (max-width: 750px) {
  .p-stage__special-ttl .ja {
    font-size: 1.8rem;
    text-align: center;
    margin-top: 1.3rem;
    display: block;
    padding-bottom: 1.7rem;
  }
}
.p-stage__special-head {
  font-size: 2.8rem;
  font-weight: 900;
  padding-top: 2.7rem;
  white-space: nowrap;
  line-height: 1.3;
}
@media screen and (max-width: 750px) {
  .p-stage__special-head {
    font-size: 2rem;
    text-align: center;
    padding-top: 1.9rem;
  }
}
.p-stage__special-head .medium {
  font-size: 4.6rem;
}
@media screen and (max-width: 750px) {
  .p-stage__special-head .medium {
    font-size: 2.8rem;
  }
}
.p-stage__special-head .large {
  font-size: 6.8rem;
}
@media screen and (max-width: 750px) {
  .p-stage__special-head .large {
    font-size: 3.2rem;
    padding-top: 0.2rem;
    display: inline-block;
  }
}
.p-stage__special-img {
  overflow: hidden;
  border-radius: 1rem 0 0 1rem;
}
@media screen and (max-width: 750px) {
  .p-stage__special-img {
    margin-top: 2rem;
    border-radius: 1rem;
  }
}
.p-stage__special-img img {
  border-radius: 1rem 0 0 1rem;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 750px) {
  .p-stage__special-img img {
    aspect-ratio: 1.55;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: top center;
       object-position: top center;
    margin-top: 0;
  }
}
.p-stage__special-txts {
  background-color: rgba(240, 240, 240, 0.5);
  padding: 2.1rem 4rem;
  border-radius: 0 1rem 1rem 0;
}
@media screen and (max-width: 750px) {
  .p-stage__special-txts {
    background-color: transparent;
    padding: 0;
  }
}
.p-stage__special-sub-ttl {
  font-weight: 900;
  font-size: 2.4rem;
  padding: 1rem 0 0.5rem;
}
@media screen and (max-width: 750px) {
  .p-stage__special-sub-ttl {
    font-size: 2.2rem;
    text-align: center;
  }
}
.p-stage__special-txt {
  line-height: 1.43;
}
@media screen and (max-width: 750px) {
  .p-stage__special-txt {
    letter-spacing: -0.01em;
  }
}
.p-stage__special-deco {
  position: absolute;
}
.p-stage__special-deco01 {
  width: 6.6rem;
  top: 3.6rem;
  left: 23.5rem;
}
.p-stage__special-deco02 {
  width: 3.2rem;
  top: 0.1rem;
  left: 35.2rem;
}
.p-stage__special-deco03 {
  width: 6.5rem;
  right: -3rem;
  top: 0;
}
.p-stage__special-deco04 {
  width: 2.6rem;
  right: -3.4rem;
  bottom: 0.4rem;
}
.p-stage__special-deco05 {
  width: 2rem;
  left: 34.8rem;
  bottom: 0.6rem;
}
@media screen and (max-width: 750px) {
  .p-stage__special-deco06 {
    width: 5.3rem;
    top: 6.8rem;
    left: 0;
  }
}
@media screen and (max-width: 750px) {
  .p-stage__special-deco07 {
    width: 5.3rem;
    top: 6.8rem;
    right: 0;
  }
}
.p-stage__modal .modal-overlay {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: rgba(0, 0, 0, 0.5);
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  align-items: center;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 100;
}
.p-stage__modal .modal-container {
  position: relative;
  height: auto;
  max-width: 74rem;
  width: 80%;
}
@media screen and (max-width: 750px) {
  .p-stage__modal .modal-container {
    border-width: 0.3rem;
    width: 91.5%;
  }
}
.p-stage__modal .modal-wrap {
  overflow: hidden;
  width: 100%;
  height: 100%;
  background-color: #FFF;
  border: 0.4rem solid #000;
  border-radius: 2rem;
}
@media screen and (max-width: 750px) {
  .p-stage__modal .modal-wrap {
    border-width: 0.3rem;
    max-height: 80vh;
    overflow-y: auto;
  }
}
.p-stage__modal .modal-inner {
  width: 100%;
  height: 100%;
}
.p-stage__modal .modal-title {
  font-size: 2.8rem;
  font-weight: 900;
  text-align: center;
  position: relative;
  padding: 2.9rem 0 3.2rem;
  margin: 0 5.5rem;
}
@media screen and (max-width: 750px) {
  .p-stage__modal .modal-title {
    font-size: 2.4rem;
    padding-bottom: 2.4rem;
    margin: 0 2rem;
  }
}
.p-stage__modal .modal-title::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.2rem;
  background-color: #F0F0F0;
  border-radius: 999rem;
}
.p-stage__modal .modal-close-main {
  cursor: pointer;
  background: transparent;
  border: 0;
  width: 8rem;
  height: auto;
  aspect-ratio: 1;
  border-radius: 50%;
  border: 0.3rem solid #000;
  background: -webkit-gradient(linear, left top, left bottom, from(rgb(120, 120, 120)), to(rgb(29, 29, 29)));
  background: linear-gradient(180deg, rgb(120, 120, 120) 0%, rgb(29, 29, 29) 100%);
  position: absolute;
  top: -2rem;
  right: -2rem;
}
@media screen and (max-width: 750px) {
  .p-stage__modal .modal-close-main {
    width: 6rem;
    border-width: 0.2rem;
    top: -1.9rem;
    right: -1.1rem;
  }
}
.p-stage__modal .modal-close-main::before {
  content: "×";
  color: #fff;
  font-size: 3.8rem;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 750px) {
  .p-stage__modal .modal-close-main::before {
    font-size: 3rem;
  }
}
.p-stage__modal .modal-close-main .modal-content {
  line-height: 1.5;
  margin-bottom: 2rem;
  margin-top: 2rem;
}
.p-stage__modal .modal-close-sub {
  width: 14rem;
  height: 3.6rem;
  font-size: 1.4rem;
}
.p-stage__modal .modal-close-sub::after {
  background-image: url(../img/icn_close_black.svg);
}
.p-stage__modal .modal-footer {
  background-color: #F0F0F0;
  border-radius: 0 0 1.6rem 1.6rem;
  padding: 2.4rem 0;
  margin-top: 3rem;
}
@media screen and (max-width: 750px) {
  .p-stage__modal .modal-footer {
    padding: 2rem 0;
    margin-top: 2rem;
  }
}
.p-stage__modal .micromodal-slide {
  display: none;
}
.p-stage__modal .micromodal-slide.is-open {
  display: block;
}
.p-stage__modal .micromodal-slide[aria-hidden=false] .modal-overlay {
  -webkit-animation: anim-fadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
          animation: anim-fadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}
.p-stage__modal .micromodal-slide[aria-hidden=false] .modal-container {
  -webkit-animation: anim-slideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
          animation: anim-slideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}
.p-stage__modal .micromodal-slide[aria-hidden=true] .modal-overlay {
  -webkit-animation: anim-fadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
          animation: anim-fadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}
.p-stage__modal .micromodal-slide[aria-hidden=true] .modal-container {
  -webkit-animation: anim-slideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
          animation: anim-slideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}
.p-stage__modal .micromodal-slide .modal-container,
.p-stage__modal .micromodal-slide .modal-overlay {
  will-change: transform;
}
.p-stage__modal-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2.4rem;
  padding: 4rem 5.5rem 0;
}
@media screen and (max-width: 750px) {
  .p-stage__modal-list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 2.9rem 2rem 0;
    gap: 1.5rem;
  }
}
.p-stage__modal-item {
  width: calc(100% - 1.2rem);
  max-width: 19rem;
}
@media screen and (max-width: 750px) {
  .p-stage__modal-item {
    width: calc(50% - 0.75rem);
  }
}
@media screen and (max-width: 750px) {
  .p-stage__modal-item.--sp-order01 {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
}
.p-stage__modal-item img {
  border-radius: 1rem;
}
.p-stage__modal-item-ttl {
  text-align: center;
  margin-top: 1.8rem;
}
@media screen and (max-width: 750px) {
  .p-stage__modal-item-ttl {
    margin-top: 1.6rem;
  }
}
.p-stage__modal-item-ttl .info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.4rem;
  font-weight: 700;
  min-height: 2.8em;
}
@media screen and (max-width: 750px) {
  .p-stage__modal-item-ttl .info {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 750px) {
  .p-stage__modal-item-ttl .info.--sp-no-minh {
    min-height: 0;
  }
}
.p-stage__modal-item-ttl .txt {
  display: block;
  font-size: 2.4rem;
  font-weight: 900;
  margin-top: 0.2rem;
}
@media screen and (max-width: 750px) {
  .p-stage__modal-item-ttl .txt {
    font-size: 2rem;
  }
}
.p-stage__modal-more {
  margin-top: 1rem;
  font-size: 2rem;
  font-weight: 900;
  padding: 0 5.5rem;
  text-align: right;
}
@media screen and (max-width: 750px) {
  .p-stage__modal-more {
    font-size: 1.6rem;
    margin-top: 0.5rem;
    padding: 0 2rem;
  }
}
.p-stage__modal-more .dots {
  display: inline-block;
  vertical-align: top;
  padding-top: 0.4rem;
  font-size: 110%;
}
@media screen and (max-width: 750px) {
  .p-stage__modal-more .dots {
    padding-top: 0.3rem;
  }
}

.p-contents {
  position: relative;
  z-index: 2;
  padding: 7.8rem 0 5.8rem;
}
@media screen and (max-width: 750px) {
  .p-contents {
    padding: 4.4rem 0 1.7rem;
  }
}
.p-contents::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #F0F0F0;
}
.p-contents__bg {
  position: absolute;
  width: 100%;
  left: 0;
}
@media screen and (max-width: 750px) {
  .p-contents__bg {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
.p-contents__bg.--top {
  height: 8.1rem;
  top: -8rem;
}
@media screen and (max-width: 750px) {
  .p-contents__bg.--top {
    width: 150%;
  }
}
.p-contents__bg.--bottom {
  height: 8.1rem;
  bottom: -7.9rem;
}
@media screen and (max-width: 750px) {
  .p-contents__bg.--bottom {
    width: 140%;
  }
}
.p-contents__bg img {
  width: 100%;
  height: 100%;
}
.p-contents__ttl-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 3.5rem;
}
@media screen and (max-width: 750px) {
  .p-contents__ttl-wrap {
    display: block;
  }
}
.p-contents__ttl .en {
  width: 62.3rem;
}
@media screen and (max-width: 750px) {
  .p-contents__ttl .en {
    width: 32.2rem;
  }
}
.p-contents__ttl-txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  padding-bottom: 4.5rem;
}
@media screen and (max-width: 750px) {
  .p-contents__ttl-txt {
    font-size: 1.6rem;
    margin-top: 2.5rem;
    padding-bottom: 0;
  }
}
.p-contents__anniv {
  margin-top: 5.1rem;
}
@media screen and (max-width: 750px) {
  .p-contents__anniv {
    margin-top: 2.6rem;
  }
}
.p-contents__anniv-ttl {
  width: 58rem;
  margin: 0 auto -5.6rem;
}
@media screen and (max-width: 750px) {
  .p-contents__anniv-ttl {
    width: 29.8rem;
    margin: 0 auto -4.7rem;
  }
}
.p-contents__anniv-block {
  background-color: #E4E4E4;
  border-radius: 2rem;
  padding: 9.9rem 6.35rem 9rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 750px) {
  .p-contents__anniv-block {
    padding: 7rem 2.2rem 3rem;
    display: block;
  }
}
.p-contents__anniv-logo {
  width: 38rem;
}
@media screen and (max-width: 750px) {
  .p-contents__anniv-logo {
    width: 92%;
    margin: 1.3rem auto 0;
  }
}
.p-contents__anniv-box {
  width: 37.2rem;
}
@media screen and (max-width: 750px) {
  .p-contents__anniv-box {
    width: 100%;
    margin: 4.6rem 0 0;
  }
}
.p-contents__anniv-box .list {
  margin-top: 3.4rem;
}
.p-contents__anniv-box .item {
  background-color: #FFF;
  min-height: 10rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.7rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 2.4rem;
  color: #FF5500;
  font-weight: 900;
  text-align: center;
  padding: 1.6rem;
}
@media screen and (max-width: 750px) {
  .p-contents__anniv-box .item {
    font-size: 2rem;
    min-height: 7.3rem;
    padding: 1rem;
  }
}
.p-contents__anniv-box .item + .item {
  margin-top: 0.4rem;
}
.p-contents__anniv-box .item .note {
  font-size: 0.75em;
  background-color: #FFF5D0;
  padding: 0.5rem 0;
  width: 100%;
  border-radius: 0.6rem;
}
@media screen and (max-width: 750px) {
  .p-contents__anniv-box .item .note {
    font-size: 0.75em;
  }
}
.p-contents__anniv-box .more {
  margin-top: 1.1rem;
  font-size: 2rem;
  font-weight: 900;
  text-align: right;
}
@media screen and (max-width: 750px) {
  .p-contents__anniv-box .more {
    font-size: 1.6rem;
    margin-top: 0.5rem;
  }
}
.p-contents__anniv-box .more .dots {
  display: inline-block;
  vertical-align: top;
  padding-top: 0.4rem;
  font-size: 110%;
}
@media screen and (max-width: 750px) {
  .p-contents__anniv-box .more .dots {
    padding-top: 0.3rem;
  }
}
.p-contents__title {
  margin-top: 6rem;
}
@media screen and (max-width: 750px) {
  .p-contents__title {
    margin-top: 3rem;
  }
}
.p-contents__title-ttl {
  width: 52.8rem;
  margin: 0 auto -5.6rem;
}
@media screen and (max-width: 750px) {
  .p-contents__title-ttl {
    width: 29.8rem;
    margin: 0 auto -4.7rem;
  }
}
.p-contents__title-block {
  background-color: #E4E4E4;
  border-radius: 2rem;
  padding: 7.6rem 4rem 7rem;
}
@media screen and (max-width: 750px) {
  .p-contents__title-block {
    padding: 6.1rem 2.4rem 2.6rem;
  }
}
.p-contents__title-txt {
  font-size: 2.3rem;
  font-weight: 900;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .p-contents__title-txt {
    font-size: 1.8rem;
  }
}
.p-contents__title-txt .txt {
  position: relative;
  padding: 0 0.9em;
  display: inline-block;
}
@media screen and (max-width: 750px) {
  .p-contents__title-txt .txt {
    padding: 0 1.4em;
  }
}
.p-contents__title-txt .txt::before, .p-contents__title-txt .txt:after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 0.2rem;
  height: 73%;
  background-color: #B1ACAC;
}
@media screen and (max-width: 750px) {
  .p-contents__title-txt .txt::before, .p-contents__title-txt .txt:after {
    height: 95.5%;
    bottom: -0.3rem;
  }
}
.p-contents__title-txt .txt::before {
  left: 0;
  -webkit-transform-origin: top left;
          transform-origin: top left;
  -webkit-transform: rotate(-17deg);
          transform: rotate(-17deg);
}
.p-contents__title-txt .txt::after {
  right: 0;
  -webkit-transform-origin: top right;
          transform-origin: top right;
  -webkit-transform: rotate(17deg);
          transform: rotate(17deg);
}
.p-contents__title-list {
  margin-top: 2.6rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2rem;
}
@media screen and (max-width: 750px) {
  .p-contents__title-list {
    margin-top: 2rem;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 1rem 0;
  }
}
.p-contents__title-item {
  width: 100%;
  background-color: #F7F7F7;
  padding: 2.4rem 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1.6rem;
}
@media screen and (max-width: 750px) {
  .p-contents__title-item {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1/3;
    padding: 1.4rem 0 2.4rem;
    gap: 1.85rem;
  }
}
.p-contents__title-item.--wide {
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 750px) {
  .p-contents__title-item.--wide {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 1.8rem;
    padding-bottom: 2.4rem;
  }
}
.p-contents__title-item.--wide .p-contents__title-item-txts {
  padding: 0 0 0 2rem;
}
@media screen and (max-width: 750px) {
  .p-contents__title-item.--wide .p-contents__title-item-txts {
    padding: 0;
  }
}
.p-contents__title-item.--wide .p-contents__title-item-txts .head,
.p-contents__title-item.--wide .p-contents__title-item-txts .ttl {
  text-align: left;
}
@media screen and (max-width: 750px) {
  .p-contents__title-item.--wide .p-contents__title-item-txts .head,
  .p-contents__title-item.--wide .p-contents__title-item-txts .ttl {
    text-align: center;
  }
}
.p-contents__title-item.--wide .p-contents__title-item-txts .txt {
  max-width: 88%;
}
@media screen and (max-width: 750px) {
  .p-contents__title-item.--wide .p-contents__title-item-txts .txt {
    max-width: 100%;
  }
}
.p-contents__title-item.--wide .p-contents__title-item-img {
  width: 37.4rem;
  padding-top: 0;
}
@media screen and (max-width: 750px) {
  .p-contents__title-item.--wide .p-contents__title-item-img {
    width: 100%;
  }
}
.p-contents__title-item:last-child {
  background-color: transparent;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3;
  padding: 0 1.3rem;
}
@media screen and (max-width: 750px) {
  .p-contents__title-item:last-child {
    padding: 1.4rem;
  }
}
.p-contents__title-item.--center {
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3;
  max-width: calc((100% - 2rem) / 2);
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  .p-contents__title-item.--center {
    max-width: 100%;
  }
}
.p-contents__title-item-txts {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  max-width: 100%;
}
.p-contents__title-item-txts .head {
  color: #EA5404;
  font-weight: 900;
  text-align: center;
}
.p-contents__title-item-txts .ttl {
  font-size: 1.8rem;
  font-weight: 900;
  margin-top: 0.3rem;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .p-contents__title-item-txts .ttl {
    font-size: 1.6rem;
  }
}
.p-contents__title-item-txts > .txt {
  margin-top: 1.4rem;
}
@media screen and (max-width: 750px) {
  .p-contents__title-item-txts > .txt {
    margin-top: 1.3rem;
    padding: 0 1.4rem;
  }
}
.p-contents__title-item-txts .note {
  font-size: 1.15rem;
  letter-spacing: -0.04em;
  margin-top: 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.1em;
}
@media screen and (max-width: 750px) {
  .p-contents__title-item-txts .note {
    margin-top: 0.9rem;
    padding: 0 1.4rem;
  }
}
.p-contents__title-item-txts .note::before {
  content: "※";
}
.p-contents__title-item-txts .note > .txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (max-width: 750px) {
  .p-contents__title-item-txts .img {
    margin-top: 1.7rem;
  }
}
.p-contents__title-item-txts .btn {
  margin-top: 1.4rem;
}
@media screen and (max-width: 750px) {
  .p-contents__title-item-txts .btn {
    margin-top: 1.8rem;
  }
}
.p-contents__title-item-txts .btn + .btn {
  margin-top: 1rem;
}
.p-contents__title-item-txts .btn a {
  width: 18.5rem;
  height: 3.6rem;
  margin-left: 0;
}
@media screen and (max-width: 750px) {
  .p-contents__title-item-txts .btn a {
    margin: 0 auto;
  }
}
.p-contents__title-item-txts .btn a:after {
  background-image: url(../img/icn_arrow_right_black.svg);
}
@media screen and (max-width: 750px) {
  .p-contents__title-item-txts .btn a.--sp-ls-s {
    letter-spacing: 0.02em;
  }
}
.p-contents__title-item-txts .btn.--wide a {
  max-width: calc(100% - 3rem);
  width: 30rem;
  height: 3.6rem;
  margin-left: 0;
}
@media screen and (max-width: 750px) {
  .p-contents__title-item-txts .btn.--wide a {
    margin-left: auto;
  }
}
.p-contents__title-item-img {
  padding-top: 1.2rem;
}
@media screen and (max-width: 750px) {
  .p-contents__title-item-img {
    padding: 0 1.4rem;
  }
}
.p-contents__title-item-note {
  font-size: 1.2rem;
  margin-top: -0.6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.1em;
}
@media screen and (max-width: 750px) {
  .p-contents__title-item-note {
    margin-top: -0.4rem;
    padding: 0 1.4rem;
  }
}
.p-contents__title-item-note::before {
  content: "※";
}
.p-contents__title-item-note > .txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.p-contents__title-item-btn a {
  width: 18.5rem;
  height: 3.6rem;
}
.p-contents__title-item-btn a:after {
  background-image: url(../img/icn_arrow_right_black.svg);
}
.p-contents__title-item-announce {
  width: 85%;
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  .p-contents__title-item-announce {
    width: 79%;
    margin: -1.6rem auto 0;
  }
}

.p-presents {
  position: relative;
  padding: 16.8rem 0 6.1rem;
}
@media screen and (max-width: 750px) {
  .p-presents {
    padding: 8.6rem 0 0.9rem;
    margin-top: 4rem;
  }
}
.p-presents::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #FFC900;
}
.p-presents__bg {
  position: absolute;
  width: 100%;
  left: 0;
  z-index: 1;
}
@media screen and (max-width: 750px) {
  .p-presents__bg {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 140%;
  }
}
@media screen and (max-width: 750px) and (max-width: 750px) {
  .p-presents__bg {
    width: 150%;
  }
}
.p-presents__bg.--bottom {
  height: 8.1rem;
  bottom: -7.9rem;
}
.p-presents__bg img {
  width: 100%;
  height: 100%;
}
.p-presents__ttl .en {
  width: 61.8rem;
}
@media screen and (max-width: 750px) {
  .p-presents__ttl .en {
    width: 32.1rem;
  }
}
.p-presents__ttl-sub {
  position: relative;
  z-index: 2;
  width: 52.8rem;
  margin: 4.7rem auto -5.5rem;
}
@media screen and (max-width: 750px) {
  .p-presents__ttl-sub {
    width: 30rem;
    margin: 3.6rem auto -3.9rem;
  }
}
.p-presents__block {
  position: relative;
  z-index: 1;
  background-color: #FFF;
  border-radius: 2rem;
  border: 0.4rem solid #000;
  padding: 8.6rem 3.6rem 5.5rem;
}
@media screen and (max-width: 750px) {
  .p-presents__block {
    border-width: 0.3rem;
    padding: 3.8rem 2.1rem;
  }
}
.p-presents__block-note {
  font-size: 1.2rem;
  margin-top: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.1em;
}
@media screen and (max-width: 750px) {
  .p-presents__block-note {
    margin-top: 0.9rem;
    gap: 0.4em;
  }
}
.p-presents__block-note::before {
  content: "※";
}
.p-presents__block-note > .txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.p-presents__list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}
@media screen and (max-width: 750px) {
  .p-presents__list {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}
.p-presents__list .slick-arrow {
  width: 1.7rem;
  height: 2.9rem;
}
@media screen and (max-width: 750px) {
  .p-presents__list .slick-arrow {
    width: 1.3rem;
    height: 2.3rem;
  }
}
.p-presents__list .slick-arrow::before {
  display: none;
}
.p-presents__list .slick-next {
  background: url(../img/icn_arrow_right_orange.svg) no-repeat center/100%;
  right: -7.2rem;
}
@media screen and (max-width: 750px) {
  .p-presents__list .slick-next {
    background-image: url(../img/icn_arrow_right_orange_thick.svg);
    right: -5rem;
  }
}
.p-presents__list .slick-prev {
  background: url(../img/icn_arrow_left_orange.svg) no-repeat center/100%;
  left: -7.2rem;
}
@media screen and (max-width: 750px) {
  .p-presents__list .slick-prev {
    background-image: url(../img/icn_arrow_left_orange_thick.svg);
    left: -5rem;
  }
}
.p-presents__item {
  background-color: #F7F7F7;
  padding: 2.5rem 3.3rem 3.5rem;
}
@media screen and (max-width: 750px) {
  .p-presents__item {
    padding: 2rem 2.9rem 3.2rem;
  }
}
.p-presents__item .ttl {
  font-size: 2.3rem;
  font-weight: 900;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .p-presents__item .ttl {
    font-size: 2rem;
    text-underline-offset: 0.6em;
  }
}
.p-presents__item .ttl .line {
  border-bottom: 0.2rem solid #E60012;
  padding-bottom: 0.4rem;
  display: inline-block;
}
@media screen and (max-width: 750px) {
  .p-presents__item .ttl .line {
    padding-bottom: 0.7rem;
  }
}
.p-presents__item .ttl .line > .small {
  display: inline-block;
}
.p-presents__item .ttl .small {
  font-size: 0.7826086957em;
}
@media screen and (max-width: 750px) {
  .p-presents__item .ttl .small {
    font-size: 0.7em;
  }
}
.p-presents__item .txt > .small {
  padding-left: 0.2em;
}
@media screen and (max-width: 750px) {
  .p-presents__item .txt > .small {
    padding-left: 0;
    display: block;
    margin-top: -0.2rem;
  }
}
.p-presents__item .list .item {
  margin: 0 0.5rem;
}
.p-presents__item .img {
  max-width: 60%;
  margin: 2.1rem auto 0;
}
@media screen and (max-width: 750px) {
  .p-presents__item .img {
    max-width: 68.6%;
  }
}
.p-presents__item .img01 {
  max-width: 70%;
}
@media screen and (max-width: 750px) {
  .p-presents__item .img01 {
    max-width: 73%;
  }
}
.p-presents__item .img02 {
  max-width: 44%;
  margin-top: 2.6rem;
}
@media screen and (max-width: 750px) {
  .p-presents__item .img02 {
    max-width: 49%;
  }
}
.p-presents__item .img03 {
  max-width: 51.2893982808%;
  margin-top: 2.6rem;
}
@media screen and (max-width: 750px) {
  .p-presents__item .img03 {
    max-width: 57.805907173%;
    margin-top: 2.5rem;
  }
}
.p-presents__item .img04 {
  max-width: 48.9971346705%;
  margin-top: 2.6rem;
}
@media screen and (max-width: 750px) {
  .p-presents__item .img04 {
    max-width: 55.2742616034%;
    margin-top: 2.5rem;
  }
}

.p-goods {
  padding: 17.5rem 0 12rem;
}
@media screen and (max-width: 750px) {
  .p-goods {
    padding: 10.5rem 0 6.9rem;
    margin-top: 4rem;
  }
}
.p-goods.u-bg-plaid {
  background-position: left 47% top -1.7rem;
}
@media screen and (max-width: 750px) {
  .p-goods.u-bg-plaid {
    background-position: left 50% top -1.7rem;
  }
}
.p-goods__ttl-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 3.7rem;
}
@media screen and (max-width: 750px) {
  .p-goods__ttl-wrap {
    display: block;
  }
}
.p-goods__ttl .en {
  width: 42.6rem;
  margin-left: -0.2rem;
}
@media screen and (max-width: 750px) {
  .p-goods__ttl .en {
    width: 24.8rem;
  }
}
.p-goods__ttl-txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  padding-bottom: 1.3rem;
}
@media screen and (max-width: 750px) {
  .p-goods__ttl-txt {
    font-size: 1.6rem;
    padding-bottom: 0;
    margin-top: 2.4rem;
  }
}
.p-goods__block {
  background-color: #F0F0F0;
  border-radius: 2rem;
  margin-top: 5rem;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  .p-goods__block {
    margin-top: 2.9rem;
  }
}
.p-goods__block-ttl {
  text-align: center;
  font-size: 2.8rem;
  font-weight: 900;
  color: #FFF;
  background-color: #000;
  padding: 1.7rem 0 1.4rem;
}
@media screen and (max-width: 750px) {
  .p-goods__block-ttl {
    font-size: 2rem;
    padding: 1.6rem 0 1.7rem;
  }
}
.p-goods__block-list {
  padding: 2.5rem 5.9rem 3.1rem;
}
@media screen and (max-width: 750px) {
  .p-goods__block-list {
    padding: 2.1rem 2.7rem 3.1rem;
  }
}
.p-goods__block-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.3em;
}
.p-goods__block-item::before {
  content: "・";
  font-weight: 900;
}
.p-goods__block-item + .p-goods__block-item {
  margin-top: 0.04em;
}
@media screen and (max-width: 750px) {
  .p-goods__block-item + .p-goods__block-item {
    margin-top: 0.08em;
  }
}
.p-goods__block-item > span {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.p-goods__notes {
  margin-top: 3rem;
  border: 0.4rem solid #000;
  border-radius: 2rem;
  background-color: #FFF;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  .p-goods__notes {
    margin-top: 2.3rem;
    border-width: 0.3rem;
  }
}
.p-goods__notes-ttl {
  position: relative;
  background-color: #FFE101;
  font-size: 2.8rem;
  font-weight: 900;
  text-align: center;
  padding: 2.6rem 0 2.7rem;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media (hover: hover) {
  .p-goods__notes-ttl:hover {
    background-color: #FFC900;
  }
}
@media (hover: hover) {
  .p-goods__notes-ttl:hover .txt {
    -webkit-transform: scale(1.08) translateZ(0);
            transform: scale(1.08) translateZ(0);
  }
}
@media (hover: hover) {
  .p-goods__notes-ttl:hover .btn {
    -webkit-transform: scale(1.15) translateY(-50%) translateZ(0);
            transform: scale(1.15) translateY(-50%) translateZ(0);
  }
}
@media screen and (max-width: 750px) {
  .p-goods__notes-ttl {
    font-size: 2rem;
    padding: 2.6rem 0 3rem;
  }
}
.p-goods__notes-ttl .txt {
  display: inline-block;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-filter: blur(0);
          filter: blur(0);
  -webkit-transform-origin: center center;
          transform-origin: center center;
  will-change: transform;
}
.p-goods__notes-ttl .btn {
  -webkit-transform-origin: top center;
          transform-origin: top center;
  position: absolute;
  top: calc(50% + 0.1rem);
  -webkit-transform: translateY(-50%) translateZ(0);
          transform: translateY(-50%) translateZ(0);
  right: 2.6rem;
  width: 2.7rem;
  height: auto;
  aspect-ratio: 1;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
  -webkit-filter: blur(0);
          filter: blur(0);
  will-change: transform;
}
@media screen and (max-width: 750px) {
  .p-goods__notes-ttl .btn {
    width: 2rem;
    width: 2rem;
    top: 50%;
    right: 2.1rem;
  }
}
.p-goods__notes-ttl .btn::before, .p-goods__notes-ttl .btn::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 0.4rem;
  background-color: #000;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media screen and (max-width: 750px) {
  .p-goods__notes-ttl .btn::before, .p-goods__notes-ttl .btn::after {
    height: 0.3rem;
  }
}
.p-goods__notes-ttl .btn::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.p-goods__notes-ttl.is-open .btn::after {
  opacity: 0;
}
.p-goods__notes-content {
  display: none;
}
.p-goods__notes-content .inner {
  padding: 5.4rem 5.5rem 4.8rem;
}
@media screen and (max-width: 750px) {
  .p-goods__notes-content .inner {
    padding: 2.8rem 2.3rem 2.5rem;
  }
}
.p-goods__notes-content .list > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.3em;
}
.p-goods__notes-content .list > li > span {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.p-goods__notes-content .list > li::before {
  content: "・";
  font-weight: 900;
}
.p-goods__notes-content .list > li + li {
  margin-top: 0.3em;
}
@media screen and (max-width: 750px) {
  .p-goods__notes-content .list > li + li {
    margin-top: 0.37em;
  }
}
.p-goods__notes-content .list > li.notes {
  padding-left: 1.9rem;
  font-size: 1.2rem;
}
@media screen and (max-width: 750px) {
  .p-goods__notes-content .list > li.notes {
    padding-left: 1.6rem;
  }
}
.p-goods__notes-content .list > li.notes::before {
  display: none;
}
.p-goods__notes-content .list > li.notes .list > li {
  line-height: 1.2;
}
.p-goods__notes-content .list > li.notes .list > li::before {
  content: "※";
  font-weight: 400;
}
.p-goods__notes-content .list > li.notes .list > li.--num-01::before {
  content: "※1";
}
.p-goods__notes-content .list > li.notes .list > li.--num-02::before {
  content: "※2";
}
.p-goods__notes-content .list > li.notes .list > li.--num-03::before {
  content: "※3";
}
.p-goods__notes-content .list > li.notes .list > li.--num-04::before {
  content: "※4";
}
.p-goods__notes-content .txt {
  margin-top: 2.1rem;
}
.p-goods__products {
  margin-top: 8rem;
}
@media screen and (max-width: 750px) {
  .p-goods__products {
    margin-top: 4.1rem;
  }
}
.p-goods__products + .p-goods__products {
  margin-top: 6rem;
}
@media screen and (max-width: 750px) {
  .p-goods__products + .p-goods__products {
    margin-top: 4.1rem;
  }
}
.p-goods__products-ttl {
  position: relative;
  width: 52.8rem;
  margin: 0 auto -5.6rem;
}
@media screen and (max-width: 750px) {
  .p-goods__products-ttl {
    width: 30rem;
    margin-bottom: -3.8rem;
  }
}
.p-goods__products-block {
  border-radius: 2rem;
  border: 0.4rem solid #000;
  background-color: #FFF;
  padding: 8.6rem 3.6rem 5.6rem;
}
@media screen and (max-width: 750px) {
  .p-goods__products-block {
    border-width: 0.3rem;
    padding: 5.7rem 2.1rem 3.7rem;
  }
}
.p-goods__products-block .more {
  margin-top: 1.1rem;
  font-size: 2rem;
  font-weight: 900;
  text-align: right;
}
@media screen and (max-width: 750px) {
  .p-goods__products-block .more {
    font-size: 1.6rem;
    margin-top: 0.5rem;
  }
}
.p-goods__products-block .more .dots {
  display: inline-block;
  vertical-align: top;
  padding-top: 0.4rem;
  font-size: 110%;
}
@media screen and (max-width: 750px) {
  .p-goods__products-block .more .dots {
    padding-top: 0.3rem;
  }
}
.p-goods__products-box-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.4rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 1.4rem;
}
@media screen and (max-width: 750px) {
  .p-goods__products-box-wrap {
    gap: 1rem;
    margin-top: 1rem;
  }
}
.p-goods__products-box-wrap .p-goods__products-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: calc((100% - 2.8rem) / 3);
  gap: 1.8rem;
  padding: 2.15rem 1.7rem;
}
@media screen and (max-width: 750px) {
  .p-goods__products-box-wrap .p-goods__products-box {
    width: 100%;
  }
}
.p-goods__products-box-wrap .p-goods__products-box + .p-goods__products-box {
  margin-top: 0;
}
.p-goods__products-box-wrap .p-goods__products-box .ttl {
  font-size: 1.4rem;
  text-align: center;
  margin-bottom: 0.8rem;
}
@media screen and (max-width: 750px) {
  .p-goods__products-box-wrap .p-goods__products-box .ttl {
    margin-bottom: 1.2rem;
  }
}
.p-goods__products-box-wrap .p-goods__products-box .ttl .sub {
  display: block;
  font-size: 0.8571428571em;
  margin-top: 0.6rem;
}
.p-goods__products-box-wrap .p-goods__products-box .price {
  padding-top: 0.6rem;
  font-size: 1.2rem;
  text-align: center;
}
.p-goods__products-box-wrap .p-goods__products-box .note {
  margin-top: 0.8rem;
  text-align: center;
  font-size: 1rem;
}
@media screen and (max-width: 750px) {
  .p-goods__products-box-wrap .p-goods__products-box .note {
    margin-top: 1.2rem;
  }
}
.p-goods__products-box {
  background-color: #F0F0F0;
  border-radius: 1rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 37.5rem 3.2rem 1fr;
  grid-template-columns: 37.5rem 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 3.2rem;
  padding: 2.4rem 2rem;
}
@media screen and (max-width: 750px) {
  .p-goods__products-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    text-align: center;
    padding: 2.1rem 1.6rem;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    gap: 1.8rem;
  }
}
.p-goods__products-box + .p-goods__products-box {
  margin-top: 2rem;
}
@media screen and (max-width: 750px) {
  .p-goods__products-box + .p-goods__products-box {
    margin-top: 0.8rem;
  }
}
.p-goods__products-box .ttl {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 0.6rem;
}
@media screen and (max-width: 750px) {
  .p-goods__products-box .ttl {
    font-size: 1.4rem;
  }
}
.p-goods__products-box .ttl .sub {
  margin-top: 0.6rem;
  display: block;
  font-size: 0.7777777778em;
}
@media screen and (max-width: 750px) {
  .p-goods__products-box .ttl .sub {
    font-size: 0.8571428571em;
  }
}
.p-goods__products-box .description {
  font-size: 1.2rem;
  padding-bottom: 1.4rem;
  word-break: normal;
}
@media screen and (max-width: 750px) {
  .p-goods__products-box .description {
    font-size: 1.1rem;
    text-align: left;
    padding-bottom: 1.2rem;
  }
}
.p-goods__products-box .price {
  font-size: 1.6rem;
  padding-top: 1.4rem;
  border-top: 1px solid #D9D9D9;
}
@media screen and (max-width: 750px) {
  .p-goods__products-box .price {
    font-size: 1.2rem;
    padding-top: 0.7rem;
  }
}
.p-goods__products-box .btn {
  margin-top: 2rem;
}
@media screen and (max-width: 750px) {
  .p-goods__products-box .btn {
    margin-top: 0;
  }
}
.p-goods__products-box .btn a {
  width: 38.8rem;
  height: 3.6rem;
  margin: 0;
}
@media screen and (max-width: 750px) {
  .p-goods__products-box .btn a {
    letter-spacing: 0.02em;
    width: 26.6rem;
    height: 5rem;
  }
}
.p-goods__products-box .btn a::after {
  background-image: url(../img/icn_arrow_right_black.svg);
}
.p-goods__products-box .btn.--small a {
  width: 27rem;
  height: 3.6rem;
  margin: 0;
}
@media screen and (max-width: 750px) {
  .p-goods__products-box .btn.--small a {
    width: 23.3rem;
    margin: 0.2rem auto 0;
  }
}
.p-goods__products-box .list .slick-arrow {
  width: 1rem;
  height: 1.8rem;
  z-index: 1;
}
@media screen and (max-width: 750px) {
  .p-goods__products-box .list .slick-arrow {
    width: 1.2rem;
    height: 2.3rem;
  }
}
.p-goods__products-box .list .slick-arrow::before {
  display: none;
}
.p-goods__products-box .list .slick-next {
  background: url(../img/icn_arrow_right_orange.svg) no-repeat center/100%;
  right: 0.5rem;
}
@media screen and (max-width: 750px) {
  .p-goods__products-box .list .slick-next {
    background-image: url(../img/icn_arrow_right_orange_thick.svg);
    right: 1rem;
  }
}
.p-goods__products-box .list .slick-prev {
  background: url(../img/icn_arrow_left_orange.svg) no-repeat center/100%;
  left: 0.5rem;
}
@media screen and (max-width: 750px) {
  .p-goods__products-box .list .slick-prev {
    background-image: url(../img/icn_arrow_left_orange_thick.svg);
    left: 1rem;
  }
}
.p-goods__products-box.--non-desc .ttl {
  margin-bottom: 1.4rem;
}
@media screen and (max-width: 750px) {
  .p-goods__products-box.--non-desc .ttl {
    margin-bottom: 1.2rem;
  }
}
@media screen and (max-width: 750px) {
  .p-goods__products-box.--non-price .ttl {
    margin-bottom: 0;
  }
}
.p-goods__products-more {
  margin-top: 1rem;
  font-size: 2rem;
  font-weight: 900;
  text-align: right;
}
@media screen and (max-width: 750px) {
  .p-goods__products-more {
    font-size: 1.6rem;
    margin-top: 0.5rem;
  }
}
.p-goods__products-more .dots {
  display: inline-block;
  vertical-align: top;
  padding-top: 0.4rem;
  font-size: 110%;
}
@media screen and (max-width: 750px) {
  .p-goods__products-more .dots {
    padding-top: 0.3rem;
  }
}

.p-apply {
  position: relative;
  z-index: 1;
  padding-bottom: 12rem;
}
@media screen and (max-width: 750px) {
  .p-apply {
    padding-bottom: 6rem;
  }
}
.p-apply__ttl {
  width: 29.5rem;
}
@media screen and (max-width: 750px) {
  .p-apply__ttl {
    width: 18.7rem;
  }
}
.p-apply__txt {
  max-width: 70rem;
  background-color: #FFF;
  border: 0.4rem solid #000;
  border-radius: 2rem;
  margin: -8.5rem auto 0;
  text-align: center;
  padding: 3.5rem 0 3.3rem;
}
@media screen and (max-width: 750px) {
  .p-apply__txt {
    margin: -3.6rem auto 0;
    border-width: 0.3rem;
    border-radius: 1.8rem;
    padding: 2.1rem 0;
  }
}
.p-apply__txt-head {
  font-size: 2rem;
  font-weight: 900;
  line-height: 1.5;
}
@media screen and (max-width: 750px) {
  .p-apply__txt-head {
    font-size: 1.8rem;
  }
}
.p-apply__txt-notes {
  margin-top: 1rem;
}
@media screen and (max-width: 750px) {
  .p-apply__txt-notes {
    text-align: left;
    margin-top: 1.6rem;
    padding: 0 2.15rem;
  }
}
.p-apply__txt-note {
  font-size: 1.2rem;
  line-height: 1.2;
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (max-width: 750px) {
  .p-apply__txt-note {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    line-height: 1.4;
  }
}
.p-apply__txt-note::before {
  content: "※";
}
@media screen and (max-width: 750px) {
  .p-apply__txt-note > .txt {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
.p-apply__txt-note + .p-apply__txt-note {
  margin-top: 0.4rem;
}
@media screen and (max-width: 750px) {
  .p-apply__txt-note + .p-apply__txt-note {
    margin-top: 0.5rem;
  }
}
.p-apply__lawson {
  margin-top: 5rem;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson {
    margin-top: 2.4rem;
  }
}
.p-apply__lawson-ttl {
  text-align: center;
}
.p-apply__lawson-ttl .txt {
  position: relative;
  display: inline-block;
  font-size: 2.8rem;
  font-weight: 900;
  color: #FFF;
  background-color: #000;
  border-radius: 999rem;
  padding: 1rem 5rem 1.1rem;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson-ttl .txt {
    font-size: 2rem;
    padding-left: 3.5rem;
    padding-right: 3.5rem;
  }
}
.p-apply__lawson-ttl .txt .u-ft-l {
  font-size: 1.145em;
  padding-right: 0.25em;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson-ttl .txt .u-ft-l {
    display: block;
    padding-right: 0;
    font-size: 1.4em;
  }
}
.p-apply__lawson-ttl .txt::before {
  content: "";
  clip-path: polygon(0 0, 100% 0%, 50% 100%);
  width: 4.4rem;
  height: 2.6rem;
  background-color: #000;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  bottom: -1rem;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson-ttl .txt::before {
    height: 2.2rem;
  }
}
.p-apply__lawson-block {
  background-color: #FFF;
  border: 0.4rem solid #000;
  border-radius: 2rem;
  margin-top: -3.4rem;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson-block {
    margin-top: -4.2rem;
    border-width: 0.3rem;
  }
}
.p-apply__lawson-steps {
  padding: 8.2rem 5.3rem 0;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 3.45rem 1fr 3.45rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 3.45rem;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson-steps {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    padding: 6.9rem 2.1rem 0;
    gap: 3.25rem;
  }
}
.p-apply__lawson-step {
  position: relative;
  background-color: #FFF5D0;
  border-radius: 1rem;
  padding: 2rem 1.2rem;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson-step {
    padding: 1.5rem 1rem 2rem;
  }
}
.p-apply__lawson-step::before {
  content: "";
  clip-path: polygon(0 0, 0 100%, 100% 50%);
  width: 1.5rem;
  height: 3.6rem;
  background-color: #000;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: -2.55rem;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson-step::before {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    top: initial;
    bottom: -3.5rem;
    right: calc(50% - 0.8rem);
  }
}
.p-apply__lawson-step:nth-of-type(3n)::before {
  display: none;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson-step:nth-of-type(3n)::before {
    display: block;
  }
}
.p-apply__lawson-step:last-child::before {
  display: none;
}
.p-apply__lawson-step .num {
  position: absolute;
  top: -0.6rem;
  left: -1rem;
  width: 3.72rem;
  height: auto;
  aspect-ratio: 1;
  background-color: #FFC900;
  font-size: 2.16rem;
  font-weight: 700;
  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;
  border-radius: 50%;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson-step .num {
    font-size: 2.4rem;
    width: 4.6rem;
    top: -1rem;
  }
}
.p-apply__lawson-step .num::before {
  content: "";
  clip-path: polygon(0 0, 100% 0%, 50% 100%);
  width: 1.2rem;
  height: 1.2rem;
  background-color: #FFC900;
  position: absolute;
  right: 0;
  bottom: 0;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.p-apply__lawson-step .ttl {
  margin-bottom: 1rem;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  min-height: 2.8em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson-step .ttl {
    margin-bottom: 1.6rem;
    min-height: initial;
  }
}
.p-apply__lawson-step .txt {
  padding: 1.5rem 1.1rem 0;
  text-align: left;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson-step .txt {
    padding-top: 1.3rem;
  }
}
.p-apply__lawson-note {
  font-size: 1.2rem;
  margin: 1.2rem 5.2rem 0;
  line-height: 1.2;
  text-align: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.1em;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson-note {
    margin: 1.2rem 2.1rem 0;
  }
}
.p-apply__lawson-note::before {
  content: "※";
  padding-right: 0.2em;
}
.p-apply__lawson-note > .txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.p-apply__lawson-caution {
  margin-top: 5.6rem;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson-caution {
    margin-top: 3.8rem;
  }
}
.p-apply__lawson-caution-ttl {
  position: relative;
  display: inline-block;
  font-size: 2.6rem;
  font-weight: 900;
  color: #FFF;
  background-color: #000;
  border-radius: 999rem;
  padding: 0.5rem 3.9rem 1rem;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson-caution-ttl {
    font-size: 2.4rem;
    padding: 0.7rem 4.3rem 1rem;
  }
}
.p-apply__lawson-caution-ttl .img {
  display: inline-block;
  width: 3.4rem;
  margin: 0 0.3em -0.1em 0;
  vertical-align: bottom;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson-caution-ttl .img {
    width: 3.2rem;
  }
}
.p-apply__lawson-caution-ttl::before {
  content: "";
  clip-path: polygon(0 0, 100% 0%, 50% 100%);
  width: 4.4rem;
  height: 2.6rem;
  background-color: #000;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  bottom: -1rem;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson-caution-ttl::before {
    width: 2.8rem;
    height: 1.5rem;
    bottom: -0.7rem;
  }
}
.p-apply__lawson-caution-list {
  background-color: #F0F0F0;
  text-align: left;
  padding: 5.8rem 5.5rem 5.2rem;
  border-radius: 0 0 1.7rem 1.7rem;
  margin-top: -2.6rem;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson-caution-list {
    margin-top: -2.9rem;
    padding: 5.05rem 2.2rem 3.5rem;
  }
}
.p-apply__lawson-caution-item {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.2857142857;
  border-top: 1px solid #C6C6C6;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.9rem;
  padding: 1.2rem 0 1.4rem;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson-caution-item {
    padding: 1.3rem 0 1.4rem;
    gap: 0.8rem;
  }
}
.p-apply__lawson-caution-item:last-child {
  border-bottom: 1px solid #C6C6C6;
}
.p-apply__lawson-caution-item::before {
  content: "";
  min-width: 1.8rem;
  width: 1.8rem;
  height: auto;
  aspect-ratio: 1;
  background: url(../img/icn_check.svg) no-repeat top center/100%;
  margin: 0.1em 0 0 -0.1em;
}
@media screen and (max-width: 750px) {
  .p-apply__lawson-caution-item::before {
    margin-left: 0.05em;
  }
}
.p-apply__policy {
  margin-top: 3rem;
  border: 0.4rem solid #000;
  border-radius: 2rem;
  background-color: #FFF;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  .p-apply__policy {
    margin-top: 1.8rem;
    border-width: 0.3rem;
  }
}
.p-apply__policy-ttl {
  position: relative;
  background-color: #FFE101;
  font-size: 2.8rem;
  font-weight: 900;
  text-align: center;
  padding: 2.6rem 0 2.7rem;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media (hover: hover) {
  .p-apply__policy-ttl:hover {
    background-color: #FFC900;
  }
}
@media (hover: hover) {
  .p-apply__policy-ttl:hover .txt {
    -webkit-transform: scale(1.08) translateZ(0);
            transform: scale(1.08) translateZ(0);
  }
}
@media (hover: hover) {
  .p-apply__policy-ttl:hover .btn {
    -webkit-transform: scale(1.15) translateY(-50%) translateZ(0);
            transform: scale(1.15) translateY(-50%) translateZ(0);
  }
}
@media screen and (max-width: 750px) {
  .p-apply__policy-ttl {
    font-size: 2rem;
    padding-top: 2.7rem;
  }
}
.p-apply__policy-ttl .txt {
  display: inline-block;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-filter: blur(0);
          filter: blur(0);
  -webkit-transform-origin: center center;
          transform-origin: center center;
  will-change: transform;
}
.p-apply__policy-ttl .btn {
  -webkit-transform-origin: top center;
          transform-origin: top center;
  position: absolute;
  top: calc(50% + 0.1rem);
  -webkit-transform: translateY(-50%) translateZ(0);
          transform: translateY(-50%) translateZ(0);
  right: 2.6rem;
  width: 2.7rem;
  height: auto;
  aspect-ratio: 1;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
  -webkit-filter: blur(0);
          filter: blur(0);
  will-change: transform;
}
@media screen and (max-width: 750px) {
  .p-apply__policy-ttl .btn {
    width: 2rem;
    width: 2rem;
    top: 50%;
    right: 2.1rem;
  }
}
.p-apply__policy-ttl .btn::before, .p-apply__policy-ttl .btn::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 0.4rem;
  background-color: #000;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media screen and (max-width: 750px) {
  .p-apply__policy-ttl .btn::before, .p-apply__policy-ttl .btn::after {
    height: 0.3rem;
  }
}
.p-apply__policy-ttl .btn::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.p-apply__policy-ttl.is-open .btn::after {
  opacity: 0;
}
.p-apply__policy-content {
  display: none;
}
@media screen and (max-width: 750px) {
  .p-apply__policy-content {
    line-height: 1.43;
  }
}
.p-apply__policy-content .inner {
  padding: 3.5rem 5.2rem 1rem;
}
@media screen and (max-width: 750px) {
  .p-apply__policy-content .inner {
    padding: 0.7rem 2.8rem 1rem 2.2rem;
  }
}
.p-apply__policy-content .ttl {
  font-size: 1.285em;
  margin: 1em 0 0.5em;
}
@media screen and (max-width: 750px) {
  .p-apply__policy-content .ttl {
    margin-bottom: 0.4em;
  }
}
.p-apply__policy-content .ttl::before {
  content: "■";
  color: #000;
  padding-right: 0.2em;
}
.p-apply__policy-content .list {
  padding-left: 0.2em;
}
.p-apply__policy-content .list li {
  text-indent: -1.2em;
  padding-left: 1.2em;
}
.p-apply__policy-content .list li + li {
  margin-top: 0.48rem;
}
@media screen and (max-width: 750px) {
  .p-apply__policy-content .list li + li {
    margin-top: 0.4rem;
  }
}
.p-apply__policy-content .list li::before {
  content: "・";
  color: #000;
  font-weight: 900;
  padding-right: 0.3em;
}
@media screen and (max-width: 750px) {
  .p-apply__policy-content .list li::before {
    padding-right: 0.2em;
  }
}
.p-apply__policy-content li + li {
  margin-top: 0.05em;
}
.p-apply__policy-content a {
  text-decoration: underline;
  text-underline-offset: 2px;
  opacity: 1;
}
@media (hover: hover) {
  .p-apply__policy-content a:hover {
    text-decoration: none;
  }
}
.p-apply__policy-content .box {
  padding: 1.4rem 2.2rem 0.8rem;
}
@media screen and (max-width: 750px) {
  .p-apply__policy-content .box {
    padding: 1.3rem 0rem 0.8rem 2rem;
  }
}
.p-apply__policy-content .box-ttl {
  margin-bottom: 0.2rem;
}
.p-apply__policy-content .box-ttl .txt {
  display: inline-block;
  background-color: #000;
  color: #FFF;
  font-weight: 700;
  padding: 0.05em 0.4em 0.1em;
  font-size: 1.4rem;
}
.p-apply__policy-content .box-ttl .txt.u-mt-0 {
  margin-top: 0;
}
.p-apply__policy-content .contact {
  background-color: #F0F0F0;
  margin-top: 4.2rem;
  padding: 4.9rem 5.2rem;
}
@media screen and (max-width: 750px) {
  .p-apply__policy-content .contact {
    margin-top: 1.8rem;
    padding: 2.3rem 2.1rem;
  }
}
.p-apply__policy-content .contact li + li {
  margin-top: 0.9em;
}
.p-apply__policy-content .contact-ttl {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 0.8rem;
}
* + .p-apply__policy-content .txt {
  margin-top: 2em;
}
.p-apply__btn {
  margin-top: 5.2rem;
}
@media screen and (max-width: 750px) {
  .p-apply__btn {
    margin-top: 3.1rem;
  }
}
.p-apply__btn a {
  width: 39.8rem;
  height: 7.6rem;
  font-size: 3rem;
}
@media screen and (max-width: 750px) {
  .p-apply__btn a {
    width: 29.5rem;
    height: 7rem;
    font-size: 2.4rem;
  }
}
.p-apply__btn-sub {
  margin-top: 3.4rem;
}
@media screen and (max-width: 750px) {
  .p-apply__btn-sub {
    margin-top: 2.4rem;
  }
}
.p-apply__btn-sub a {
  width: 22rem;
  height: 3.6rem;
}

.p-entry {
  padding-bottom: 12rem;
}
@media screen and (max-width: 750px) {
  .p-entry {
    padding-bottom: 6rem;
  }
}
.p-entry__ttl {
  width: 29.4rem;
}
@media screen and (max-width: 750px) {
  .p-entry__ttl {
    width: 18.7rem;
  }
}
.p-entry__block {
  background-color: #FFF;
  border: 0.4rem solid #000;
  border-radius: 2rem;
  margin-top: -8.3rem;
  padding: 4.1rem 5.2rem 5.8rem;
}
@media screen and (max-width: 750px) {
  .p-entry__block {
    margin-top: -3.6rem;
    padding: 5rem 2.1rem 3.8rem;
    border-width: 0.3rem;
  }
}
@media screen and (max-width: 750px) {
  .p-entry__list {
    padding: 0 0.8rem 0 0.4rem;
  }
}
* + .p-entry__list {
  margin-top: 1.4rem;
}
@media screen and (max-width: 750px) {
  * + .p-entry__list {
    margin-top: 2rem;
  }
}
.p-entry__item {
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.1em;
}
.p-entry__item + .p-entry__item {
  margin-top: 1.2rem;
}
.p-entry__item::before {
  content: "・";
}
.p-entry__item > .txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.p-entry__item .list-sub {
  margin-top: 0.2rem;
}
@media screen and (max-width: 750px) {
  .p-entry__item .list-sub {
    margin: 0.5rem 0 0 0.1rem;
  }
}
.p-entry__item .item-sub {
  font-weight: 400;
  font-size: 1.2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.1em;
}
.p-entry__item .item-sub::before {
  content: "※";
}
.p-entry__item .item-sub > .txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.p-entry__item .item-sub + .item-sub {
  margin-top: 0.15rem;
}
@media screen and (max-width: 750px) {
  .p-entry__item .item-sub + .item-sub {
    margin-top: 0.7rem;
  }
}
.p-entry__item a {
  text-decoration: underline;
  text-underline-offset: 2px;
  opacity: 1;
}
@media (hover: hover) {
  .p-entry__item a:hover {
    text-decoration: none;
  }
}
.p-entry__item a * {
  text-decoration: inherit;
}
.p-entry__case-ttl {
  margin-top: 1.8rem;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .p-entry__case-ttl {
    margin-top: 2rem;
  }
}
.p-entry__case-ttl .txt {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 900;
  color: #FFF;
  background-color: #000;
  border-radius: 999rem;
  padding: 0.4rem 1.8rem 0.6rem;
}
.p-entry__case-box {
  background-color: #F0F0F0;
  border-radius: 1rem;
  margin-top: -2.2rem;
  padding: 1.4rem 2rem 2rem;
}
@media screen and (max-width: 750px) {
  .p-entry__case-box {
    padding: 3.8rem 1.2rem 1.2rem;
    margin-top: -2.8rem;
  }
}
.p-entry__case-note {
  text-align: right;
  font-size: 1rem;
}
@media screen and (max-width: 750px) {
  .p-entry__case-note {
    text-align: center;
  }
}
.p-entry__case-list {
  margin-top: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 750px) {
  .p-entry__case-list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0.6rem;
  }
}
.p-entry__case-item {
  height: 15.7rem;
}
@media screen and (max-width: 750px) {
  .p-entry__case-item {
    height: auto;
  }
}
.p-entry__case-item img {
  height: 100%;
  width: auto;
}
@media screen and (max-width: 750px) {
  .p-entry__case-item img {
    height: auto;
    width: 100%;
  }
}
.p-entry__howto {
  margin-top: 3.5rem;
}
@media screen and (max-width: 750px) {
  .p-entry__howto {
    margin-top: 3.3rem;
  }
}
.p-entry__howto + .p-entry__howto {
  margin-top: 1rem;
}

.p-info {
  padding-bottom: 16.6rem;
}
@media screen and (max-width: 750px) {
  .p-info {
    padding-bottom: 8.9rem;
  }
}
.p-info__ttl {
  width: 43.5rem;
}
@media screen and (max-width: 750px) {
  .p-info__ttl {
    width: 27.8rem;
  }
}
.p-info__block {
  background-color: #FFF;
  border: 0.4rem solid #000;
  border-radius: 2rem;
  margin-top: -8.3rem;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  .p-info__block {
    margin-top: -3.5rem;
    border-width: 0.3rem;
  }
}
.p-info__list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 21.2% 1fr;
  grid-template-columns: 21.2% 1fr;
}
@media screen and (max-width: 750px) {
  .p-info__list {
    display: block;
  }
}
.p-info__list-ttl, .p-info__list-txt {
  border-bottom: 0.2rem solid #000;
}
.p-info__list-ttl:last-of-type, .p-info__list-txt:last-of-type {
  border-bottom: none;
}
.p-info__list-ttl {
  background-color: #F0F0F0;
  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-size: 1.8rem;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .p-info__list-ttl {
    border-bottom: none;
    font-size: 1.6rem;
    padding: 1.7rem 0;
  }
}
.p-info__list-txt {
  padding: 3.14rem 2.6rem;
}
@media screen and (max-width: 750px) {
  .p-info__list-txt {
    padding: 2.1rem 2.1rem 2.48rem;
  }
}
.p-info__list-txt * + .txt {
  margin-top: 0.9rem;
}
@media screen and (max-width: 750px) {
  .p-info__list-txt * + .txt {
    margin-top: 1.1rem;
  }
}
.p-info__list-txt .txt.square {
  text-indent: -1.3em;
  padding-left: 1.3em;
}
.p-info__list-txt .txt.square::before {
  content: "◇";
  padding-right: 0.3em;
}
.p-info__list-txt .txt.dots {
  margin-top: 0;
}
.p-info__list-txt .txt.dots::before {
  content: "・";
}
.p-info__list-txt .txt.num {
  text-indent: -1.3em;
  padding-left: 1.3em;
}
.p-info__list-txt .txt.num01::before {
  content: "①";
  padding-right: 0.3em;
}
.p-info__list-txt .txt.num02::before {
  content: "②";
  padding-right: 0.3em;
}
.p-info__list-txt .square + .note {
  margin-top: 0.4rem;
  margin-left: 1.9rem;
}
.p-info__list-txt .note {
  margin-top: 0.7rem;
  font-size: 1.2rem;
  line-height: 1.2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.1em;
}
@media screen and (max-width: 750px) {
  .p-info__list-txt .note {
    margin-top: 1rem;
    line-height: 1.4;
  }
}
.p-info__list-txt .note + .note {
  margin-top: 0.3rem;
}
@media screen and (max-width: 750px) {
  .p-info__list-txt .note + .note {
    margin-top: 0.5rem;
  }
}
.p-info__list-txt .note::before {
  content: "※";
}
.p-info__list-txt .note > .txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (max-width: 750px) {
  .p-info__list-txt .sp-indent {
    display: inline-block;
    text-indent: -1.3em;
    padding-left: 1.3em;
    margin-top: 0.5rem;
  }
}
.p-info__list-txt .sp-indent:first-child {
  margin-top: 0;
}
.p-info__list-txt a {
  text-decoration: underline;
  text-underline-offset: 2px;
  opacity: 1;
  margin-left: 0.3em;
}
@media screen and (max-width: 750px) {
  .p-info__list-txt a {
    display: inline-block;
    margin-left: 1.2em;
  }
}
@media (hover: hover) {
  .p-info__list-txt a:hover {
    text-decoration: none;
  }
}
.p-info__list-txt .box + .box {
  margin-top: 1.6rem;
}
@media screen and (max-width: 750px) {
  .p-info__list-txt .box + .box {
    margin-top: 1.1rem;
  }
}
.p-info__list-txt .box + .note {
  margin-top: 1.7rem;
}
@media screen and (max-width: 750px) {
  .p-info__list-txt .box + .note {
    margin-top: 1rem;
  }
}
.p-info__list-txt .box-ttl {
  font-size: 1.6rem;
  font-weight: 700;
  border-bottom: 1px solid #CCCCCC;
  padding-bottom: 0.2em;
}
.p-info__list-txt .period-num {
  display: inline-block;
  vertical-align: text-top;
}
@media screen and (max-width: 750px) {
  .p-info__list-txt .period-num .finished {
    display: block;
  }
}

.p-outline {
  padding-bottom: 10rem;
}
@media screen and (max-width: 750px) {
  .p-outline {
    padding-bottom: 7rem;
  }
}
.p-outline__ttl {
  width: 29.2rem;
}
@media screen and (max-width: 750px) {
  .p-outline__ttl {
    width: 18.7rem;
  }
}
.p-outline__block {
  background-color: #FFF;
  border: 0.4rem solid #000;
  border-radius: 2rem;
  margin-top: -8.3rem;
  padding: 3.7rem 4.6rem 3.2rem;
}
@media screen and (max-width: 750px) {
  .p-outline__block {
    margin-top: -3.6rem;
    border-width: 0.3rem;
    padding: 2.9rem 2.1rem 0.4rem;
  }
}
.p-outline__item {
  border-bottom: 0.2rem dotted #000;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 11rem 1.6rem 1fr;
  grid-template-columns: 11rem 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.6rem;
  padding: 2.8rem 0;
}
@media screen and (max-width: 750px) {
  .p-outline__item {
    display: block;
    padding: 0;
    border-bottom: none;
  }
}
.p-outline__item:last-child {
  border-bottom: none;
}
.p-outline__item-ttl .txt {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 900;
  color: #FFF;
  background-color: #000;
  border-radius: 999rem;
  min-width: 11rem;
  text-align: center;
  padding: 0.5rem 0;
}
@media screen and (max-width: 750px) {
  .p-outline__item-ttl .txt {
    display: block;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 750px) {
  .p-outline__item-txt {
    padding: 1.2rem 0 2.45rem;
  }
}
.p-outline__item-txt .txt {
  display: block;
  font-size: 2rem;
  font-weight: 900;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 750px) {
  .p-outline__item-txt .txt {
    font-size: 1.8rem;
    text-align: center;
  }
}
.p-outline__item-txt .txt + .txt {
  margin-top: 0.4rem;
}
@media screen and (max-width: 750px) {
  .p-outline__item-txt .txt + .txt {
    margin-top: 0.7rem;
  }
}
.p-outline__item-txt .txt.small {
  font-size: 1.6rem;
  font-weight: 400;
}
@media screen and (max-width: 750px) {
  .p-outline__item-txt .txt.small {
    font-size: 1.4rem;
  }
}
.p-outline__item-txt .note {
  display: block;
  font-size: 1.2rem;
  margin-top: 0.5rem;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 750px) {
  .p-outline__item-txt .note {
    text-align: center;
  }
}
.p-outline__item-txt .note::before {
  content: "※";
}
.p-outline__item-txt a {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
  opacity: 1;
}
@media screen and (max-width: 750px) {
  .p-outline__item-txt a {
    font-size: 1.5rem;
    white-space: nowrap;
  }
}
@media (hover: hover) {
  .p-outline__item-txt a:hover {
    text-decoration: none;
  }
}
.p-outline__btn {
  margin-top: 3.9rem;
}
@media screen and (max-width: 750px) {
  .p-outline__btn {
    margin-top: 2.6rem;
  }
}
.p-outline__btn a {
  width: 15.4rem;
  height: 3.6rem;
}
@media screen and (max-width: 750px) {
  .p-outline__btn a {
    width: 14.3rem;
  }
}

.p-ticket-detail {
  background-color: #F0F0F0;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__fv {
    padding-bottom: 3rem;
  }
}
.p-ticket-detail__fv-ttl {
  width: 63rem;
  margin: 0 auto;
  padding-top: 2.8rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__fv-ttl {
    width: 31.6rem;
    padding-top: 2.4rem;
  }
}
.p-ticket-detail__fv-list {
  margin: 2.8rem 0 4.2rem;
  background-color: #FFF;
  border-radius: 999rem;
  padding: 1.4rem 2.7rem 1.6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__fv-list {
    display: block;
    border-radius: 2rem;
    margin: 2rem 2.4rem 0;
    padding: 1.5rem 3.2rem;
  }
}
.p-ticket-detail__fv-item + .p-ticket-detail__fv-item {
  border-left: 1px solid #D5D5D5;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__fv-item + .p-ticket-detail__fv-item {
    border-left: none;
    border-top: 1px solid #D5D5D5;
  }
}
.p-ticket-detail__fv-item a {
  font-size: 1.6rem;
  font-weight: 900;
  letter-spacing: 0.02em;
  padding: 0.2rem 1.6rem;
  display: block;
  white-space: nowrap;
  opacity: 1;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__fv-item a {
    font-size: 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 1.3rem 0;
  }
}
.p-ticket-detail__fv-item a::after {
  content: "";
  width: 0.85875em;
  height: 0.85875em;
  display: inline-block;
  background: #000 url(../img/icn_arrow_bottom_white.svg) no-repeat center/100%;
  border-radius: 50%;
  margin: 0 0 -0.1rem 0.6rem;
  vertical-align: baseline;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}
@media (hover: hover) {
  .p-ticket-detail__fv-item a:hover {
    color: #FF5500;
  }
}
@media (hover: hover) {
  .p-ticket-detail__fv-item a:hover::after {
    background-color: #FF5500;
  }
}
.p-ticket-detail__contents {
  padding-bottom: 10rem;
}
.p-ticket-detail__block {
  margin-top: 3rem;
  padding-top: 4rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__block {
    margin-top: 2.1rem;
    padding-top: 3rem;
  }
}
.p-ticket-detail__block + .p-ticket-detail__block {
  margin-top: 2rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__block + .p-ticket-detail__block {
    margin-top: 1.2rem;
  }
}
.p-ticket-detail__block-ttl {
  margin: 0 auto -4.3rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__block-ttl {
    margin-bottom: -3.6rem;
  }
}
.p-ticket-detail__block-ttl.--stage {
  width: 45.1rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__block-ttl.--stage {
    width: 29.8rem;
  }
}
.p-ticket-detail__block-ttl.--merchandise {
  width: 48.4rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__block-ttl.--merchandise {
    width: 29.8rem;
  }
}
.p-ticket-detail__block-ttl.--kuji {
  width: 54.8rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__block-ttl.--kuji {
    width: 29.8rem;
  }
}
.p-ticket-detail__block-ttl.--figure {
  width: 48.3rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__block-ttl.--figure {
    width: 29.8rem;
    margin-bottom: -3.4rem;
  }
}
.p-ticket-detail__block-ttl.--figure + .p-ticket-detail__box {
  padding-top: 6.3rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__block-ttl.--figure + .p-ticket-detail__box {
    padding-top: 4.6rem;
  }
}
.p-ticket-detail__box {
  background-color: #FFF;
  border: 0.4rem solid #000;
  border-radius: 2rem;
  padding: 6.4rem 3.6rem 6.1rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__box {
    border-width: 0.3rem;
    padding: 4.5rem 2.1rem 3.7rem;
  }
}
.p-ticket-detail__box-txt {
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.6;
  font-weight: 700;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__box-txt {
    font-size: 1.4rem;
  }
}
.p-ticket-detail__box-txt + .p-ticket-detail__box-txt {
  margin-top: 0.7em;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__box-txt + .p-ticket-detail__box-txt {
    margin-top: 0.5em;
  }
}
.p-ticket-detail__box-txt.--bg > span {
  display: inline-block;
  padding: 0.1em 0.6em 0.2em;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__box-txt.--bg > span {
    display: block;
    padding-bottom: 0.3em;
  }
}
.p-ticket-detail__box-txt.--bg-gray > span {
  background-color: #F0F0F0;
}
.p-ticket-detail__box-txt.--bg-red > span {
  color: #FFF;
  background-color: #E60012;
}
.p-ticket-detail__box-notes {
  margin-top: 1.9rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__box-notes {
    margin-top: 1.2rem;
  }
}
.p-ticket-detail__box-note {
  font-size: 1.2rem;
  text-align: center;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__box-note {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: left;
    gap: 0.2rem;
  }
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__box-note > span {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
.p-ticket-detail__box-note + .p-ticket-detail__box-note {
  margin-top: 0.4rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__box-note + .p-ticket-detail__box-note {
    margin-top: 0.45rem;
  }
}
.p-ticket-detail__box-note::before {
  content: "※";
}
.p-ticket-detail__box-list {
  margin-top: 2.8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.4rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__box-list {
    display: block;
  }
}
.p-ticket-detail__box-list + .p-ticket-detail__wrap {
  margin-top: 4.3rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__box-list + .p-ticket-detail__wrap {
    margin-top: 4rem;
  }
}
.p-ticket-detail__box-item {
  width: calc((100% - 2.8rem) / 3);
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__box-item {
    width: 100%;
  }
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__box-item + .p-ticket-detail__box-item {
    margin-top: 1.2rem;
  }
}
.p-ticket-detail__box-item .head {
  text-align: center;
  margin-bottom: -2.4rem;
}
.p-ticket-detail__box-item .head-inner {
  background-color: #000;
  color: #FFF;
  font-size: 1.8rem;
  line-height: 1.15;
  font-weight: 900;
  padding: 0.8rem 1.8rem 0.95rem;
  border-radius: 999rem;
  display: inline-block;
}
.p-ticket-detail__box-item .head-txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.4rem;
}
.p-ticket-detail__box-item .head-num {
  display: inline-block;
  width: 1.8rem;
}
.p-ticket-detail__box-item .inner {
  padding: 3.6rem 1.6rem 2rem;
  background-color: #F0F0F0;
  border-radius: 1rem;
}
.p-ticket-detail__box-item .ttl {
  font-weight: 700;
  text-align: center;
  padding-bottom: 0.9rem;
  border-bottom: 1px solid #D9D9D9;
}
.p-ticket-detail__box-item .price {
  font-size: 1.2rem;
  text-align: center;
  margin-top: 0.5rem;
}
.p-ticket-detail__box-item .img {
  margin-top: 2rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__box-item .img {
    margin-top: 1.7rem;
  }
}
.p-ticket-detail__wrap {
  margin-top: 3.7rem;
  border-radius: 1rem;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__wrap {
    margin-top: 2.6rem;
  }
}
.p-ticket-detail__wrap + .p-ticket-detail__wrap {
  margin-top: 3.6rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__wrap + .p-ticket-detail__wrap {
    margin-top: 2.3rem;
  }
}
.p-ticket-detail__wrap.--stage {
  background-color: #FDE9EA;
}
.p-ticket-detail__wrap.--stage .p-ticket-detail__wrap-ttl,
.p-ticket-detail__wrap.--stage .p-ticket-detail__wrap-list .ttl {
  background-color: #CC0010;
}
.p-ticket-detail__wrap.--stage .p-ticket-detail__wrap-txt .num {
  outline: 1px solid #ECC9CA;
}
.p-ticket-detail__wrap.--merchandise {
  background-color: #EBF6DA;
}
.p-ticket-detail__wrap.--merchandise .p-ticket-detail__wrap-ttl,
.p-ticket-detail__wrap.--merchandise .p-ticket-detail__wrap-list .ttl {
  background-color: #2F8600;
}
.p-ticket-detail__wrap.--merchandise .p-ticket-detail__wrap-txt .num {
  outline: 1px solid #CAD9B3;
}
.p-ticket-detail__wrap.--kuji {
  background-color: #FFEFD9;
}
.p-ticket-detail__wrap.--kuji .p-ticket-detail__wrap-ttl,
.p-ticket-detail__wrap.--kuji .p-ticket-detail__wrap-list .ttl {
  background-color: #E65D00;
}
.p-ticket-detail__wrap.--kuji .p-ticket-detail__wrap-txt {
  font-size: 1.6rem;
  text-align: center;
  margin-top: -1.1rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__wrap.--kuji .p-ticket-detail__wrap-txt {
    font-size: 1.4rem;
    margin-top: -0.5rem;
  }
}
.p-ticket-detail__wrap.--figure {
  background-color: #E6EFF7;
}
.p-ticket-detail__wrap.--figure .p-ticket-detail__wrap-ttl,
.p-ticket-detail__wrap.--figure .p-ticket-detail__wrap-list .ttl {
  background-color: #28529D;
}
.p-ticket-detail__wrap.--figure .p-ticket-detail__wrap-inner {
  padding: 2.4rem 4rem 3.2rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__wrap.--figure .p-ticket-detail__wrap-inner {
    padding: 2rem 2rem 2.4rem;
  }
}
.p-ticket-detail__wrap.--free {
  background-color: #FFF5D0;
}
.p-ticket-detail__wrap.--free .p-ticket-detail__wrap-ttl,
.p-ticket-detail__wrap.--free .p-ticket-detail__wrap-list .ttl {
  background-color: #FFC900;
  font-size: 1.8rem;
  color: #000;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__wrap.--free .p-ticket-detail__wrap-ttl {
    font-size: 1.4rem;
    line-height: 1.5;
    padding-top: 1.4rem;
  }
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__wrap.--free .p-ticket-detail__wrap-list .ttl {
    font-size: 1.6rem;
  }
}
.p-ticket-detail__wrap-ttl {
  font-size: 2.4rem;
  color: #FFF;
  text-align: center;
  font-weight: 700;
  padding: 1.5rem 0 1.7rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__wrap-ttl {
    font-size: 1.8rem;
    padding: 1.2rem 0 1.5rem;
  }
}
.p-ticket-detail__wrap-inner {
  padding: 3.2rem 4rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__wrap-inner {
    padding: 2.4rem 2rem 2.2rem;
  }
}
.p-ticket-detail__wrap-txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.8rem;
  font-weight: 700;
  gap: 0.3333333333em;
  margin-bottom: 2.4rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__wrap-txt {
    font-size: 1.6rem;
    text-align: center;
    display: block;
    margin-bottom: 2.1rem;
  }
}
.p-ticket-detail__wrap-txt .choose {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.1111111111em;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__wrap-txt .choose {
    display: inline-block;
    padding-right: 0.4rem;
  }
}
.p-ticket-detail__wrap-txt .num {
  width: 2.6rem;
  height: 2.6rem;
  display: inline-block;
  border-radius: 50%;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__wrap-txt .num {
    width: 2.2rem;
    height: 2.2rem;
    margin: 0 0.2rem;
  }
}
.p-ticket-detail__wrap-list .line {
  background-color: #FFF;
  border-radius: 0.8rem;
  overflow: hidden;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 14rem 1fr;
  grid-template-columns: 14rem 1fr;
  min-height: 7rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__wrap-list .line {
    display: block;
    min-height: initial;
    border-radius: 1rem;
  }
}
.p-ticket-detail__wrap-list .line + .line {
  margin-top: 0.6rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__wrap-list .line + .line {
    margin-top: 0.9rem;
  }
}
.p-ticket-detail__wrap-list .ttl {
  font-size: 1.8rem;
  color: #FFF;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.3em;
  padding-bottom: 0.2em;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__wrap-list .ttl {
    font-size: 1.6rem;
    padding: 0.9rem 0;
  }
}
.p-ticket-detail__wrap-list .ttl .num {
  width: 2.4rem;
  display: inline-block;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__wrap-list .ttl .num {
    width: 2rem;
  }
}
.p-ticket-detail__wrap-list .txt {
  font-size: 1.8rem;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0 3.2rem 0.2em;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__wrap-list .txt {
    font-size: 1.6rem;
    text-align: center;
    padding: 1rem 1.4rem 1.4rem;
    gap: 0.3rem;
  }
}
.p-ticket-detail__wrap-list .txt .note {
  font-size: 0.6666666667em;
  font-weight: 400;
  margin-top: 0.3333333333em;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__wrap-list .txt .note {
    margin-top: 0;
    font-size: 0.75em;
  }
}
.p-ticket-detail__wrap-list-sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1rem;
  margin-top: -0.4rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__wrap-list-sub {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0.6rem;
  }
}
.p-ticket-detail__wrap-list-sub .item {
  width: calc(50% - 0.5rem);
  background-color: #FFF;
  min-height: 6rem;
  border-radius: 1rem;
  font-size: 1.8rem;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 3.2rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__wrap-list-sub .item {
    width: 100%;
    min-height: initial;
    font-size: 1.6rem;
    display: block;
    text-align: center;
    padding: 1.07rem 0;
  }
}
.p-ticket-detail__btn {
  margin-top: 6rem;
}
@media screen and (max-width: 750px) {
  .p-ticket-detail__btn {
    margin-top: 4rem;
  }
}
.p-ticket-detail__btn a {
  width: 25rem;
  height: 3.6rem;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.p-ticket-detail__btn a::after {
  background-image: url(../img/icn_arrow_left_black.svg);
}

.u-sp {
  display: none !important;
}

@media screen and (max-width: 750px) {
  .u-pc {
    display: none !important;
  }
  .u-sp {
    display: block !important;
  }
}
.u-clearfix::after {
  content: "";
  display: block;
  block-size: 0;
  font-size: 0;
  clear: both;
  visibility: hidden;
}

.u-orange {
  color: #FF5500;
}

.u-red {
  color: #E60012;
}

.u-yellow02 {
  color: #FFE101;
}

.u-black {
  color: #000;
}

.u-bg-plaid {
  background-image: linear-gradient(0deg, transparent calc(100% - 2.5px), #F0F0F0 calc(100% - 2.5px)), linear-gradient(90deg, transparent calc(100% - 2.5px), #F0F0F0 calc(100% - 2.5px));
  background-size: 8rem 8rem;
  background-repeat: repeat;
  background-position: left 47% center;
}
@media screen and (max-width: 750px) {
  .u-bg-plaid {
    background-image: linear-gradient(0deg, transparent calc(100% - 1.5px), #F0F0F0 calc(100% - 1.5px)), linear-gradient(90deg, transparent calc(100% - 1.5px), #F0F0F0 calc(100% - 1.5px));
    background-size: 4.83rem 4.83rem;
    background-position: left 42.5% center;
  }
}

.u-bg-separate {
  position: relative;
  background: #FFF url(../img/bg_separate_top_yellow_white.svg) no-repeat top -0.4rem center/100%;
  border-top: 0.4rem solid #000;
}
@media screen and (max-width: 750px) {
  .u-bg-separate {
    background-image: url(../img/bg_separate_top_yellow_white_sp.svg);
  }
}

.u-mt-0 {
  margin-top: 0;
}