@charset "UTF-8";

/*! kiso.css v1.2.2 | MIT License | https://github.com/tak-dcxi/kiso.css */
*, :before, :after {
  box-sizing: border-box
}

:where(:root) {
  font-family: sans-serif;
  line-height: 1.5;
  text-spacing-trim: trim-start;
  text-autospace: normal;
  line-break: strict;
  overflow-wrap: anywhere;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  scrollbar-gutter: stable;
  -webkit-tap-highlight-color: transparent
}

:where(body) {
  min-block-size: 100dvb;
  margin: unset
}

:where(h1, h2, h3, h4, h5, h6) {
  text-wrap: pretty
}

:where(h1) {
  margin-block: .67em;
  font-size: 2em
}

:where(h2, h3, h4, h5, h6) {
  margin-block: unset
}

:where(search) {
  display: block flow
}

:where(p, blockquote, figure, pre, address, ul, ol, dl, menu) {
  margin-block: unset
}

:where(blockquote, figure) {
  margin-inline: unset
}

:where(p:lang(en)) {
  text-wrap: pretty
}

:where(address:lang(ja)) {
  font-style: unset
}

:where(ul, ol, menu) {
  padding-inline-start: unset;
  list-style-type: ""
}

:where(dt) {
  font-weight: bolder
}

:where(dd) {
  margin-inline-start: unset
}

:where(pre) {
  text-spacing-trim: space-all;
  text-autospace: no-autospace
}

:where(em:lang(ja)) {
  font-weight: bolder
}

:where(:is(i, cite, em, dfn, var):lang(ja)) {
  font-style: unset
}

:where(code, kbd, samp) {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;
  font-feature-settings: initial;
  font-variation-settings: initial;
  font-size: unset;
  font-variant-ligatures: none
}

:where(abbr[title]) {
  text-decoration-line: underline;
  text-decoration-style: dotted;
  cursor: help
}

:where(time) {
  text-autospace: no-autospace
}

:where(a:-moz-any-link) {
  color: unset;
  text-decoration-line: unset;
  text-decoration-thickness: from-font
}

:where(a:any-link) {
  color: unset;
  text-decoration-line: unset;
  text-decoration-thickness: from-font
}

:where(img, svg, picture, video, canvas, model, audio, iframe, embed, object) {
  block-size: auto;
  max-inline-size: 100%;
  vertical-align: bottom
}

:where(iframe) {
  border: unset
}

:where(table) {
  border-collapse: collapse
}

:where(caption, th) {
  text-align: unset
}

:where(caption) {
  text-wrap: pretty
}

:where(button, input, select, textarea), ::file-selector-button {
  border-width: 1px;
  border-style: solid;
  border-color: unset;
  border-radius: unset;
  color: unset;
  font: unset;
  letter-spacing: unset;
  text-align: unset
}

:where(input:is([type=radio i], [type=checkbox i])) {
  margin: unset
}

:where(input[type=file i]) {
  border: unset
}

:where(input[type=search i]) {
  -webkit-appearance: textfield
}

@supports (-webkit-touch-callout: none) {
  :where(input[type=search i]) {
    background-color: Canvas
  }
}

:where(input:is([type=tel i], [type=url i], [type=email i], [type=number i]):not(:-moz-placeholder)) {
  direction: ltr
}

:where(input:is([type=tel i], [type=url i], [type=email i], [type=number i]):not(:placeholder-shown)) {
  direction: ltr
}

:where(textarea) {
  margin-block: unset;
  resize: block
}

:where(input:not([type=button i], [type=submit i], [type=reset i]), textarea, [contenteditable]) {
  text-autospace: no-autospace
}

:where(button, input:is([type=button i], [type=submit i], [type=reset i])), ::file-selector-button {
  background-color: unset
}

:where(button, input:is([type=button i], [type=submit i], [type=reset i]), [role=tab i], [role=button i], [role=option i]), ::file-selector-button {
  touch-action: manipulation
}

:where(button:enabled, label[for], select:enabled, input:is([type=button i], [type=submit i], [type=reset i], [type=radio i], [type=checkbox i]):enabled, [role=tab i], [role=button i], [role=option i]), :where(:enabled)::file-selector-button {
  cursor: pointer
}

:where(fieldset) {
  min-inline-size: 0;
  margin-inline: unset;
  padding: unset;
  border: unset
}

:where(legend) {
  padding-inline: unset
}

:where(progress) {
  vertical-align: unset
}

::-moz-placeholder {
  opacity: unset
}

::placeholder {
  opacity: unset
}

:where(summary) {
  list-style-type: "";
  cursor: pointer
}

:where(summary)::-webkit-details-marker {
  display: none
}

:where(dialog, [popover]) {
  overscroll-behavior-block: contain;
  padding: unset;
  border: unset
}

:where(dialog:not([open], [popover]), [popover]:not(:popover-open)) {
  display: none !important
}

:where(dialog) {
  max-inline-size: unset;
  max-block-size: unset
}

:where(dialog)::backdrop {
  background-color: #0000004d
}

:where([popover]) {
  margin: unset
}

:where(:focus-visible) {
  outline-offset: 3px
}

[tabindex="-1"]:focus {
  outline: none !important
}

:where(:disabled, [aria-disabled=true i]) {
  cursor: default
}

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

img {
  overflow-clip-margin: unset;
  display: block;
  width: 100%
}

button {
  border-width: 0;
  padding: 0
}

h1 {
  margin-block: unset
}

:root {
  --desigh-width: 375;
  --base-font-family: "Noto Sans JP", sans-serif;
  --font-mono: "Spline Sans Mono", monospace;
  --font-rye: "Rye", serif;
  --font-serif: "Noto Serif JP", serif;
  --font-rocknroll: "RocknRoll One", sans-serif;
  --font-lobster: "Lobster", cursive;
  --fw-normal: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --fw-black: 900;
  --color-white: #ffffff;
  --color-gold: #c59a61;
  --color-beige: #f2eadf;
  --color-brown: #3e1a0a;
  --color-dark-brown: #40220f;
  --color-blue: #00478e;
  --color-orange: #e68100;
  --inner: 33.75rem;
  --inner-padding: 1rem;
  --hover-transition: .3s ease-in-out;
  --border: 1px solid #ccc
}

html {
  font-size: 16px
}

body {
  container-type: inline-size;
  display: grid;
  grid-template-rows: 1fr auto;
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  font-family: var(--base-font-family);
  line-height: 1.5;
  color: #3e1a0a
}

body>* {
  min-width: 0
}

a {
  transition: opacity var(--hover-transition)
}

a:not([class]) {
  text-decoration: underline
}

a:focus-visible {
  opacity: .7
}

.l-bg {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1
}

.l-bg img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 100vh;
  -o-object-fit: cover;
  object-fit: cover
}

.l-common-space {
  padding-block: 6.375rem 2.6875rem
}

.l-drawer {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
  display: flex;
  overflow: hidden
}

.l-footer {
  position: relative;
  z-index: 1;
  margin-block-start: -6.25rem
}

.l-header {
  position: fixed;
  top: .25rem;
  right: .25rem;
  z-index: 1000;
  transition: opacity .4s ease-out, visibility .4s ease-out
}

.l-header.is-top-hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none
}

.l-header.is-top-hidden.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto
}

.l-inner {
  margin-inline: auto;
  max-width: calc(var(--inner) + var(--inner-padding) * 2);
  width: 100%;
  padding-inline: var(--inner-padding)
}

.l-top-intro {
  position: relative;
  overflow: hidden
}

.l-top-mv {
  height: calc(100vh - var(--header-height))
}

.l-top-news {
  margin-top: -3.125rem
}

.l-top-schedule {
  margin-top: -5.3125rem
}

.c-heading-group {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  gap: .25rem
}

.c-heading-group__ja {
  display: flex;
  align-items: center;
  gap: .5rem;
  font-size: 2rem;
  font-weight: 900;
  color: var(--color-brown);
  letter-spacing: 0;
  text-align: center;
  line-height: 1;
  white-space: nowrap
}

.c-heading-group__ja:before, .c-heading-group__ja:after {
  content: "";
  display: block;
  width: 2.4375rem;
  height: 1.25rem;
  -webkit-mask-image: url(../images/icon_dragon-y7e5mAFc.svg);
  mask-image: url(../images/icon_dragon-y7e5mAFc.svg);
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  background-color: #beac99
}

.c-heading-group__ja:after {
  transform: scaleX(-1)
}

.c-heading-group__en {
  font-family: var(--font-lobster);
  font-size: .875rem;
  font-weight: var(--fw-normal);
  color: #beac99;
  letter-spacing: .2em;
  text-align: center;
  line-height: 1
}

.c-link {
  color: var(--color-orange);
  text-decoration: none;
  border-bottom: .125rem solid var(--color-orange);
  font-weight: var(--fw-bold);
  transition: opacity var(--hover-transition)
}

.c-link__icon {
  display: inline-block;
  width: .75rem;
  height: .75rem;
  margin-inline-start: .25rem;
  -webkit-mask-image: url(../images/icon_blank-B8-Ri9M-.svg);
  mask-image: url(../images/icon_blank-B8-Ri9M-.svg);
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  background-color: currentColor
}

.c-link:focus-visible {
  opacity: .7
}

.c-link__icon:focus-visible {
  opacity: .7
}

.c-main-heading {
  --text-color: #3e1a0a;
  --bg-icon-color: #3e1a0a;
  --padding-top: 0rem;
  --padding-bottom: 0rem;
  position: relative;
  padding-top: var(--padding-top);
  padding-bottom: var(--padding-bottom);
  z-index: 1
}

.c-main-heading[data-page=top-news] {
  --bg-color: #eac48f;
  --text-color: #fff;
  --bg-icon-color: #fff;
  --padding-top: .75rem
}

.c-main-heading[data-page=top-news] .c-main-heading__en, .c-main-heading[data-page=top-venue] .c-main-heading__en, .c-main-heading[data-page=top-schedule] .c-main-heading__en {
  letter-spacing: .05em
}

.c-main-heading[data-page=top-venue] {
  --bg-color: #74b4c7;
  --text-color: #fff;
  --bg-icon-color: #fff;
  --padding-top: .75rem
}

.c-main-heading[data-page=top-schedule] {
  --bg-color: #eac48f;
  --padding-top: .75rem
}

.c-main-heading[data-page=footer] {
  --bg-color: #eac48f;
  --text-color: #fff;
  --bg-icon-color: #fff;
  --padding-top: .75rem
}

.c-main-heading[data-page=tournaments] {
  --bg-color: #bd736d
}

.c-main-heading[data-page=guests] {
  --bg-color: #baa668
}

.c-main-heading[data-page=shops] {
  --bg-color: #9dba6d
}

.c-main-heading[data-page=notes] {
  --bg-color: #7697b4
}

.c-main-heading:before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%);
  -webkit-mask-image: url(../images/icon_sun-Bknjvp7f.svg);
  mask-image: url(../images/icon_sun-Bknjvp7f.svg);
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  background-color: var(--bg-color);
  width: 5.625rem;
  height: 3.75rem;
  z-index: -1
}

.c-main-heading__text-year {
  font-size: 1rem;
  font-weight: var(--fw-bold);
  color: var(--text-color, #40220f);
  line-height: 1
}

.c-main-heading__group {
  text-align: center
}

.c-main-heading__en {
  display: inline-grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  justify-items: center;
  font-family: var(--font-lobster);
  font-size: 3rem;
  font-weight: var(--fw-normal);
  color: var(--text-color, #40220f);
  letter-spacing: 0;
  line-height: 1;
  transform: skew(-6.16deg)
}

.c-main-heading[data-page=footer] .c-main-heading__en {
  letter-spacing: .07em
}

.c-main-heading__en:before {
  content: "";
  display: block;
  -webkit-mask-image: url(../images/icon_dia-star_left-DGdYCesZ.svg);
  mask-image: url(../images/icon_dia-star_left-DGdYCesZ.svg);
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  background-color: var(--bg-icon-color, #40220f);
  width: 1.0625rem;
  height: 3rem;
  transform: skew(6.16deg)
}

.c-main-heading__en:after {
  content: "";
  display: block;
  -webkit-mask-image: url(../images/icon_dia-star_right-BeOV9pUX.svg);
  mask-image: url(../images/icon_dia-star_right-BeOV9pUX.svg);
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  background-color: var(--bg-icon-color, #40220f);
  width: 1.0625rem;
  height: 3rem;
  transform: skew(6.16deg)
}

.c-main-heading__ja {
  font-size: 1rem;
  font-family: var(--font-rocknroll);
  font-weight: 400;
  color: var(--text-color, #40220f);
  letter-spacing: .3em;
  line-height: 1;
  text-align: center;
  margin-block-start: .3125rem
}

.c-menu-button {
  position: relative;
  transition: filter .3s ease-out
}

.c-menu-button span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  width: 2rem;
  height: 3px;
  background-color: transparent;
  transition: background-color .3s ease-out
}

.c-menu-button span:before, .c-menu-button span:after {
  position: absolute;
  display: block;
  width: 100%;
  height: 3px;
  background-color: #dbb481;
  border-radius: 100vw;
  content: "";
  transition: transform .3s ease-out
}

.c-menu-button span:before {
  transform: translateY(-.3125rem)
}

.c-menu-button span:after {
  transform: translateY(.3125rem)
}

.c-menu-button[aria-expanded=true] span {
  background-color: transparent
}

.c-menu-button[aria-expanded=true] span:before {
  transform: translateY(0) rotate(30deg)
}

.c-menu-button[aria-expanded=true] span:after {
  transform: translateY(0) rotate(-30deg)
}

.c-menu-button:focus-visible {
  opacity: 1;
  filter: brightness(1.2)
}

.c-section-heading__group {
  display: flex;
  flex-direction: column;
  align-items: center
}

.c-section-heading__en {
  font-family: var(--font-rye);
  font-size: 3rem;
  font-weight: 400;
  color: #fffff4;
  line-height: 1;
  letter-spacing: .1em;
  text-shadow: 0 0 1.25rem rgba(0, 108, 128, .5)
}

.c-section-heading__ja {
  font-size: 1rem;
  color: #fffff4;
  line-height: 1;
  letter-spacing: .78em;
  text-shadow: 0 0 .5rem rgba(0, 108, 128, .5)
}

.p-drawer {
  opacity: 0;
  pointer-events: none;
  transition: opacity .3s ease-out
}

.p-drawer[aria-hidden=false] {
  opacity: 1;
  pointer-events: all
}

.p-drawer__panel {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 7.3125rem 1.875rem;
  overflow-x: hidden;
  background-color: #f1e8db;
  background-image: url(../images/bg_drawer_sp-BkarJmEi.png);
  background-image: image-set(url(../images/bg_drawer_sp-BkarJmEi.avif) type("image/avif"), url(../images/bg_drawer_sp-BkarJmEi.png) type("image/jpeg"));
  ;
  background-size: cover;
  background-position: right center;
  overflow-y: auto;
  transform: translate(100%);
  transition: transform .3s ease-out
}

.p-drawer[aria-hidden=false] .p-drawer__panel {
  transform: translate(0)
}

.p-drawer__nav {
  width: 100%
}

.p-drawer__nav-items {
  display: flex;
  flex-direction: column;
  gap: 2.125rem
}

.p-drawer__nav-item-link {
  display: flex;
  gap: 1rem;
  align-items: center;
  text-decoration: none;
  color: var(--color-dark-brown);
  transition: color .3s ease-out
}

.p-drawer__nav-icon {
  flex-shrink: 0;
  width: 1.625rem;
  height: 1.625rem
}

.p-drawer__nav-text {
  font-family: var(--font-serif);
  font-weight: var(--fw-black);
  font-size: 2rem;
  letter-spacing: .1em;
  line-height: 1
}

.p-drawer__logo {
  width: 100%;
  margin-block-start: 2.5rem
}

.p-drawer__logo img {
  display: block;
  width: 100%;
  height: auto;
  transition: filter .3s ease-out
}

.p-drawer__share {
  display: flex;
  gap: 1rem;
  align-items: stretch;
  width: 100%;
  margin-block-start: 2.5rem
}

.p-drawer__share-x {
  display: flex;
  gap: .5rem;
  align-items: center;
  justify-content: center;
  width: 18.875rem;
  background-color: #000;
  border-radius: 1.75rem;
  color: var(--color-white);
  font-family: var(--base-font-family);
  font-weight: var(--fw-bold);
  font-size: 1.25rem;
  line-height: 1
}

.p-drawer__share-x img {
  width: 1.75rem;
  height: auto
}

.p-drawer__share-copy {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.5rem;
  height: 3.5rem;
  background-color: #e09835;
  border-radius: .25rem;
  cursor: pointer
}

.p-drawer__share-copy img {
  width: 1.5rem;
  height: auto
}

.p-drawer__share-copy-group {
  position: relative
}

.p-drawer__copy-message {
  position: absolute;
  top: calc(100% + .5rem);
  left: 50%;
  transform: translate(-50%);
  white-space: nowrap;
  font-family: var(--base-font-family);
  font-weight: var(--fw-normal);
  font-size: .75rem;
  color: var(--color-dark-brown);
  text-align: center;
  opacity: 0;
  transition: opacity .3s ease-out
}

.p-drawer__copy-message.is-visible {
  opacity: 1
}

.p-drawer__share-x:focus-visible {
  outline: .125rem solid var(--color-dark-brown);
  outline-offset: .125rem
}

.p-drawer__share-copy:focus-visible {
  outline: .125rem solid #e09835;
  outline-offset: .125rem
}

.p-footer {
  position: relative;
  padding-block: 2.1875rem 3.75rem;
  z-index: 1;
  overflow: hidden
}

.p-footer:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: url(../images/bg_footer_sp-Cfk6V3hq.png);
  background-image: image-set(url(../images/bg_footer_sp-Cfk6V3hq.avif) type("image/avif"), url(../images/bg_footer_sp-Cfk6V3hq.png) type("image/jpeg"));
  ;
  background-size: 100% 100%;
  background-position: top center;
  background-repeat: no-repeat
}

.p-footer:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: linear-gradient(180deg, #fff0, #fffc)
}

@keyframes ticker-to-right-sp {
  0% {
    background-position-x: 0
  }

  to {
    background-position-x: 521px
  }
}

@keyframes ticker-to-right-pc {
  0% {
    background-position-x: 0
  }

  to {
    background-position-x: 3652px
  }
}

.p-footer__menu-inner {
  position: relative
}

.p-footer__ticker {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 5rem;
  z-index: -1
}

.p-footer__ticker img {
  display: none
}

.p-footer__ticker:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: url(../images/bg_footer_text-Cn1_VRIg.png);
  background-size: 521px 100%;
  background-repeat: repeat-x;
  background-position-x: 0;
  animation: ticker-to-right-sp 30s linear infinite
}

.p-footer__inner {
  position: relative;
  z-index: 1;
  padding-inline: 2rem
}

.p-footer__wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4.125rem;
  margin-block-start: 1.9375rem
}

.p-footer__nav-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  margin-block-start: 1.875rem
}

