@charset "UTF-8";
/* stylelint-disable-line scss/dollar-variable-colon-space-after */
body {
  margin: 0;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.6;
  color: #000;
  background-color: #fff;
  -webkit-font-smoothing: auto;
  text-rendering: auto;
}

html {
  overflow-y: scroll;
  -webkit-font-smoothing: auto;
  scroll-behavior: smooth;
  scroll-padding-top: 90px;
  scrollbar-gutter: stable;
  text-rendering: auto;
}

html.is-menu-open,
body.is-menu-open {
  height: 100%;
  overflow: hidden;
}

img {
  width: 100%;
  height: 100%;
}

h1 {
  margin: 0;
  padding: 0;
  font-size: 35px;
  font-weight: 600;
  line-height: 1.8;
}
@media (max-width: 768px) {
  h1 {
    font-size: 24px;
  }
}

h2 {
  margin: 0;
  padding: 0;
  font-size: 28px;
  font-weight: 600;
  line-height: 1.8;
}
@media (max-width: 768px) {
  h2 {
    font-size: 22px;
  }
}

h3 {
  margin: 0;
  padding: 0;
  font-size: 25px;
  font-weight: 600;
  line-height: 1.8;
}
@media (max-width: 768px) {
  h3 {
    font-size: 20px;
  }
}

h4 {
  margin: 0;
  padding: 0;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.8;
}
@media (max-width: 768px) {
  h4 {
    font-size: 18px;
  }
}

p {
  font-size: 20px;
  line-height: 1.6;
}
@media (max-width: 768px) {
  p {
    font-size: 16px;
    text-align: justify;
  }
}

small {
  font-size: 14px;
}

.wp-block-list {
  font-size: 20px;
}
.wp-block-list li {
  margin: 0.5em 0 0.6em 1.25em;
  font-size: 20px;
  line-height: 1.8;
  list-style: decimal outside;
  overflow-wrap: break-word;
  overflow-wrap: anywhere; /* 推奨：自然に折り返す */
  padding-left: 0.4em;
}
@media (max-width: 768px) {
  .wp-block-list li {
    margin: 0.5em 0 0.6em 1.25em;
    font-size: 16px;
  }
}
.wp-block-list li li {
  list-style-type: circle;
}
@media (max-width: 768px) {
  .wp-block-list li li {
    margin: 0.5em 0 0.6em;
  }
}
.wp-block-list li li li {
  list-style-type: square;
}
.wp-block-list ul {
  margin: 0.5em 0 0.6em 0.6em;
  font-size: 20px;
  line-height: 1.8;
  list-style: disc outside;
  overflow-wrap: break-word;
  overflow-wrap: anywhere; /* 推奨：自然に折り返す */
  padding-left: 1rem;
  padding-left: 0.4em;
}
@media (max-width: 768px) {
  .wp-block-list ul {
    font-size: 16px;
  }
}
.wp-block-list ul ul {
  list-style-type: circle;
}
@media (max-width: 768px) {
  .wp-block-list ul ul {
    margin: 0.5em 0 0.6em;
  }
}
.wp-block-list ul ul ul {
  list-style-type: square;
}

@media (max-width: 768px) {
  .u-pc-only {
    display: none;
  }
}

.u-sp-only {
  display: none;
}
@media (max-width: 768px) {
  .u-sp-only {
    display: block;
  }
}

.u-red-text {
  color: red;
}

.glightbox-container,
.glightbox-clean,
.glightbox-modern {
  z-index: 99999999 !important;
}

.destyle {
  /*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.css */
  /* Reset box-model and set borders */
  /* ============================================ */
}
.destyle *,
.destyle ::before,
.destyle ::after {
  min-width: 0;
  box-sizing: border-box;
  border-width: 0;
  border-style: solid;
}
.destyle {
  /* Document */
  /* ============================================ */
  /**
  * 1. Correct the line height in all browsers.
  * 2. Prevent adjustments of font size after orientation changes in iOS.
  * 3. Remove gray overlay on links for iOS.
  */
}
.destyle html {
  line-height: 1.15; /* 1 */
  -webkit-tap-highlight-color: transparent; /* 3 */
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
          text-size-adjust: 100%; /* 2 */
}
.destyle {
  /* Sections */
  /* ============================================ */
  /**
  * Remove the margin in all browsers.
  */
}
.destyle body {
  margin: 0;
}
.destyle {
  /**
  * Render the `main` element consistently in IE.
  */
}
.destyle main {
  display: block;
}
.destyle {
  /* Vertical rhythm */
  /* ============================================ */
}
.destyle p,
.destyle table,
.destyle blockquote,
.destyle address,
.destyle pre,
.destyle iframe,
.destyle form,
.destyle figure,
.destyle dl {
  margin: 0;
}
.destyle {
  /* Headings */
  /* ============================================ */
}
.destyle h1,
.destyle h2,
.destyle h3,
.destyle h4,
.destyle h5,
.destyle h6 {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
}
.destyle {
  /* Lists (enumeration) */
  /* ============================================ */
}
.destyle ul,
.destyle ol {
  margin: 0;
  padding: 0;
  list-style: none;
}
.destyle {
  /* Lists (definition) */
  /* ============================================ */
}
.destyle dt {
  font-weight: bold;
}
.destyle dd {
  margin-left: 0;
}
.destyle {
  /* Grouping content */
  /* ============================================ */
  /**
  * 1. Add the correct box sizing in Firefox.
  * 2. Show the overflow in Edge and IE.
  */
}
.destyle hr {
  height: 0; /* 1 */
  margin: 0;
  box-sizing: content-box; /* 1 */
  clear: both;
  overflow: visible; /* 2 */
  color: inherit;
  border-top-width: 1px;
}
.destyle {
  /**
  * 1. Correct the inheritance and scaling of font size in all browsers.
  * 2. Correct the odd `em` font sizing in all browsers.
  */
}
.destyle pre {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}
.destyle address {
  font-style: inherit;
}
.destyle {
  /* Text-level semantics */
  /* ============================================ */
  /**
  * Remove the gray background on active links in IE 10.
  */
}
.destyle a {
  text-decoration: none;
  color: inherit;
  background-color: transparent;
}
.destyle {
  /**
  * 1. Remove the bottom border in Chrome 57-
  * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
  */
}
.destyle abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}
.destyle {
  /**
  * Add the correct font weight in Chrome, Edge, and Safari.
  */
}
.destyle b,
.destyle strong {
  font-weight: bolder;
}
.destyle {
  /**
  * 1. Correct the inheritance and scaling of font size in all browsers.
  * 2. Correct the odd `em` font sizing in all browsers.
  */
}
.destyle code,
.destyle kbd,
.destyle samp {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}
.destyle {
  /**
  * Add the correct font size in all browsers.
  */
}
.destyle small {
  font-size: 80%;
}
.destyle {
  /**
  * Prevent `sub` and `sup` elements from affecting the line height in
  * all browsers.
  */
}
.destyle sub,
.destyle sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}
.destyle sub {
  bottom: -0.25em;
}
.destyle sup {
  top: -0.5em;
}
.destyle {
  /* Replaced content */
  /* ============================================ */
  /**
  * Prevent vertical alignment issues.
  */
}
.destyle svg,
.destyle img,
.destyle embed,
.destyle object,
.destyle iframe {
  vertical-align: bottom;
}
.destyle {
  /* Forms */
  /* ============================================ */
  /**
  * Reset form fields to make them styleable.
  * 1. Make form elements stylable across systems iOS especially.
  * 2. Inherit text-transform from parent.
  */
}
.destyle button,
.destyle input,
.destyle optgroup,
.destyle select,
.destyle textarea {
  margin: 0;
  padding: 0;
  font: inherit;
  text-align: inherit;
  text-transform: inherit; /* 2 */
  color: inherit;
  background: transparent;
  border-radius: 0; /* 1 */
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  vertical-align: middle;
}
.destyle {
  /**
  * Correct cursors for clickable elements.
  */
}
.destyle button,
.destyle [type=button],
.destyle [type=reset],
.destyle [type=submit] {
  cursor: pointer;
}
.destyle button:disabled,
.destyle [type=button]:disabled,
.destyle [type=reset]:disabled,
.destyle [type=submit]:disabled {
  cursor: default;
}
.destyle {
  /**
  * Improve outlines for Firefox and unify style with input elements & buttons.
  */
}
.destyle :-moz-focusring {
  outline: auto;
}
.destyle select:disabled {
  opacity: inherit;
}
.destyle {
  /**
  * Remove padding
  */
}
.destyle option {
  padding: 0;
}
.destyle {
  /**
  * Reset to invisible
  */
}
.destyle fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
}
.destyle legend {
  padding: 0;
}
.destyle {
  /**
  * Add the correct vertical alignment in Chrome, Firefox, and Opera.
  */
}
.destyle progress {
  vertical-align: baseline;
}
.destyle {
  /**
  * Remove the default vertical scrollbar in IE 10+.
  */
}
.destyle textarea {
  overflow: auto;
}
.destyle {
  /**
  * Correct the cursor style of increment and decrement buttons in Chrome.
  */
}
.destyle [type=number]::-webkit-inner-spin-button,
.destyle [type=number]::-webkit-outer-spin-button {
  height: auto;
}
.destyle {
  /**
  * Correct the outline style in Safari.
  */
}
.destyle [type=search] {
  outline-offset: -2px; /* 1 */
}
.destyle {
  /**
  * Remove the inner padding in Chrome and Safari on macOS.
  */
}
.destyle [type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
          appearance: none;
}
.destyle {
  /**
  * 1. Correct the inability to style clickable types in iOS and Safari.
  * 2. Fix font inheritance.
  */
}
.destyle ::-webkit-file-upload-button {
  font: inherit; /* 2 */
  -webkit-appearance: auto;
          appearance: auto; /* 1 */
}
.destyle {
  /**
  * Fix appearance for Firefox
  */
}
.destyle [type=number] {
  -webkit-appearance: textfield;
     -moz-appearance: textfield;
          appearance: textfield;
}
.destyle {
  /**
  * Clickable labels
  */
}
.destyle label[for] {
  cursor: pointer;
}
.destyle {
  /* Interactive */
  /* ============================================ */
  /*
  * Add the correct display in Edge, IE 10+, and Firefox.
  */
}
.destyle details {
  display: block;
}
.destyle {
  /*
  * Add the correct display in all browsers.
  */
}
.destyle summary {
  display: list-item;
}
.destyle {
  /*
  * Remove outline for editable content.
  */
}
.destyle [contenteditable]:focus {
  outline: auto;
}
.destyle {
  /* Tables */
  /* ============================================ */
  /**
  1. Correct table border color inheritance in all Chrome and Safari.
  */
}
.destyle table {
  border-color: inherit; /* 1 */
  border-collapse: collapse;
}
.destyle caption {
  text-align: left;
}
.destyle td,
.destyle th {
  padding: 0;
  vertical-align: top;
}
.destyle th {
  font-weight: bold;
  text-align: left;
}

