/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
@layer theme {
  :root, :host {
    --u-font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
      "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --u-font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --u-default-font-family: var(--u-font-sans);
    --u-default-mono-font-family: var(--u-font-mono);
  }
}

@layer base {
  *, :after, :before, ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  html, :host {
    -webkit-text-size-adjust: 100%;
    -moz-tab-size: 4;
      -o-tab-size: 4;
         tab-size: 4;
    line-height: 1.5;
    font-family: var(--u-default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--u-default-font-feature-settings, normal);
    font-variation-settings: var(--u-default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }

  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }

  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }

  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }

  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }

  b, strong {
    font-weight: bolder;
  }

  code, kbd, samp, pre {
    font-family: var(--u-default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--u-default-mono-font-feature-settings, normal);
    font-variation-settings: var(--u-default-mono-font-variation-settings, normal);
    font-size: 1em;
  }

  small {
    font-size: 80%;
  }

  sub, sup {
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative;
  }

  sub {
    bottom: -.25em;
  }

  sup {
    top: -.5em;
  }

  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }

  :-moz-focusring {
    outline: auto;
  }

  progress {
    vertical-align: baseline;
  }

  summary {
    display: list-item;
  }

  ol, ul, menu {
    list-style: none;
  }

  img, svg, video, canvas, audio, iframe, embed, object {
    vertical-align: middle;
    display: block;
  }

  img, video {
    max-width: 100%;
    height: auto;
  }

  button, input, select, optgroup, textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }

  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }

  ::file-selector-button {
    margin-inline-end: 4px;
  }

  ::-moz-placeholder {
    opacity: 1;
  }

  ::placeholder {
    opacity: 1;
  }

  @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {
    ::-moz-placeholder {
      color: currentColor;
    }
    ::placeholder {
      color: currentColor;
    }

    @supports (color: color-mix(in lab, red, red)) {
      ::-moz-placeholder {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
      ::placeholder {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }

  textarea {
    resize: vertical;
  }

  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }

  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }

  ::-webkit-datetime-edit {
    display: inline-flex;
  }

  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }

  ::-webkit-datetime-edit {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }

  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }

  :-moz-ui-invalid {
    box-shadow: none;
  }

  button, input:where([type="button"], [type="reset"], [type="submit"]) {
    -webkit-appearance: button;
       -moz-appearance: button;
            appearance: button;
  }

  ::file-selector-button {
    -webkit-appearance: button;
       -moz-appearance: button;
            appearance: button;
  }

  ::-webkit-inner-spin-button {
    height: auto;
  }

  ::-webkit-outer-spin-button {
    height: auto;
  }

  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}

@layer components, utilities;
/*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
  min-width: 0;
}

/* 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.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -webkit-tap-highlight-color: transparent; /* 3*/
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none; /* 1 */
  -moz-appearance: none;
       appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit; /* 2 */
}

/**
 * Correct cursors for clickable elements.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/**
 * Fix appearance for Firefox
 */
[type=number] {
  -moz-appearance: textfield;
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
  border-color: inherit; /* 1 */
  border-collapse: collapse;
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
}