.p-footer__nav-link {
  display: block;
  width: min(21.875rem, 100%);
  margin-inline: auto
}

.p-footer__nav-link img {
  filter: drop-shadow(0 0 1rem rgba(0, 0, 0, .25));
  transition: transform .3s ease, filter .3s ease;
  will-change: transform
}

.p-footer__bottom {
  text-align: center
}

.p-footer__policy-link {
  display: inline-flex;
  align-items: center;
  gap: .25rem;
  border-bottom: .0625rem solid var(--color-dark-brown);
  transition: border-color .3s ease-out
}

.p-footer__policy-link:after {
  content: "";
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  -webkit-mask-image: url(../images/icon_blank-B8-Ri9M-.svg);
  mask-image: url(../images/icon_blank-B8-Ri9M-.svg);
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  background-color: currentColor;
  transition: background-color .3s ease-out
}

.p-footer__logo-link {
  display: block;
  margin-block-start: 1.4375rem;
  margin-inline: auto;
  transition: filter .3s ease-out
}

.p-footer__policy-text {
  display: inline-flex;
  align-items: center;
  gap: .25rem;
  font-size: .875rem;
  font-weight: var(--medium);
  color: var(--color-dark-brown);
  text-decoration: none;
  transition: color .3s ease-out
}

.p-footer__copyright {
  margin-block-start: 1.0625rem;
  margin-block-start: .9375rem
}

.p-footer__copyright small {
  display: inline-block;
  font-size: .75rem;
  font-weight: var(--fw-medium);
  color: var(--color-brown)
}

.p-footer__copyright--tournaments small {
  display: inline-block;
  font-family: var(--base-font-family);
  font-size: .75rem;
  font-weight: var(--fw-medium);
  color: var(--color-brown);
  line-height: 1.32
}

.p-footer__credit-illust {
  display: block;
  margin-block-end: 1.0625rem
}

.p-footer__credit-piapro {
  display: inline
}

.p-footer__piapro-logo {
  display: inline;
  width: 4.6875rem;
  height: 1.125rem;
  vertical-align: middle;
  margin-inline: .15em
}

.p-footer__top {
  display: block;
  width: 6.875rem;
  height: 6.25rem;
  margin-inline: auto;
  transition: transform .3s ease-out
}

.p-footer__top:focus-visible {
  opacity: 1;
  transform: translateY(-10px)
}

.p-footer__logo-link:focus-visible {
  opacity: 1;
  filter: brightness(1.2)
}

.p-frame-contents {
  position: relative;
  background-image: url(../images/bg_trust-C98YVUEn.png);
  background-image: image-set(url(../images/bg_trust-C98YVUEn.avif) type("image/avif"), url(../images/bg_trust-C98YVUEn.png) type("image/jpeg"));
  ;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border: .125rem solid #c59a61;
  padding: .125rem
}

.p-frame-contents__treat-top, .p-frame-contents__treat-bottom {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0
}

.p-frame-contents__treat-top:before, .p-frame-contents__treat-bottom:before, .p-frame-contents__treat-top:after, .p-frame-contents__treat-bottom:after {
  content: "";
  position: absolute;
  width: 1.5rem;
  height: 1.5rem;
  background-image: url(../images/bg_trust_coner-Cee2KqGQ.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  --top: 0rem;
  --left: 0rem;
  --right: 0rem;
  --bottom: 0rem
}

.p-frame-contents__treat-top:before {
  top: var(--top);
  left: var(--left)
}

.p-frame-contents__treat-top:after {
  top: var(--top);
  right: var(--right);
  transform: rotate(90deg)
}

.p-frame-contents__treat-bottom:before {
  bottom: var(--bottom);
  left: var(--left);
  transform: rotate(270deg)
}

.p-frame-contents__treat-bottom:after {
  bottom: var(--bottom);
  right: var(--right);
  transform: rotate(180deg)
}

.p-frame-contents__block {
  position: relative;
  width: 100%;
  height: 100%;
  border: .0625rem solid #c59a61;
  overflow: visible;
  z-index: 1
}

.p-guests-cards {
  padding-block: 0 10.3125rem
}

.p-guests-cards__inner {
  margin-inline: auto
}

.p-guests-cards__wrapper {
  background-color: var(--color-beige);
  padding: 1.875rem 1rem
}

.p-guests-cards__banner {
  text-align: center
}

.p-guests-cards__banner-text {
  padding: .375rem;
  background-color: #8e6d00;
  font-size: .875rem;
  font-weight: var(--fw-bold);
  color: var(--color-white);
  line-height: 3
}

.p-guests-cards__banner-highlight {
  font-weight: var(--fw-black);
  color: #76e1ff
}

.p-guests-cards__grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .625rem .4375rem;
  margin-top: 1.1875rem
}

.p-guests-cards__item {
  width: 10.6875rem
}

.p-guests-cards__item img {
  width: 100%;
  height: auto;
  display: block
}

.p-guests-cards__credit {
  font-size: .875rem;
  font-weight: 500;
  color: #40220f;
  text-align: center;
  line-height: 1;
  margin-top: 1.1875rem
}

.p-guests-guest__block {
  padding: 1.625rem .625rem
}

.p-guests-guest__heading-row {
  display: flex;
  align-items: center;
  gap: .5rem
}

.p-guests-guest__grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.5rem .5rem;
  margin-block-start: 2rem
}

.p-guests-guest__card {
  width: min(10.6875rem, 100%)
}

.p-guests-guest__card-photo-area {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .1875rem;
  background-image: url(../images/bg_guest_personal-Db32ulUy.png);
  background-image: image-set(url(../images/bg_guest_personal-Db32ulUy.avif) type("image/avif"), url(../images/bg_guest_personal-Db32ulUy.png) type("image/jpeg"));
  ;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: .25rem;
  padding: 1rem 1.5rem
}

.p-guests-guest__card-photo {
  position: relative;
  width: 100%;
  aspect-ratio: 216/220;
  overflow: hidden;
  border: .0625rem solid #3e1a0a
}

.p-guests-guest__card-photo:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: url(../images/bg_personal-DA3-PHBH.jpg);
  background-image: image-set(url(../images/bg_personal-DA3-PHBH.avif) type("image/avif"), url(../images/bg_personal-DA3-PHBH.jpg) type("image/jpeg"));
  ;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  opacity: .4;
  z-index: 0
}

.p-guests-guest__card-photo:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #c59a6180;
  mix-blend-mode: soft-light;
  z-index: 2;
  pointer-events: none
}

.p-guests-guest__card-photo img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.p-guests-guest__card-divider {
  width: 9.375rem;
  height: .5rem;
  -webkit-mask-image: url(../images/icon_band-D4TI0VNo.svg);
  mask-image: url(../images/icon_band-D4TI0VNo.svg);
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  background-color: var(--color-brown)
}

.p-guests-guest__card-name {
  padding-inline: .625rem
}

.p-guests-guest__card-name img {
  max-height: 1.25rem;
  -o-object-fit: contain;
  object-fit: contain
}

.p-guests-guest__card-name-suffix {
  font-size: .75rem;
  font-weight: var(--fw-normal)
}

.p-guests-guest__card-info {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .5rem;
  margin-top: .5625rem
}

.p-guests-guest__card-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .375rem .5rem;
  background-color: var(--color-brown);
  font-size: .875rem;
  font-weight: 900;
  color: var(--color-white);
  letter-spacing: .2em;
  line-height: 1;
  font-family: "Noto Serif JP", serif
}

.p-guests-guest__card-venues {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem .4375rem
}

.p-guests-guest__card-venue {
  display: flex;
  align-items: center;
  gap: .125rem
}

.p-guests-guest__card-date {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .125rem .25rem;
  background-color: #beac99;
  font-family: Spline Sans Mono, monospace;
  font-size: .8125rem;
  font-weight: 600;
  color: var(--color-white);
  line-height: 1
}

.p-guests-guest__card-city {
  font-size: .8125rem;
  font-weight: 700;
  color: var(--color-brown);
  line-height: 1
}

.p-guests-guest__special {
  margin-block-start: 3.625rem;
  display: flex;
  flex-direction: column;
  align-items: center
}

.p-guests-guest__special-text {
  text-align: center;
  font-size: .875rem;
  font-weight: var(--fw-medium);
  color: var(--color-brown);
  line-height: 1.5;
  margin-block-start: 1.5625rem
}

.p-guests-guest__special-text-group {
  font-weight: 900;
  color: #ff7789
}

.p-guests-guest__special-text-name {
  font-weight: 900
}

.p-guests-guest__special-text-name--arare {
  color: #e0a800
}

.p-guests-guest__special-text-name--nonoka {
  color: #e66e91
}

.p-guests-guest__special-text-bold {
  font-weight: 900;
  color: var(--color-brown)
}

.p-guests-guest__special-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.5rem .5rem;
  margin-block-start: 2rem
}

.p-guests-guest__special-grid .p-guests-guest__card {
  max-width: 10.6875rem
}

.p-guests-hero {
  text-align: center
}

.p-guests-hero__inner {
  margin-inline: auto
}

.p-guests-hero__wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.6875rem;
  padding-inline: .9375rem
}

.p-guests-hero__heading {
  display: flex;
  flex-direction: column;
  align-items: center
}

.p-guests-hero__subtitle {
  font-size: 1rem;
  color: var(--color-white);
  text-shadow: 0 0 .5rem rgba(0, 108, 128, .5);
  line-height: 1
}

.p-guests-hero__title-wrapper {
  margin-block-start: .25rem
}

.p-guests-hero__title {
  font-family: var(--font-rye);
  font-size: 25.6vw;
  font-weight: 400;
  color: #fffff4;
  letter-spacing: .1em;
  text-shadow: 0 0 1.25rem rgba(0, 108, 128, .5);
  line-height: 1;
  transform: skew(-6.16deg);
  white-space: nowrap
}

.p-guests-hero__title-amp {
  letter-spacing: 0
}

.p-guests-hero__subtitle-ja {
  font-size: 1rem;
  font-weight: 700;
  color: #fffff4;
  letter-spacing: .78em;
  text-shadow: 0 0 .5rem rgba(0, 108, 128, .5);
  line-height: 1;
  margin-block-start: .25rem
}

.p-guests-hero__banner-text {
  padding: .375rem;
  font-size: .875rem;
  background-color: #8e6d00;
  font-weight: var(--fw-bold);
  color: #fff;
  line-height: 3.1
}

.p-guests-menu {
  padding-block: 2rem
}

.p-guests-menu__inner {
  max-width: 68.75rem;
  margin-inline: auto;
  padding-inline: var(--inner-padding)
}

.p-guests-menu__wrapper {
  background-color: #d1b489;
  padding: 2rem 1rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
  box-shadow: 0 0 1.5625rem #00000040
}

.p-guests-menu__heading {
  display: flex;
  flex-direction: column;
  align-items: center
}

.p-guests-menu__heading-title {
  font-family: var(--font-rye);
  font-size: 2rem;
  font-weight: 400;
  color: #40220f;
  letter-spacing: .16em;
  line-height: 1;
  transform: skew(-6.16deg)
}

.p-guests-menu__heading-subtitle {
  font-size: .75rem;
  font-weight: 700;
  color: #40220f;
  letter-spacing: .78em;
  line-height: 1;
  margin-block-start: .25rem
}

.p-guests-menu__nav-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0rem;
  list-style: none;
  box-shadow: 0 0 .4375rem #0006
}

.p-guests-menu__nav-item {
  width: 7.5rem;
  height: 8.75rem
}

.p-guests-menu__nav-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  text-decoration: none;
  position: relative
}

.p-guests-menu__nav-seal {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #8b2500;
  border-radius: 50%;
  width: 6.25rem;
  height: 6.25rem;
  margin: auto
}