.c-logo-button {
  display: block;
}
@media (max-width: 992px) {
  .c-logo-button {
    align-items: center;
  }
}
.c-logo-button .c-logo {
  display: block;
  width: 280px;
  height: auto;
}
@media (max-width: 992px) {
  .c-logo-button .c-logo {
    width: 140px;
  }
}
.c-logo-button .c-logo-tagline {
  font-size: 16px;
  font-weight: 300;
  line-height: 1.2;
  letter-spacing: 0.04em;
  text-align: center;
}
@media (max-width: 992px) {
  .c-logo-button .c-logo-tagline {
    font-size: 14px;
    letter-spacing: 0.01em;
  }
}

.c-news-list {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
.c-news-list ul {
  display: flex;
  flex-direction: column;
}
.c-news-list ul li a {
  display: flex;
  padding: 10px 0;
  color: white;
  gap: 20px;
}
@media (max-width: 576px) {
  .c-news-list ul li a {
    flex-direction: column;
    gap: 5px;
  }
}
.c-news-list ul li a .c-news-list__date {
  font-weight: 300;
  white-space: nowrap;
  flex: 0 0 auto;
}
@media (max-width: 576px) {
  .c-news-list ul li a .c-news-list__date {
    font-size: 14px;
    white-space: nowrap;
    flex: 0 0 auto;
  }
}
.c-news-list ul li a .c-news-list__title {
  min-width: 0;
  flex: 1 1 auto;
}
@media (max-width: 576px) {
  .c-news-list ul li a .c-news-list__title {
    font-size: 14px;
  }
}

.c-contact-form {
  width: 100%;
}
.c-contact-form * {
  box-sizing: border-box;
}
.c-contact-form .c-contact-form__inner {
  max-width: 100%;
  padding: 30px;
}
@media (max-width: 768px) {
  .c-contact-form .c-contact-form__inner {
    padding: 0;
  }
}
.c-contact-form .c-contact-form__inner .wpcf7 {
  width: 100%;
}
.c-contact-form .c-contact-form__inner .wpcf7 form {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  gap: 20px;
}
@media (max-width: 768px) {
  .c-contact-form .c-contact-form__inner .wpcf7 form {
    gap: 0;
  }
}
.c-contact-form .c-contact-form__inner .wpcf7 form .c-contact-form__form-item {
  width: 100%;
}
.c-contact-form .c-contact-form__inner .wpcf7 form .c-contact-form__form-item p {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 5px;
}
.c-contact-form .c-contact-form__inner .wpcf7 form .c-contact-form__form-item p label {
  display: block;
  width: 100%;
  font-size: 16px;
  font-weight: 600;
}
.c-contact-form .c-contact-form__inner .wpcf7 form .c-contact-form__form-item p span {
  display: block;
  width: 100%;
  color: black;
  border: 3px solid black;
  border-radius: 3px;
  background-color: white;
}
.c-contact-form .c-contact-form__inner .wpcf7 form .c-contact-form__form-item p span input {
  width: 100%;
  max-width: 100%;
  padding: 0 10px;
  box-sizing: border-box;
  font-size: 16px;
  font-weight: 600;
  line-height: 3;
  border: none;
}
.c-contact-form .c-contact-form__inner .wpcf7 form .c-contact-form__form-item p span textarea {
  width: 100%;
  padding: 10px;
  box-sizing: border-box;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.8;
  border: none;
}
.c-contact-form .c-contact-form__inner .wpcf7 form .c-contact-form__form-item p small {
  display: block;
  width: 100%;
  margin-top: 10px;
}
.c-contact-form .c-contact-form__inner .wpcf7 form .c-contact-form__form-item p .c-contact-form__submit-button {
  width: -moz-fit-content;
  width: fit-content;
  padding: 15px 30px;
  font-size: 24px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-align: center;
  color: #000;
  box-shadow: 2px 2px 3px rgba(255, 255, 255, 0.215);
  background-color: #f5f5f5;
  margin-left: auto;
  margin-right: auto;
  margin-top: 30px;
}
@media (max-width: 768px) {
  .c-contact-form .c-contact-form__inner .wpcf7 form .c-contact-form__form-item p .c-contact-form__submit-button {
    width: 100%;
    font-size: 20px;
  }
}

.c-cta {
  background: #dbf0ff;
  padding-bottom: 60px;
  padding-top: 60px;
}
@media (max-width: 768px) {
  .c-cta {
    padding-bottom: 30px;
    padding-top: 30px;
  }
}
@media (max-width: 992px) {
  .c-cta {
    padding-left: 16px;
    padding-right: 16px;
  }
}
.c-cta .c-cta__inner {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.c-cta .c-cta__inner .c-cta__statement {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 30px 20px;
  background: white;
}
.c-cta .c-cta__inner .c-cta__statement .c-cta__statement-text {
  font-size: 21px;
}
@media (max-width: 576px) {
  .c-cta .c-cta__inner .c-cta__statement .c-cta__statement-text {
    font-size: 14px;
  }
}

.c-short-separator {
  display: block;
  width: 100px;
  height: 1px;
  margin: 0 auto;
  background-color: #000;
}

@media (max-width: 992px) {
  .c-blog-list {
    width: 632px;
    margin: 0 auto;
  }
}
@media (max-width: 768px) {
  .c-blog-list {
    width: 300px;
  }
}
.c-blog-list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 20px;
}
.c-blog-list ul li {
  width: 306px;
  background: #f5f5f5;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.c-blog-list ul li .c-blog-list__thumb {
  width: 100%;
  height: 180px;
}
.c-blog-list ul li .c-blog-list__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.c-blog-list ul li .c-blog-list__meta {
  display: flex;
  flex-direction: column;
  padding: 16px;
  gap: 8px;
}
.c-blog-list ul li .c-blog-list__meta .c-blog-list__date {
  width: 100%;
  font-size: 12px;
  color: #5a5a5a;
}
.c-blog-list ul li .c-blog-list__meta .c-blog-list__title {
  font-size: 14px;
  font-weight: 600;
  text-align: justify;
}
.c-blog-list ul li .c-blog-list__meta .c-blog-list__desc {
  font-size: 12px;
  text-align: justify;
}

.swiper {
  width: 100%;
  height: auto;
}

.swiper-slide {
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: auto; /* ← これが1枚の固定幅 */
}

.swiper-wrapper {
  transition-timing-function: linear !important;
}

.c-ticket-timer {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding: 30px;
  background-color: #231815;
}
.c-ticket-timer .c-ticket-timer-text {
  text-align: center;
  color: #d6b440;
}
.c-ticket-timer .c-ticket-timer-countdown {
  font-size: 30px;
  font-weight: 700;
  color: #d6b440;
}
@media (max-width: 576px) {
  .c-ticket-timer .c-ticket-timer-countdown {
    font-size: 25px;
  }
}
.c-ticket-timer .c-ticket-timer-countdown span {
  font-size: 40px;
}
@media (max-width: 576px) {
  .c-ticket-timer .c-ticket-timer-countdown span {
    font-size: 35px;
  }
}

header {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  background-color: #231815;
  padding-bottom: 10px;
  padding-top: 20px;
}
header .l-header__inner {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: baseline;
  width: 100%;
  padding: 5px 5vw;
}
@media (max-width: 992px) {
  header .l-header__inner {
    padding: 0 20px;
  }
}
@media (max-width: 768px) {
  header .l-header__inner {
    align-items: center;
  }
}
@media (max-width: 576px) {
  header .l-header__inner {
    padding: 0 16px;
  }
}
header .l-header__inner .l-header__nav-container {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 20px;
}
header .l-header__inner .l-header__nav-container ul {
  display: flex;
  align-items: center;
  font-size: 1.7vw;
  letter-spacing: 0;
  list-style: none;
  color: #ffec00;
  gap: 2vw;
}
@media (max-width: 992px) {
  header .l-header__inner .l-header__nav-container ul {
    font-size: 14px;
  }
}
@media (max-width: 768px) {
  header .l-header__inner .l-header__nav-container ul {
    display: none;
  }
}
header .l-header__inner .l-header__nav-container ul li a {
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 600;
  color: #ffec00;
}
header .l-header__inner .l-header__nav-container ul li a .l-header__about-img {
  display: flex;
  justify-content: center; /* 横中央 */
  align-items: center;
  width: auto;
  height: 1.4vw;
  overflow: hidden;
}
header .l-header__inner .l-header__nav-container .l-header__ticket-link-sp {
  font-weight: 600;
  color: #ffec00;
}
header .l-header__inner .l-header__hamburger-button {
  position: relative;
  z-index: 99999;
  display: none;
}
@media (max-width: 768px) {
  header .l-header__inner .l-header__hamburger-button {
    display: block;
    width: 50px;
    height: 50px;
    border-radius: 5px;
    background-image: url("../../assets/images/hamburger-icon.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 40px;
  }
  header .l-header__inner .l-header__hamburger-button:hover {
    cursor: pointer;
  }
  header .l-header__inner .l-header__hamburger-button:hover.is-active {
    color: white;
    background-image: url("../../assets/images/batsu.svg");
  }
}
header .l-header__inner .l-header__hamburger-menu {
  z-index: 99999;
  display: none;
}
@media (max-width: 768px) {
  header .l-header__inner .l-header__hamburger-menu {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
    height: 100vh;
    background-color: black;
    padding-top: 100px;
  }
  header .l-header__inner .l-header__hamburger-menu.is-active {
    display: flex;
    flex-direction: column;
    gap: 60px;
  }
  header .l-header__inner .l-header__hamburger-menu ul {
    width: 100%;
    font-size: 20px;
    color: white;
    margin-left: 50px;
    margin-right: 50px;
  }
  header .l-header__inner .l-header__hamburger-menu ul li {
    border-bottom: white 1px solid;
  }
  header .l-header__inner .l-header__hamburger-menu ul li a {
    display: block;
    width: 100%;
    height: 100%;
    padding-bottom: 20px;
    padding-top: 20px;
  }
}

footer {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  color: white;
  background-color: #000;
  padding-bottom: 10px;
  padding-top: 30px;
}
@media (max-width: 992px) {
  footer {
    padding-top: 45px;
  }
}
footer .l-footer__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding: 0 60px;
  gap: 20px;
}
@media (max-width: 992px) {
  footer .l-footer__inner {
    flex-direction: column;
    align-items: center;
    padding: 0 20px;
  }
}

.l-section--pad-default {
  padding-bottom: 60px;
  padding-top: 60px;
}
@media (max-width: 992px) {
  .l-section {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (max-width: 768px) {
  .l-section {
    padding-left: 16px;
    padding-right: 16px;
  }
}
.l-section--background-black {
  color: white;
  background-color: black;
}
.l-section__inner {
  max-width: var(--content-size, 960px);
  margin-inline: auto;
  /* 幅バリエーション（__inner の修飾子） */
}
.l-section__inner--narrow {
  --content-size: 814px;
}
.l-section__inner--wide {
  --content-size: 1280px;
}
.l-section__inner--full {
  --content-size: 100%;
}
.l-section__inner--center {
  text-align: center;
}

body.p-top {
  position: relative;
  background-color: #231815;
}
body.p-top header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  background-color: transparent;
}
body.p-top header.is-bg {
  z-index: 9999999;
  background-color: #231815;
}
body.p-top main {
  padding-top: 115.6px;
}
@media (max-width: 768px) {
  body.p-top main {
    padding-top: 63.38px;
  }
}
body.p-top .p-top__section {
  padding: 60px 0;
}
@media (max-width: 992px) {
  body.p-top .p-top__section {
    padding: 60px 16px;
  }
}
@media (max-width: 576px) {
  body.p-top .p-top__section {
    padding: 30px 16px;
  }
}
body.p-top .p-top__section-inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 45px;
}
@media (max-width: 576px) {
  body.p-top .p-top__section-inner {
    gap: 30px;
  }
}
body.p-top h1 {
  font-size: 35px;
  letter-spacing: 0.11em;
  text-align: center;
}
body.p-top h2 {
  display: inline-block;
  width: auto;
  padding: 25px;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 0;
  letter-spacing: -0.02em;
  color: #231815;
  border: 6px solid #231815;
}
@media screen and (width < 860px) {
  body.p-top h2 {
    padding: 20px;
    font-size: 30px;
    border: 4px solid #231815;
  }
}
@media (max-width: 576px) {
  body.p-top h3 {
    line-height: 1.4;
  }
}
@media (max-width: 576px) {
  body.p-top h4 {
    line-height: 1.4;
  }
}
body.p-top p {
  font-weight: 400;
  letter-spacing: 0.03em;
}
@media (max-width: 576px) {
  body.p-top p {
    font-size: 14px;
  }
}
body.p-top .p-top__title {
  font-weight: 700;
  line-height: 0;
  letter-spacing: -0.02em;
  color: #d6b440;
  border: 6px solid #d6b440;
  background-color: #000;
}
@media screen and (width < 860px) {
  body.p-top .p-top__title {
    border: 4px solid #d6b440;
  }
}
body.p-top .p-top__separator {
  display: block;
  width: 180px;
  height: 1px;
  background-color: white;
}
@media (max-width: 768px) {
  body.p-top .p-top__separator {
    width: 100px;
  }
}
body.p-top .p-top__bg-road {
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 100%;
  overflow: hidden;
  padding-top: 1000px;
}
body.p-top .p-top__bg-road .p-top__bg-road-img {
  top: 0;
  display: block;
  width: 275px;
  height: auto;
  max-width: none;
  max-height: none;
  margin: 0 auto;
  -o-object-fit: fill;
     object-fit: fill;
}
body.p-top .p-top__bg-light-circle {
  position: absolute;
  top: -30vw;
  left: 50%;
  z-index: -1;
  width: 140vw;
  height: 140vw;
  background: #f2ea00;
  border-radius: 50%;
  opacity: 0;
  transform: translateX(-50%);
  pointer-events: none;
}
@media (max-width: 576px) {
  body.p-top .p-top__bg-light-circle {
    top: -45vw;
    width: 180vw;
    height: 180vw;
  }
}
body.p-top .p-top__bg-light {
  position: absolute;
  top: 0.1vw;
  z-index: -1;
  width: 100%;
  overflow: hidden;
  opacity: 1;
  transform-origin: 15% 0%;
}
@media (max-width: 576px) {
  body.p-top .p-top__bg-light {
    top: 65px;
  }
}
body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
  display: block;
  width: 100%;
  height: 115vw;
  max-width: none;
  max-height: none;
  -o-object-fit: fill;
     object-fit: fill;
}
@media screen and (width < 1200px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 125vw;
  }
}
@media screen and (width < 1150px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 120vw;
  }
}
@media screen and (width <= 1100px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 125vw;
  }
}
@media screen and (width <= 1060px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 128vw;
  }
}
@media screen and (width <= 1040px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 130vw;
  }
}
@media screen and (width <= 1000px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 132vw;
  }
}
@media (max-width: 992px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 115vw;
  }
}
@media screen and (width <= 920px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 120vw;
  }
}
@media screen and (width <= 860px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 121vw;
  }
}
@media screen and (width <= 745px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    display: none;
  }
}
@media screen and (width >= 1300px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 110vw;
  }
}
@media screen and (width >= 1380px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 105vw;
  }
}
@media screen and (width >= 1500px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 100vw;
  }
}
@media screen and (width >= 1600px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 100vw;
  }
}
@media screen and (width >= 1700px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 95vw;
  }
}
@media screen and (width >= 1800px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 90vw;
  }
}
@media screen and (width >= 1900px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 87vw;
  }
}
@media screen and (width >= 2000px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 85vw;
  }
}
@media screen and (width >= 2200px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 82vw;
  }
}
@media screen and (width >= 2400px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 80vw;
  }
}
@media screen and (width >= 2500px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 77vw;
  }
}
@media screen and (width >= 2800px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 74vw;
  }
}
@media screen and (width >= 3000px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 72vw;
  }
}
@media screen and (width >= 3300px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 70vw;
  }
}
@media screen and (width >= 3500px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--pc {
    height: 68vw;
  }
}
body.p-top .p-top__bg-light .p-top__bg-light-img--sp {
  top: 10px;
  display: none;
  width: 100%;
  height: 140vw;
  max-width: none;
  max-height: none;
  -o-object-fit: fill;
     object-fit: fill;
}
@media screen and (width <= 745px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--sp {
    display: block;
  }
}
@media screen and (width <= 720px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--sp {
    height: 150vw;
  }
}
@media screen and (width <= 650px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--sp {
    height: 160vw;
  }
}
@media screen and (width <= 610px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--sp {
    height: 170vw;
  }
}
@media (max-width: 576px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--sp {
    height: 240vw;
  }
}
@media screen and (width <= 560px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--sp {
    height: 240vw;
  }
}
@media screen and (width <= 540px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--sp {
    height: 250vw;
  }
}
@media screen and (width <= 515px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--sp {
    height: 255vw;
  }
}
@media screen and (width <= 482px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--sp {
    height: 265vw;
  }
}
@media screen and (width <= 460px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--sp {
    height: 270vw;
  }
}
@media screen and (width <= 440px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--sp {
    height: 280vw;
  }
}
@media screen and (width <= 420px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--sp {
    height: 290vw;
  }
}
@media screen and (width <= 390px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--sp {
    height: 300vw;
  }
}
@media screen and (width <= 380px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--sp {
    height: 310vw;
  }
}
@media screen and (width <= 365px) {
  body.p-top .p-top__bg-light .p-top__bg-light-img--sp {
    height: 315vw;
  }
}
body.p-top .p-top__mv {
  position: relative;
  height: 43vw;
  background: transparent;
}
@media (max-width: 576px) {
  body.p-top .p-top__mv {
    height: 110vw;
  }
}
body.p-top .p-top__mv .p-top__mv-bg {
  position: absolute;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  height: auto;
  background: transparent;
  transform-origin: top center;
}
@media (max-width: 576px) {
  body.p-top .p-top__mv .p-top__mv-bg {
    position: relative;
    margin-top: 20vw;
  }
}
body.p-top .p-top__mv .p-top__mv-bg .p-top__mv-signboard {
  width: 59vw;
  opacity: 0;
  margin-top: 6.5vw;
}
@media (max-width: 576px) {
  body.p-top .p-top__mv .p-top__mv-bg .p-top__mv-signboard {
    width: 80vw;
    margin-top: -2vw;
  }
}
@media (max-width: 576px) {
  body.p-top .p-top__mv .p-top__mv-bg .p-top__mv-bg--pc {
    display: none;
  }
}
body.p-top .p-top__mv .p-top__mv-bg .p-top__mv-bg--sp {
  display: none;
}
@media (max-width: 576px) {
  body.p-top .p-top__mv .p-top__mv-bg .p-top__mv-bg--sp {
    display: block;
  }
}
body.p-top .p-top__mv .p-top__mv-bg .p-top__mv-characters {
  z-index: 2;
  display: flex;
  justify-content: space-between;
  align-items: end;
  width: 100%;
  margin-top: -15.5vw;
}
@media (max-width: 576px) {
  body.p-top .p-top__mv .p-top__mv-bg .p-top__mv-characters {
    margin-top: 3vw;
  }
}
body.p-top .p-top__mv .p-top__mv-bg .p-top__mv-characters .p-top__mv-character--left {
  width: 21.0156vw;
  transform-origin: 40% center;
  margin-bottom: -0.5vw;
}
@media (max-width: 576px) {
  body.p-top .p-top__mv .p-top__mv-bg .p-top__mv-characters .p-top__mv-character--left {
    width: 38.3333vw;
  }
}
body.p-top .p-top__mv .p-top__mv-bg .p-top__mv-characters .p-top__mv-character--right {
  width: 22.1093vw;
  transform-origin: 60% center;
}
@media (max-width: 576px) {
  body.p-top .p-top__mv .p-top__mv-bg .p-top__mv-characters .p-top__mv-character--right {
    width: 39.1666666vw;
  }
}
@media (max-width: 576px) {
  body.p-top .p-top__mv .p-top__mv-bg--pc {
    display: none;
  }
}
body.p-top .p-top__mv .p-top__mv-bg--sp {
  display: none;
}
@media (max-width: 576px) {
  body.p-top .p-top__mv .p-top__mv-bg--sp {
    display: block;
  }
}
body.p-top .p-top__mv .p-top__mv-text-box {
  position: absolute;
  bottom: 0;
  left: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  font-family: "Noto Serif JP", sans-serif;
  font-weight: 700;
  transform: translateX(-50%);
  gap: 0.9375vw;
}
@media (max-width: 576px) {
  body.p-top .p-top__mv .p-top__mv-text-box {
    position: relative;
    align-items: end;
    width: 62.111vw;
    gap: 1.7vw;
  }
}
body.p-top .p-top__mv .p-top__mv-text-box .p-top__mv-info {
  font-size: 2.1875vw;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 0.3906vw;
}
@media (max-width: 576px) {
  body.p-top .p-top__mv .p-top__mv-text-box .p-top__mv-info {
    font-size: 4.0222vw;
    letter-spacing: 0.01em;
  }
}
body.p-top .p-top__mv .p-top__mv-text-box .p-top__mv-info span {
  color: #e51711;
}
body.p-top .p-top__mv .p-top__mv-text-box .p-top__mv-title-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5vw;
}
body.p-top .p-top__mv .p-top__mv-text-box .p-top__mv-title-box .p-top__mv-title {
  width: 32.3437vw;
  font-weight: 700;
  line-height: 1;
}
@media (max-width: 576px) {
  body.p-top .p-top__mv .p-top__mv-text-box .p-top__mv-title-box .p-top__mv-title {
    width: 61.111vw;
  }
}
body.p-top .p-top__mv .p-top__mv-text-box .p-top__mv-title-box .p-top__mv-sub-title {
  font-size: 2.1093vw;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.02em;
}
@media (max-width: 576px) {
  body.p-top .p-top__mv .p-top__mv-text-box .p-top__mv-title-box .p-top__mv-sub-title {
    font-size: 3.6111vw;
    letter-spacing: 0.075em;
  }
}
body.p-top .p-top__mv .p-top__mv-text-box .p-top__mv-date {
  font-size: 2.2656vw;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.01em;
}
@media (max-width: 576px) {
  body.p-top .p-top__mv .p-top__mv-text-box .p-top__mv-date {
    font-size: 3.8888vw;
    letter-spacing: 0.055em;
    margin-top: 2vw;
  }
}
body.p-top .p-top__about {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  opacity: 0;
  padding-bottom: 150px;
  padding-top: 100px;
}
@media screen and (width < 1150px) {
  body.p-top .p-top__about {
    padding-top: 100px;
  }
}
@media screen and (width < 920px) {
  body.p-top .p-top__about {
    padding-top: 50px;
  }
}
@media screen and (width < 860px) {
  body.p-top .p-top__about {
    padding-top: 30px;
  }
}
@media screen and (width <= 745px) {
  body.p-top .p-top__about {
    padding-top: 50px;
  }
}
@media (max-width: 992px) {
  body.p-top .p-top__about {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media (max-width: 768px) {
  body.p-top .p-top__about {
    padding-left: 16px;
    padding-right: 16px;
  }
}
@media (max-width: 576px) {
  body.p-top .p-top__about {
    padding-bottom: 75px;
  }
}
@media (max-width: 992px) {
  body.p-top .p-top__about .p-top__about-inner {
    gap: 30px;
  }
}
@media screen and (width < 860px) {
  body.p-top .p-top__about .p-top__about-inner {
    gap: 20px;
  }
}
@media (max-width: 576px) {
  body.p-top .p-top__about .p-top__about-inner {
    gap: 30px;
  }
}
body.p-top .p-top__about .p-top__about-inner h2 {
  margin-top: 1.3vw;
}
body.p-top .p-top__about .p-top__about-inner .p-top__about-assertion {
  font-family: "Noto Serif JP", sans-serif;
  font-size: 35px;
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
}
@media (max-width: 992px) {
  body.p-top .p-top__about .p-top__about-inner .p-top__about-assertion {
    font-size: 25px;
  }
}
body.p-top .p-top__about .p-top__about-inner .p-top__about-assertion em {
  display: inline-block;
  font-size: 35px;
  font-weight: 600;
  font-style: normal;
}
@media (max-width: 992px) {
  body.p-top .p-top__about .p-top__about-inner .p-top__about-assertion em {
    font-size: 25px;
  }
}
body.p-top .p-top__about .p-top__about-inner .p-top__about-statement {
  font-size: 20px;
  line-height: 1.6;
}
@media (max-width: 992px) {
  body.p-top .p-top__about .p-top__about-inner .p-top__about-statement {
    font-size: 18px;
    line-height: 1.2;
  }
}
@media screen and (width <= 745px) {
  body.p-top .p-top__about .p-top__about-inner .p-top__about-statement {
    line-height: 1.6;
  }
}
@media (max-width: 576px) {
  body.p-top .p-top__about .p-top__about-inner .p-top__about-statement {
    font-size: 16px;
    letter-spacing: 0;
  }
}
body.p-top .p-top__about .p-top__about-inner .p-top__about-statement em {
  display: inline-block;
  font-family: "Noto Serif JP", sans-serif;
  font-size: 28px;
  font-weight: 700;
  font-style: normal;
  line-height: 0.8;
}
@media (max-width: 992px) {
  body.p-top .p-top__about .p-top__about-inner .p-top__about-statement em {
    font-size: 22px;
  }
}
@media (max-width: 576px) {
  body.p-top .p-top__about .p-top__about-inner .p-top__about-statement em {
    line-height: 1;
  }
}
body.p-top .p-top__ticket-timer {
  padding-bottom: 0;
  padding-top: 30px;
}
body.p-top .p-top__ticket-timer .p-top__ticket-timer-inner {
  border: #d6b440 4px solid;
  background-color: #231815;
  gap: 0;
  padding-bottom: 30px;
}
body.p-top .p-top__ticket-timer .p-top__ticket-timer-inner .c-ticket-timer {
  padding-bottom: 0;
}
body.p-top .p-top__ticket-timer .p-top__ticket-timer-inner .p-top__ticket-timer-note {
  color: #d6b440;
  margin-top: 5px;
}
@media (max-width: 576px) {
  body.p-top .p-top__sns {
    padding-top: 30px;
  }
}
body.p-top .p-top__sns .p-top__sns-description {
  text-align: center;
  color: white;
}
body.p-top .p-top__sns .p-top__sns-list {
  display: flex;
  gap: 45px;
}
@media (max-width: 768px) {
  body.p-top .p-top__sns .p-top__sns-list {
    gap: 16px;
  }
}
body.p-top .p-top__sns .p-top__sns-list .p-top__sns-icon {
  width: 118px;
  height: 118px;
}
@media (max-width: 768px) {
  body.p-top .p-top__sns .p-top__sns-list .p-top__sns-icon {
    width: 60px;
    height: 60px;
  }
}
body.p-top .p-top__sns .p-top__sns-campaign {
  max-width: 500px;
  aspect-ratio: 1/1;
}
body.p-top .p-top__news {
  padding-top: 30px;
}
body.p-top .p-top__achievements {
  display: flex;
  padding: 30px 0 60px;
}
body.p-top .p-top__achievements .p-top__achievements-swiper-slide {
  justify-content: start;
  width: 15vw;
  background-color: white;
}
@media (max-width: 992px) {
  body.p-top .p-top__achievements .p-top__achievements-swiper-slide {
    width: 20vw;
  }
}
@media (max-width: 768px) {
  body.p-top .p-top__achievements .p-top__achievements-swiper-slide {
    width: 40vw;
  }
}
@media (max-width: 768px) {
  body.p-top .p-top__achievements .p-top__achievements-swiper-slide {
    width: 50vw;
  }
}
body.p-top .p-top__achievements .p-top__achievements-swiper-slide .p-top__point-image {
  width: 100%;
  height: auto;
}
body.p-top .p-top__achievements .p-top__achievements-swiper-slide .p-top__achievements-swiper-slide-text-container {
  padding: 0 16px 16px;
}
body.p-top .p-top__achievements .p-top__achievements-swiper-slide .p-top__achievements-swiper-slide-text-container h3 {
  font-size: 16px;
  line-height: 1.4;
}
@media (max-width: 768px) {
  body.p-top .p-top__achievements .p-top__achievements-swiper-slide .p-top__achievements-swiper-slide-text-container h3 {
    font-size: 14px;
  }
}
body.p-top .p-top__points {
  padding-bottom: 0;
}
body.p-top .p-top__points .p-top__points-inner {
  display: flex;
  flex-direction: column;
  padding: 45px 20px;
  border: #403734 4px dashed;
}
@media (max-width: 768px) {
  body.p-top .p-top__points .p-top__points-inner {
    padding: 20px 10px;
    border: #403734 3px dashed;
    gap: 20px;
  }
}
body.p-top .p-top__points .p-top__points-inner .p-top__points-content {
  display: flex;
  flex-direction: column;
  color: white;
  gap: 20px;
}
body.p-top .p-top__points .p-top__points-inner .p-top__points-content .p-top__point {
  display: flex;
  flex-direction: column;
  padding: 20px;
  background-color: #403734;
  gap: 15px;
}
@media (max-width: 768px) {
  body.p-top .p-top__points .p-top__points-inner .p-top__points-content .p-top__point {
    padding: 16px;
  }
}
body.p-top .p-top__points .p-top__points-inner .p-top__points-content .p-top__point .p-top__point-title {
  width: -moz-fit-content;
  width: fit-content;
  padding: 5px 20px;
  font-family: "Noto Serif JP", sans-serif;
  font-weight: 700;
  color: #d6b440;
  background-color: #231815;
}
body.p-top .p-top__points .p-top__points-inner .p-top__points-content .p-top__point .p-top__point-title span {
  font-family: "Noto Sans JP", sans-serif;
}
@media (max-width: 768px) {
  body.p-top .p-top__points .p-top__points-inner .p-top__points-content .p-top__point .p-top__point-title {
    padding: 10px 15px;
    font-size: 18px;
  }
}
body.p-top .p-top__points .p-top__points-inner .p-top__points-content .p-top__point .p-top__point-description {
  font-size: 18px;
}
@media (max-width: 768px) {
  body.p-top .p-top__points .p-top__points-inner .p-top__points-content .p-top__point .p-top__point-description {
    font-size: 16px;
  }
}
body.p-top .p-top__points .p-top__points-inner .p-top__points-content .p-top__point .p-top__point-image-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: start;
  gap: 16px;
}
@media (max-width: 768px) {
  body.p-top .p-top__points .p-top__points-inner .p-top__points-content .p-top__point .p-top__point-image-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }
}
body.p-top .p-top__points .p-top__points-inner .p-top__points-content .p-top__point .p-top__point-image-container .p-top__point-image {
  width: auto;
  height: 200px;
  aspect-ratio: 270/337.5;
}
@media (max-width: 768px) {
  body.p-top .p-top__points .p-top__points-inner .p-top__points-content .p-top__point .p-top__point-image-container .p-top__point-image {
    width: 100%;
    height: auto;
  }
}
body.p-top .p-top__points .p-top__points-inner .p-top__points-content .p-top__point .p-top__point-image-container .p-top__point-image2 {
  width: auto;
  height: 200px;
  min-height: 100px;
}
@media (max-width: 768px) {
  body.p-top .p-top__points .p-top__points-inner .p-top__points-content .p-top__point .p-top__point-image-container .p-top__point-image2 {
    width: 100%;
    height: auto;
  }
}
body.p-top .p-top__points .p-top__points-inner .p-top__points-content .p-top__point .p-top__point-image-container2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: start;
  gap: 16px;
}
body.p-top .p-top__points .p-top__points-inner .p-top__points-content .p-top__point .p-top__point-image-container2 .p-top__point-image {
  width: auto;
  height: 200px;
  aspect-ratio: 270/337.5;
}
@media (max-width: 768px) {
  body.p-top .p-top__points .p-top__points-inner .p-top__points-content .p-top__point .p-top__point-image-container2 .p-top__point-image {
    width: 100%;
    height: auto;
  }
}
body.p-top .p-top__points .p-top__points-inner .p-top__points-content .p-top__point .p-top__point-image-container2 .p-top__point-image2 {
  width: auto;
  height: 200px;
  min-height: 100px;
}
@media (max-width: 768px) {
  body.p-top .p-top__points .p-top__points-inner .p-top__points-content .p-top__point .p-top__point-image-container2 .p-top__point-image2 {
    width: 100%;
    height: auto;
  }
}
body.p-top .p-top__points .p-top__points-inner .p-top__points-content .p-top__point .p-top__point-image3 {
  width: 236px;
  height: 154px;
  aspect-ratio: 236/154;
  margin-left: auto;
  margin-right: auto;
  margin-top: -10px;
}
body.p-top .p-top__swipe-image {
  padding: 30px 0 60px;
}
body.p-top .p-top__swipe-image .p-top__point-image {
  width: 15vw;
  aspect-ratio: 189.483/132.891;
}
@media (max-width: 992px) {
  body.p-top .p-top__swipe-image .p-top__point-image {
    width: 20vw;
  }
}
@media (max-width: 768px) {
  body.p-top .p-top__swipe-image .p-top__point-image {
    width: 20vw;
  }
}
@media (max-width: 768px) {
  body.p-top .p-top__swipe-image .p-top__point-image {
    width: 28vw;
  }
}
body.p-top .p-top__nakama {
  color: white;
  background-color: #403734;
}
body.p-top .p-top__nakama .p-top__nakama-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
}
body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-media {
  width: 100%;
  border-width: 100px;
  border-style: solid;
  border-image-repeat: stretch;
  border-image-slice: 80 fill;
  border-image-source: url("../images/rectangle.svg");
}
body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-media .p-top__nakama-media-inner {
  display: flex;
  margin: -50px;
  gap: 30px;
}
@media (max-width: 768px) {
  body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-media .p-top__nakama-media-inner {
    flex-direction: column;
    margin: -80px;
    padding: 10px 0;
  }
}
@media (max-width: 576px) {
  body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-media .p-top__nakama-media-inner {
    align-items: center;
  }
}
body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-media .p-top__nakama-media-inner .p-top__nakama-img {
  width: 240px;
  height: 219px;
  max-height: 219px;
  min-width: 240px;
}
body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-media .p-top__nakama-media-inner .p-top__nakama-text-container {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-media .p-top__nakama-media-inner .p-top__nakama-text-container .p-top__nakama-explanation {
  font-size: 16px;
}
body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-media:nth-child(2n) .p-top__nakama-media-inner {
  flex-direction: row-reverse;
}
@media (max-width: 768px) {
  body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-media:nth-child(2n) .p-top__nakama-media-inner {
    flex-direction: column;
    align-items: end;
  }
}
@media (max-width: 576px) {
  body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-media:nth-child(2n) .p-top__nakama-media-inner {
    align-items: center;
  }
}
body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-company {
  width: 100%;
  border-width: 100px;
  border-style: solid;
  background-color: #000;
  border-image-repeat: stretch;
  border-image-slice: 80 fill;
  border-image-source: url("../images/rectangle.svg");
}
body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-company .p-top__nakama-company-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: -50px;
  gap: 30px;
}
@media (max-width: 768px) {
  body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-company .p-top__nakama-company-inner {
    flex-direction: column;
    margin: -80px;
    padding: 10px 0;
  }
}
body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-company .p-top__nakama-company-inner .p-top__nakama-company-container {
  display: flex;
  flex-direction: column;
  align-items: center;
}
body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-company .p-top__nakama-company-inner .p-top__nakama-company-explanation {
  font-size: 16px;
}
body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-company .p-top__nakama-company-inner .p-top__nakama-company-ceo {
  display: flex;
  gap: 30px;
}
@media (max-width: 768px) {
  body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-company .p-top__nakama-company-inner .p-top__nakama-company-ceo {
    flex-direction: column;
    align-items: center;
    gap: 15px;
  }
}
body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-company .p-top__nakama-company-inner .p-top__nakama-company-ceo .p-top__nakama-img {
  width: 183px;
  height: 167px;
  min-width: 183px;
}
body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-company .p-top__nakama-company-inner .p-top__nakama-company-ceo .p-top__nakama-company-ceo-text {
  display: flex;
  flex-direction: column;
  gap: 15px;
}
body.p-top .p-top__nakama .p-top__nakama-content .p-top__nakama-company .p-top__nakama-company-inner .p-top__nakama-company-ceo .p-top__nakama-company-ceo-text .p-top__nakama-company-ceo-explanation {
  font-size: 14px;
}
body.p-top .p-top__illustration {
  padding-bottom: 30px;
}
@media (max-width: 576px) {
  body.p-top .p-top__illustration {
    padding-bottom: 10px;
    padding-top: 45px;
  }
}
body.p-top .p-top__illustration .p-top__illustration-img {
  width: 300px;
  height: 300px;
}
body.p-top .p-top__detail {
  padding-top: 30px;
}
body.p-top .p-top__detail .p-top__detail-content {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 60px;
  background-color: #fff9ad;
  gap: 40px;
}
@media (max-width: 768px) {
  body.p-top .p-top__detail .p-top__detail-content {
    gap: 20px;
  }
}
@media (max-width: 768px) {
  body.p-top .p-top__detail .p-top__detail-content {
    padding: 16px;
  }
}
body.p-top .p-top__detail .p-top__detail-content .p-top__detail-list {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
body.p-top .p-top__detail .p-top__detail-content .p-top__detail-list .p-top__detail-item {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
body.p-top .p-top__detail .p-top__detail-content .p-top__detail-list .p-top__detail-item a {
  text-decoration: underline;
  color: #007ac5;
}
body.p-top .p-top__detail .p-top__detail-content .p-top__detail-list .p-top__detail-item .p-top__detail-title {
  display: block;
  width: 120px;
  padding: 10px 20px;
  font-size: 18px;
  line-height: 1;
  text-align: center;
  color: white;
  background-color: #000;
}
body.p-top .p-top__detail .p-top__detail-content iframe {
  width: 100%;
  height: 300px;
}
@media (max-width: 768px) {
  body.p-top .p-top__detail .p-top__detail-content iframe {
    height: 250px;
  }
}
body.p-top .p-top__goods {
  padding-top: 30px;
}
body.p-top .p-top__goods .p-top__goods-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding: 45px;
  background-color: #fff9ad;
  gap: 20px;
}
@media (max-width: 576px) {
  body.p-top .p-top__goods .p-top__goods-content {
    padding: 30px 16px;
  }
}
body.p-top .p-top__goods .p-top__goods-content .p-top__goods-image {
  width: 100%;
  height: 1229.47px;
  aspect-ratio: 870/1229.48;
}
@media (max-width: 992px) {
  body.p-top .p-top__goods .p-top__goods-content .p-top__goods-image {
    height: auto;
  }
}
body.p-top .p-top__goods .p-top__goods-content .p-top__goods-media {
  width: 100%;
  border-width: 100px;
  border-style: solid;
  border-image-repeat: stretch;
  border-image-slice: 80 fill;
  border-image-source: url("../images/rectangle.svg");
}
body.p-top .p-top__goods .p-top__goods-content .p-top__goods-media .p-top__goods-media-inner {
  display: flex;
  margin: -60px;
  gap: 30px;
}
@media (max-width: 768px) {
  body.p-top .p-top__goods .p-top__goods-content .p-top__goods-media .p-top__goods-media-inner {
    flex-direction: column;
    margin: -80px;
    padding: 10px 0;
    gap: 20px;
  }
}
@media (max-width: 576px) {
  body.p-top .p-top__goods .p-top__goods-content .p-top__goods-media .p-top__goods-media-inner {
    align-items: center;
  }
}
body.p-top .p-top__goods .p-top__goods-content .p-top__goods-media .p-top__goods-media-inner .p-top__goods-tanaka-image {
  width: 201px;
  height: 183px;
  max-height: 183px;
  min-width: 201px;
}
body.p-top .p-top__goods .p-top__goods-content .p-top__goods-media .p-top__goods-media-inner .p-top__goods-text-container {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
body.p-top .p-top__goods .p-top__goods-content .p-top__goods-media .p-top__goods-media-inner .p-top__goods-text-container .p-top__goods-explanation {
  font-size: 16px;
}
@media (max-width: 768px) {
  body.p-top .p-top__goods .p-top__goods-content .p-top__goods-media .p-top__goods-media-inner .p-top__goods-text-container .p-top__goods-explanation {
    font-size: 14px;
  }
}
body.p-top .p-top__ticket {
  padding-top: 30px;
}
body.p-top .p-top__ticket .p-top__ticket-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding: 45px;
  background-color: #fff9ad;
  gap: 20px;
}
@media (max-width: 576px) {
  body.p-top .p-top__ticket .p-top__ticket-content {
    padding: 30px 16px;
  }
}
body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-table-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
@media (max-width: 768px) {
  body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-table-container {
    width: 100%;
  }
}
body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-table-container .p-top__ticket-table {
  width: 492px;
  border: 1px solid black;
}
@media (max-width: 768px) {
  body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-table-container .p-top__ticket-table {
    width: 100%;
  }
}
body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-table-container .p-top__ticket-table tr {
  font-size: 20px;
  line-height: 1;
  text-align: center;
  border: 1px solid black;
}
@media (max-width: 768px) {
  body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-table-container .p-top__ticket-table tr {
    font-size: 16px;
  }
}
body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-table-container .p-top__ticket-table thead {
  color: white;
  background-color: black;
}
body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-table-container .p-top__ticket-table thead th {
  padding: 10px;
  font-size: 20px;
  line-height: 1;
  text-align: center;
}
@media (max-width: 768px) {
  body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-table-container .p-top__ticket-table thead th {
    font-size: 16px;
  }
}
body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-table-container .p-top__ticket-table tbody td {
  padding: 15px;
}
body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-table-container .p-top__ticket-table tbody td:first-child {
  font-size: 24px;
  font-weight: 600;
  vertical-align: middle;
}
@media (max-width: 768px) {
  body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-table-container .p-top__ticket-table tbody td:first-child {
    font-size: 16px;
  }
}
body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-table-container .p-top__ticket-table tbody td:last-child {
  font-size: 28px;
  font-weight: 700;
  vertical-align: middle;
}
body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-table-container .p-top__ticket-advance-note {
  margin-top: -10px;
}
body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-table-container .p-top__ticket-table-note {
  font-size: 14px;
}
@media (max-width: 768px) {
  body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-table-container .p-top__ticket-table-note {
    font-size: 12px;
  }
}
body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-button {
  display: flex;
  align-items: center;
  padding: 20px;
  color: white;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
  background-color: #007ac5;
  gap: 25px 20px;
}
body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-button .p-top__ticket-button-icon {
  display: block;
  width: 51px;
  height: 28px;
  overflow: hidden;
}
body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-button .p-top__ticket-button-text {
  font-size: 20px;
  font-weight: 600;
}
@media (max-width: 768px) {
  body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-button .p-top__ticket-button-text {
    font-size: 16px;
  }
}
body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-button .p-top__ticket-button-arrow {
  width: 11.24px;
  height: 19px;
}
body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-click-trigger {
  font-size: 14px;
}
@media (max-width: 768px) {
  body.p-top .p-top__ticket .p-top__ticket-content .p-top__ticket-click-trigger {
    font-size: 12px;
  }
}
body.p-top .p-top__faq {
  padding-top: 30px;
}
body.p-top .p-top__faq .p-top__faq-content {
  width: 100%;
}
body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 20px;
}
body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list .p-top__faq-item {
  width: 100%;
}
body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list .p-top__faq-item .p-top__faq-icon {
  margin-bottom: auto;
  margin-top: auto;
}
body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list .p-top__faq-item.is-open .p-top__faq-icon {
  min-width: 14px;
  transform: rotate(45deg);
}
body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list .p-top__faq-item .p-top__faq-question {
  display: flex;
  justify-content: space-between;
  padding: 15px;
  color: white;
  cursor: pointer;
  background-color: #000;
}
body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list .p-top__faq-item .p-top__faq-question .p-top__faq-q {
  display: flex;
  max-width: 90%;
  gap: 15px;
}
body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list .p-top__faq-item .p-top__faq-question span {
  font-size: 18px;
  margin-top: -3px;
}
@media (max-width: 576px) {
  body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list .p-top__faq-item .p-top__faq-question span {
    font-size: 14px;
  }
}
body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list .p-top__faq-item .p-top__faq-question h3 {
  font-size: 18px;
}
@media (max-width: 576px) {
  body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list .p-top__faq-item .p-top__faq-question h3 {
    font-size: 14px;
  }
}
body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list .p-top__faq-item .p-top__faq-answer {
  max-height: 0;
  overflow: hidden;
  visibility: hidden;
  opacity: 0;
  transition: max-height 0.3s ease, opacity 0.2s ease;
}
body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list .p-top__faq-item .p-top__faq-answer.is-open {
  visibility: visible;
  opacity: 1;
}
body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list .p-top__faq-item .p-top__faq-answer {
  max-height: 0;
  overflow: hidden;
  visibility: hidden;
  transition: max-height 0.3s ease;
  pointer-events: none;
}
body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list .p-top__faq-item .p-top__faq-answer.is-open {
  visibility: visible;
  pointer-events: auto;
}
body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list .p-top__faq-item .p-top__faq-answer.is-open .p-top__faq-answer-inner {
  opacity: 1;
  transform: translateY(0);
}
body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list .p-top__faq-item .p-top__faq-answer .p-top__faq-answer-inner {
  display: flex;
  padding: 15px;
  opacity: 0;
  transition: opacity 0.15s ease, transform 0.2s ease;
  transform: translateY(-4px);
  background-color: #fff9ad;
  gap: 15px;
}
body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list .p-top__faq-item .p-top__faq-answer .p-top__faq-answer-inner span {
  font-size: 18px;
}
@media (max-width: 576px) {
  body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list .p-top__faq-item .p-top__faq-answer .p-top__faq-answer-inner span {
    font-size: 14px;
  }
}
body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list .p-top__faq-item .p-top__faq-answer .p-top__faq-answer-inner p {
  margin: 0;
  font-size: 18px;
}
@media (max-width: 576px) {
  body.p-top .p-top__faq .p-top__faq-content .p-top__faq-list .p-top__faq-item .p-top__faq-answer .p-top__faq-answer-inner p {
    font-size: 14px;
  }
}
body.p-top .p-top__message .p-top__message-content {
  display: flex;
  flex-direction: column;
  padding: 45px;
  color: white;
  background-color: rgba(0, 0, 0, 0.8);
  gap: 20px;
}
@media (max-width: 768px) {
  body.p-top .p-top__message .p-top__message-content {
    padding: 45px 20px;
  }
}
body.p-top .p-top__message .p-top__message-content .p-top__message-text {
  font-size: 16px;
  font-weight: 400;
}
body.p-top .p-top__message .p-top__message-content .p-top__message-signature {
  width: 100%;
  font-size: 16px;
  font-weight: 600;
  text-align: right;
}
body.p-top .p-top__contact {
  padding-top: 30px;
}
body.p-top .p-top__contact .p-top__contact-button {
  display: flex;
  align-items: center;
  padding: 20px;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
  background-color: #ffec00;
  gap: 35px;
}
@media (max-width: 576px) {
  body.p-top .p-top__contact .p-top__contact-button {
    justify-content: space-between;
  }
}
body.p-top .p-top__contact .p-top__contact-button .p-top__contact-button-icon {
  width: 58px;
  height: 44px;
}
body.p-top .p-top__contact .p-top__contact-button .p-top__contact-button-text {
  font-weight: 600;
  line-height: 1.4;
}
@media (max-width: 576px) {
  body.p-top .p-top__contact .p-top__contact-button .p-top__contact-button-text {
    font-size: 21px;
  }
}
body.p-top .p-top__contact .p-top__contact-button .p-top__contact-button-arrow {
  width: 11.24px;
  height: 19px;
}