html {
  scroll-behavior: smooth;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-feature-settings: "palt" on;
  line-height: 1.8;
  color: var(--white);
  --font-sans: "Noto Sans JP", sans-serif;
  --white: #fff;
  --black: #000;
  --blue_01: #428eff;
  --blue_02: #005bbd;
  --blue_03: #051431;
  --gray: #969696;
  --gradation_bg: radial-gradient(
    circle at center,
    rgb(34 52 96) 0%,
    rgb(26 39 72) 25%,
    rgb(17 26 48) 50%,
    rgb(9 13 24) 75%,
    rgb(4 6 12) 87.5%,
    rgb(0 0 0) 100%
  );
  --gradation_blue-lightblue: linear-gradient(
    90deg,
    #4ca8ff 1.442%,
    #1f0052 100%
  );
  --gradation_box: linear-gradient(134.673deg, #333b7d 4.3002%, #235da3 95.7%);
  --gradation_white: linear-gradient(180deg, #389fff 0%, #fff 100%);
  --gradation_white_yoko: linear-gradient(
    90deg,
    rgb(121 131 204 / 0%) 0%,
    rgb(121 131 204 / 20%) 50%,
    rgb(121 131 204 / 0%) 100%
  );
}

@keyframes scroll-hint-appear {
  0% {
    transform: translateX(40px);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  50%, 100% {
    transform: translateX(-40px);
    opacity: 0;
  }
}
.scroll-hint-icon {
  position: absolute;
  top: calc(50% - 25px);
  left: calc(50% - 60px);
  box-sizing: border-box;
  width: 120px;
  height: auto;
  border-radius: 5px;
  transition: opacity 0.3s;
  opacity: 0;
  background: rgba(0, 0, 0, 0.7);
  text-align: center;
  padding: 20px 10px 10px 10px;
}

.scroll-hint-icon-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-height: 100%;
  pointer-events: none;
}

.scroll-hint-text {
  font-size: 10px;
  color: #FFF;
  margin-top: 5px;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
  opacity: 0.8;
}

.scroll-hint-icon:before {
  display: inline-block;
  width: 40px;
  height: 40px;
  color: #FFF;
  vertical-align: middle;
  text-align: center;
  content: "";
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDM8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIiBmaWxsPSIjZmZmIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon:after {
  content: "";
  width: 34px;
  height: 14px;
  display: block;
  position: absolute;
  top: 10px;
  left: 50%;
  margin-left: -20px;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDE8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIgZmlsbD0iI2ZmZiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiIGZpbGw9IiNmZmYiLz48L2c+PC9nPjwvc3ZnPg==);
  opacity: 0;
  transition-delay: 2.4s;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:after {
  opacity: 1;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
  animation: scroll-hint-appear 1.2s linear;
  animation-iteration-count: 2;
}

.scroll-hint-icon-white {
  background-color: #FFF;
  box-shadow: 0 4px 5px rgba(0, 0, 0, 0.4);
}

.scroll-hint-icon-white:before {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDQ8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon-white:after {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDI8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiLz48L2c+PC9nPjwvc3ZnPg==);
}

.scroll-hint-icon-white .scroll-hint-text {
  color: #000;
}

.scroll-hint-shadow-wrap {
  position: relative;
}

.scroll-hint-shadow-wrap::after {
  content: "";
  width: 20px;
  height: 100%;
  background: linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
  position: absolute;
  top: 0;
  right: 0;
  pointer-events: none;
  z-index: 1;
  opacity: 0;
  visibility: hidden;
}

.scroll-hint-shadow-wrap::before {
  content: "";
  width: 20px;
  height: 100%;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  z-index: 1;
  opacity: 0;
  visibility: hidden;
}

.scroll-hint-shadow-wrap:has(.scroll-hint.is-right-scrollable)::after,
.scroll-hint-shadow-wrap.is-right-scrollable::after {
  opacity: 1;
  visibility: visible;
}

.scroll-hint-shadow-wrap:has(.scroll-hint.is-left-scrollable)::before,
.scroll-hint-shadow-wrap.is-left-scrollable::before {
  opacity: 1;
  visibility: visible;
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  min-height: 125px;
  font-family: var(--font-sans);
  background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 100%);
}

@media screen and (min-width: 48em), print {
  .header__inner {
    position: relative;
    padding-inline: 2rem;
  }
}
@media screen and (max-width: 47.99em) {
  .header__inner {
    position: fixed;
    top: 0;
    right: 0;
    width: 11.5rem;
    height: 100%;
    background: rgba(0, 0, 0, 0.48);
    backdrop-filter: blur(1.25rem);
    transition: transform 0.3s, visibility 0.3s;
  }
}
.header__inner[aria-hidden=false] {
  visibility: visible;
  transform: translateX(0);
}
.header__inner[aria-hidden=true] {
  visibility: hidden;
  transform: translateX(100%);
}

.header__logo {
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (min-width: 48em), print {
  .header__logo {
    position: absolute;
    width: 11.0625rem;
  }
}
@media screen and (max-width: 47.99em) {
  .header__logo {
    width: 5.6875rem;
    margin-top: 0.5rem;
    margin-left: 1rem;
  }
}

@media screen and (min-width: 48em), print {
  .header__nav {
    width: -moz-fit-content;
    width: fit-content;
    padding-top: 1.25rem;
    padding-right: 0.575rem;
    margin-left: auto;
  }
}
@media screen and (max-width: 47.99em) {
  .header__nav {
    padding-top: 2rem;
  }
}

.header__list {
  display: grid;
}
@media screen and (min-width: 48em), print {
  .header__list {
    grid-template-columns: repeat(5, auto);
    -moz-column-gap: 2.75rem;
         column-gap: 2.75rem;
    align-items: center;
  }
}
@media screen and (max-width: 47.99em) {
  .header__list {
    row-gap: 2rem;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
  }
}

.header__link {
  display: block;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.75;
  font-size: 1rem;
}
.header__link {
  color: var(--white);
  transition: text-shadow 0.3s;
}
@media (hover: hover) {
  .header__link:where(:-moz-any-link, :enabled, summary):hover {
    text-shadow: 0 0 0.5rem var(--white);
  }
  .header__link:where(:any-link, :enabled, summary):hover {
    text-shadow: 0 0 0.5rem var(--white);
  }
}

@media screen and (min-width: 48em), print {
  .header__button {
    display: none;
  }
}
@media screen and (max-width: 47.99em) {
  .header__button {
    position: fixed;
    top: 1.5rem;
    right: 1.5rem;
    z-index: 1;
    display: block;
    width: 2rem;
    height: 1rem;
  }
}
.header__button span {
  display: block;
  width: 100%;
  height: 1px;
  border: 1px solid var(--white);
  border-radius: 9999px;
  transition: transform 0.3s;
}
.header__button span:first-of-type {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-0.45rem);
}
.header__button span:last-of-type {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(0.45rem);
}
.header__button[aria-expanded=true] span:first-of-type {
  top: 50%;
  transform: rotate(-30deg);
}
.header__button[aria-expanded=true] span:last-of-type {
  top: 50%;
  transform: rotate(30deg);
}

.footer {
  position: relative;
  z-index: 10;
  padding-inline: 1.25rem;
  background-color: var(--black);
}
@media screen and (max-width: 47.99em) {
  .footer {
    padding-bottom: 1rem;
  }
}

.footer__download {
  display: grid;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 48em), print {
  .footer__download {
    grid-template-columns: repeat(2, auto);
    -moz-column-gap: 0.625rem;
         column-gap: 0.625rem;
  }
}
@media screen and (max-width: 47.99em) {
  .footer__download {
    grid-template-columns: 6.85rem 1fr;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
    justify-content: center;
    padding-top: 1rem;
  }
}

.footer__logo {
  margin-top: -5.5rem;
}

.footer__download__list {
  display: flex;
}
@media screen and (min-width: 48em), print {
  .footer__download__list {
    -moz-column-gap: 0.625rem;
         column-gap: 0.625rem;
  }
}
@media screen and (max-width: 47.99em) {
  .footer__download__list {
    -moz-column-gap: 0.5rem;
         column-gap: 0.5rem;
    align-items: flex-start;
  }
}

@media screen and (max-width: 47.99em) {
  .footer__download__item:first-of-type {
    display: none;
  }
}

.footer__download__link {
  display: block;
}
.footer__download__link img {
  width: auto;
}
@media screen and (min-width: 48em), print {
  .footer__download__link img {
    height: 3rem;
  }
}
@media screen and (max-width: 47.99em) {
  .footer__download__link img {
    height: 2rem;
  }
}

.footer__inner {
  display: grid;
  align-items: center;
  justify-content: center;
  margin-inline: auto;
}
@media screen and (min-width: 48em), print {
  .footer__inner {
    grid-template-areas: "company nav" "company copyright";
    grid-template-columns: 32.5% 1fr;
    -moz-column-gap: 1rem;
         column-gap: 1rem;
    max-width: 65.625rem;
    padding-block: 2.25rem;
  }
}
@media screen and (max-width: 47.99em) {
  .footer__inner {
    grid-template-areas: "company" "nav" "copyright";
    row-gap: 2rem;
    margin-top: 1.5rem;
  }
}

.footer__company {
  display: flex;
  grid-area: company;
  -moz-column-gap: 1.25rem;
       column-gap: 1.25rem;
}
@media screen and (max-width: 47.99em) {
  .footer__company {
    justify-content: center;
  }
}

@media screen and (max-width: 47.99em) {
  .footer__company__item img {
    width: auto;
    height: 2.5rem;
  }
}

.footer__nav {
  grid-area: nav;
}

.footer__nav__list {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 0.625rem;
       column-gap: 0.625rem;
}
@media screen and (max-width: 47.99em) {
  .footer__nav__list {
    row-gap: 0.5rem;
    justify-content: center;
  }
}

.footer__nav__item {
  padding-right: 0.625rem;
  font-size: 0.625rem;
  border-right: 1px solid var(--white);
}

.footer__copyright {
  display: grid;
  grid-area: copyright;
  font-size: 0.625rem;
}
@media screen and (min-width: 48em), print {
  .footer__copyright {
    grid-template-columns: repeat(3, auto);
    -moz-column-gap: 0.625rem;
         column-gap: 0.625rem;
    margin-top: 1.25rem;
  }
}
@media screen and (max-width: 47.99em) {
  .footer__copyright {
    text-align: center;
  }
}

.section {
  position: relative;
  padding-block: 5rem 6.25rem;
}
.section.section--gradation {
  background: var(--gradation_box);
}
.section.section--navy {
  background-color: var(--blue_03);
}
.section.section--image {
  background: rgba(9, 52, 99, 0.8);
}
.section.section--lightImage {
  background: rgba(9, 52, 99, 0.5);
}
.section.section--navyPattern {
  background: url(/washizu_mahjong/assets/images/bg_pattern.png) var(--blue_03) 0% 0%/200px repeat;
}
@media screen and (max-width: 47.99em) {
  .section {
    padding-top: 4rem;
    padding-bottom: 5rem;
  }
}

.width {
  box-sizing: content-box;
  padding-inline: 1.25rem;
  margin-inline: auto;
}
@media screen and (min-width: 48em), print {
  .width {
    max-width: 60rem;
  }
}
@media screen and (max-width: 47.99em) {
  .width {
    max-width: 56rem;
  }
}

.text {
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.8;
}
@media screen and (min-width: 48em), print {
  .text {
    font-size: 1rem;
  }
}
@media screen and (max-width: 47.99em) {
  .text {
    font-size: 0.9375rem;
  }
}

.textSerif {
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
}
.textSerif.textSerif--xs {
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
}
@media screen and (min-width: 48em), print {
  .textSerif.textSerif--xs {
    font-size: 1.125rem;
  }
}
@media screen and (max-width: 47.99em) {
  .textSerif.textSerif--xs {
    font-size: 0.875rem;
  }
}
.textSerif.textSerif--sm {
  font-family: "Noto Serif JP", serif;
}
@media screen and (min-width: 48em), print {
  .textSerif.textSerif--sm {
    font-size: 1.25rem;
    font-weight: 700;
  }
}
@media screen and (max-width: 47.99em) {
  .textSerif.textSerif--sm {
    font-size: 1rem;
    font-weight: 600;
  }
}
.textSerif.textSerif--md {
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
}
@media screen and (min-width: 48em), print {
  .textSerif.textSerif--md {
    font-size: 2rem;
  }
}
@media screen and (max-width: 47.99em) {
  .textSerif.textSerif--md {
    font-size: 1.375rem;
  }
}
.textSerif.textSerif--lg {
  font-family: "Noto Serif JP", serif;
}
@media screen and (min-width: 48em), print {
  .textSerif.textSerif--lg {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .textSerif.textSerif--lg {
    font-size: 1rem;
  }
}
.textSerif.textSerif--xxl {
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (min-width: 48em), print {
  .textSerif.textSerif--xxl {
    font-size: 1.75rem;
  }
}
@media screen and (max-width: 47.99em) {
  .textSerif.textSerif--xxl {
    font-size: 1.125rem;
  }
}

.list {
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.8;
}
@media screen and (min-width: 48em), print {
  .list {
    font-size: 1rem;
  }
}
@media screen and (max-width: 47.99em) {
  .list {
    font-size: 0.9375rem;
  }
}
.list {
  list-style: disc;
  list-style-position: inside;
}

.sectionTitle {
  display: grid;
  gap: 0.5rem;
  justify-items: center;
  text-align: center;
}

.sectionTitle__heading {
  width: min(var(--section-title-width, 23.625rem), 100%);
  margin: 0;
}
@media screen and (max-width: 47.99em) {
  .sectionTitle__heading {
    width: min(var(--section-title-width, 18.75rem), 84vw);
  }
}

.sectionTitle__image {
  display: block;
  width: 100%;
  height: auto;
  margin-inline: auto;
  filter: drop-shadow(0 0 0.75rem rgba(230, 0, 18, 0.25));
}

.sectionTitle__title {
  font-weight: 700;
  line-height: 1.25;
  color: var(--white);
  letter-spacing: 0.08em;
  text-shadow: 0 0 0.75rem rgba(230, 0, 18, 0.45);
}
@media screen and (min-width: 48em), print {
  .sectionTitle__title {
    font-size: 2rem;
  }
}
@media screen and (max-width: 47.99em) {
  .sectionTitle__title {
    font-size: 1.375rem;
  }
}

.sectionTitle__subtitle {
  font-family: "Zen Old Mincho", serif;
  line-height: 1;
  color: #e60012;
  letter-spacing: 0.18em;
}
@media screen and (min-width: 48em), print {
  .sectionTitle__subtitle {
    font-size: 1rem;
  }
}
@media screen and (max-width: 47.99em) {
  .sectionTitle__subtitle {
    font-size: 0.875rem;
  }
}

.sectionTitle__lead {
  max-width: 40rem;
  margin-top: 0.75rem;
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.8;
}
@media screen and (min-width: 48em), print {
  .sectionTitle__lead {
    font-size: 1rem;
  }
}
@media screen and (max-width: 47.99em) {
  .sectionTitle__lead {
    font-size: 0.9375rem;
  }
}
.sectionTitle__lead {
  color: rgba(255, 255, 255, 0.88);
}

.heroSection {
  position: relative;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.16) 0%, rgba(0, 0, 0, 0.82) 100%), #000;
}

.heroSection__media,
.heroSection__background {
  width: 100%;
}

.heroSection__media picture {
  display: block;
  width: 100%;
}

.heroSection__media img {
  display: block;
  width: 100%;
  height: auto;
}

.heroSection__background {
  position: absolute;
  inset: 0;
  visibility: hidden;
  pointer-events: none;
  content: "";
  background: radial-gradient(41.88% 44.11% at 50% 50%, #000 0%, rgba(0, 0, 0, 0) 100%), var(--hero-section-bg-texture) lightgray 50%/cover no-repeat;
  opacity: 0;
  transition: opacity 0.3s;
}

.heroSection__title[data-hero-bg-ready=true] .heroSection__background {
  visibility: visible;
  opacity: 0.4;
}

.heroSection__title {
  position: relative;
  display: grid;
  justify-items: center;
  text-align: center;
}
.heroSection__title::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 7.5rem;
  content: "";
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000 30.29%, rgba(0, 0, 0, 0) 100%);
  transform: translateY(-33%);
}
.heroSection__title::after {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 7.5rem;
  content: "";
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000 30.29%, rgba(0, 0, 0, 0) 100%);
  transform: translateY(64%);
}
@media screen and (min-width: 48em), print {
  .heroSection__title {
    bottom: 0;
    gap: 1.5rem;
    padding: 5rem 1.25rem 5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .heroSection__title {
    bottom: 0;
    padding: 7.5rem 1.25rem 7.5rem;
  }
  .heroSection__title::after {
    background: radial-gradient(circle at 50% 40%, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.14) 22%, rgba(0, 0, 0, 0) 40%), linear-gradient(180deg, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0.62) 16%, rgba(0, 0, 0, 0.94) 100%);
  }
}

.heroSection__zawa {
  position: absolute;
  z-index: 1;
  pointer-events: none;
  opacity: 0.2;
}
.heroSection__zawa img {
  width: 100%;
  height: auto;
}
@media screen and (min-width: 48em), print {
  .heroSection__zawa {
    width: 13.8125rem;
  }
}
@media screen and (max-width: 47.99em) {
  .heroSection__zawa {
    width: 6.625rem;
  }
}

@media screen and (min-width: 48em), print {
  .heroSection__zawa--1 {
    top: 2.5rem;
    left: 2rem;
  }
}
@media screen and (max-width: 47.99em) {
  .heroSection__zawa--1 {
    top: 2.0625rem;
    left: 0.625rem;
  }
}