.p-guests-menu__nav-text {
  position: relative;
  z-index: 1;
  font-size: 1rem;
  font-weight: 700;
  color: #fffff4;
  text-align: center;
  letter-spacing: .2em;
  text-shadow: 0 0 .5rem rgba(0, 0, 0, .5);
  line-height: 1.2
}

.p-guests-stage {
  padding-block: 4.0625rem 2.9375rem
}

.p-guests-stage__wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem
}

.p-guests-stage__heading-en {
  font-family: var(--font-rye);
  font-size: .875rem;
  font-weight: 400;
  color: #b2eef5;
  letter-spacing: .2em;
  text-align: center;
  line-height: 1
}

.p-guests-stage__heading-row {
  display: flex;
  align-items: center;
  gap: .5rem
}

.p-guests-stage__heading-ja {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--color-white);
  letter-spacing: .1em;
  text-align: center;
  line-height: 1
}

.p-guests-stage__tabs {
  position: relative;
  width: 100%;
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 1.5rem
}

.p-guests-stage__tabs-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .75rem .5rem;
  justify-items: center;
  width: 100%
}

.p-guests-stage__tab:first-child {
  grid-column: 1/-1
}

.p-guests-stage__tab {
  width: 11.6875rem;
  cursor: pointer
}

.p-guests-stage__tab.is-active img {
  filter: drop-shadow(0 0 1rem rgba(0, 0, 0, .2));
  border: .125rem solid var(--color-gold)
}

.p-guests-stage__tab:not(.is-active) img {
  opacity: .4
}

.p-guests-stage__tab img {
  width: 100%;
  aspect-ratio: 320/120;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: .25rem;
  border: .0625rem solid var(--color-gold);
  transition: opacity .3s ease-out, filter .3s ease-out, border-width .3s ease-out
}

.p-guests-stage__tab-label {
  font-size: .875rem;
  font-weight: 900;
  color: #40220f;
  letter-spacing: .04em
}

.p-guests-stage__timetable {
  grid-column: 1;
  grid-row: 2;
  position: absolute;
  width: 100%;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .3s ease-out
}

.p-guests-stage__timetable.is-active {
  position: relative;
  opacity: 1;
  visibility: visible;
  pointer-events: auto
}

.p-guests-stage__timetable.is-fading-out, .p-guests-stage__timetable.is-fading-in {
  opacity: 0;
  visibility: visible;
  pointer-events: none
}

.p-guests-stage__block {
  padding: .1875rem .75rem 1.8125rem
}

.p-guests-stage__schedule-item {
  display: flex;
  flex-direction: row;
  gap: 1rem;
  align-items: flex-start;
  padding-block: .75rem
}

.p-guests-stage__schedule-item:not(:last-child) {
  border-bottom: 1px dashed #c59a61
}

.p-guests-stage__schedule-time {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .25rem;
  background-color: var(--color-white);
  border-radius: .25rem;
  font-family: Spline Sans Mono, monospace;
  font-size: .625rem;
  font-weight: 600;
  color: #c59a61;
  line-height: 1;
  text-align: center;
  min-width: 4.625rem
}

.p-guests-stage__schedule-content {
  flex: 1
}

.p-guests-stage__schedule-guests {
  display: flex;
  flex-wrap: wrap;
  gap: .25rem
}

.p-guests-stage__schedule-guest {
  display: inline-block;
  font-size: 1rem;
  font-weight: 500;
  color: #40220f;
  line-height: 1.3;
  padding: .25rem .5rem;
  background-color: var(--color-white);
  border-radius: .25rem;
  border: .0625rem solid var(--color-gold)
}

.p-guests-stage__schedule-title {
  font-size: .875rem;
  font-weight: 500;
  color: #40220f;
  line-height: 1.3
}

.p-guests-stage__schedule-note {
  font-size: .875rem;
  font-weight: 500;
  color: #40220f;
  line-height: 1.5
}

.p-guests-stage__schedule-desc {
  margin-block-start: .5rem;
  font-size: .875rem;
  font-weight: 500;
  color: #40220f;
  line-height: 1.5
}

.p-guests-stage__schedule-desc span {
  display: inline-block
}

.p-guests-stage__schedule-highlight {
  font-weight: var(--fw-black);
  color: #e9a749
}

.p-guests-stage__schedule-small {
  font-size: .75rem;
  line-height: 1.5;
  padding-left: 1em;
  text-indent: -1em
}

.p-guests-stage__schedule-small--line {
  line-height: 1.3;
  font-size: .75rem
}

.p-guests-stage__notes {
  width: 100%
}

.p-guests-stage__notes-text {
  font-size: .875rem;
  font-weight: 500;
  color: #40220f;
  line-height: 1.5;
  padding-left: 1em;
  text-indent: -1em
}

.p-guests-stage__tab:focus-visible {
  opacity: 1
}

@keyframes rotate-bg {
  0% {
    transform: rotate(0)
  }

  to {
    transform: rotate(360deg)
  }
}

.p-header__menu-button {
  position: relative;
  width: 5.5625rem;
  height: 5.5625rem;
  margin-left: auto;
  z-index: 101
}

.p-header__menu-button:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: url(../images/icon_humburger-DVxCal3T.png);
  background-image: image-set(url(../images/icon_humburger-DVxCal3T.avif) type("image/avif"), url(../images/icon_humburger-DVxCal3T.png) type("image/jpeg"));
  ;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  animation: rotate-bg 20s linear infinite
}

.p-notes-content {
  padding-bottom: 3.125rem
}

.p-notes-content__inner {
  padding-block: 0 10.1875rem
}

.p-notes-content__wrapper {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
  padding: 2rem 1rem;
  background-color: #f2eadf
}

.p-notes-content__heading-wrapper {
  display: flex;
  flex-direction: column;
  gap: .25rem
}

.p-notes-content__heading {
  line-height: 2.21;
  padding: .25rem;
  background-color: #00478e;
  font-size: 1rem;
  font-weight: var(--fw-bold);
  color: var(--color-white)
}

.p-notes-content__body {
  display: flex;
  flex-direction: column;
  gap: .25rem;
  margin-top: .8125rem
}

.p-notes-content__list {
  display: flex;
  flex-direction: column;
  gap: .3125rem;
  list-style: none
}

.p-notes-content__item {
  position: relative;
  font-size: .875rem;
  font-weight: var(--fw-medium);
  color: var(--color-brown);
  line-height: 1.5;
  padding-left: .9375rem
}

.p-notes-content__item:before {
  content: "・";
  position: absolute;
  top: .0625rem;
  left: 0;
  flex-shrink: 0
}

.p-notes-content__box {
  width: 100%;
  padding: .75rem;
  border: .0625rem solid var(--color-brown)
}

.p-notes-content__ordered-list {
  padding-inline-start: 1.3125rem;
  list-style-type: decimal
}

.p-notes-content__ordered-item {
  font-size: .8125rem;
  font-weight: var(--fw-medium);
  color: var(--color-brown);
  line-height: 2
}

.p-notes-hero {
  text-align: center
}

.p-notes-hero__inner {
  margin-inline: auto
}

.p-notes-hero__wrapper {
  display: flex;
  flex-direction: column;
  gap: 1.75rem;
  padding-inline: .9375rem
}

.p-notes-hero__banner-text {
  font-size: .875rem;
  font-weight: var(--fw-bold);
  line-height: 3.1;
  color: var(--color-white);
  background-color: var(--color-blue);
  padding: .375rem;
  text-align: center
}

.p-prize-modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fffffff2;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .3s ease-out, visibility .3s ease-out
}

.p-prize-modal[aria-hidden=false] {
  opacity: 1;
  visibility: visible;
  pointer-events: all
}

.p-prize-modal__inner {
  position: relative;
  width: min(21.875rem, 100%)
}

.p-prize-modal__close {
  position: absolute;
  right: 0;
  bottom: calc(100% + .5rem);
  background-image: url(../images/icon_humburger-DVxCal3T.png);
  background-image: image-set(url(../images/icon_humburger-DVxCal3T.avif) type("image/avif"), url(../images/icon_humburger-DVxCal3T.png) type("image/jpeg"));
  ;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  width: 3.5rem;
  height: 3.5rem
}

.p-prize-modal__image {
  display: block;
  width: 100%;
  max-height: calc(100vh - 7.5rem);
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: .5rem;
  opacity: 0;
  transition: opacity .2s ease-out
}

.p-prize-modal[aria-hidden=false] .p-prize-modal__image {
  opacity: 1
}

.p-shop-hero {
  text-align: center
}

.p-shop-hero__inner {
  margin-inline: auto
}

.p-shop-hero__wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  padding-inline: .9375rem
}

.p-shop-hero__heading {
  display: flex;
  flex-direction: column;
  align-items: center
}

.p-shop-hero__subtitle {
  font-size: 1rem;
  color: var(--color-white);
  text-shadow: 0 0 .5rem rgba(0, 108, 128, .5);
  line-height: 1
}

.p-shop-hero__title-wrapper {
  margin-block-start: .25rem
}

.p-shop-hero__banner {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .375rem;
  background-color: #4e8e00
}

.p-shop-hero__banner-text {
  font-size: .875rem;
  font-weight: 700;
  color: var(--color-white);
  line-height: 1.5;
  text-align: center
}

.p-shop-list__block {
  padding: 1.5rem .3125rem 1.6875rem
}

.p-shop-list__table-wrapper {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch
}

.p-shop-list__table-inner {
  display: flex;
  flex-direction: column;
  gap: .5rem;
  min-width: 39.625rem;
  padding-inline: .5rem
}

.p-shop-list__table-header {
  display: flex;
  justify-content: flex-end;
  gap: 0;
  padding-inline-end: .4375rem;
  margin-block-start: 2.25rem
}

.p-shop-list__table-header-credit {
  width: 7.25rem;
  font-size: .875rem;
  font-weight: 700;
  color: #3e1a0a;
  text-align: center
}

.p-shop-list__table-header-paypay {
  width: 7.25rem;
  font-size: .875rem;
  font-weight: 700;
  color: #ae2b17;
  text-align: center
}

.p-shop-list__list {
  display: grid;
  grid-template-columns: 4.8125rem 3.5rem auto 7.25rem 7.25rem;
  row-gap: 1.125rem;
  margin: 0;
  padding: 0;
  list-style: none
}

.p-shop-list__item {
  grid-column: 1/-1;
  display: grid;
  grid-template-columns: subgrid;
  padding-inline: .4375rem
}

.p-shop-list__item-inner {
  position: relative;
  grid-column: 1/-1;
  display: grid;
  grid-template-columns: subgrid;
  align-items: center;
  padding: .9375rem 0rem;
  font-size: .8125rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.4
}

.p-shop-list__item-inner:before {
  content: "";
  position: absolute;
  left: -.4375rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1rem;
  height: 2rem;
  border-radius: 50% 0 0 50%;
  pointer-events: none;
  z-index: -1
}

.p-shop-list__item-inner:after {
  content: "";
  position: absolute;
  right: -.4375rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1rem;
  height: 2rem;
  border-radius: 0 50% 50% 0;
  pointer-events: none;
  z-index: -1
}

.p-shop-list__item:nth-child(odd) .p-shop-list__item-inner {
  background-color: #40220f
}

.p-shop-list__item:nth-child(odd) .p-shop-list__item-inner:before, .p-shop-list__item:nth-child(odd) .p-shop-list__item-inner:after {
  background-color: #40220f
}

.p-shop-list__item:nth-child(2n) .p-shop-list__item-inner {
  background-color: #764728
}

.p-shop-list__item:nth-child(2n) .p-shop-list__item-inner:before, .p-shop-list__item:nth-child(2n) .p-shop-list__item-inner:after {
  background-color: #764728
}

.p-shop-list__date {
  display: flex;
  align-items: center;
  justify-content: center
}

.p-shop-list__area {
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1.0625rem;
  border-inline: .0625rem solid #c59a61;
  padding-inline: .375rem
}

.p-shop-list__name {
  white-space: nowrap;
  padding-inline-start: .375rem
}

.p-shop-list__credit, .p-shop-list__paypay {
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1.0625rem;
  border-left: .125rem solid #a09187;
  font-size: 1.25rem;
  letter-spacing: .05em
}

.p-shop-list__table-note {
  font-size: .875rem;
  font-weight: 500;
  color: #ae2b17;
  line-height: 1.5;
  margin-top: 1.125rem;
  padding-left: 1em;
  text-indent: -1em
}

.p-shop-list__text-block {
  padding-inline: .625rem
}

.p-shop-list__notes {
  display: flex;
  flex-direction: column;
  gap: .125rem;
  margin-top: 1rem
}

.p-shop-list__note {
  font-size: .875rem;
  font-weight: 500;
  color: #3e1a0a;
  line-height: 1.5;
  padding-left: 1em;
  text-indent: -1em
}

.p-shop-list__note-link {
  color: var(--color-orange);
  font-weight: 700;
  text-decoration: none;
  border-bottom: .125rem solid var(--color-orange);
  transition: opacity var(--hover-transition)
}

.p-shop-list__note-link-icon {
  display: inline-block;
  width: .75rem;
  height: .75rem;
  margin-inline: .25rem;
  -webkit-mask-image: url(../images/icon_blank-B8-Ri9M-.svg);
  mask-image: url(../images/icon_blank-B8-Ri9M-.svg);
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  background-color: currentColor
}

.p-shop-menu {
  padding-block: 2rem
}

.p-shop-menu__inner {
  max-width: 68.75rem;
  margin-inline: auto;
  padding-inline: var(--inner-padding)
}

.p-shop-menu__wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem
}

.p-shop-menu__heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .5rem
}

.p-shop-menu__heading-title {
  font-family: var(--font-rye);
  font-size: 3rem;
  font-weight: 400;
  color: var(--color-white);
  letter-spacing: .08em;
  line-height: 1
}

.p-shop-menu__heading-subtitle {
  font-size: 1rem;
  font-weight: 400;
  color: var(--color-white);
  letter-spacing: .7em;
  line-height: 1
}

.p-shop-menu__nav-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  list-style: none;
  width: 100%
}

.p-shop-menu__nav-item {
  width: 100%
}

.p-shop-menu__nav-link {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .75rem;
  width: 100%;
  height: 6.75rem;
  text-decoration: none;
  overflow: hidden
}

.p-shop-menu__nav-item--tournament .p-shop-menu__nav-link {
  background-color: #8e0000
}

.p-shop-menu__nav-item--guest .p-shop-menu__nav-link {
  background-color: #8e6d00
}

.p-shop-menu__nav-item--shop .p-shop-menu__nav-link {
  background-color: #4e8e00
}

.p-shop-menu__nav-item--notes .p-shop-menu__nav-link {
  background-color: #00478e
}

.p-shop-menu__nav-text {
  position: relative;
  z-index: 1;
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--color-white);
  text-align: center;
  letter-spacing: .4em;
  line-height: 1
}

.p-shop-promotion {
  padding-block: 3.125rem 10.125rem
}

.p-shop-promotion__wrapper {
  background-color: #f2eadf;
  padding: 1.75rem 1rem 2.0625rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem
}

.p-shop-promotion__banner-row {
  text-align: center
}

.p-shop-promotion__banner-text {
  font-size: .875rem;
  font-weight: var(--fw-bold);
  color: var(--color-white);
  line-height: 3.1;
  background-color: #4e8e00;
  padding: .375rem
}

.p-shop-promotion__note {
  font-size: .875rem;
  font-weight: 500;
  color: var(--color-brown);
  text-align: center
}

.p-shop-promotion__detail {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem
}