.p-single header {
  background-color: #231815;
}
.p-single .p-single__main {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-bottom: 60px;
  margin-top: 60px;
}
@media (max-width: 992px) {
  .p-single .p-single__main {
    padding-left: 16px;
    padding-right: 16px;
  }
}
@media (max-width: 768px) {
  .p-single .p-single__main {
    padding: 0;
    margin-bottom: 0;
    margin-top: 0;
  }
}
.p-single .p-single__main .p-single__section-container {
  width: 960px;
  padding: 60px;
  border-radius: 8px;
  background-color: white;
}
@media (max-width: 992px) {
  .p-single .p-single__main .p-single__section-container {
    width: 100%;
    padding: 30px;
  }
}
@media (max-width: 768px) {
  .p-single .p-single__main .p-single__section-container {
    width: 100%;
    padding: 0;
    border-radius: 0;
  }
}
.p-single .p-single__main .p-single__section-container .p-single-hero__inner {
  display: flex;
  flex-direction: column;
}
.p-single .p-single__main .p-single__section-container .p-single-hero__inner h1 {
  min-width: 100%;
  padding: 0;
  line-height: 1.6;
}
.p-single .p-single__main .p-single__section-container .p-single-hero__inner .p-single-hero__date {
  width: 100%;
  margin-bottom: 20px;
  margin-top: 10px;
}
@media (max-width: 768px) {
  .p-single .p-single__main .p-single__section-container .p-single-hero__inner .p-single-hero__thumb {
    width: calc(100% + 32px);
    margin-left: -16px;
    margin-right: -16px;
  }
}
@media (max-width: 768px) {
  .p-single .p-single__main .p-single__section-container .p-single-hero__inner {
    padding-bottom: 12px;
    padding-left: 0;
    padding-right: 0;
  }
  .p-single .p-single__main .p-single__section-container .p-single-hero__inner h1 {
    margin: 16px 0 0;
  }
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner {
  padding-bottom: 60px;
  padding-top: 20px;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner h2 {
  margin: 30px 0 0;
  padding: 20px;
  line-height: 1.6;
  border-radius: 6px;
  background-color: #f1f1f1;
  margin-bottom: 20px;
  margin-left: -20px;
  margin-right: -20px;
}
@media (max-width: 768px) {
  .p-single .p-single__main .p-single__section-container .p-single-content__inner h2 {
    padding: 10px 16px;
    font-size: 22px;
    margin-left: -10px;
    margin-right: -10px;
  }
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner h3 {
  margin: 30px 0 0;
  font-size: 25px;
  line-height: 1.6;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner h3::after {
  display: block;
  width: 100%;
  height: 2px;
  content: "";
  background-color: #d9d9d9;
  margin-bottom: 15px;
  margin-top: 15px;
}
@media (max-width: 768px) {
  .p-single .p-single__main .p-single__section-container .p-single-content__inner h3 {
    font-size: 20px;
  }
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner h4 {
  display: flex;
  align-items: center;
  margin: 30px 0 0;
  gap: 12px;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner h4::before {
  display: inline-block;
  width: 6px;
  height: 35px;
  border-radius: 10px;
  content: "";
  background-color: #d9d9d9;
}
@media (max-width: 768px) {
  .p-single .p-single__main .p-single__section-container .p-single-content__inner h4::before {
    height: 28px;
  }
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner h5 {
  font-size: 20px;
  margin-bottom: 30px;
  margin-top: 30px;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner p {
  font-size: 18px;
  font-weight: 400;
  line-height: 2;
  margin-bottom: 35px;
  margin-top: 35px;
}
@media (max-width: 768px) {
  .p-single .p-single__main .p-single__section-container .p-single-content__inner p {
    font-size: 14px;
  }
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner p strong {
  font-weight: 700;
  font-weight: 600;
  background: linear-gradient(transparent 55%, rgba(255, 236, 0, 0.5) 55%);
  padding-bottom: 2px;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner ul.wp-block-list {
  display: flex;
  flex-direction: column;
  padding: 16px;
  font-size: 20px;
  background: #fcfcfc;
  border: solid 3px #d9d9d9;
  gap: 10px;
  margin-bottom: 20px;
  margin-top: 20px;
  /* 背景色 */
  /* ボックス内の余白 */
  /* 線の種類 太さ 色 */
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner ul.wp-block-list li {
  font-size: 20px;
  line-height: 1.6;
  list-style: disc;
  margin-bottom: 0;
  margin-top: 0;
}
@media (max-width: 768px) {
  .p-single .p-single__main .p-single__section-container .p-single-content__inner ul.wp-block-list li {
    font-size: 16px;
  }
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner ol.wp-block-list {
  display: flex;
  flex-direction: column;
  padding: 16px;
  font-size: 20px;
  background: #fcfcfc;
  border: solid 3px #d9d9d9;
  counter-reset: number;
  gap: 10px;
  margin-bottom: 20px;
  margin-top: 20px;
  /* 背景色 */
  /* ボックス内の余白 */
  /* 線の種類 太さ 色 */
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner ol.wp-block-list li {
  position: relative;
  font-size: 20px;
  line-height: 1.6;
  list-style: none;
  margin-bottom: 0;
  margin-left: 0;
  margin-top: 0;
  padding-left: 35px;
}
@media (max-width: 768px) {
  .p-single .p-single__main .p-single__section-container .p-single-content__inner ol.wp-block-list li {
    font-size: 16px;
  }
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner ol.wp-block-list li::before {
  /* 以下数字をつける */
  position: absolute;
  /* 以下 上下中央寄せのため */
  top: 50%;
  left: 0;
  /* 数字のデザイン変える */
  display: inline-block;
  width: 25px;
  height: 25px;
  font-family: Avenir, "Arial Black", Arial, sans-serif;
  font-size: 15px;
  font-weight: bold;
  line-height: 25px;
  text-align: center;
  color: white;
  background: black;
  border-radius: 50%;
  transform: translateY(-50%);
  content: counter(number);
  counter-increment: number;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-element-button {
  color: #231815;
  border-radius: 6px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  background-color: #ffec00;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-element-button::after {
  content: "→";
  margin-left: 10px;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-details {
  border-radius: 6px;
  box-shadow: 0 0 0 1px #eee;
  margin-top: 1em;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-details:first-child {
  margin-top: 0;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-details {
  /* Safariの三角アイコン削除 */
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-details summary::-webkit-details-marker {
  display: none;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-details {
  /* タイトル（summary） */
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-details summary {
  display: grid;
  align-items: center;
  grid-template-columns: auto 1fr;
  padding: 0.8em 1em;
  overflow: hidden;
  border-radius: 6px;
  cursor: pointer;
  background-color: #eee;
  gap: 1em;
  /* アイコン共通 */
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-details summary::before, .p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-details summary::after {
  justify-self: end;
  grid-column: 2;
  grid-row: 1;
  width: 18px;
  border-bottom: 1px solid #333;
  content: "";
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-details summary {
  /* 閉じている時のアイコン */
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-details summary::before {
  transition: transform 0.3s;
  transform: rotate(-90deg);
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-details {
  /* 開いている時の summary アイコン変更 */
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-details[open] summary::before {
  transform: rotate(0deg);
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-details {
  /* WP純正のコンテンツ要素 */
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-details .wp-block-details__content {
  max-height: 0;
  margin: 0;
  padding: 0 1em;
  box-sizing: content-box;
  overflow: hidden;
  opacity: 0;
  transition: padding 0.2s ease 0.1s, max-height 0.3s, opacity 0.7s;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-details {
  /* 開いた時 */
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-details[open] .wp-block-details__content {
  max-height: 100vh;
  opacity: 1;
  padding-block: 1em;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-details p {
  margin: 0;
  padding: 16px;
  font-size: 16px;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-accordion p {
  margin: 16px 0;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .Embed {
  padding-top: 20px;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner table {
  width: 100%;
  overflow: hidden;
  border: #b3b3b3 1px solid;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  border-collapse: separate;
  border-spacing: 0; /* セル間の隙間をなくす */
  margin-bottom: 30px;
  margin-top: 30px;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner table tbody tr td {
  padding: 15px 10px;
  border: #b3b3b3 1px solid;
  vertical-align: middle;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner table tbody tr td:first-child {
  width: 30%;
  font-weight: 600;
  text-align: center;
  background-color: #e7e7e7;
  padding-right: 20px;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-code {
  position: relative;
  overflow: auto;
  color: #fff;
  background: #1e1e1e; /* VSCode風 */
  border-radius: 6px;
  padding-left: 3.5em; /* 行番号の幅 */
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-code code {
  display: block;
  font-family: Consolas, Menlo, monospace;
  font-size: 0.9rem;
  line-height: 1.6;
  white-space: pre;
  counter-reset: line; /* ★ 行数リセット */
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-code {
  /* 行ごとに番号を付ける */
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-code code > span {
  display: block;
  counter-increment: line; /* ★ 行数 +1 */
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-code code > span::before {
  display: inline-block;
  width: 2.5em; /* 行番号幅 */
  text-align: right;
  color: #888;
  content: counter(line);
  margin-right: 1em;
  padding-right: 1em;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-separator {
  width: 30%;
  margin: 40px auto;
  border: none;
  border-top: 1px solid #d9d9d9;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-table-of-contents {
  margin: 24px 0;
  padding: 16px 20px;
  font-size: 0.95rem;
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  background-color: #f9f9fb;
}
@media (max-width: 768px) {
  .p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-table-of-contents {
    padding-left: 0;
  }
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-table-of-contents::before {
  display: block;
  width: calc(100% + 16px);
  margin: -16px -20px 30px;
  font-size: 1rem;
  font-weight: 700;
  border-radius: 6px 6px 0 0;
  content: "目次";
  background-color: #d9d9d9;
  padding-bottom: 16px;
  padding-left: 1.5em;
  padding-top: 16px;
}
@media (max-width: 768px) {
  .p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-table-of-contents::before {
    width: calc(100% - 4px);
    margin-left: 0;
  }
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-table-of-contents {
  /* リストの基本スタイルを復活 */
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-table-of-contents ul {
  margin: 0;
  list-style: none;
  padding-left: 1.5em; /* インデント */
}
@media (max-width: 768px) {
  .p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-table-of-contents ul {
    padding-left: 16px;
  }
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-table-of-contents ul ul {
  list-style: circle; /* ◯ にするなど */
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-table-of-contents li {
  margin: 4px 0;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-table-of-contents li a {
  display: inline-block;
  line-height: 1.6;
  text-decoration: underline;
  color: #1d54ba;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-table-of-contents > ul > li {
  margin: 0 0 25px;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-table-of-contents > ul > li > a {
  font-weight: 600;
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-quote {
  position: relative;
  padding: 10px 12px;
  box-sizing: border-box;
  font-style: italic;
  color: #464646;
  background: #f3f3f3;
  border-left: solid 40px #c4c4c4;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.19);
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-quote::before {
  position: absolute;
  top: 60%;
  left: -48px;
  display: inline-block;
  font-family: sans-serif;
  font-size: 80px;
  line-height: 1;
  color: #fff;
  transform: translateY(-50%);
  content: "“";
}
.p-single .p-single__main .p-single__section-container .p-single-content__inner .wp-block-quote p {
  position: relative;
  z-index: 3;
  margin: 10px 0;
  padding: 0;
  line-height: 1.7;
}
@media (max-width: 768px) {
  .p-single .p-single__main .p-single__section-container .p-single-content__inner {
    padding-top: 0;
  }
  .p-single .p-single__main .p-single__section-container .p-single-content__inner h2::before {
    width: 6px;
    height: 35px;
  }
  .p-single .p-single__main .p-single__section-container .p-single-content__inner h3::after {
    height: 1px;
  }
}

.p-page .p-page-hero__inner {
  display: flex;
  flex-direction: column;
}
.p-page .p-page-hero__inner h1 {
  margin: 60px 0 0;
}
.p-page .p-page-hero__inner .p-page-hero__date {
  width: 100%;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .p-page .p-page-hero__inner {
    padding: 20px 0 12px;
  }
  .p-page .p-page-hero__inner h1 {
    margin: 16px 0 0;
  }
}
.p-page h2 {
  margin: 20px 0 0;
}
.p-page h2::after {
  display: block;
  width: 100%;
  height: 1.5px;
  content: "";
  background-color: #000;
  margin-bottom: 15px;
  margin-top: 15px;
}
.p-page .p-page-content__inner {
  padding-bottom: 60px;
  padding-top: 20px;
}
.p-page .p-page-content__inner h3 {
  display: flex;
  align-items: center;
  margin: 30px 0 0;
  gap: 12px;
}
.p-page .p-page-content__inner h3::before {
  display: inline-block;
  width: 6px;
  height: 45px;
  content: "";
  background-color: #000;
}
.p-page .p-page-content__inner h4 {
  margin-top: 20px;
}
.p-page .p-page-content__inner p {
  line-height: 1.8;
  margin-bottom: 10px;
  margin-top: 10px;
}
@media (max-width: 768px) {
  .p-page .p-page-content__inner {
    padding-top: 0;
  }
  .p-page .p-page-content__inner h2::before {
    width: 6px;
    height: 35px;
  }
  .p-page .p-page-content__inner h3::after {
    height: 1px;
  }
}

.p-news-archive {
  width: 100%;
  padding-bottom: 30px;
  padding-top: 30px;
}
.p-news-archive .p-news-archive__title-section {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
}
.p-news-archive .p-news-archive__content {
  padding-top: 30px;
}
.p-news-archive .p-news-archive__content .p-news-archive__button-container {
  display: flex;
  justify-content: space-around;
}
.p-news-archive .p-news-archive__content .p-news-archive__button-container .p-news-archive__button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  color: white;
  background: black;
  margin-top: 20px;
}
.p-news-archive .p-news-archive__content .p-news-archive__button-container .p-news-archive__button.p-news-archive__button--pre {
  margin-right: auto;
}
.p-news-archive .p-news-archive__content .p-news-archive__button-container .p-news-archive__button.p-news-archive__button--next {
  margin-left: auto;
}

.p-blog-archive header {
  background-color: #231815;
}
.p-blog-archive {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-top: 60px;
}
@media (max-width: 992px) {
  .p-blog-archive {
    margin-top: 45px;
  }
}
@media (max-width: 768px) {
  .p-blog-archive {
    margin-top: 30px;
  }
}
.p-blog-archive .p-blog-archive__title {
  width: 960px;
}
@media (max-width: 992px) {
  .p-blog-archive .p-blog-archive__title {
    width: 632px;
  }
}
@media (max-width: 768px) {
  .p-blog-archive .p-blog-archive__title {
    width: 300px;
  }
}
.p-blog-archive .p-blog-archive__content {
  width: 960px;
}
@media (max-width: 992px) {
  .p-blog-archive .p-blog-archive__content {
    padding-top: 45px;
  }
}
@media (max-width: 768px) {
  .p-blog-archive .p-blog-archive__content {
    padding-top: 30px;
  }
}/*# sourceMappingURL=app.css.map */