@media screen and (min-width: 48em), print {
  .heroSection__zawa--2 {
    top: 2.5rem;
    right: 2rem;
  }
}
@media screen and (max-width: 47.99em) {
  .heroSection__zawa--2 {
    top: 5rem;
    right: calc(50% - 3.3125rem);
  }
}

@media screen and (min-width: 48em), print {
  .heroSection__zawa--3 {
    top: 12rem;
    left: 16%;
  }
}
@media screen and (max-width: 47.99em) {
  .heroSection__zawa--3 {
    top: 2.0625rem;
    right: 0rem;
  }
}

@media screen and (min-width: 48em), print {
  .heroSection__zawa--4 {
    top: 12rem;
    right: 16%;
  }
}
@media screen and (max-width: 47.99em) {
  .heroSection__zawa--4 {
    bottom: 4.5rem;
    left: 0.625rem;
  }
}

@media screen and (min-width: 48em), print {
  .heroSection__zawa--5 {
    top: 24rem;
    left: 6rem;
  }
}
@media screen and (max-width: 47.99em) {
  .heroSection__zawa--5 {
    right: calc(50% - 3.3125rem);
    bottom: 1.8rem;
  }
}

@media screen and (min-width: 48em), print {
  .heroSection__zawa--6 {
    top: 24rem;
    right: 6rem;
  }
}
@media screen and (max-width: 47.99em) {
  .heroSection__zawa--6 {
    right: 0.625rem;
    bottom: 4rem;
  }
}

.heroSection__logo {
  position: relative;
  z-index: 2;
}
.heroSection__logo img {
  width: min(20.25rem, 78vw);
  height: auto;
}