.p-shop-promotion__example {
  border: .0625rem solid var(--color-brown);
  padding: 1rem 2.625rem
}

.p-shop-promotion__example-text {
  font-size: .875rem;
  font-weight: 500;
  color: var(--color-brown);
  line-height: 1.5;
  white-space: nowrap
}

.p-shop-promotion__image {
  flex-shrink: 0;
  width: 8.0625rem
}

.p-shop-promotion__image img {
  width: 100%;
  height: auto
}

.p-top-hero {
  position: relative;
  overflow: hidden
}

.p-top-hero__character {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  max-width: 31.25rem
}

.p-top-hero__character img {
  width: 100%;
  height: auto;
  display: block;
  opacity: 0;
  visibility: hidden;
  transform: translate(-2.5rem)
}

.p-top-hero__title {
  position: absolute;
  top: 6%;
  right: 4%;
  width: max(14.375rem, 55.1558752998vw);
  z-index: 1
}

.p-top-hero__title img {
  width: 100%;
  height: auto;
  display: block;
  opacity: 0;
  visibility: hidden;
  transform: scale(0);
  transform-origin: center center
}

.p-top-menu {
  padding-block: 3rem
}

.p-top-menu__content {
  background-image: url(../images/common/bg_footer_menu.png);
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  padding: 2rem 1rem 1.5rem;
  text-align: center;
  filter: drop-shadow(0 0 .9375rem rgba(0, 0, 0, .25))
}

.p-top-menu__heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .5rem
}

.p-top-menu__heading-frame {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1.25rem 4rem;
  min-width: 15rem
}

.p-top-menu__heading-frame:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: url(../images/icon_title_bg_blue-BkIOCNma.svg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: center
}

.p-top-menu__heading-en {
  position: relative;
  z-index: 1;
  font-family: var(--font-rye);
  font-size: 1.75rem;
  font-weight: 400;
  color: #40220f;
  letter-spacing: .1em;
  line-height: 1
}

.p-top-menu__heading-ja {
  font-size: .75rem;
  font-weight: 700;
  color: #40220f;
  letter-spacing: .78em;
  line-height: 1
}

.p-top-menu__nav-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0;
  list-style: none;
  margin-block-start: 1rem
}

.p-top-menu__nav-item {
  width: 50%;
  display: flex;
  justify-content: center
}

.p-top-menu__nav-item:nth-child(odd) {
  align-self: flex-start
}

.p-top-menu__nav-item:nth-child(2n) {
  align-self: flex-start;
  margin-block-start: 2.5rem
}

.p-top-menu__nav-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 8.125rem;
  height: 8.125rem;
  color: var(--color-white);
  text-decoration: none;
  font-weight: 700
}

.p-top-menu__nav-link:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat
}

.p-top-menu__nav-item:nth-child(1) .p-top-menu__nav-link:before {
  background-image: url(../images/common/bg_footer_menu01.png)
}

.p-top-menu__nav-item:nth-child(2) .p-top-menu__nav-link:before {
  background-image: url(../images/common/bg_footer_menu02.png)
}

.p-top-menu__nav-item:nth-child(3) .p-top-menu__nav-link:before {
  background-image: url(../images/common/bg_footer_menu03.png)
}

.p-top-menu__nav-item:nth-child(4) .p-top-menu__nav-link:before {
  background-image: url(../images/common/bg_footer_menu04.png)
}

.p-top-menu__nav-text {
  position: relative;
  font-size: .8125rem;
  letter-spacing: .1em;
  text-shadow: 0 0 .5rem rgba(0, 0, 0, .5);
  line-height: 1.3
}

.p-top-menu__nav-link:focus-visible {
  opacity: .7
}

.p-top-news {
  position: relative;
  padding-block: 6.9375rem 3.25rem
}

.p-top-news:before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  background-image: url(../images/bg_news_circle-Dxfa5biE.svg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 130%;
  height: 130%;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  animation: news-circle-rotate 30s linear infinite
}

@keyframes news-circle-rotate {
  0% {
    transform: translate(-50%, -50%) rotate(0)
  }

  to {
    transform: translate(-50%, -50%) rotate(360deg)
  }
}

.p-top-news__linear {
  position: absolute;
  width: 92.8125rem;
  height: 8.59375rem;
  -webkit-mask-image: url(../images/txt_news_bg-BBFyluhu.svg);
  mask-image: url(../images/txt_news_bg-BBFyluhu.svg);
  -webkit-mask-size: 92.8125rem 8.59375rem;
  mask-size: 92.8125rem 8.59375rem;
  -webkit-mask-position: 0 center;
  mask-position: 0 center;
  -webkit-mask-repeat: repeat-x;
  mask-repeat: repeat-x;
  background-color: #fff;
  z-index: -1
}

.p-top-news__linear[data-position=top] {
  top: -20%;
  left: 10%;
  transform: rotate(15deg);
  transform-origin: top left;
  animation: news-ticker-top 80s linear infinite
}

.p-top-news__linear[data-position=bottom] {
  bottom: -20%;
  right: 10%;
  transform: rotate(15deg);
  transform-origin: bottom right;
  animation: news-ticker-bottom 80s linear infinite
}

@keyframes news-ticker-top {
  0% {
    -webkit-mask-position: 0 center;
    mask-position: 0 center
  }

  to {
    -webkit-mask-position: -185.625rem center;
    mask-position: -185.625rem center
  }
}

@keyframes news-ticker-bottom {
  0% {
    -webkit-mask-position: 0 center;
    mask-position: 0 center
  }

  to {
    -webkit-mask-position: 185.625rem center;
    mask-position: 185.625rem center
  }
}

.p-top-news__inner {
  position: relative;
  z-index: 1
}

.p-top-news__wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.875rem
}

.p-top-news__heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .5rem
}

.p-top-news__heading-frame {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .5rem 3rem
}

.p-top-news__heading-frame:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: url(../images/icon_dragon-y7e5mAFc.svg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: center
}

.p-top-news__heading-en {
  position: relative;
  z-index: 1;
  font-family: var(--font-rye);
  font-size: 1.75rem;
  font-weight: 400;
  color: var(--color-white);
  letter-spacing: .1em;
  line-height: 1;
  text-shadow: 0 0 .625rem rgba(0, 108, 128, .4)
}

.p-top-news__heading-ja {
  font-size: .75rem;
  font-weight: var(--fw-bold);
  color: var(--color-white);
  letter-spacing: .78em;
  line-height: 1;
  text-shadow: 0 0 .5rem rgba(0, 108, 128, .4)
}

.p-top-news__frame {
  width: 100%
}

.p-top-news__list-block {
  max-height: 18.5625rem;
  min-height: 0;
  box-sizing: border-box;
  padding: .1875rem .75rem;
  overflow-y: auto;
  scrollbar-width: none
}

.p-top-news__list-block::-webkit-scrollbar {
  display: none
}

.p-top-news__list-block .simplebar-scrollbar:before {
  background-color: #c59a61 !important;
  opacity: 1 !important;
  transition: opacity 0s linear !important
}

.p-top-news__list-block:hover .simplebar-scrollbar:before, .p-top-news__list-block .simplebar-track:hover .simplebar-scrollbar:before, .p-top-news__list-block .simplebar-scrollbar.simplebar-visible:before {
  opacity: 1 !important
}

.p-top-news__list-block .simplebar-content-wrapper {
  scrollbar-width: none
}

.p-top-news__list-block .simplebar-content-wrapper::-webkit-scrollbar {
  display: none
}

.p-top-news__list-block .simplebar-track {
  right: .625rem;
  background-color: transparent !important
}

.p-top-news__list-block .simplebar-scrollbar {
  min-height: 1.25rem
}

.p-top-news__list {
  display: flex;
  flex-direction: column
}

.p-top-news__item {
  border-block-end: .0625rem dashed #c59a61
}

.p-top-news__item:last-child {
  border-block-end: none
}

.p-top-news__item-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .625rem;
  padding-block: 1.625rem
}

.p-top-news__date-wrapper {
  display: flex;
  align-items: center;
  gap: .5rem;
  padding: .125rem 0;
  border-bottom: .0625rem solid #c59a61;
  flex-shrink: 0
}

.p-top-news__date-icon {
  flex-shrink: 0;
  width: .875rem;
  height: .75rem
}

.p-top-news__date {
  font-family: var(--font-mono);
  font-size: .875rem;
  font-weight: var(--fw-semibold);
  color: #c59a61;
  line-height: 1;
  white-space: nowrap
}

.p-top-news__text {
  font-size: .875rem;
  font-weight: var(--fw-medium);
  color: #3e1a0a;
  line-height: 1;
  letter-spacing: .02em
}

.p-top-schedule {
  position: relative;
  overflow: hidden;
  padding-block: 7.875rem 10.4375rem
}

.p-top-schedule:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: url(../images/bg_schedule_sp-Bv0PAWm5.png);
  background-image: image-set(url(../images/bg_schedule_sp-Bv0PAWm5.avif) type("image/avif"), url(../images/bg_schedule_sp-Bv0PAWm5.png) type("image/jpeg"));
  ;
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat
}

.p-top-schedule__wrapper {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.1875rem
}

.p-top-schedule__heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .25rem
}

.p-top-schedule__heading-en {
  font-family: var(--font-rye);
  font-size: 2.5rem;
  font-weight: 400;
  color: #40220f;
  letter-spacing: .1em;
  line-height: 1;
  transform: skew(-6.16deg)
}

.p-top-schedule__heading-ja {
  font-size: .75rem;
  font-weight: 700;
  color: #40220f;
  letter-spacing: .78em;
  line-height: 1
}

.p-top-schedule__tabs {
  position: relative;
  width: 100%;
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 1.875rem
}

.p-top-schedule__tabs-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .75rem .5rem;
  justify-items: center;
  width: 100%
}

.p-top-schedule__tab:first-child {
  grid-column: 1/-1
}

.p-top-schedule__tab {
  width: 11.6875rem;
  cursor: pointer
}

.p-top-schedule__tab.is-active img {
  filter: drop-shadow(0 0 1rem rgba(0, 0, 0, .2));
  border: .125rem solid #c59a61
}

.p-top-schedule__tab:not(.is-active) img {
  opacity: .4
}

.p-top-schedule__tab img {
  width: 100%;
  aspect-ratio: 320/120;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: .25rem;
  border: .0625rem solid #c59a61;
  transition: opacity .3s ease-out, filter .3s ease-out, border-width .3s ease-out;
  will-change: transform
}

.p-top-schedule__tab-label {
  font-size: 1rem;
  font-weight: 900;
  color: #40220f;
  letter-spacing: .04em
}

.p-top-schedule__timetable {
  grid-column: 1;
  grid-row: 2;
  position: absolute;
  width: 100%;
  height: 100%;
  min-height: 53.5rem;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .3s ease
}

.p-top-schedule__timetable.is-active {
  position: relative;
  opacity: 1;
  visibility: visible;
  pointer-events: auto
}

.p-top-schedule__timetable.is-fading-out, .p-top-schedule__timetable.is-active.is-fading-in {
  opacity: 0;
  visibility: visible;
  pointer-events: none
}

.p-top-schedule__block {
  padding: .4375rem .75rem 1.875rem
}

.p-top-schedule__schedule-item {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding-block: .75rem
}

.p-top-schedule__schedule-item:not(:last-child) {
  border-bottom: .0625rem dashed #ad9d8f
}

.p-top-schedule__schedule-item[data-accent=neo-standard] {
  --schedule-accent-color: #132e6b
}

.p-top-schedule__schedule-item[data-accent=trio-survival] {
  --schedule-accent-color: #ae2b17
}

.p-top-schedule__schedule-item[data-accent=title-cup] {
  --schedule-accent-color: #115231
}

.p-top-schedule__schedule-item[data-accent=flight-tournament] {
  --schedule-accent-color: #e68100
}

.p-top-schedule__schedule-item[data-accent=free-fight] {
  --schedule-accent-color: #ac4617
}

.p-top-schedule__schedule-item:has(.p-top-schedule__schedule-desc) {
  align-items: flex-start
}

.p-top-schedule__schedule-time {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .25rem;
  min-width: 4.625rem;
  background-color: #fff;
  border-radius: .25rem;
  font-family: var(--font-mono);
  font-size: .625rem;
  font-weight: 600;
  color: #c59a61;
  line-height: 1;
  text-align: center
}

.p-top-schedule__schedule-content {
  flex: 1
}

.p-top-schedule__schedule-title {
  font-size: .875rem;
  font-weight: 500;
  color: #40220f;
  line-height: 1.3
}

.p-top-schedule__schedule-highlight {
  color: var(--schedule-accent-color, inherit)
}

.p-top-schedule__schedule-note {
  font-size: .75rem;
  font-weight: 500;
  color: #40220f;
  line-height: 1.3;
  padding-left: 1em;
  text-indent: -1em
}

.p-top-schedule__schedule-desc {
  display: flex;
  flex-direction: column;
  gap: .375rem;
  margin-block-start: .1875rem;
  font-size: .75rem;
  font-weight: 400;
  color: var(--schedule-accent-color, #40220f);
  line-height: 1.2
}

.p-top-schedule__schedule-desc span {
  padding-left: 1em;
  text-indent: -1em
}

.p-top-schedule__schedule-footer-note {
  font-size: .875rem;
  font-weight: 500;
  color: #40220f;
  line-height: 1.5;
  padding-left: 1em;
  text-indent: -1em;
  margin-block-start: .25rem
}

.p-top-schedule__tab:focus-visible {
  opacity: 1
}

.p-top-venue {
  overflow: hidden;
  position: relative;
  padding-block: 5rem;
  z-index: 1
}

.p-top-venue__bg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: url(../images/bg_venue-Bx7uyPFq.png);
  background-image: image-set(url(../images/bg_venue-Bx7uyPFq.avif) type("image/avif"), url(../images/bg_venue-Bx7uyPFq.png) type("image/jpeg"));
  ;
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat
}

.p-top-venue__bg:before {
  content: "";
  position: absolute;
  top: 1%;
  left: -34%;
  width: 20.625rem;
  height: 30.3125rem;
  background-image: url(../images/bg_palm01-DsyoieUV.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat
}

.p-top-venue__bg:after {
  top: 1%;
  right: -36%;
  content: "";
  position: absolute;
  width: 18.75rem;
  height: 28.75rem;
  background-image: url(../images/bg_palm02-DTjqahJj.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat
}

.p-top-venue__inner {
  padding-inline: 0
}

.p-top-venue__wrapper {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
  width: 100%
}

.p-top-venue__heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .5rem
}

.p-top-venue__heading-frame {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .5rem 3rem
}

.p-top-venue__heading-frame:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: url(../images/icon_dragon-y7e5mAFc.svg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: center;
  filter: brightness(0) invert(.9) sepia(.3) saturate(.5)
}

.p-top-venue__heading-en {
  position: relative;
  z-index: 1;
  font-family: var(--font-rye);
  font-size: 1.75rem;
  font-weight: 400;
  color: var(--color-white);
  letter-spacing: .1em;
  line-height: 1
}

.p-top-venue__heading-ja {
  font-size: .75rem;
  font-weight: 700;
  color: var(--color-white);
  letter-spacing: .78em;
  line-height: 1
}

.p-top-venue__content {
  position: relative;
  width: 100%;
  padding: 3.25rem 1rem
}

.p-top-venue__map {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0
}

.p-top-venue__map:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: url(../images/bg_venue_map01-DBacRc51.png);
  background-image: image-set(url(../images/bg_venue_map01-DBacRc51.avif) type("image/avif"), url(../images/bg_venue_map01-DBacRc51.png) type("image/jpeg"));
  ;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transform: rotate(6deg)
}

.p-top-venue__map:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: url(../images/bg_venue_map02-DVetpWC1.png);
  background-image: image-set(url(../images/bg_venue_map02-DVetpWC1.avif) type("image/avif"), url(../images/bg_venue_map02-DVetpWC1.png) type("image/jpeg"));
  ;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  filter: drop-shadow(0 0 1.25rem rgba(0, 0, 0, .5))
}

.p-top-venue__content-block {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 2rem;
  width: min(23.875rem, 100%);
  margin-inline: auto;
  z-index: 1
}

.p-top-venue__japan {
  position: relative;
  width: 100%
}

.p-top-venue__japan>img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 553/562;
  -o-object-fit: cover;
  object-fit: cover
}

.p-top-venue__pin {
  position: absolute;
  display: flex;
  align-items: center;
  gap: .125rem
}

.p-top-venue__pin-icon {
  position: absolute;
  width: 1.875rem;
  height: 1.5625rem;
  flex-shrink: 0
}

.p-top-venue__pin-label {
  text-align: center
}

.p-top-venue__pin-city {
  position: relative;
  display: inline-block;
  font-family: var(--font-rye);
  font-size: .875rem;
  font-weight: 400;
  color: #ae2b17;
  letter-spacing: .04em;
  line-height: 1;
  white-space: nowrap
}

.p-top-venue__pin-city:after {
  content: "";
  display: block;
  width: 100%;
  height: .25rem;
  -webkit-mask-image: url(../images/icon_line-DfOLQvQ6.svg);
  mask-image: url(../images/icon_line-DfOLQvQ6.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  background-color: #ae2b17
}

.p-top-venue__pin-date {
  font-family: var(--font-rye);
  font-size: .875rem;
  font-weight: 400;
  color: #ae2b17;
  letter-spacing: .02em;
  line-height: 1.3;
  text-align: center;
  white-space: nowrap
}

.p-top-venue__pin[data-city=sapporo] {
  flex-direction: row-reverse;
  top: 11%;
  left: 42%
}

.p-top-venue__pin[data-city=sapporo] .p-top-venue__pin-icon {
  top: 45%;
  right: -53%
}

.p-top-venue__pin[data-city=sendai] {
  top: 37%;
  left: 74%
}

.p-top-venue__pin[data-city=sendai] .p-top-venue__pin-icon {
  top: 47%;
  left: -45%
}

.p-top-venue__pin[data-city=tokyo] {
  top: 52.5%;
  left: 68%
}

.p-top-venue__pin[data-city=tokyo] .p-top-venue__pin-icon {
  top: 50%;
  left: -44%
}

.p-top-venue__pin[data-city=nagoya] {
  top: 72.5%;
  left: 46%
}

.p-top-venue__pin[data-city=nagoya] .p-top-venue__pin-icon {
  top: -70%;
  left: -1%
}

.p-top-venue__pin[data-city=kyoto] {
  top: 52%;
  left: 23%
}

.p-top-venue__pin[data-city=kyoto] .p-top-venue__pin-icon {
  top: 123%;
  left: 64%
}

.p-top-venue__pin[data-city=kitakyushu] {
  top: 83%;
  left: 10%
}

.p-top-venue__pin[data-city=kitakyushu] .p-top-venue__pin-icon {
  top: -67%;
  left: 3%
}

.p-top-venue__map img {
  width: 100%;
  height: auto;
  display: block
}

.p-top-venue__list {
  display: flex;
  flex-direction: column;
  gap: .6875rem;
  margin: 0;
  padding: 0;
  list-style: none
}

.p-top-venue__item {
  padding-inline: .4375rem
}

.p-top-venue__link {
  position: relative;
  display: grid;
  grid-template-columns: auto auto 1fr auto;
  align-items: center;
  gap: 0;
  padding: 1rem .5625rem;
  font-size: .8125rem;
  font-weight: var(--fw-bold);
  color: var(--color-white);
  text-decoration: none;
  line-height: 1.4;
  transition: color .3s ease-out
}

.p-top-venue__link:before {
  content: "";
  position: absolute;
  left: -.4375rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1rem;
  height: 2rem;
  border-radius: 50% 0 0 50%;
  pointer-events: none;
  z-index: -1
}

.p-top-venue__link:after {
  content: "";
  position: absolute;
  right: -.4375rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1rem;
  height: 2rem;
  border-radius: 0 50% 50% 0;
  pointer-events: none
}

.p-top-venue__item:nth-child(odd) .p-top-venue__link {
  background-color: #40220f
}

.p-top-venue__item:nth-child(odd) .p-top-venue__link:before, .p-top-venue__item:nth-child(odd) .p-top-venue__link:after {
  background-color: #40220f
}

.p-top-venue__item:nth-child(2n) .p-top-venue__link {
  background-color: #764728
}

.p-top-venue__item:nth-child(2n) .p-top-venue__link:before, .p-top-venue__item:nth-child(2n) .p-top-venue__link:after {
  background-color: #764728
}

.p-top-venue__date {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 5.625rem;
  font-family: var(--font-mono);
  font-size: .8125rem;
  font-weight: var(--fw-bold);
  line-height: 1.4
}

.p-top-venue__city {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.125rem;
  font-size: .8125rem;
  font-weight: 700;
  white-space: nowrap;
  border-inline: .0625rem solid rgba(197, 154, 97, .5);
  line-height: 1.4;
  padding-inline: .625rem
}

.p-top-venue__venue-text {
  min-width: 0;
  padding-inline-start: .3125rem
}

.p-top-venue__arrow {
  -webkit-mask-image: url(../images/icon_blank-B8-Ri9M-.svg);
  mask-image: url(../images/icon_blank-B8-Ri9M-.svg);
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  background-color: var(--color-white);
  width: .625rem;
  height: .625rem;
  flex-shrink: 0;
  transition: background-color .3s ease-out
}

.p-top-venue__note {
  font-size: .875rem;
  font-weight: var(--fw-bold);
  line-height: 1.5;
  color: #ae2b17;
  transform: translate(-.5rem);
  margin-block-start: .125rem;
  padding-left: 1em;
  text-indent: -1em
}

.p-top-venue__note-link {
  color: #e68100
}

.p-top-venue__link:focus-visible {
  opacity: 1;
  color: #dbb481
}

.p-top-venue__link:focus-visible .p-top-venue__arrow {
  background-color: #dbb481
}

.p-tournaments-content {
  overflow: hidden;
  padding-block: 0 10.25rem
}

.p-tournaments-content__entry-frame {
  position: relative;
  background-image: url(../images/bg_trust-C98YVUEn.png);
  background-image: image-set(url(../images/bg_trust-C98YVUEn.avif) type("image/avif"), url(../images/bg_trust-C98YVUEn.png) type("image/jpeg"));
  ;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border: .125rem solid var(--color-gold);
  padding: 2rem 1rem
}

.p-tournaments-content__entry-desc {
  font-size: .875rem;
  font-weight: 500;
  color: var(--color-brown);
  line-height: 1.5;
  text-align: center
}

.p-tournaments-content__entry-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .75rem;
  width: 100%;
  max-width: 21.875rem;
  border: .0625rem solid var(--color-gold);
  border-radius: 2.5rem;
  background: linear-gradient(99deg, #764728, #3e1a0a);
  line-height: 1;
  position: relative;
  overflow: hidden;
  margin-top: .9375rem;
  margin-inline: auto;
  padding: 1.4375rem 1rem;
  transition: border-color .3s ease, box-shadow .3s ease
}

.p-tournaments-content__entry-btn:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 15rem;
  height: 12.5rem;
  background-image: url(../images/button_bg_treat01-Ba6_oNCZ.svg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  mix-blend-mode: overlay;
  pointer-events: none
}

.p-tournaments-content__entry-btn span {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  font-size: 1rem;
  font-weight: var(--fw-bold);
  color: var(--color-white);
  letter-spacing: .05em
}

.p-tournaments-content__entry-btn span:after {
  content: "";
  display: block;
  -webkit-mask-image: url(../images/icon_blank-B8-Ri9M-.svg);
  mask-image: url(../images/icon_blank-B8-Ri9M-.svg);
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  background-color: var(--color-white);
  width: .75rem;
  height: .75rem
}

.p-tournaments-content__entry-note {
  font-size: .8125rem;
  font-weight: 400;
  color: #ae2b17;
  line-height: 1.5;
  margin-top: 1rem;
  padding-left: 1em;
  text-indent: -1em
}

.p-tournaments-content__ornament {
  display: flex;
  justify-content: center;
  margin-top: 1.6875rem
}

.p-tournaments-content__ornament img {
  width: 3.3125rem;
  height: auto
}

.p-tournaments-content__deck-text {
  display: flex;
  flex-direction: column;
  margin-top: 1.5rem
}

.p-tournaments-content__deck-note {
  font-size: .875rem;
  font-weight: 500;
  color: var(--color-brown);
  line-height: 1.5
}

.p-tournaments-content__tab-section {
  display: flex;
  flex-direction: column;
  gap: 2.125rem
}

.p-tournaments-content__tabs {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin-top: 2.875rem
}

.p-tournaments-content__tab {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc((100% - .5rem)/2);
  height: 3rem;
  border-radius: 1.5rem;
  border: .125rem solid transparent;
  font-size: .75rem;
  font-weight: 900;
  color: var(--color-white);
  letter-spacing: .1em;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  overflow: hidden;
  background-color: #a5a5a5;
  opacity: 1;
  transition: opacity .3s ease, background-color .3s ease, border-color .3s ease
}

.p-tournaments-content__tab:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  right: 57%;
  height: 5rem;
  transform: translateY(-50%);
  background-image: url(../images/button_bg_treat02-BFA45PPI.svg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  mix-blend-mode: overlay;
  pointer-events: none
}

.p-tournaments-content__tab.is-active {
  opacity: 1;
  border-color: var(--color-gold)
}

.p-tournaments-content__tab--neostandard.is-active {
  background-color: #0d3387
}

.p-tournaments-content__tab--trio.is-active {
  background-color: #ae1e25
}

.p-tournaments-content__tab--title.is-active {
  background-color: #01773c
}

.p-tournaments-content__tab--flight.is-active {
  background-color: #d59607
}

.p-tournaments-content__tab--free.is-active {
  background-color: #db5111
}

.p-tournaments-content__tab--standard.is-active {
  background-color: #0d5e87
}

#panel-neostandard .p-tournaments-content__panel-heading, #panel-neostandard .p-tournaments-content__panel-lead {
  color: #0d3387
}

#panel-neostandard .p-tournaments-content__subsection-heading {
  background-color: #0d3387;
  color: var(--color-white)
}

#panel-trio .p-tournaments-content__panel-heading, #panel-trio .p-tournaments-content__panel-lead {
  color: #ae1e25
}

#panel-trio .p-tournaments-content__subsection-heading {
  background-color: #ae1e25;
  color: var(--color-white)
}

#panel-title .p-tournaments-content__panel-heading, #panel-title .p-tournaments-content__panel-lead {
  color: #01773c
}

#panel-title .p-tournaments-content__subsection-heading {
  background-color: #01773c;
  color: var(--color-white)
}

#panel-flight .p-tournaments-content__panel-heading, #panel-flight .p-tournaments-content__panel-lead {
  color: #d59607
}

#panel-flight .p-tournaments-content__subsection-heading {
  background-color: #d59607;
  color: var(--color-white)
}

#panel-free .p-tournaments-content__panel-heading, #panel-free .p-tournaments-content__panel-lead {
  color: #db5111
}

#panel-free .p-tournaments-content__subsection-heading {
  background-color: #db5111;
  color: var(--color-white)
}

#panel-standard .p-tournaments-content__panel-heading, #panel-standard .p-tournaments-content__panel-lead {
  color: #0d5e87
}

#panel-standard .p-tournaments-content__subsection-heading {
  background-color: #0d5e87;
  color: var(--color-white)
}

.p-tournaments-content__tab-section .p-frame-contents__block {
  position: relative
}

.p-tournaments-content__panel-frame.p-frame-contents {
  background-image: url(../images/bg_trust_tm-BRpn2Oog.jpg);
  background-image: image-set(url(../images/bg_trust_tm-BRpn2Oog.avif) type("image/avif"), url(../images/bg_trust_tm-BRpn2Oog.jpg) type("image/jpeg"));
  ;
  background-size: 100% auto;
  background-position: top center;
  background-repeat: repeat-y
}

.p-tournaments-content__panel {
  display: none;
  opacity: 0;
  transition: opacity .3s ease
}

.p-tournaments-content__panel.is-active {
  display: block;
  opacity: 1
}

.p-tournaments-content__panel.is-fading-out, .p-tournaments-content__panel.is-fading-in {
  display: block;
  opacity: 0;
  pointer-events: none
}

.p-tournaments-content__panel-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .8125rem;
  padding: 1.1875rem .75rem 1.0625rem;
  text-align: center
}

.p-tournaments-content__panel-heading {
  font-size: 1.5rem;
  font-weight: 900;
  color: #0d3387;
  letter-spacing: .05em;
  line-height: 1
}

.p-tournaments-content__panel-logo {
  position: relative;
  width: min(100%, 11.25rem);
  overflow: hidden
}

.p-tournaments-content__panel-logo img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  display: block
}

.p-tournaments-content__panel-lead {
  font-size: 1rem;
  font-weight: 900;
  color: #0d3387;
  text-align: center;
  line-height: 1.5
}

.p-tournaments-content__panel-body {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding: 0rem .6875rem 1.75rem
}

.p-tournaments-content__subsection {
  display: flex;
  flex-direction: column;
  gap: .75rem
}

.p-tournaments-content__subsection-heading {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .875rem;
  padding: .75rem .375rem;
  background-color: #0d3387;
  font-size: 1rem;
  font-weight: var(--fw-black);
  color: var(--color-white);
  letter-spacing: 0;
  line-height: 1;
  align-self: flex-start
}

.p-tournaments-content__subsection-heading:before, .p-tournaments-content__subsection-heading:after {
  content: "";
  flex-shrink: 0;
  display: inline-block;
  width: 1.625rem;
  height: .75rem;
  background-image: url(../images/icon_wave-CGwxIP1S.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center
}

.p-tournaments-content__subsection-heading:after {
  transform: rotate(180deg)
}

.p-tournaments-content__prizes {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem
}

.p-tournaments-content__prize {
  display: flex;
  flex-direction: column;
  gap: .5625rem;
  width: min(100%, 10.6875rem)
}

.p-tournaments-content__prize-label {
  font-size: .875rem;
  font-weight: var(--fw-medium);
  color: var(--color-brown);
  line-height: 1.5
}

.p-tournaments-content__prize-image {
  display: block;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer
}

.p-tournaments-content__prize-image img {
  display: block;
  height: auto;
  aspect-ratio: 171/123;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: .5rem;
  transition: filter .3s ease-out
}

.p-tournaments-content__winner-cards {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem .5rem
}

.p-tournaments-content__winner-card {
  display: flex;
  flex-direction: column;
  gap: .5rem;
  width: min(100%, 10.6875rem)
}

.p-tournaments-content__winner-rank {
  font-size: .875rem;
  font-weight: var(--fw-medium);
  color: var(--color-brown);
  line-height: 1.5
}

.p-tournaments-content__text-group+.p-tournaments-content__text-group {
  margin-block-start: .625rem
}

.p-tournaments-content__text {
  font-size: .875rem;
  font-weight: var(--fw-medium);
  color: var(--color-brown);
  line-height: 1.5
}

.p-tournaments-content__pack-image {
  width: min(100%, 9.375rem);
  margin-top: .9375rem
}

.p-tournaments-content__pack-image img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
  object-fit: contain
}