.heroSection__copy {
  position: relative;
  z-index: 2;
  display: grid;
  justify-items: center;
}
@media screen and (max-width: 47.99em) {
  .heroSection__copy {
    margin-top: 1rem;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .heroSection__title[data-scroll-hero] .heroSection__zawa,
  .heroSection__title[data-scroll-hero] .heroSection__logo,
  .heroSection__title[data-scroll-hero] .heroSection__eyebrow,
  .heroSection__title[data-scroll-hero] .heroSection__mainTitle,
  .heroSection__title[data-scroll-hero] .heroSection__accent,
  .heroSection__title[data-scroll-hero] .heroSection__lead {
    opacity: 0;
  }
  .heroSection__title[data-scroll-hero] .heroSection__logo,
  .heroSection__title[data-scroll-hero] .heroSection__eyebrow,
  .heroSection__title[data-scroll-hero] .heroSection__mainTitle,
  .heroSection__title[data-scroll-hero] .heroSection__accent,
  .heroSection__title[data-scroll-hero] .heroSection__lead {
    transform: translate3d(0, -26px, 0);
  }
}

@media (prefers-reduced-motion: no-preference) {
  .heroSection__title[data-scroll-hero=show] .heroSection__zawa {
    animation: hero-zawa-fade-in 2s ease-out both;
  }
  .heroSection__title[data-scroll-hero=show] .heroSection__zawa--1 {
    animation-delay: 0s;
  }
  .heroSection__title[data-scroll-hero=show] .heroSection__zawa--2 {
    animation-delay: 0.36s;
  }
  .heroSection__title[data-scroll-hero=show] .heroSection__zawa--3 {
    animation-delay: 0.72s;
  }
  .heroSection__title[data-scroll-hero=show] .heroSection__zawa--4 {
    animation-delay: 1.08s;
  }
  .heroSection__title[data-scroll-hero=show] .heroSection__zawa--5 {
    animation-delay: 1.44s;
  }
  .heroSection__title[data-scroll-hero=show] .heroSection__zawa--6 {
    animation-delay: 1.8s;
  }
  .heroSection__title[data-scroll-hero=show] .heroSection__logo {
    animation: hero-copy-fade-in 0.8s 3s cubic-bezier(0.22, 1, 0.36, 1) both;
  }
  .heroSection__title[data-scroll-hero=show] .heroSection__eyebrow {
    animation: hero-copy-fade-in 0.8s 3.5s cubic-bezier(0.22, 1, 0.36, 1) both;
  }
  .heroSection__title[data-scroll-hero=show] .heroSection__mainTitle {
    animation: hero-copy-fade-in 0.8s 3.6s cubic-bezier(0.22, 1, 0.36, 1) both;
  }
  .heroSection__title[data-scroll-hero=show] .heroSection__accent {
    animation: hero-copy-fade-in 0.8s 3.7s cubic-bezier(0.22, 1, 0.36, 1) both;
  }
  .heroSection__title[data-scroll-hero=show] .heroSection__lead {
    animation: hero-copy-fade-in 0.8s 3.8s cubic-bezier(0.22, 1, 0.36, 1) both;
  }
}

@keyframes hero-zawa-fade-in {
  0% {
    opacity: 0;
    transform: translate3d(0, 0, 0);
  }
  10% {
    opacity: 0.02;
    transform: translate3d(-2px, 0, 0);
  }
  20% {
    opacity: 0.04;
    transform: translate3d(-4px, -1px, 0);
  }
  30% {
    opacity: 0.06;
    transform: translate3d(-2px, -3px, 0);
  }
  40% {
    opacity: 0.08;
    transform: translate3d(0, -4px, 0);
  }
  50% {
    opacity: 0.1;
    transform: translate3d(2px, -2px, 0);
  }
  60% {
    opacity: 0.12;
    transform: translate3d(4px, 0, 0);
  }
  70% {
    opacity: 0.14;
    transform: translate3d(3px, 2px, 0);
  }
  80% {
    opacity: 0.16;
    transform: translate3d(2px, 3px, 0);
  }
  90% {
    opacity: 0.18;
    transform: translate3d(1px, 1px, 0);
  }
  100% {
    opacity: 0.2;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes hero-copy-fade-in {
  0% {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
  }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
.heroSection__eyebrow,
.heroSection__accent {
  display: flex;
  align-items: center;
  justify-content: center;
}

.heroSection__eyebrow span,
.heroSection__accent span {
  font-weight: 700;
  line-height: 1.4;
  color: transparent;
  background: linear-gradient(180deg, #fff 61.54%, #b0767a 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

@media screen and (min-width: 48em), print {
  .heroSection__eyebrow {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .heroSection__eyebrow {
    font-size: 1rem;
  }
}

@media screen and (min-width: 48em), print {
  .heroSection__mainTitle {
    width: 26.625rem;
  }
}
@media screen and (max-width: 47.99em) {
  .heroSection__mainTitle {
    width: 17.8125rem;
  }
}

@media screen and (min-width: 48em), print {
  .heroSection__accent {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .heroSection__accent {
    font-size: 1.25rem;
  }
}

.heroSection__lead {
  position: relative;
  z-index: 2;
  font-weight: 700;
  line-height: 1.5;
  text-shadow: 0 0 0.25rem #000;
}
@media screen and (min-width: 48em), print {
  .heroSection__lead {
    font-size: 1.125rem;
  }
}
@media screen and (max-width: 47.99em) {
  .heroSection__lead {
    margin-top: 0.5rem;
    font-size: 0.9375rem;
  }
}

@media screen and (min-width: 48em), print {
  .heroSection__leadBreak {
    display: none;
  }
}

.prizeSection::before, .prizeSection::after {
  position: absolute;
  inset: 0;
  pointer-events: none;
  content: "";
}
.prizeSection::before {
  background: var(--prize-section-bg-texture) center/cover repeat;
  filter: saturate(1.2) brightness(0.55);
}
@media screen and (max-width: 47.99em) {
  .prizeSection::before {
    background-position-y: 1px;
  }
}
.prizeSection::after {
  background: linear-gradient(180deg, #000 0%, #420005 56.08%, #750009 100%), no-repeat;
  mix-blend-mode: overlay;
}
@media screen and (max-width: 47.99em) {
  .prizeSection {
    padding-top: 5rem;
    padding-bottom: 6.5rem;
  }
}

.prizeSection__inner {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 4rem;
  justify-items: center;
}

.prizeSection__title {
  filter: drop-shadow(0 0 1rem rgba(230, 0, 18, 0.24));
}

.prizeSection__groups {
  display: grid;
  gap: 4rem;
  width: min(100%, 60rem);
}

.prizeSection__group {
  display: grid;
  gap: 2rem;
}

.prizeSection__heading {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  justify-content: center;
  margin: 0;
  font-weight: 700;
  line-height: 1.4;
  color: transparent;
  text-align: center;
  background: linear-gradient(180deg, #fff 61.54%, #b0767a 100%);
  -webkit-background-clip: text;
  background-clip: text;
}
.prizeSection__heading img {
  display: block;
  width: 1.375rem;
  height: 1.375rem;
}
@media screen and (min-width: 48em), print {
  .prizeSection__heading {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .prizeSection__heading {
    font-size: 1.125rem;
    line-height: 1;
  }
}

.prizeSection__table {
  display: grid;
}

.prizeSection__table--sp {
  display: none;
}

.prizeSection__row {
  display: grid;
  grid-template-columns: 17.5rem minmax(0, 1fr);
  align-items: stretch;
}

.prizeSection__rank,
.prizeSection__value,
.prizeSection__stackRank,
.prizeSection__stackValue {
  border-top: 1px solid rgba(255, 255, 255, 0.4);
}

.prizeSection__rank,
.prizeSection__stackRank {
  font-family: var(--font-sans);
  font-weight: 700;
  color: #e60012;
}

.prizeSection__rank {
  display: flex;
  align-items: center;
  padding: 0.5rem 1rem;
  font-size: 1.125rem;
  line-height: 1.6;
  letter-spacing: 0.04em;
}

.prizeSection__value {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  min-width: 0;
  padding: 0.5rem 1rem;
  font-family: var(--font-sans);
}
.prizeSection__value p {
  min-width: 0;
  margin: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1rem;
  line-height: 1.8;
  color: var(--white);
}
.prizeSection__value[data-last=true] {
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
@media screen and (max-width: 47.99em) {
  .prizeSection__value {
    border-top: 0;
  }
}

.prizeSection__rank[data-last=true] {
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}

.prizeSection__icons {
  display: flex;
  flex-shrink: 0;
  gap: 0.5rem;
}
.prizeSection__icons img {
  display: block;
  width: 2.5rem;
  height: 2.5rem;
}

.prizeSection__row--offline {
  align-items: stretch;
}

.prizeSection__rank--offline {
  align-items: flex-start;
}

.prizeSection__value--offline {
  display: grid;
  gap: 0.5rem;
  align-items: start;
}

.prizeSection__photos {
  width: 100%;
}
.prizeSection__photos img {
  display: block;
  width: 100%;
  height: auto;
}
@media screen and (min-width: 48em), print {
  .prizeSection__photos {
    max-width: 18.75rem;
  }
}

.prizeSection__stackRow {
  display: grid;
}
.prizeSection__stackRow[data-last=true] .prizeSection__stackValue {
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}

.prizeSection__stackRank {
  padding: 0.25rem 1rem 0;
  font-size: 1rem;
  line-height: 1.7;
}

.prizeSection__stackValue {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}
.prizeSection__stackValue p {
  margin: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.9375rem;
  line-height: 1.8;
  color: var(--white);
}
@media screen and (min-width: 48em), print {
  .prizeSection__stackValue {
    padding: 0.25rem 1rem 0.75rem;
  }
}
@media screen and (max-width: 47.99em) {
  .prizeSection__stackValue {
    padding: 0.1rem 1rem 0.5rem;
  }
}

@media screen and (max-width: 47.99em) {
  .prizeSection__inner {
    gap: 4rem;
  }
  .prizeSection__groups {
    gap: 2.5rem;
  }
  .prizeSection__group {
    gap: 1.5rem;
  }
  .prizeSection__heading img {
    width: 1.0625rem;
    height: 1.0625rem;
  }
  .prizeSection__table--pc {
    display: none;
  }
  .prizeSection__table--sp {
    display: grid;
  }
  .prizeSection__row--responsive,
  .prizeSection__row--offline {
    grid-template-columns: 1fr;
  }
  .prizeSection__rank,
  .prizeSection__value {
    border-bottom: 0;
  }
  .prizeSection__rank {
    padding: 0.25rem 1rem 0;
    font-size: 1rem;
    line-height: 1.7;
  }
  .prizeSection__value {
    padding: 0.25rem 1rem 0.75rem;
  }
  .prizeSection__value p {
    font-size: 0.9375rem;
  }
  .prizeSection__rank[data-last=true],
  .prizeSection__value[data-last=true] {
    border-bottom: 0;
  }
  .prizeSection__row--responsive .prizeSection__value[data-last=true],
  .prizeSection__row--offline .prizeSection__value[data-last=true] {
    border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  }
  .prizeSection__value--offline {
    gap: 0.5rem;
  }
  .prizeSection__photos {
    gap: 0.5rem;
  }
}
.section.guestSection {
  background: #000;
}

.guestSection__inner {
  display: grid;
  gap: 3rem;
  justify-items: center;
}

.guestSection__title {
  filter: drop-shadow(0 0 1rem rgba(230, 0, 18, 0.22));
}

.guestSection__groups {
  display: grid;
  gap: 3rem;
  width: min(100%, 31.25rem);
}

.guestSection__group {
  display: grid;
  gap: 2rem;
}

.guestSection__heading {
  display: flex;
  gap: 1.5rem;
  align-items: center;
  justify-content: center;
  margin: 0;
  font-weight: 700;
  line-height: 1.4;
  color: transparent;
  text-align: center;
  background: linear-gradient(180deg, #fff 61.54%, #b0767a 100%);
  -webkit-background-clip: text;
  background-clip: text;
}
@media screen and (min-width: 48em), print {
  .guestSection__heading {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .guestSection__heading {
    gap: 1rem;
    font-size: 1.125rem;
    line-height: 1;
  }
}

.guestSection__headingLine {
  flex: 1;
  min-width: 2.625rem;
  height: 1px;
  background: linear-gradient(90deg, rgba(192, 163, 0, 0) 0%, #c0a300 100%);
}
.guestSection__headingLine:last-child {
  background: linear-gradient(90deg, #c0a300 0%, rgba(192, 163, 0, 0) 100%);
}

.guestSection__list {
  display: flex;
  flex-wrap: wrap;
  gap: 2.5rem;
  justify-content: center;
  padding: 0;
  margin: 0;
  list-style: none;
}

.guestSection__list--single {
  gap: 0;
}

.guestSection__item {
  display: grid;
  gap: 0.5rem;
  justify-items: center;
}

.guestSection__frame {
  display: flex;
  width: 12.5rem;
  height: 16rem;
  padding: 0.25rem;
  border: 1px solid;
  -o-border-image: linear-gradient(90deg, #c0a300 0%, #f4e699 30.77%, #93811d 83.65%, #c0a300 100%);
     border-image: linear-gradient(90deg, #c0a300 0%, #f4e699 30.77%, #93811d 83.65%, #c0a300 100%);
  border-image-slice: 1;
}

.guestSection__photo {
  position: relative;
  flex: 1;
  overflow: hidden;
  background: #000;
  border: 1px solid;
  -o-border-image: linear-gradient(90deg, #c0a300 0%, #f4e699 30.77%, #93811d 83.65%, #c0a300 100%);
     border-image: linear-gradient(90deg, #c0a300 0%, #f4e699 30.77%, #93811d 83.65%, #c0a300 100%);
  border-image-slice: 1;
}
.guestSection__photo img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.guestSection__name {
  margin: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  line-height: 1.6;
  color: var(--white);
  text-align: center;
}
@media screen and (min-width: 48em), print {
  .guestSection__name {
    font-size: 1.125rem;
    letter-spacing: 0.04em;
  }
}
@media screen and (max-width: 47.99em) {
  .guestSection__name {
    font-size: 1rem;
  }
}

@media screen and (max-width: 47.99em) {
  .guestSection__inner {
    gap: 2.5rem;
  }
  .guestSection__groups {
    gap: 2rem;
    width: 100%;
  }
  .guestSection__group {
    gap: 1rem;
  }
  .guestSection__list {
    gap: 1.25rem;
  }
  .guestSection__frame {
    width: 9.75rem;
    height: 12.5rem;
  }
  .guestSection__name {
    line-height: 1.7;
  }
}
.scheduleSection {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.scheduleSection::before, .scheduleSection::after {
  position: absolute;
  inset: 0;
  pointer-events: none;
  content: "";
}
.scheduleSection::before {
  background: linear-gradient(270deg, #530005 0%, #0e004d 100%);
}
.scheduleSection::after {
  background: var(--schedule-section-bg-texture) center/cover no-repeat;
  mix-blend-mode: overlay;
  opacity: 0.3;
}

.scheduleSection__inner {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 2.5rem;
  justify-items: center;
}
@media screen and (max-width: 47.99em) {
  .scheduleSection__inner {
    gap: 2.5rem;
  }
}

.scheduleSection__title {
  filter: drop-shadow(0 0 1rem rgba(230, 0, 18, 0.28));
}

.scheduleSection__frame {
  width: 100%;
}

.scheduleSection__frameInner {
  width: min(100%, 60rem);
  padding: 1rem;
  margin-inline: auto;
  background: #000;
  border: 1px solid;
  -o-border-image: linear-gradient(90deg, #c0a300 0%, #f4e699 30.77%, #93811d 83.65%, #c0a300 100%);
     border-image: linear-gradient(90deg, #c0a300 0%, #f4e699 30.77%, #93811d 83.65%, #c0a300 100%);
  border-image-slice: 1;
  box-shadow: 0 0 1.5rem rgba(0, 0, 0, 0.3);
}

.scheduleSection__image {
  display: block;
  width: 100%;
  max-width: 60rem;
  height: auto;
}

@media screen and (max-width: 47.99em) {
  .scheduleSection__frame {
    justify-self: stretch;
  }
  .scheduleSection__frameInner {
    width: -moz-fit-content;
    width: fit-content;
    padding: 0;
  }
  .scheduleSection__image {
    width: 31rem;
    max-width: none;
  }
}
.eventStageCard {
  position: relative;
  display: grid;
  overflow: visible;
  background: linear-gradient(90deg, #e60012 0%, #5f0007 100%), #5f0007;
  border: 1px solid;
  -o-border-image: linear-gradient(90deg, #c0a300 0%, #f4e699 30.77%, #93811d 83.65%, #c0a300 100%);
     border-image: linear-gradient(90deg, #c0a300 0%, #f4e699 30.77%, #93811d 83.65%, #c0a300 100%);
  border-image-slice: 1;
  box-shadow: 0 0 1.5rem rgba(0, 0, 0, 0.28);
}
@media screen and (min-width: 48em), print {
  .eventStageCard {
    grid-template-columns: 9.25rem 1fr;
    align-items: center;
    min-height: 7.425rem;
  }
}
@media screen and (max-width: 47.99em) {
  .eventStageCard {
    grid-template-columns: 1fr;
  }
}
.eventStageCard::before {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  content: "";
  background: var(--event-stage-card-bg-texture) center/cover no-repeat;
  mix-blend-mode: multiply;
  opacity: 0.42;
}

.eventOverviewSection__list > .eventStageCard:not(:last-child)::after {
  position: absolute;
  bottom: -0.875rem;
  left: 50%;
  z-index: 1;
  width: 1.25rem;
  height: 1.25rem;
  content: "";
  background: url("data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_205_16228)'%3e%3cpath%20d='M10.086%2015.6658L3.83078%209.41066L3.83078%205.42185L10.086%2011.677L16.3411%205.42185V9.41146L10.086%2015.6658Z'%20fill='url(%23paint0_linear_205_16228)'/%3e%3c/g%3e%3cdefs%3e%3clinearGradient%20id='paint0_linear_205_16228'%20x1='19'%20y1='9'%20x2='5'%20y2='10.5'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23C0A300'/%3e%3cstop%20offset='0.307692'%20stop-color='%23F4E699'/%3e%3cstop%20offset='0.836538'%20stop-color='%2393811D'/%3e%3cstop%20offset='1'%20stop-color='%23C0A300'/%3e%3c/linearGradient%3e%3cclipPath%20id='clip0_205_16228'%3e%3crect%20width='20'%20height='20'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e") center/contain no-repeat;
  transform: translate(-50%, 50%);
}
@media screen and (max-width: 47.99em) {
  .eventOverviewSection__list > .eventStageCard:not(:last-child)::after {
    bottom: -0.8rem;
  }
}

.eventStageCard__schedule {
  position: relative;
  z-index: 1;
  display: grid;
  row-gap: 0.5rem;
  align-content: center;
  justify-items: center;
  min-height: 100%;
  padding: 0.5rem 2rem;
  text-align: center;
  background: rgba(0, 0, 0, 0.58);
}
@media screen and (max-width: 47.99em) {
  .eventStageCard__schedule {
    row-gap: 0.25rem;
    min-height: 5.1875rem;
    padding: 0.75rem 1rem;
  }
}

.eventStageCard__label {
  display: grid;
  row-gap: 0.25rem;
  align-items: center;
  justify-items: center;
}

.eventStageCard__labelText,
.eventStageCard__dates {
  font-weight: 700;
  line-height: 1;
}

.eventStageCard__labelText {
  font-size: 0.75rem;
}

.eventStageCard__phase {
  width: auto;
}
@media screen and (min-width: 48em), print {
  .eventStageCard__phase {
    height: 2.5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .eventStageCard__phase {
    height: 1.5rem;
  }
}
.eventStageCard__phase img {
  width: auto;
}
@media screen and (min-width: 48em), print {
  .eventStageCard__phase img {
    height: 2.5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .eventStageCard__phase img {
    height: 1.5rem;
  }
}

.eventStageCard__dates {
  font-size: 0.75rem;
  line-height: 1.5;
}
@media screen and (max-width: 47.99em) {
  .eventStageCard__dates {
    font-size: 0.75rem;
    line-height: 1.4;
  }
}

.eventStageCard__body {
  position: relative;
  display: grid;
  align-content: center;
  height: 100%;
  overflow: clip;
}

.eventStageCard__text {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 0.5rem;
  padding: 1rem 1.25rem;
}
@media screen and (max-width: 47.99em) {
  .eventStageCard__text {
    gap: 0.375rem;
    padding: 0.75rem 0.875rem 0.875rem;
  }
}

.eventStageCard__title {
  font-weight: 700;
  line-height: 1.4;
  color: transparent;
  background: linear-gradient(180deg, #fff 61.54%, #b0767a 100%);
  -webkit-background-clip: text;
          background-clip: text;
}
@media screen and (min-width: 48em), print {
  .eventStageCard__title {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .eventStageCard__title {
    font-size: 1.125rem;
    line-height: 1.35;
  }
}

.eventStageCard__description {
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.8;
}
@media screen and (min-width: 48em), print {
  .eventStageCard__description {
    font-size: 1rem;
  }
}
@media screen and (max-width: 47.99em) {
  .eventStageCard__description {
    font-size: 0.9375rem;
  }
}
.eventStageCard__description {
  font-family: var(--font-sans);
  letter-spacing: 0;
}
@media screen and (max-width: 47.99em) {
  .eventStageCard__description {
    font-size: 0.9375rem;
    line-height: 1.5;
  }
}

.eventStageCard__titleLine,
.eventStageCard__descriptionLine {
  display: block;
}

@media screen and (min-width: 48em), print {
  .eventStageCard__title--spOnlyBreak .eventStageCard__titleLine {
    display: inline;
  }
}
@media screen and (min-width: 48em) and (max-width: 59.99em) {
  .eventStageCard__title--spOnlyBreak .eventStageCard__titleLine {
    display: block;
  }
}

.eventStageCard__titleLine {
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
  background: linear-gradient(180deg, #fff 61.54%, #b0767a 100%);
  -webkit-background-clip: text;
          background-clip: text;
}

.eventStageCard__figures {
  display: flex;
}

.eventStageCard__figures--single {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
}

.eventStageCard__figure {
  height: 100%;
}
.eventStageCard__figure img {
  width: auto;
  height: 100%;
}
@media screen and (min-width: 48em), print {
  .eventStageCard__figure {
    transform: translateX(var(--event-stage-card-figure-offset-x, 0));
  }
}
@media screen and (min-width: 48em) and (max-width: 59.99em) {
  .eventStageCard__figure {
    opacity: 0.3;
    transform: translateX(0);
  }
}
@media screen and (max-width: 47.99em) {
  .eventStageCard__figure {
    height: 100%;
    opacity: 0.22;
  }
}

.eventStageCard--offlineFinal {
  background: linear-gradient(90deg, #003988 0%, #001c43 100%), #001c43;
}
.eventStageCard--offlineFinal::before {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  content: "";
  background: var(--event-stage-card-bg-texture) center/cover no-repeat;
  mix-blend-mode: multiply;
  opacity: 0.42;
}
.eventStageCard--offlineFinal .eventStageCard__schedule {
  display: grid;
  row-gap: 0.25rem;
  background: rgba(0, 0, 0, 0.6);
}
@media screen and (min-width: 48em) and (max-width: 59.99em) {
  .eventStageCard--offlineFinal .eventStageCard__body {
    display: grid;
    grid-template-columns: 26rem 1fr;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .eventStageCard--offlineFinal .eventStageCard__body {
    display: grid;
    row-gap: 0.38rem;
  }
}
.eventStageCard--offlineFinal .eventStageCard__label {
  height: auto;
}
.eventStageCard--offlineFinal .eventStageCard__text {
  gap: 0.25rem;
  align-content: center;
}
@media screen and (min-width: 48em), print {
  .eventStageCard--offlineFinal .eventStageCard__text {
    padding: 1.5rem 0 1.5rem 1.5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .eventStageCard--offlineFinal .eventStageCard__text {
    padding: 1rem 1rem 0;
  }
}
.eventStageCard--offlineFinal .eventStageCard__title {
  background: none;
}
@media screen and (min-width: 48em), print {
  .eventStageCard--offlineFinal .eventStageCard__title {
    display: grid;
    row-gap: 0.5rem;
    font-size: 2rem;
    line-height: 1;
  }
}
@media screen and (max-width: 47.99em) {
  .eventStageCard--offlineFinal .eventStageCard__title {
    display: grid;
    row-gap: 0.5rem;
    font-size: 1.125rem;
    line-height: 1.15;
  }
}
@media screen and (min-width: 48em), print {
  .eventStageCard--offlineFinal .eventStageCard__description {
    font-size: 1rem;
    line-height: 1.8;
  }
}
@media screen and (max-width: 47.99em) {
  .eventStageCard--offlineFinal .eventStageCard__description {
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}
.eventStageCard--offlineFinal .eventStageCard__figures {
  gap: 0.75rem;
  align-items: end;
  height: auto;
}
@media screen and (min-width: 48em), print {
  .eventStageCard--offlineFinal .eventStageCard__figures {
    position: absolute;
    right: 0;
    bottom: 0;
  }
}
@media screen and (min-width: 48em) and (max-width: 59.99em) {
  .eventStageCard--offlineFinal .eventStageCard__figures {
    position: static;
    display: grid;
    justify-items: end;
    padding-top: 0.75rem;
    padding-right: 1.5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .eventStageCard--offlineFinal .eventStageCard__figures {
    position: static;
    gap: 0.5rem;
    justify-content: center;
    padding-inline: 2.47rem;
  }
}
.eventStageCard--offlineFinal .eventStageCard__figure {
  height: auto;
}
@media screen and (min-width: 48em) and (max-width: 59.99em) {
  .eventStageCard--offlineFinal .eventStageCard__figure {
    opacity: 1;
  }
}
@media screen and (max-width: 47.99em) {
  .eventStageCard--offlineFinal .eventStageCard__figure {
    opacity: 1;
  }
}
.eventStageCard--offlineFinal .eventStageCard__figure img {
  display: block;
  width: 9.25rem;
  max-width: 100%;
  height: auto;
}
@media screen and (max-width: 47.99em) {
  .eventStageCard--offlineFinal .eventStageCard__titleLine {
    font-size: 1.5rem;
  }
}

.eventOverviewSection {
  background: radial-gradient(circle at center, rgba(38, 38, 38, 0.18) 0%, rgba(0, 0, 0, 0) 45%), #050505;
}

.eventOverviewSection__description {
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  text-shadow: 0 0 4px #000;
}
@media screen and (min-width: 48em), print {
  .eventOverviewSection__description {
    font-size: 1.125rem;
  }
}
@media screen and (max-width: 47.99em) {
  .eventOverviewSection__description {
    font-size: 0.9375rem;
  }
}

.eventOverviewSection__inner {
  display: grid;
}
@media screen and (min-width: 48em), print {
  .eventOverviewSection__inner {
    gap: 3.75rem;
    padding-top: 5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .eventOverviewSection__inner {
    gap: 1.5rem;
    padding-top: 3.5rem;
  }
}

.eventOverviewSection__list {
  display: grid;
  gap: 1.5rem;
}

.washizuRulesSection {
  position: relative;
}

.washizuRulesSection__inner {
  position: relative;
  z-index: 1;
}

.washizuRulesSection__header {
  max-width: 32.375rem;
}

.washizuRulesSection__eyebrow {
  display: grid;
  row-gap: 0.5rem;
  margin: 0;
  font-weight: 700;
  line-height: 1;
  color: var(--white);
}
@media screen and (min-width: 48em), print {
  .washizuRulesSection__eyebrow {
    font-size: 1rem;
  }
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__eyebrow {
    font-size: 0.75rem;
  }
}

.washizuRulesSection__divider {
  width: 100%;
  height: 1px;
  background: linear-gradient(90deg, rgba(192, 163, 0, 0.92) 0%, rgba(192, 163, 0, 0) 100%);
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__divider {
    max-width: 10.5rem;
  }
}

.washizuRulesSection__titleBlock {
  display: grid;
  gap: 0.5rem;
  margin-top: 1rem;
}

.washizuRulesSection__title,
.washizuRulesSection__subtitle {
  margin: 0;
  font-weight: 700;
  color: transparent;
  background: linear-gradient(180deg, #fff 0%, #fff 61.54%, #b0767a 100%);
  -webkit-background-clip: text;
          background-clip: text;
}

.washizuRulesSection__itemTitle span {
  color: transparent;
  background: linear-gradient(180deg, #fff 0%, #fff 61.54%, #b0767a 100%);
  -webkit-background-clip: text;
          background-clip: text;
}

.washizuRulesSection__title {
  line-height: 1;
}
@media screen and (min-width: 48em), print {
  .washizuRulesSection__title {
    font-size: 2.5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__title {
    font-size: 2rem;
  }
}
@media screen and (min-width: 48em), print {
  .washizuRulesSection__title span {
    font-size: 4rem;
  }
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__title span {
    font-size: 3rem;
  }
}

.washizuRulesSection__subtitle {
  line-height: 1.4;
}
@media screen and (min-width: 48em), print {
  .washizuRulesSection__subtitle {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__subtitle {
    font-size: 1.125rem;
  }
}

.washizuRulesSection__textBlock,
.washizuRulesSection__note {
  margin: 0;
  font-family: var(--font-sans);
  line-height: 1.8;
  color: var(--white);
  letter-spacing: 0.04em;
}

@media screen and (max-width: 47.99em) {
  .washizuRulesSection__textBlock {
    font-size: 0.9375rem;
  }
}

@media screen and (max-width: 47.99em) {
  .washizuRulesSection__textBlock,
  .washizuRulesSection__itemTitle {
    text-align: center;
  }
}

.washizuRulesSection__lead {
  margin-top: 1.5rem;
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (min-width: 48em), print {
  .washizuRulesSection__lead {
    font-size: 1.125rem;
  }
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__lead {
    font-size: 0.9375rem;
  }
}

@media screen and (min-width: 48em), print {
  .washizuRulesSection__leadBreak {
    display: none;
  }
}

@media screen and (min-width: 48em), print {
  .washizuRulesSection__textBreak {
    display: none;
  }
}

.washizuRulesSection__list {
  display: grid;
  gap: 3.75rem;
  padding: 0;
  margin: 0;
  margin-top: 3.3rem;
  list-style: none;
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__list {
    margin-top: 3rem;
  }
}

.washizuRulesSection__item {
  display: grid;
  align-items: start;
}
@media screen and (min-width: 48em), print {
  .washizuRulesSection__item {
    grid-template-areas: "visual content" "visual note";
    grid-template-rows: auto 1fr;
    grid-template-columns: 19.6875rem minmax(0, 1fr);
    row-gap: 0.25rem;
    -moz-column-gap: 2rem;
         column-gap: 2rem;
    padding-right: 3rem;
  }
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__item {
    grid-template-areas: "content" "visual" "note";
    gap: 1rem;
  }
}

.washizuRulesSection__visual {
  position: relative;
  grid-area: visual;
  width: min(100%, 19.6875rem);
  margin: 0;
  background: rgba(0, 0, 0, 0.48);
  box-shadow: 0 0 1.25rem rgba(230, 0, 18, 0.08);
}

@media screen and (min-width: 48em), print {
  .washizuRulesSection__item:nth-child(3) .washizuRulesSection__visual {
    margin-top: -2.25rem;
  }
}

.washizuRulesSection__image,
.washizuRulesSection__subImage {
  display: block;
}
.washizuRulesSection__image img,
.washizuRulesSection__subImage img {
  display: block;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

.washizuRulesSection__content {
  display: grid;
  grid-area: content;
}
@media screen and (min-width: 48em), print {
  .washizuRulesSection__content {
    gap: 1rem;
  }
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__content {
    gap: 0.5rem;
  }
}

.washizuRulesSection__headingRow {
  display: grid;
  gap: 0.75rem;
  align-items: center;
}
@media screen and (min-width: 48em), print {
  .washizuRulesSection__headingRow {
    grid-template-columns: auto minmax(0, 1fr);
  }
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__headingRow {
    justify-items: center;
  }
}

.washizuRulesSection__badge {
  position: relative;
  display: grid;
  place-items: center;
  width: 5.54rem;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__badge {
    width: 2.75rem;
    height: 2.75rem;
  }
}
.washizuRulesSection__badge::before {
  position: absolute;
  top: 1rem;
  left: 1rem;
  z-index: 1;
  width: 3.375rem;
  height: 3.375rem;
  content: "";
  border: 1px solid;
  -o-border-image: linear-gradient(90deg, #c0a300 0%, #f4e699 30.77%, #93811d 83.65%, #c0a300 100%);
     border-image: linear-gradient(90deg, #c0a300 0%, #f4e699 30.77%, #93811d 83.65%, #c0a300 100%);
  border-image-slice: 1;
  transform: rotate(45deg);
  transform-origin: center;
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__badge::before {
    top: 0.25rem;
    left: 0.25rem;
    width: 2.2rem;
    height: 2.2rem;
  }
}
.washizuRulesSection__badge::after {
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  width: 3.875rem;
  height: 3.875rem;
  content: "";
  background: rgba(230, 0, 18, 0.4);
  border: 1px solid;
  -o-border-image: linear-gradient(90deg, #c0a300 0%, #f4e699 30.77%, #93811d 83.65%, #c0a300 100%);
     border-image: linear-gradient(90deg, #c0a300 0%, #f4e699 30.77%, #93811d 83.65%, #c0a300 100%);
  border-image-slice: 1;
  transform: rotate(45deg);
  transform-origin: center;
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__badge::after {
    top: 0rem;
    left: 0rem;
    width: 2.7rem;
    height: 2.7rem;
  }
}

.washizuRulesSection__badgeImage {
  position: relative;
  z-index: 1;
  display: block;
  width: auto;
  height: 2.5rem;
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__badgeImage {
    height: 1.5rem;
  }
}

.washizuRulesSection__itemTitle {
  display: grid;
  gap: 0.25rem;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (min-width: 48em), print {
  .washizuRulesSection__itemTitle {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__itemTitle {
    font-size: 1.125rem;
  }
}

.washizuRulesSection__note {
  grid-area: note;
  font-size: 0.8125rem;
  color: rgba(255, 255, 255, 0.86);
}

@media screen and (max-width: 47.99em) {
  .washizuRulesSection {
    gap: 3rem;
  }
  .washizuRulesSection__list {
    gap: 2rem;
  }
  .washizuRulesSection__visual {
    justify-self: center;
    width: min(100%, 11.25rem);
  }
  .washizuRulesSection__subImage {
    top: -1.5rem;
    right: 2rem;
    width: 6.5rem;
  }
}
.washizuRulesSection__character {
  position: absolute;
  top: 2.7rem;
  right: -8.4rem;
  max-width: none;
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__character {
    top: 0;
    right: 1.7rem;
    width: 10.375rem;
  }
}

.washizuRulesSection__characterText {
  position: absolute;
  max-width: none;
}
@media screen and (min-width: 48em), print {
  .washizuRulesSection__characterText {
    top: -3.5rem;
    right: 0;
  }
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__characterText {
    top: 1rem;
    right: 0.5rem;
    width: 2.5rem;
  }
}

.washizuRulesSection__characterEffect {
  position: absolute;
  top: 41.5rem;
  right: -15.5rem;
  width: 95.8125rem;
  max-width: none;
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__characterEffect {
    display: none;
  }
}

.washizuRulesSection__characterShadow {
  position: absolute;
  top: 34rem;
  right: -12rem;
  width: 50.375rem;
  max-width: none;
  height: 38.5625rem;
  background: #000;
  border-radius: 50.375rem;
  opacity: 0.6;
  filter: blur(100px);
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__characterShadow {
    display: none;
  }
}

.washizuRulesSection__characterBg {
  position: absolute;
  opacity: 0.3;
}
@media screen and (min-width: 48em), print {
  .washizuRulesSection__characterBg {
    top: -5.5rem;
    right: 1.2rem;
    width: 45.1875rem;
  }
}
@media screen and (max-width: 47.99em) {
  .washizuRulesSection__characterBg {
    top: -3rem;
    right: -0.8rem;
    width: 20.5625rem;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .washizuRulesSection [data-scroll-fade].washizuRulesSection__characterBg,
  .washizuRulesSection [data-scroll-fade].washizuRulesSection__character,
  .washizuRulesSection [data-scroll-fade].washizuRulesSection__characterText {
    transform: none;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .washizuRulesSection [data-scroll-fade=show].washizuRulesSection__characterBg {
    animation: washizu-character-bg-fade-in 0.6s both;
    animation-delay: var(--scroll-delay, 0s);
  }
}

@media (prefers-reduced-motion: no-preference) {
  .washizuRulesSection [data-scroll-fade=show].washizuRulesSection__character,
  .washizuRulesSection [data-scroll-fade=show].washizuRulesSection__characterText {
    animation: washizu-character-fade-in 0.6s both;
    animation-delay: var(--scroll-delay, 0s);
  }
}

@keyframes washizu-character-bg-fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 0.3;
  }
}
@keyframes washizu-character-fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.tournamentRulesSectionSection {
  background: #000;
}
@media screen and (min-width: 48em), print {
  .tournamentRulesSectionSection {
    padding-top: 5rem;
    padding-bottom: 10rem;
  }
}
@media screen and (max-width: 47.99em) {
  .tournamentRulesSectionSection {
    padding-top: 2.5rem;
    padding-bottom: 5rem;
  }
}

.tournamentRulesSection__inner {
  position: relative;
  z-index: 1;
  padding-top: 0;
}

.tournamentRulesSection {
  display: grid;
  gap: 1.5rem;
  justify-items: center;
  width: min(100%, 45.5rem);
  margin-inline: auto;
}

.tournamentRulesSection__title {
  margin: 0;
  font-weight: 700;
  line-height: 1;
  color: transparent;
  text-align: center;
  background: linear-gradient(180deg, #fff 0%, #fff 61.54%, #b0767a 100%);
  -webkit-background-clip: text;
          background-clip: text;
}
@media screen and (min-width: 48em), print {
  .tournamentRulesSection__title {
    font-size: 2rem;
  }
}
@media screen and (max-width: 47.99em) {
  .tournamentRulesSection__title {
    font-size: 1.375rem;
  }
}

.tournamentRulesSection__cross {
  display: block;
}
.tournamentRulesSection__cross img {
  display: block;
  width: 100%;
  height: auto;
}
@media screen and (min-width: 48em), print {
  .tournamentRulesSection__cross {
    width: 1.397rem;
  }
}
@media screen and (max-width: 47.99em) {
  .tournamentRulesSection__cross {
    width: 1.125rem;
  }
}

.tournamentRulesSection__groups {
  display: grid;
  width: 100%;
}
@media screen and (min-width: 48em), print {
  .tournamentRulesSection__groups {
    gap: 1.5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .tournamentRulesSection__groups {
    gap: 2rem;
  }
}

.tournamentRulesSection__group {
  display: grid;
  gap: 0.5rem;
}

.tournamentRulesSection__groupTitle {
  display: grid;
  width: 100%;
  padding-bottom: 0.25rem;
  margin: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  color: #e60012;
  text-align: left;
  border-bottom: 1px solid #bf9f00;
}
@media screen and (min-width: 48em), print {
  .tournamentRulesSection__groupTitle {
    font-size: 1.125rem;
    line-height: 1.6;
    letter-spacing: 0.04em;
  }
}
@media screen and (max-width: 47.99em) {
  .tournamentRulesSection__groupTitle {
    font-size: 1rem;
    line-height: 1.7;
  }
}

.tournamentRulesSection__groupTitlePc,
.tournamentRulesSection__groupTitleSp {
  display: grid;
}

@media screen and (max-width: 47.99em) {
  .tournamentRulesSection__groupTitlePc {
    display: none;
  }
}

@media screen and (min-width: 48em), print {
  .tournamentRulesSection__groupTitleSp {
    display: none;
  }
}

.tournamentRulesSection__bulletList,
.tournamentRulesSection__progressList {
  margin: 0;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.8;
  color: rgba(255, 255, 255, 0.94);
  text-align: left;
}
@media screen and (min-width: 48em), print {
  .tournamentRulesSection__bulletList,
  .tournamentRulesSection__progressList {
    font-size: 1rem;
    letter-spacing: 0;
  }
}
@media screen and (max-width: 47.99em) {
  .tournamentRulesSection__bulletList,
  .tournamentRulesSection__progressList {
    font-size: 0.9375rem;
    letter-spacing: 0.04em;
  }
}

.tournamentRulesSection__bulletList {
  display: grid;
  padding-left: 1.3em;
  list-style: disc;
}
@media screen and (min-width: 48em), print {
  .tournamentRulesSection__bulletList {
    gap: 0.25rem;
  }
}

.tournamentRulesSection__bulletItem {
  margin: 0;
}
.tournamentRulesSection__bulletItem sup {
  font-size: 0.645em;
}

.tournamentRulesSection__progressList {
  display: grid;
  gap: 0;
}

.tournamentRulesSection__progressItem {
  margin: 0;
}

.tournamentRulesSection__progressLabel {
  font-weight: 700;
}

.tournamentRulesSection__note {
  margin: 0;
  font-family: "Noto Sans JP", sans-serif;
  color: var(--white);
}
@media screen and (min-width: 48em), print {
  .tournamentRulesSection__note {
    font-size: 0.8125rem;
    line-height: 1.7;
    letter-spacing: 0.04em;
  }
}
@media screen and (max-width: 47.99em) {
  .tournamentRulesSection__note {
    font-size: 0.8125rem;
    line-height: 1.7;
    letter-spacing: 0.04em;
  }
}

@media screen and (max-width: 47.99em) {
  .tournamentRulesSection {
    gap: 1.25rem;
  }
}
.section.noticeSection {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.section.noticeSection::before, .section.noticeSection::after {
  position: absolute;
  inset: 0;
  pointer-events: none;
  content: "";
}
.section.noticeSection::before {
  background: linear-gradient(270deg, #530005 0%, #0e004d 100%);
}
.section.noticeSection::after {
  background: var(--notice-section-bg-texture) center/cover no-repeat;
  mix-blend-mode: overlay;
  opacity: 0.3;
}
@media screen and (min-width: 48em), print {
  .section.noticeSection {
    padding-top: 5rem;
    padding-bottom: 10rem;
  }
}
@media screen and (max-width: 47.99em) {
  .section.noticeSection {
    padding-top: 4rem;
    padding-bottom: 7.5rem;
  }
}

.noticeSection__inner {
  position: relative;
  z-index: 1;
}

.noticeSection__content {
  display: grid;
  gap: 2.5rem;
  justify-items: center;
}

.noticeSection__title,
.noticeSection__list {
  position: relative;
  z-index: 1;
}

.noticeSection__title {
  margin: 0;
  font-family: var(--font-sans);
  font-weight: 700;
  color: #fff;
  text-align: center;
}
@media screen and (min-width: 48em), print {
  .noticeSection__title {
    font-size: 2rem;
    line-height: 1.45;
    letter-spacing: 0.04em;
  }
}
@media screen and (max-width: 47.99em) {
  .noticeSection__title {
    font-size: 1.375rem;
    line-height: 1.45;
    letter-spacing: 0.04em;
  }
}

.noticeSection__list {
  display: grid;
  width: min(100%, 60rem);
  color: #fff;
}
@media screen and (min-width: 48em), print {
  .noticeSection__list {
    gap: 1rem;
  }
}
@media screen and (max-width: 47.99em) {
  .noticeSection__list {
    gap: 1.5rem;
  }
}

.noticeSection__item {
  display: grid;
  gap: 0.5rem;
}

.noticeSection__itemTitle,
.noticeSection__body {
  margin: 0;
  font-family: var(--font-sans);
}

.noticeSection__itemTitle {
  font-weight: 700;
  color: #fff;
  text-align: center;
}
@media screen and (min-width: 48em), print {
  .noticeSection__itemTitle {
    font-size: 1.125rem;
    line-height: 1.6;
    letter-spacing: 0.04em;
  }
}
@media screen and (max-width: 47.99em) {
  .noticeSection__itemTitle {
    font-size: 1rem;
    line-height: 1.7;
  }
}

.noticeSection__body {
  font-weight: 400;
  color: #fff;
}
@media screen and (min-width: 48em), print {
  .noticeSection__body {
    font-size: 1rem;
    line-height: 1.8;
  }
}
@media screen and (max-width: 47.99em) {
  .noticeSection__body {
    font-size: 0.9375rem;
    line-height: 1.8;
  }
}

.finalBroadcastSection {
  z-index: 1;
  display: grid;
  gap: 1.5rem;
}
@media screen and (min-width: 48em), print {
  .finalBroadcastSection {
    width: min(100%, 32.375rem);
  }
}
@media screen and (max-width: 47.99em) {
  .finalBroadcastSection {
    gap: 2.3rem;
  }
}

.finalBroadcastSection__header {
  display: grid;
  gap: 1rem;
}

.finalBroadcastSection__eyebrow {
  display: grid;
  gap: 0.5rem;
}
.finalBroadcastSection__eyebrow p {
  margin: 0;
  font-weight: 700;
  line-height: 1;
  color: var(--white);
}
@media screen and (min-width: 48em), print {
  .finalBroadcastSection__eyebrow p {
    font-size: 1rem;
  }
}
@media screen and (max-width: 47.99em) {
  .finalBroadcastSection__eyebrow p {
    font-size: 0.875rem;
  }
}

.finalBroadcastSection__divider {
  width: 100%;
  height: 1px;
  background: linear-gradient(90deg, rgba(192, 163, 0, 0.92) 0%, rgba(192, 163, 0, 0) 100%);
}
@media screen and (max-width: 47.99em) {
  .finalBroadcastSection__divider {
    max-width: 10.5rem;
  }
}

.finalBroadcastSection__titleBlock {
  display: grid;
  gap: 0.5rem;
}

.finalBroadcastSection__title,
.finalBroadcastSection__subtitle {
  margin: 0;
  font-weight: 700;
  color: transparent;
  background: linear-gradient(180deg, #fff 0%, #fff 61.54%, #b0767a 100%);
  -webkit-background-clip: text;
  background-clip: text;
}

.finalBroadcastSection__title {
  line-height: 1;
}
@media screen and (min-width: 48em), print {
  .finalBroadcastSection__title {
    font-size: 2.5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .finalBroadcastSection__title {
    font-size: 2rem;
  }
}
@media screen and (min-width: 48em), print {
  .finalBroadcastSection__title span {
    font-size: 4rem;
  }
}
@media screen and (max-width: 47.99em) {
  .finalBroadcastSection__title span {
    font-size: 3rem;
  }
}

.finalBroadcastSection__subtitle {
  line-height: 1.4;
}
@media screen and (min-width: 48em), print {
  .finalBroadcastSection__subtitle {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .finalBroadcastSection__subtitle {
    font-size: 1.125rem;
  }
}

.finalBroadcastSection__titleBlock {
  display: grid;
  gap: 0.5rem;
}

.finalBroadcastSection__body {
  display: grid;
  gap: 1rem;
}

.finalBroadcastSection__description,
.finalBroadcastSection__streamingLead {
  margin: 0;
  font-family: var(--font-sans);
  line-height: 1.8;
  color: var(--white);
  letter-spacing: 0.04em;
}

.finalBroadcastSection__description {
  font-size: 1rem;
}
@media screen and (max-width: 47.99em) {
  .finalBroadcastSection__description {
    font-size: 0.875rem;
  }
}

.finalBroadcastSection__descriptionBreak {
  display: none;
}
@media screen and (max-width: 47.99em) {
  .finalBroadcastSection__descriptionBreak {
    display: block;
  }
}

.finalBroadcastSection__streaming {
  display: grid;
  gap: 0.5rem;
}

.finalBroadcastSection__streamingLead {
  position: relative;
  justify-self: center;
  padding-inline: 1.25rem;
  font-size: 0.8125rem;
}
@media screen and (max-width: 47.99em) {
  .finalBroadcastSection__streamingLead {
    font-size: 0.75rem;
  }
}

.finalBroadcastSection__streamingLead::before,
.finalBroadcastSection__streamingLead::after {
  position: absolute;
  top: 30%;
  width: 1.25rem;
  height: 1rem;
  content: "";
  border-top: 1px solid #fff;
}

.finalBroadcastSection__streamingLead::before {
  left: 0;
  transform: translateY(-50%) rotate(58deg);
  transform-origin: left center;
}

.finalBroadcastSection__streamingLead::after {
  right: 0;
  transform: translateY(-50%) rotate(-58deg);
  transform-origin: right center;
}

.finalBroadcastSection__platformList {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  padding: 0;
  margin: 0;
  list-style: none;
}

.finalBroadcastSection__platformItem a {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, 0.88);
  border-radius: 999px;
  transition: opacity 0.3s;
}
@media screen and (min-width: 48em), print {
  .finalBroadcastSection__platformItem a {
    min-height: 3.3125rem;
    padding: 0.75rem 1.25rem;
  }
}
@media screen and (max-width: 47.99em) {
  .finalBroadcastSection__platformItem a {
    min-height: 2.875rem;
    padding: 0.5rem 1.25rem;
  }
}
@media (hover: hover) {
  .finalBroadcastSection__platformItem a:where(:-moz-any-link, :enabled, summary):hover {
    opacity: 0.7;
  }
  .finalBroadcastSection__platformItem a:where(:any-link, :enabled, summary):hover {
    opacity: 0.7;
  }
}

.finalBroadcastSection__platformIcon {
  display: block;
}
.finalBroadcastSection__platformIcon img {
  display: block;
  width: auto;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.finalBroadcastSection__platformIcon--youtube img {
  width: 1.784375rem;
}

@media screen and (max-width: 47.99em) {
  .finalBroadcastSection {
    width: 100%;
  }
  .finalBroadcastSection__header {
    gap: 1rem;
  }
  .finalBroadcastSection__platformList {
    gap: 0.75rem;
  }
}
.snsCampaignSection {
  display: grid;
  gap: 1.5rem;
  background: linear-gradient(117deg, rgba(0, 57, 136, 0.4) 0%, rgba(0, 28, 67, 0.4) 100%);
  border: 1px solid rgba(255, 255, 255, 0.4);
  backdrop-filter: blur(1.25rem);
}
@media screen and (min-width: 48em), print {
  .snsCampaignSection {
    width: min(100%, 32.375rem);
    padding: 2rem;
  }
}
@media screen and (max-width: 47.99em) {
  .snsCampaignSection {
    padding: 1.25rem 0.75rem;
  }
}

.snsCampaignSection__content {
  display: grid;
  gap: 1rem;
}

.snsCampaignSection__title {
  margin: 0;
  font-weight: 700;
  line-height: 1.4;
  color: transparent;
  text-align: center;
  background: linear-gradient(180deg, #fff 0%, #fff 61.54%, #b0767a 100%);
  -webkit-background-clip: text;
  background-clip: text;
}
@media screen and (min-width: 48em), print {
  .snsCampaignSection__title {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 47.99em) {
  .snsCampaignSection__title {
    font-size: 1rem;
  }
}

.snsCampaignSection__banners {
  display: grid;
  gap: 1rem;
}

.snsCampaignSection__banner {
  display: block;
}
.snsCampaignSection__banner img {
  display: block;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

.snsCampaignSection__placeholder {
  display: grid;
  align-items: center;
  justify-content: center;
  min-height: 15.9375rem;
  background: #c4c4c4;
}
@media screen and (min-width: 48em), print {
  .snsCampaignSection__placeholder {
    width: 28.375rem;
  }
}
@media screen and (max-width: 47.99em) {
  .snsCampaignSection__placeholder {
    width: 100%;
    min-height: 14rem;
  }
}

.snsCampaignSection__account {
  display: flex;
  gap: 0.75rem;
  align-items: center;
  justify-content: center;
  min-height: 3.3125rem;
  padding: 0.75rem 1.5rem;
  margin-inline: auto;
  font-family: var(--font-sans);
  color: var(--white);
  text-decoration: none;
  border: 1px solid rgba(255, 255, 255, 0.88);
  border-radius: 999px;
  transition: opacity 0.3s;
}
.snsCampaignSection__account span {
  width: calc(100% - 2rem);
  text-align: center;
}
@media screen and (min-width: 48em), print {
  .snsCampaignSection__account {
    width: min(100%, 17.5rem);
  }
}
@media screen and (max-width: 47.99em) {
  .snsCampaignSection__account {
    width: 100%;
  }
}
@media (hover: hover) {
  .snsCampaignSection__account:where(:-moz-any-link, :enabled, summary):hover {
    opacity: 0.7;
  }
  .snsCampaignSection__account:where(:any-link, :enabled, summary):hover {
    opacity: 0.7;
  }
}

.snsCampaignSection__accountIcon {
  display: block;
}
.snsCampaignSection__accountIcon img {
  display: block;
  width: 1.25rem;
  height: 1.25rem;
  -o-object-fit: contain;
     object-fit: contain;
}

.snsCampaignSection__account span {
  line-height: 1.8;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 48em), print {
  .snsCampaignSection__account span {
    font-size: 1rem;
  }
}
@media screen and (max-width: 47.99em) {
  .snsCampaignSection__account span {
    font-size: 0.9375rem;
  }
}

.broadcast {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 48em), print {
  .broadcast {
    display: grid;
    grid-template-columns: 1fr 32.375rem;
  }
}

.broadcast__content {
  display: grid;
  row-gap: 5rem;
  justify-items: end;
}
@media screen and (max-width: 47.99em) {
  .broadcast__content {
    row-gap: 2.5rem;
  }
}

.broadcast__characterWrapper {
  align-self: start;
  width: 100%;
  height: 59rem;
}
@media screen and (min-width: 48em), print {
  .broadcast__characterWrapper {
    position: sticky;
    top: 0;
    left: 0;
  }
}
@media screen and (max-width: 47.99em) {
  .broadcast__characterWrapper {
    position: absolute;
    top: 0;
    left: 0;
  }
}

.broadcast__character {
  position: absolute;
  max-width: none;
}
@media screen and (min-width: 48em), print {
  .broadcast__character {
    top: 5.8rem;
    left: 3rem;
  }
}
@media screen and (max-width: 47.99em) {
  .broadcast__character {
    top: -3.4rem;
    right: 2.3rem;
    width: 10.2rem;
  }
}

.broadcast__characterText {
  position: absolute;
  max-width: none;
}
@media screen and (min-width: 48em), print {
  .broadcast__characterText {
    top: -3.5rem;
    left: 0;
  }
}
@media screen and (max-width: 47.99em) {
  .broadcast__characterText {
    top: -1.3rem;
    right: -0.7rem;
    width: 4.4rem;
  }
}

.broadcast__characterEffect {
  position: absolute;
  top: 20.5rem;
  left: -14.5rem;
  width: 95.8125rem;
  max-width: none;
}
@media screen and (max-width: 47.99em) {
  .broadcast__characterEffect {
    display: none;
  }
}

.broadcast__characterShadow {
  position: absolute;
  top: 34rem;
  left: -12rem;
  width: 50.375rem;
  max-width: none;
  height: 38.5625rem;
  background: #000;
  border-radius: 50.375rem;
  opacity: 0.6;
  filter: blur(100px);
}
@media screen and (max-width: 47.99em) {
  .broadcast__characterShadow {
    display: none;
  }
}

.broadcast__characterBg {
  position: absolute;
  max-width: none;
  opacity: 0.2;
}
@media screen and (min-width: 48em), print {
  .broadcast__characterBg {
    top: -9.1rem;
    left: -9.8rem;
    width: 52.625rem;
  }
}
@media screen and (max-width: 47.99em) {
  .broadcast__characterBg {
    top: -7.8rem;
    right: 2.2rem;
    width: 17.1875rem;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .broadcast [data-scroll-fade].broadcast__characterBg,
  .broadcast [data-scroll-fade].broadcast__character,
  .broadcast [data-scroll-fade].broadcast__characterText {
    transform: none;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .broadcast [data-scroll-fade=show].broadcast__characterBg {
    animation: broadcast-character-bg-fade-in 0.6s both;
    animation-delay: var(--scroll-delay, 0s);
  }
}

@media (prefers-reduced-motion: no-preference) {
  .broadcast [data-scroll-fade=show].broadcast__character,
  .broadcast [data-scroll-fade=show].broadcast__characterText {
    animation: broadcast-character-fade-in 0.6s both;
    animation-delay: var(--scroll-delay, 0s);
  }
}

@keyframes broadcast-character-bg-fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 0.2;
  }
}
@keyframes broadcast-character-fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@media screen and (max-width: 47.99em) {
  .broadcast {
    gap: 2rem;
  }
}
@media (prefers-reduced-motion: no-preference) {
  [data-scroll-fade] {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
    transition-duration: 0.5s;
    transition-property: transform, opacity;
  }
  [data-scroll-fade][data-scroll-fade=show] {
    animation: fade-in 0.5s both;
    animation-delay: var(--scroll-delay, 0s);
  }
}

@media (prefers-reduced-motion: no-preference) {
  [data-scroll-image] {
    opacity: 0;
  }
  [data-scroll-image][data-scroll-image=show] {
    animation: image-fade-in 0.5s both;
    animation-delay: calc(0.4s + var(--scroll-delay, 0s));
  }
}

@keyframes image-fade-in {
  0% {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
  }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fade-in {
  0% {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
  }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
[data-scroll-text] {
  position: relative;
  clip-path: inset(0 100% 0 0);
}
[data-scroll-text]::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  background: var(--blue_02);
}
[data-scroll-text][data-scroll-text=show] {
  clip-path: inset(0 0 0 0);
  transition: clip-path 0.8s var(--scroll-delay, 0s) cubic-bezier(0.85, 0, 0.15, 1);
}
[data-scroll-text][data-scroll-text=show]::after {
  transform: scaleX(0);
  transform-origin: 100% 0;
  transition: transform 0.8s calc(0.4s + var(--scroll-delay, 0s)) cubic-bezier(0.85, 0, 0.15, 1);
}

[data-scroll-hint] {
  overflow-x: auto;
}.akagiPage {
  background: #000;
}

.akagiPage__specialInner {
  position: relative;
  z-index: 3;
  display: grid;
  gap: 14rem;
  padding-top: 6rem;
  padding-bottom: 7.5rem;
}
@media screen and (max-width: 47.99em) {
  .akagiPage__specialInner {
    gap: 6.8rem;
    padding-top: 4.5rem;
    padding-bottom: 2rem;
  }
}

.akagiPage__specialSection {
  position: relative;
  overflow: clip;
  background: #040404;
}
@media screen and (max-width: 47.99em) {
  .akagiPage__specialSection {
    padding-bottom: 3rem;
  }
}
.akagiPage__specialSection::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  width: 100%;
  height: 7.5rem;
  content: "";
  background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, #000 100%);
  transform: translateY(-15%);
}
.akagiPage__specialSection::after {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 3;
  width: 100%;
  height: 7.5rem;
  content: "";
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000 100%);
}

.akagiPage__specialSectionBg {
  position: absolute;
  inset: 0;
}
.akagiPage__specialSectionBg::before, .akagiPage__specialSectionBg::after {
  position: absolute;
  inset: 0;
  pointer-events: none;
  content: "";
}
.akagiPage__specialSectionBg::before {
  z-index: 2;
  background: var(--akagi-special-bg-texture) center/cover no-repeat;
  opacity: 0.2;
}
.akagiPage__specialSectionBg::after {
  z-index: 1;
  background: radial-gradient(circle at 50% 50%, rgba(18, 18, 18, 0.12) 0%, rgba(8, 8, 8, 0.36) 42%, rgba(4, 4, 4, 0.82) 100%), linear-gradient(180deg, rgba(14, 14, 14, 0.9) 0%, rgba(4, 4, 4, 0.98) 100%);
  mix-blend-mode: overlay;
}

.akagiPage__sectionBlock {
  display: grid;
  gap: 2rem;
}