.p-tournaments-content__pr-images, .p-tournaments-content__victory-images {
  margin-top: .625rem
}

.p-tournaments-content__pr-image img, .p-tournaments-content__victory-image img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
  object-fit: contain
}

.p-tournaments-content__note {
  font-size: .875rem;
  font-weight: var(--fw-medium);
  color: var(--color-brown);
  line-height: 1.5;
  padding-left: 1em;
  text-indent: -1em
}

.p-tournaments-content__image {
  width: min(100%, 9.375rem);
  margin-top: .9375rem
}

.p-tournaments-content__image img {
  width: 100%;
  height: auto;
  aspect-ratio: 129/252;
  -o-object-fit: contain;
  object-fit: contain
}

.p-tournaments-content__numbered-list {
  display: flex;
  flex-direction: column;
  margin-top: 1rem
}

.p-tournaments-content__numbered-item {
  display: flex;
  align-items: flex-start;
  font-size: .875rem;
  font-weight: 500;
  color: var(--color-brown);
  line-height: 1.5
}

.p-tournaments-content__numbered-num {
  flex-shrink: 0;
  width: 1rem
}

.p-tournaments-content__ruled-box {
  border: .0625rem solid #0d3387;
  padding: .5rem .625rem;
  font-size: .875rem;
  font-weight: 500;
  color: #0d3387;
  line-height: 2
}

.p-tournaments-content__ruled-box-list {
  padding-inline-start: 1rem;
  list-style: decimal
}

.p-tournaments-content__regulation {
  background-color: var(--color-beige);
  margin-top: 1.8125rem;
  padding: 2.125rem 1rem
}

.p-tournaments-content__regulation-heading {
  background-color: #e9a749;
  padding: .5rem;
  font-size: 1rem;
  font-weight: var(--fw-bold);
  color: var(--color-white);
  line-height: 2.5
}

.p-tournaments-content__regulation-list {
  margin-block-start: .75rem;
  padding-inline-start: 1.5rem;
  list-style: disc
}

.p-tournaments-content__regulation-item {
  font-size: .875rem;
  font-weight: var(--fw-medium);
  color: var(--color-brown);
  line-height: 2
}

.p-tournaments-content__entry-btn:focus-visible {
  opacity: 1;
  border-color: #fff;
  box-shadow: 0 .375rem 1.5rem #0006
}

.p-tournaments-content__tab--neostandard:focus-visible {
  background-color: #0d3387
}

.p-tournaments-content__tab--trio:focus-visible {
  background-color: #ae1e25
}

.p-tournaments-content__tab--title:focus-visible {
  background-color: #01773c
}

.p-tournaments-content__tab--flight:focus-visible {
  background-color: #d59607
}

.p-tournaments-content__tab--free:focus-visible {
  background-color: #db5111
}

.p-tournaments-content__tab--standard:focus-visible {
  background-color: #0d5e87
}

.p-tournaments-content__tab:focus-visible {
  opacity: 1;
  border-color: var(--color-gold)
}

.p-tournaments-content__prize-image:focus-visible img {
  filter: brightness(1.1)
}

.p-tournaments-content__back-to-top-link:focus-visible {
  opacity: 1;
  border-color: #fff;
  box-shadow: 0 .375rem 1.5rem #0006
}

.p-tournaments-content__back-to-top {
  display: flex;
  justify-content: center;
  margin-block-start: 2.5rem
}

.p-tournaments-content__back-to-top-link {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18.75rem;
  height: 3.5rem;
  background-color: #3e1a0a;
  border: .0625rem solid #c59a61;
  border-radius: 2.5rem;
  text-decoration: none;
  transition: border-color .3s ease, box-shadow .3s ease
}

.p-tournaments-content__back-to-top-text {
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: .05em;
  color: #fff
}

.p-tournaments-content__back-to-top-arrow {
  position: absolute;
  right: 1.25rem;
  font-size: .75rem;
  color: #fff
}

.p-tournaments-hero {
  text-align: center
}

.p-tournaments-hero__inner {
  margin-inline: auto
}

.p-tournaments-hero__wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem
}

.p-tournaments-hero__banner-text {
  padding: .375rem;
  font-size: .875rem;
  font-weight: var(--fw-bold);
  color: var(--color-white);
  line-height: 3;
  background-color: #8e0000
}

[data-fadein] {
  opacity: 0;
  transform: translateY(2.5rem);
  transition: opacity 1.4s cubic-bezier(.2, .6, .2, 1), transform .6s cubic-bezier(.2, .6, .2, 1)
}

[data-fadein].is-show {
  opacity: 1;
  transform: translateY(0)
}

[data-slidein-mask] {
  position: relative;
  z-index: 0;
  clip-path: inset(0 100% 0 0);
  --mask-color: var(--color-orange);
  --mask-color: #fb9250
}

[data-slidein-mask]:before {
  position: absolute;
  top: -1.25rem;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  background-color: var(--mask-color);
  content: "";
  clip-path: inset(0 0 0%)
}

[data-slidein-mask].is-show {
  animation: slidein .3s ease-out forwards
}

[data-slidein-mask].is-show:before {
  animation: mask .8s .3s cubic-bezier(.8, 0, .17, 1) forwards
}

[data-slidein-mask=delay1].is-show:before {
  animation-delay: .6s
}

[data-slidein-mask=delay2].is-show:before {
  animation-delay: .9s
}

@keyframes slidein {
  0% {
    clip-path: inset(0 100% 0 0)
  }

  to {
    clip-path: inset(0 0% 0 0)
  }
}

@keyframes mask {
  0% {
    clip-path: inset(0 0 0 0%)
  }

  to {
    clip-path: inset(0 0 0 100%)
  }
}

.u-banner {
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  display: inline
}

.u-color__red {
  color: #ae2b17
}

.u-color__navy, .u-color__blue {
  color: #0d3387
}

.u-color__green {
  color: #01773c
}

.u-color__light-blue {
  color: #0096df
}

.u-color__orange {
  color: #e68100
}

.u-color__yellow {
  color: #efb83d
}

.u-color__brown {
  color: #945d36
}

.u-color__gray {
  color: #9a9a9a
}

.u-font-inter {
  font-family: Inter, sans-serif;
  font-weight: 500
}

.u-letter {
  letter-spacing: -.03em
}

.u-pc {
  display: none
}

.u-screen-reader {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0
}

@media screen and (min-width: 768px) {
  :root {
    --desigh-width: 1440;
    --header-height: 5.625rem;
    --inner-padding: 1.5625rem;
    --inner: 68.75rem
  }

  html {
    font-size: 1.3913043478vw;
    font-size: 1.3913043478cqi
  }

  a[href^="tel:"] {
    pointer-events: none
  }

  .l-common-space {
    padding-block: 6rem 5.25rem
  }

  .l-drawer:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    background-color: #0000;
    transition: background-color .3s ease-out
  }

  .l-drawer[aria-hidden=false]:before {
    background-color: #00000080;
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px)
  }

  .l-header {
    top: 1.5625rem;
    right: 1.5625rem
  }

  .l-top-schedule {
    margin-top: -11.875rem
  }

  .c-heading-group__ja {
    gap: 1rem;
    font-size: 3rem;
    letter-spacing: .2em
  }

  .c-heading-group__ja:before, .c-heading-group__ja:after {
    width: 6.1875rem;
    height: 3rem
  }

  .c-heading-group__en {
    font-size: 1.25rem
  }

  .c-main-heading[data-page=top-news] {
    --padding-top: 3rem
  }

  .c-main-heading[data-page=top-venue] {
    --padding-top: 2.1875rem
  }

  .c-main-heading[data-page=top-schedule] {
    --padding-top: 3rem
  }

  .c-main-heading[data-page=footer] {
    --padding-top: 2.5rem
  }

  .c-main-heading:before {
    width: 15rem;
    height: 10rem
  }

  .c-main-heading__text-year {
    font-size: 2rem
  }

  .c-main-heading__en {
    font-size: 8rem
  }

  .c-main-heading[data-page=footer] .c-main-heading__en {
    letter-spacing: .16em
  }

  .c-main-heading__en:before {
    width: 2.5rem;
    height: 5.9375rem
  }

  .c-main-heading__en:after {
    width: 2.5rem;
    height: 5.9375rem
  }

  .c-main-heading__ja {
    font-size: 1.5rem;
    letter-spacing: .7em;
    margin-block-start: 1.0625rem
  }

  .c-menu-button span {
    width: 4rem
  }

  .c-menu-button span:before {
    transform: translateY(-.5rem)
  }

  .c-menu-button span:after {
    transform: translateY(.5rem)
  }

  .c-section-heading__en {
    font-size: 6rem
  }

  .c-section-heading__ja {
    font-size: 2rem
  }

  .p-drawer__panel {
    position: relative;
    z-index: 2;
    background-image: url(../images/bg_drawer-CYO81wDd.png);
    background-image: image-set(url(../images/bg_drawer-CYO81wDd.avif) type("image/avif"), url(../images/bg_drawer-CYO81wDd.png) type("image/jpeg"));
    ;
    background-size: 100% 100%;
    background-position: center;
    background-repeat: no-repeat;
    width: min(46rem, 100%);
    margin-inline-start: auto;
    padding-block: 12.5rem 3.75rem;
    padding-inline: min(16.25rem, 25vw) 3.75rem;
    background-color: transparent
  }

  .p-drawer__nav-items {
    gap: 1.875rem
  }

  .p-drawer__nav-text {
    font-size: 2.25rem
  }

  .p-drawer__logo {
    margin-block-start: 2.875rem
  }

  .p-drawer__share {
    margin-block-start: 3.0625rem
  }

  .p-drawer__copy-message {
    font-size: .875rem
  }

  .p-footer {
    padding-block: 5.625rem 3.75rem
  }

  .p-footer:before {
    background-image: url(../images/bg_footer-YIVRNWHJ.png);
    background-image: image-set(url(../images/bg_footer-YIVRNWHJ.avif) type("image/avif"), url(../images/bg_footer-YIVRNWHJ.png) type("image/jpeg"));
  }

  .p-footer__menu-inner {
    display: contents
  }

  .p-footer__ticker {
    top: 9.375rem;
    left: 0;
    transform: unset;
    height: 35rem;
    z-index: unset
  }

  .p-footer__ticker:before {
    background-size: 3652px 100%;
    animation: ticker-to-right-pc 60s linear infinite
  }

  .p-footer__inner {
    max-width: 56.125rem;
    padding-inline: 1.5625rem
  }

  .p-footer__wrapper {
    gap: 6rem;
    margin-block-start: 0rem
  }

  .p-footer__nav-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.4375rem 2.5rem;
    margin-block-start: 4.125rem
  }

  .p-footer__nav-link {
    width: unset
  }

  .p-footer__logo-link {
    width: min(23.25rem, 100%);
    margin-block-start: 1.3125rem
  }

  .p-footer__policy-text {
    font-size: 1rem
  }

  .p-footer__copyright small {
    font-size: .875rem
  }

  .p-footer__copyright--tournaments small {
    font-size: .875rem;
    line-height: 1.3
  }

  .p-footer__credit-illust {
    margin-block-end: 1.25rem
  }

  .p-footer__top {
    position: fixed;
    bottom: 3.875rem;
    right: 1.25rem;
    z-index: 100;
    width: 9.8125rem;
    height: 8.75rem;
    margin-inline: unset
  }

  .p-frame-contents {
    padding: .375rem
  }

  .p-frame-contents__treat-top:before, .p-frame-contents__treat-bottom:before, .p-frame-contents__treat-top:after, .p-frame-contents__treat-bottom:after {
    --top: .25rem;
    --left: .25rem;
    --right: .25rem;
    --bottom: .25rem
  }

  .p-guests-cards {
    padding-block: 0 16.25rem
  }

  .p-guests-cards__inner {
    max-width: 71.875rem
  }

  .p-guests-cards__wrapper {
    padding: 2.1875rem 4rem 3.8125rem
  }

  .p-guests-cards__banner-text {
    padding: .5rem .3125rem;
    font-size: 1.5rem;
    line-height: 2.8
  }

  .p-guests-cards__grid {
    gap: 1.5rem 3rem;
    margin-top: 3.5625rem
  }

  .p-guests-cards__item {
    width: 14.375rem
  }

  .p-guests-cards__credit {
    font-size: .875rem
  }

  .p-guests-guest__block {
    padding: 3.3125rem 3.75rem
  }

  .p-guests-guest__heading-row {
    gap: 1rem
  }

  .p-guests-guest__grid {
    gap: 2.625rem 2.0625rem;
    margin-block-start: 2.75rem
  }

  .p-guests-guest__card {
    width: min(18.4375rem, 100%)
  }

  .p-guests-guest__card-photo-area {
    min-height: 20.5rem;
    gap: .625rem;
    padding: 1.75rem 2.5rem
  }

  .p-guests-guest__card-divider {
    width: 15.5rem
  }

  .p-guests-guest__card-name img {
    max-height: unset
  }

  .p-guests-guest__card-name-suffix {
    font-size: 1rem
  }

  .p-guests-guest__card-info {
    gap: 1rem;
    margin-top: 1.1875rem
  }

  .p-guests-guest__card-label {
    padding: .4375rem;
    font-size: 1.25rem
  }

  .p-guests-guest__card-venues {
    gap: 1rem
  }

  .p-guests-guest__card-venue {
    gap: .25rem
  }

  .p-guests-guest__card-date {
    font-size: 1.25rem;
    padding: .125rem .25rem
  }

  .p-guests-guest__card-city {
    font-size: 1.25rem
  }

  .p-guests-guest__special {
    margin-block-start: 3.8125rem
  }

  .p-guests-guest__special-text {
    font-size: 1rem;
    margin-block-start: 2.125rem
  }

  .p-guests-guest__special-grid {
    gap: 2rem;
    margin-block-start: 2.8125rem
  }

  .p-guests-guest__special-grid .p-guests-guest__card {
    max-width: 18.4375rem
  }

  .p-guests-hero__wrapper {
    gap: 2.625rem;
    padding-inline: 1.5625rem
  }

  .p-guests-hero__subtitle {
    font-size: 2rem
  }

  .p-guests-hero__title-wrapper {
    margin-block-start: .5rem
  }

  .p-guests-hero__title {
    font-size: 6rem
  }

  .p-guests-hero__subtitle-ja {
    font-size: 2rem;
    margin-block-start: .5rem
  }

  .p-guests-hero__banner-text {
    padding: .5rem 1rem;
    font-size: 1.5rem;
    line-height: 2.8
  }

  .p-guests-menu {
    padding-block: 4rem
  }

  .p-guests-menu__wrapper {
    padding: 4rem 3rem;
    gap: 2rem
  }

  .p-guests-menu__heading-title {
    font-size: 4rem
  }

  .p-guests-menu__heading-subtitle {
    font-size: 1.25rem;
    margin-block-start: .5rem
  }

  .p-guests-menu__nav-list {
    flex-wrap: nowrap
  }

  .p-guests-menu__nav-item {
    width: 15.1875rem;
    height: 15.9375rem
  }

  .p-guests-menu__nav-item--up {
    align-self: flex-start
  }

  .p-guests-menu__nav-item--down {
    margin-block-start: 5rem
  }

  .p-guests-menu__nav-seal {
    width: 11.625rem;
    height: 11.625rem
  }

  .p-guests-menu__nav-text {
    font-size: 2rem
  }

  .p-guests-stage {
    padding-block: 10.25rem 5.875rem
  }

  .p-guests-stage__inner {
    max-width: 71.875rem;
    margin-inline: auto
  }

  .p-guests-stage__wrapper {
    gap: 4rem
  }

  .p-guests-stage__heading-en {
    font-size: 1.25rem
  }

  .p-guests-stage__heading-row {
    gap: 1rem
  }

  .p-guests-stage__heading-ja {
    font-size: 3rem;
    letter-spacing: .2em
  }

  .p-guests-stage__tabs {
    row-gap: 4rem
  }

  .p-guests-stage__tabs-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    width: min(64rem, 100%);
    margin-inline: auto
  }

  .p-guests-stage__tab:first-child {
    grid-column: auto
  }

  .p-guests-stage__tab {
    width: 20rem
  }

  .p-guests-stage__tab-label {
    font-size: 1.5rem
  }

  .p-guests-stage__block {
    padding: 3.6875rem 2.375rem
  }

  .p-guests-stage__schedule-item {
    gap: 1.5rem;
    padding-block: .9375rem .625rem
  }

  .p-guests-stage__schedule-time {
    padding: .5rem;
    font-size: 1.25rem;
    min-width: 9.25rem
  }

  .p-guests-stage__schedule-guest {
    font-size: 1.125rem
  }

  .p-guests-stage__schedule-title {
    font-size: 1.25rem;
    line-height: 1
  }

  .p-guests-stage__schedule-note {
    font-size: 1rem
  }

  .p-guests-stage__schedule-desc {
    font-size: 1rem;
    margin-block-start: .8125rem
  }

  .p-guests-stage__schedule-small {
    font-size: .875rem;
    line-height: 1.75
  }

  .p-guests-stage__schedule-small--line {
    font-size: 1rem
  }

  .p-guests-stage__notes {
    margin-top: 1.25rem
  }

  .p-guests-stage__notes-text {
    font-size: 1rem
  }

  .p-header__menu-button {
    width: 10rem;
    height: 10rem
  }

  .p-notes-content {
    padding-bottom: 13.1875rem
  }

  .p-notes-content__inner {
    padding-block: 0 3rem
  }

  .p-notes-content__wrapper {
    gap: 3rem;
    padding: 3rem;
    background-color: var(--color-beige)
  }

  .p-notes-content__heading {
    padding: .5rem;
    background-color: var(--color-blue);
    font-size: 1.5rem
  }

  .p-notes-content__body {
    gap: .5rem;
    margin-top: 1.375rem
  }

  .p-notes-content__list {
    gap: .5rem
  }

  .p-notes-content__item {
    font-size: 1rem;
    line-height: 2;
    padding-left: 1.25rem
  }

  .p-notes-content__box {
    width: -moz-fit-content;
    width: fit-content;
    border-color: var(--color-brown)
  }

  .p-notes-content__ordered-item {
    font-size: .875rem
  }

  .p-notes-hero__wrapper {
    gap: 2.375rem;
    padding-inline: 1.5625rem
  }

  .p-notes-hero__banner-text {
    font-size: 1.5rem;
    padding: .5rem
  }

  .p-prize-modal__inner {
    width: min(50rem, 100%)
  }

  .p-prize-modal__close {
    top: 0;
    right: auto;
    bottom: auto;
    left: calc(100% + .5rem);
    width: 6.25rem;
    height: 6.25rem
  }

  .p-shop-hero__wrapper {
    gap: 4rem;
    padding-inline: 1.5625rem
  }

  .p-shop-hero__subtitle {
    font-size: 2rem
  }

  .p-shop-hero__title-wrapper {
    margin-block-start: .5rem
  }

  .p-shop-hero__banner {
    padding: .5rem .25rem
  }

  .p-shop-hero__banner-text {
    font-size: 1.5rem
  }

  .p-shop-list__block {
    padding: 2.875rem 4.0625rem 3.5rem
  }

  .p-shop-list__table-header {
    margin-block-start: 3.125rem
  }

  .p-shop-list__table-header-credit, .p-shop-list__table-header-paypay {
    width: 7.25rem;
    font-size: .875rem
  }

  .p-shop-list__list {
    grid-template-columns: 8.5625rem 7.1875rem auto 7.25rem 7.25rem
  }

  .p-shop-list__item-inner {
    padding: .5625rem 0;
    font-size: 1.25rem
  }

  .p-shop-list__date {
    padding-inline: .3125rem
  }

  .p-shop-list__area {
    align-self: auto;
    padding-inline: .3125rem
  }

  .p-shop-list__name {
    padding-inline-start: 1.6875rem
  }

  .p-shop-list__credit, .p-shop-list__paypay {
    align-self: auto
  }

  .p-shop-list__table-note {
    font-size: 1.25rem
  }

  .p-shop-list__notes {
    gap: 0;
    margin-top: 3rem
  }

  .p-shop-list__note {
    font-size: 1.25rem
  }

  .p-shop-menu {
    padding-block: 4rem
  }

  .p-shop-menu__wrapper {
    gap: 3rem
  }

  .p-shop-menu__heading-title {
    font-size: 4rem
  }

  .p-shop-menu__heading-subtitle {
    font-size: 1.25rem
  }

  .p-shop-menu__nav-list {
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 1.5rem
  }

  .p-shop-menu__nav-item {
    width: auto;
    flex: 1
  }

  .p-shop-menu__nav-link {
    height: 8.75rem
  }

  .p-shop-menu__nav-text {
    font-size: 2rem
  }

  .p-shop-promotion {
    padding-block: 5.6875rem 16.375rem
  }

  .p-shop-promotion__wrapper {
    padding: 2.5rem 2.5rem 2.9375rem;
    gap: 3rem
  }

  .p-shop-promotion__banner-text {
    padding: .5rem .3125rem;
    font-size: 1.25rem;
    line-height: 3.1
  }

  .p-shop-promotion__note {
    font-size: 1rem;
    margin-top: .4375rem
  }

  .p-shop-promotion__detail {
    flex-direction: row;
    align-items: flex-start;
    gap: 3rem
  }

  .p-shop-promotion__example {
    padding: .9375rem
  }

  .p-shop-promotion__example-text {
    font-size: 1rem
  }

  .p-shop-promotion__image {
    width: 8.0625rem
  }

  .p-top-hero {
    min-height: 50rem
  }

  .p-top-hero__character {
    width: 100%;
    max-width: 122.75rem
  }

  .p-top-hero__title {
    width: clamp(31.25rem, 56.40625vw, 67.6875rem);
    top: 10%;
    right: 6%
  }

  .p-top-menu {
    padding-block: 5rem
  }

  .p-top-menu__content {
    padding: 3.5rem 4rem 2.5rem
  }

  .p-top-menu__heading {
    gap: .75rem
  }

  .p-top-menu__heading-frame {
    padding: 1.75rem 7.5rem;
    min-width: 27.5rem
  }

  .p-top-menu__heading-en {
    font-size: 3rem
  }

  .p-top-menu__heading-ja {
    font-size: 1.25rem
  }

  .p-top-menu__nav-list {
    flex-wrap: nowrap;
    margin-block-start: 2rem
  }

  .p-top-menu__nav-item {
    width: 25%
  }

  .p-top-menu__nav-item:nth-child(2n) {
    margin-block-start: 5rem
  }

  .p-top-menu__nav-link {
    width: 12.5rem;
    height: 12.5rem
  }

  .p-top-menu__nav-text {
    font-size: 1.125rem
  }

  .p-top-news {
    padding-block: 7rem 8.75rem
  }

  .p-top-news:before {
    width: clamp(43.75rem, 79.2708333333vw, 95.125rem);
    height: clamp(43.75rem, 79.2708333333vw, 95.125rem)
  }

  .p-top-news__linear {
    width: clamp(185.625rem, 309.375vw, 371.25rem);
    height: 17.1875rem;
    -webkit-mask-size: 185.625rem 17.1875rem;
    mask-size: 185.625rem 17.1875rem
  }

  .p-top-news__linear[data-position=top] {
    top: -50%;
    left: 10%;
    animation: news-ticker-top 40s linear infinite
  }

  .p-top-news__linear[data-position=bottom] {
    bottom: -50%;
    right: 10%;
    animation: news-ticker-bottom 40s linear infinite
  }

  .p-top-news__wrapper {
    gap: 4.125rem
  }

  .p-top-news__heading {
    gap: .75rem
  }

  .p-top-news__heading-frame {
    padding: .75rem 5rem
  }

  .p-top-news__heading-en {
    font-size: 3rem
  }

  .p-top-news__heading-ja {
    font-size: 1.25rem
  }

  .p-top-news__list-block {
    max-height: 19.625rem;
    padding: .8125rem 4.375rem 3rem 2.3125rem
  }

  .p-top-news__list-block .simplebar-track {
    right: 1.25rem
  }

  .p-top-news__item-wrapper {
    gap: 1rem;
    flex-direction: row;
    padding-block: 1.4375rem 1.625rem
  }

  .p-top-news__date-wrapper {
    border-bottom: .125rem solid #c59a61
  }

  .p-top-news__date-icon {
    width: 1.5rem;
    height: 1.25rem
  }

  .p-top-news__date, .p-top-news__text {
    font-size: 1.25rem
  }

  .p-top-schedule {
    padding-block: 15.375rem 15.75rem
  }

  .p-top-schedule:before {
    background-image: url(../images/bg_schedule-BHS3Achm.png);
    background-image: image-set(url(../images/bg_schedule-BHS3Achm.avif) type("image/avif"), url(../images/bg_schedule-BHS3Achm.png) type("image/jpeg"));
  }

  .p-top-schedule__wrapper {
    gap: 4.125rem
  }

  .p-top-schedule__heading {
    gap: .5rem
  }

  .p-top-schedule__heading-en {
    font-size: 5rem
  }

  .p-top-schedule__heading-ja {
    font-size: 1.25rem
  }

  .p-top-schedule__tabs {
    row-gap: 3.9375rem
  }

  .p-top-schedule__tabs-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    width: min(64rem, 100%);
    margin-inline: auto
  }

  .p-top-schedule__tab:first-child {
    grid-column: auto
  }

  .p-top-schedule__tab {
    width: 20rem
  }

  .p-top-schedule__tab-label {
    font-size: 1.25rem
  }

  .p-top-schedule__timetable {
    min-height: 51.875rem
  }

  .p-top-schedule__block {
    padding: 2.5rem 2.5rem 3.125rem
  }

  .p-top-schedule__schedule-item {
    gap: 1.5rem;
    padding-block: .75rem
  }

  .p-top-schedule__schedule-content {
    margin-block-start: .4375rem
  }

  .p-top-schedule__schedule-time {
    padding: .5rem;
    font-size: 1.25rem;
    min-width: 9.25rem
  }

  .p-top-schedule__schedule-title {
    font-size: 1.25rem
  }

  .p-top-schedule__schedule-note {
    font-size: .875rem
  }

  .p-top-schedule__schedule-desc {
    flex-direction: row;
    flex-wrap: wrap;
    font-size: 1rem;
    gap: .25rem 1.125rem;
    margin-block-start: .5rem;
    padding-inline-start: 2.6875rem
  }

  .p-top-schedule__schedule-footer-note {
    font-size: 1rem;
    margin-block-start: 1.125rem
  }

  .p-top-venue {
    padding-block: clamp(3rem, 6.25vw, 7.5rem) clamp(3rem, 9.6875vw, 11.625rem)
  }

  .p-top-venue__bg:before {
    top: 4%;
    left: -10%;
    width: clamp(25rem, 41.875vw, 50.25rem);
    height: clamp(31.25rem, 59.0625vw, 70.875rem)
  }

  .p-top-venue__bg:after {
    top: 34%;
    right: -13%;
    width: clamp(25rem, 42.4479166667vw, 50.9375rem);
    height: clamp(31.25rem, 64.21875vw, 77.0625rem)
  }

  .p-top-venue__inner {
    padding-inline: 3.125rem;
    max-width: 100.9375rem
  }

  .p-top-venue__wrapper {
    gap: clamp(3rem, 4.6875vw, 5.625rem)
  }

  .p-top-venue__heading {
    gap: clamp(.5rem, .625vw, .75rem)
  }

  .p-top-venue__heading-frame {
    padding: clamp(.5rem, .625vw, .75rem) clamp(3rem, 4.1666666667vw, 5rem)
  }

  .p-top-venue__heading-en {
    font-size: clamp(10px, 2.5vw, 3rem)
  }

  .p-top-venue__heading-ja {
    font-size: clamp(10px, 1.0416666667vw, 1.25rem)
  }

  .p-top-venue__content {
    padding-inline: clamp(3.125rem, 13.0990415335vw, 12.8125rem) clamp(3.125rem, 13.9297124601vw, 13.625rem);
    padding-block: clamp(3.125rem, 8.3067092652vw, 8.125rem) clamp(3.125rem, 8.3067092652vw, 8.125rem)
  }

  .p-top-venue__content-block {
    flex-direction: row;
    gap: clamp(1.25rem, 1.8229166667vw, 2.1875rem);
    width: 100%;
    margin-inline: unset
  }

  .p-top-venue__japan {
    width: clamp(18.75rem, 28.8020833333vw, 34.5625rem)
  }

  .p-top-venue__pin {
    gap: clamp(.125rem, .2083333333vw, .25rem)
  }

  .p-top-venue__pin-icon {
    width: clamp(1.5625rem, 2.2395833333vw, 2.6875rem);
    height: auto
  }

  .p-top-venue__pin-city {
    font-size: clamp(10px, 1.25vw, 1.5rem);
    line-height: 1.2
  }

  .p-top-venue__pin-date {
    font-size: clamp(10px, 1.25vw, 1.5rem);
    margin-block-start: .125rem
  }

  .p-top-venue__pin[data-city=sapporo] {
    top: 12.5%;
    left: 38%
  }

  .p-top-venue__pin[data-city=sapporo] .p-top-venue__pin-icon {
    top: 43%;
    right: -39%
  }

  .p-top-venue__pin[data-city=sendai] {
    top: 38%;
    left: 74%
  }

  .p-top-venue__pin[data-city=sendai] .p-top-venue__pin-icon {
    top: 45%;
    left: -42%
  }

  .p-top-venue__pin[data-city=tokyo] {
    top: 56%;
    left: 69%
  }

  .p-top-venue__pin[data-city=tokyo] .p-top-venue__pin-icon {
    top: 21%;
    left: -40%
  }

  .p-top-venue__pin[data-city=nagoya] {
    top: 73%;
    left: 47%
  }

  .p-top-venue__pin[data-city=nagoya] .p-top-venue__pin-icon {
    top: -82%;
    left: -1%
  }

  .p-top-venue__pin[data-city=kyoto] {
    top: 50%;
    left: 21%
  }

  .p-top-venue__pin[data-city=kyoto] .p-top-venue__pin-icon {
    top: 125%;
    left: 68%
  }

  .p-top-venue__pin[data-city=kitakyushu] {
    top: 62%;
    left: -15%
  }

  .p-top-venue__pin[data-city=kitakyushu] .p-top-venue__pin-icon {
    top: 101%;
    left: 84%
  }

  .p-top-venue__list {
    gap: clamp(.5rem, .8854166667vw, 1.0625rem);
    flex: 1
  }

  .p-top-venue__link {
    padding: clamp(10px, .9375vw, 1.125rem) clamp(.5rem, .78125vw, .9375rem) clamp(10px, .9375vw, 1.125rem) clamp(.1875rem, .2604166667vw, .3125rem);
    font-size: clamp(10px, .8333333333vw, 1rem);
    gap: 0
  }

  .p-top-venue__date {
    font-size: clamp(10px, .8333333333vw, 1rem);
    padding-inline: .3125rem;
    width: 7.5rem
  }

  .p-top-venue__city {
    font-size: clamp(10px, .8333333333vw, 1rem);
    width: 5rem;
    padding-inline: .3125rem
  }

  .p-top-venue__venue-text {
    padding-inline-start: clamp(.375rem, .5729166667vw, .6875rem)
  }

  .p-top-venue__arrow {
    width: 1rem;
    height: 1rem
  }

  .p-top-venue__note {
    font-size: clamp(10px, .8333333333vw, 1rem)
  }

  .p-tournaments-content {
    padding-block: 0 16.25rem
  }

  .p-tournaments-content__entry-frame {
    max-width: 68rem;
    margin-inline: auto;
    padding: 3.875rem 5.875rem
  }

  .p-tournaments-content__entry {
    text-align: center
  }

  .p-tournaments-content__entry-desc {
    font-size: 1.25rem
  }

  .p-tournaments-content__entry-btn {
    max-width: 30rem;
    border-radius: 2.5rem;
    font-size: 1.5rem;
    gap: 1rem;
    margin-top: 1.5625rem;
    padding: 1.625rem 1rem
  }

  .p-tournaments-content__entry-btn:before {
    width: 20.625rem;
    height: 22.8125rem
  }

  .p-tournaments-content__entry-btn span {
    font-size: 1.5rem
  }

  .p-tournaments-content__entry-btn span:after {
    width: 1rem;
    height: 1rem
  }

  .p-tournaments-content__entry-note {
    font-size: 1rem;
    margin-top: 1.5rem
  }

  .p-tournaments-content__ornament {
    margin-top: 2.625rem
  }

  .p-tournaments-content__ornament img {
    width: 6.625rem
  }

  .p-tournaments-content__deck-text {
    align-items: center;
    margin-top: 2.5rem
  }

  .p-tournaments-content__deck-note {
    font-size: 1.25rem
  }

  .p-tournaments-content__tab-section {
    gap: 4rem
  }

  .p-tournaments-content__tabs {
    gap: 1.5rem 2rem;
    max-width: 56.5rem;
    margin-top: 5.9375rem;
    margin-inline: auto
  }

  .p-tournaments-content__tab {
    width: 17.5rem;
    height: 4rem;
    border-radius: 2rem;
    font-size: 1rem
  }

  .p-tournaments-content__tab:before {
    height: 7.5rem
  }

  .p-tournaments-content__panel {
    padding: 2.875rem 2.5rem 3.5rem
  }

  .p-tournaments-content__panel-header {
    gap: 1.6875rem;
    padding: 0
  }

  .p-tournaments-content__panel-heading {
    font-size: 2.25rem;
    letter-spacing: 0
  }

  .p-tournaments-content__panel-logo {
    width: min(100%, 14.625rem)
  }

  .p-tournaments-content__panel-lead {
    font-size: 1.25rem
  }

  .p-tournaments-content__panel-body {
    gap: 2.5rem;
    margin-top: 2rem;
    padding: 0rem
  }

  .p-tournaments-content__subsection {
    gap: .9375rem
  }

  .p-tournaments-content__subsection-heading {
    gap: .375rem;
    letter-spacing: .15em;
    padding: .75rem .625rem
  }

  .p-tournaments-content__prize {
    gap: 1rem;
    width: min(100%, 12.625rem)
  }

  .p-tournaments-content__prize-label {
    font-size: 1rem
  }

  .p-tournaments-content__prize-image img {
    aspect-ratio: 202/145
  }

  .p-tournaments-content__winner-cards {
    gap: 1.5rem 2rem
  }

  .p-tournaments-content__winner-card {
    width: min(100%, 12.625rem)
  }

  .p-tournaments-content__winner-rank {
    font-size: 1rem
  }

  .p-tournaments-content__text-group+.p-tournaments-content__text-group {
    margin-block-start: .75rem
  }

  .p-tournaments-content__text {
    font-size: 1rem
  }

  .p-tournaments-content__pr-images, .p-tournaments-content__victory-images {
    width: min(100%, 50rem);
    margin-top: 1.25rem
  }

  .p-tournaments-content__numbered-list {
    margin-top: 1.0625rem
  }

  .p-tournaments-content__numbered-item {
    font-size: 1rem
  }

  .p-tournaments-content__ruled-box {
    margin-top: .4375rem;
    width: min(100%, 39.1875rem)
  }

  .p-tournaments-content__regulation {
    margin-top: 3.9375rem;
    padding: 3rem 3rem 5rem
  }

  .p-tournaments-content__regulation-heading {
    padding: .5rem;
    font-size: 1.5rem
  }

  .p-tournaments-content__regulation-list {
    margin-block-start: 1.0625rem
  }

  .p-tournaments-content__regulation-item {
    font-size: 1rem
  }

  .p-tournaments-content__back-to-top {
    margin-block-start: 4rem
  }

  .p-tournaments-content__back-to-top-link {
    width: 30rem;
    height: 5rem
  }

  .p-tournaments-content__back-to-top-text {
    font-size: 1.5rem
  }

  .p-tournaments-content__back-to-top-arrow {
    right: 2.5rem;
    font-size: 1rem
  }

  .p-tournaments-hero__wrapper {
    gap: 3rem
  }

  .p-tournaments-hero__banner-text {
    padding: .5rem 1rem;
    font-size: 1.5rem;
    line-height: 2.5
  }

  [data-fadein="200"] {
    transition-delay: .2s
  }

  [data-fadein="400"] {
    transition-delay: .4s
  }

  [data-fadein="600"] {
    transition-delay: .6s
  }

  .u-pc {
    display: block;
    display: revert
  }

  .u-sp {
    display: none
  }
}

@media (min-width: 1150px) {
  html {
    font-size: 16px
  }
}

@media (max-width: 414px) {
  html {
    font-size: 3.8647342995vw;
    font-size: 3.8647342995cqi
  }
}

@media (any-hover: hover) {
  a:hover, .c-link:hover, .c-link:hover .c-link__icon {
    opacity: .7
  }

  .c-menu-button:hover {
    opacity: 1;
    filter: brightness(1.2)
  }

  .p-drawer__logo:hover {
    opacity: 1
  }

  .p-drawer__logo:hover img {
    filter: brightness(1.2)
  }

  .p-drawer__nav-item-link:hover {
    opacity: 1;
    color: #e09835
  }

  .p-footer__top:hover {
    opacity: 1;
    transform: translateY(-10px)
  }

  .p-footer__logo-link:hover {
    opacity: 1;
    filter: brightness(1.2)
  }

  .p-footer__nav-link:hover {
    opacity: 1
  }

  .p-footer__nav-link:hover img {
    opacity: 1;
    transform: translateY(-3px);
    filter: drop-shadow(0 0 1rem rgba(0, 0, 0, .25)) brightness(1.1)
  }

  .p-footer__policy-link:hover {
    opacity: 1;
    border-bottom: .0625rem solid var(--color-orange)
  }

  .p-footer__policy-link:hover .p-footer__policy-text {
    color: var(--color-orange)
  }

  .p-footer__policy-link:hover:after {
    background-color: var(--color-orange)
  }

  .p-guests-stage__tab:hover {
    opacity: 1
  }

  .p-header__menu-button:hover:before {
    animation-play-state: paused
  }

  .p-top-menu__nav-link:hover {
    opacity: .7
  }

  .p-top-schedule__tab:hover {
    opacity: 1
  }

  .p-top-venue__link:hover {
    opacity: 1;
    color: #dbb481
  }

  .p-top-venue__link:hover .p-top-venue__arrow {
    background-color: #dbb481
  }

  .p-tournaments-content__entry-btn:hover {
    opacity: 1;
    border-color: #fff;
    box-shadow: 0 .375rem 1.5rem #0006
  }

  .p-tournaments-content__tab--neostandard:hover {
    background-color: #0d3387
  }

  .p-tournaments-content__tab--trio:hover {
    background-color: #ae1e25
  }

  .p-tournaments-content__tab--title:hover {
    background-color: #01773c
  }

  .p-tournaments-content__tab--flight:hover {
    background-color: #d59607
  }

  .p-tournaments-content__tab--free:hover {
    background-color: #db5111
  }

  .p-tournaments-content__tab--standard:hover {
    background-color: #0d5e87
  }

  .p-tournaments-content__tab:hover {
    opacity: 1;
    border-color: var(--color-gold)
  }

  .p-tournaments-content__prize-image:hover img {
    filter: brightness(1.1)
  }

  .p-tournaments-content__back-to-top-link:hover {
    opacity: 1;
    border-color: #fff;
    box-shadow: 0 .375rem 1.5rem #0006
  }
}

@media (forced-colors: active) {
  :where(mark) {
    background-color: Highlight;
    color: HighlightText
  }
}

@media (prefers-reduced-motion: reduce) {
  [data-fadein] {
    transition: none !important;
    opacity: 1 !important;
    transform: none !important
  }
}

@media print {
  :where(mark) {
    border-width: 1px;
    border-style: dotted
  }
}

/* --- PR画像のサイズと上部余白の調整 --- */

.p-tournaments-content__pr-image,
.p-tournaments-content__victory-image {
  max-width: 600px !important;
  /* 画像の最大幅（お好みのサイズに変更してください） */
  margin-top: 2.5rem !important;
  /* 上部の余白（2.5rem = 約40px） */
  margin-left: 0 !important;
  /* 左寄せにする */
}

/* --- タブレットサイズ（768px ～ 1450px）の余白調整 --- */
@media screen and (min-width: 768px) and (max-width: 1450px) {
  .p-top-hero {
    min-height: 42rem !important;
  }

  .l-top-news {
    margin-top: -4rem !important;
  }
}

/* --- スマホ〜タブレット縦（〜768px）のキャラクター画像サイズ調整 --- */
@media screen and (max-width: 768px) {
  .p-top-hero__character {
    max-width: 100% !important;
    /* 元の 31.25rem (約500px) の制限を解除し、画面幅の100%まで拡大させる */
  }
}

/* --- 親コンテナ：左右のアイテムの高さを揃える --- */
.p-tournaments-content__prizes {
  align-items: stretch !important;
}

/* --- カード枠：幅制限を解除してテキストを1行で収める --- */
.p-tournaments-content__prize {
  width: auto !important;
  /* ← ここが最大のポイント！元の幅制限を解除 */
  display: flex !important;
  flex-direction: column !important;
}

/* --- 画像：テキスト幅に引っ張られて巨大化しないよう元のサイズに固定し、下揃えにする --- */
.p-tournaments-content__prize-image {
  width: 10.6875rem !important;
  /* 元のカード幅（約171px）を維持 */
  margin-top: auto !important;
  /* 枠の一番下に押し込むことで、左右の画像の上端をピッタリ合わせる */
}

/* --- 黒文字ラベルと赤文字テキストの余白を詰める --- */
.p-tournaments-content__prize-label+.u-color__red {
  margin-top: -0.8rem !important;
  /* マイナスの値で上に引き上げる */
}

/* --- スマホ表示（SP）時：カードが縦積みになった際の縦の余白を広げる --- */
@media screen and (max-width: 767px) {
  .p-tournaments-content__prizes {
    row-gap: 1.5rem !important;
    /* 縦の余白だけを広げる（約24px） */
  }
}

/* --- PR画像一覧と直下の赤字テキスト（注釈）の間の余白調整 --- */
.p-tournaments-content__pr-images + .p-tournaments-content__note.u-color__red,
.p-tournaments-content__victory-images + .p-tournaments-content__note.u-color__red {
  margin-top: 1.5rem !important;
}

/* --- テキストと画像を交互に縦積みする際の余白調整 --- */
.p-tournaments-content__text--stacked {
  margin-top: 1rem;
}

.p-tournaments-content__prize--stacked {
  margin-top: 0.5rem;
}

/* --- PC表示時の入賞カードのレイアウト調整 --- */
@media screen and (min-width: 768px) {
  .p-tournaments-content__winner-cards {
    justify-content: flex-start !important;
    gap: 1.5rem 2rem !important; /* 横の余白。もしこれでも広いと感じたら 1rem に変更してください */
  }

  .p-tournaments-content__winner-card {
    /* ▼ 変更箇所：calcでの引き伸ばしをやめて、元の202px(12.625rem)に完全固定します ▼ */
    width: 12.625rem !important; 
  }

  .p-tournaments-content__prize-image {
    width: 100% !important;
    max-width: 12.625rem !important;
    margin-top: 0 !important;
  }
}

/* --- テキスト量に関わらず画像の位置（上端・下端）を揃える --- */
.p-tournaments-content__prizes {
  align-items: stretch !important; /* 左右の枠の高さを同じに揃える */
}

.p-tournaments-content__prize {
  display: flex !important;
  flex-direction: column !important; /* 枠の中身を縦並びにする */
}

.p-tournaments-content__prize-image {
  margin-top: auto !important; /* 画像の上の余白を自動計算し、画像を一番下に押し込む */
}

/* =========================================
   4人フライトトーナメント のカラー変更（#E9BA00）
   ========================================= */
/* タブの背景色（アクティブ時、ホバー時など） */
.p-tournaments-content__tab--flight.is-active,
.p-tournaments-content__tab--flight:hover,
.p-tournaments-content__tab--flight:focus-visible {
  background-color: #E9BA00 !important;
}

/* パネル最上部の見出し・リード文の文字色 */
#panel-flight .p-tournaments-content__panel-heading,
#panel-flight .p-tournaments-content__panel-lead {
  color: #E9BA00 !important;
}

/* 各セクション見出しの背景色 */
#panel-flight .p-tournaments-content__subsection-heading {
  background-color: #E9BA00 !important;
  color: #ffffff !important; /* 文字色は白で固定 */
}

/* =========================================
   スタンダード のカラー変更（#0796DD）
   ========================================= */
/* タブの背景色（アクティブ時、ホバー時など） */
.p-tournaments-content__tab--standard.is-active,
.p-tournaments-content__tab--standard:hover,
.p-tournaments-content__tab--standard:focus-visible {
  background-color: #0796DD !important;
}

/* パネル最上部の見出し・リード文の文字色 */
#panel-standard .p-tournaments-content__panel-heading,
#panel-standard .p-tournaments-content__panel-lead {
  color: #0796DD !important;
}

/* 各セクション見出しの背景色 */
#panel-standard .p-tournaments-content__subsection-heading {
  background-color: #0796DD !important;
  color: #ffffff !important; /* 文字色は白で固定 */
}

/* --- ルールボックス全体の行間調整 --- */
.p-tournaments-content__ruled-box {
  line-height: 1.5 !important; /* ボックス内の文章全体の行間を 2 から 1.5 に縮める */
}

/* （必要であれば）段落やリスト同士の隙間を少し開ける */
.p-tournaments-content__ruled-box p {
  margin-bottom: 0.5rem; /* 段落の下に少し余白を作る */
}
.p-tournaments-content__ruled-box p:last-of-type {
  margin-bottom: 0; /* 最後の段落の下は余白を消す */
}

