@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;700&display=swap');
[data-view='>sm'],
[data-view='sm'] {
    display: none;
}

[data-view='<sm'] {
    display: none;
}

[data-view='>md'],
[data-view='md'] {
    display: none;
}

[data-view='<md'] {
    display: none;
}

[data-view='>lg'],
[data-view='lg'] {
    display: none;
}

[data-view='<lg'] {
    display: none;
}

[data-view='>xl'],
[data-view='xl'] {
    display: none;
}

[data-view='<xl'] {
    display: none;
}

[data-view='>xxl'],
[data-view='xxl'] {
    display: none;
}

[data-view='<xxl'] {
    display: none;
}
/* stylelint-disable */
/* Document
 * ========================================================================== */
/**
 * 1. Add border box sizing in all browsers (opinionated).
 * 2. Backgrounds do not repeat by default (opinionated).
 */
*,
::before,
::after {
    box-sizing: border-box;
    /* 1 */
    background-repeat: no-repeat;
    /* 2 */
}

/**
 * 1. Add text decoration inheritance in all browsers (opinionated).
 * 2. Add vertical alignment inheritance in all browsers (opinionated).
 */
::before,
::after {
    text-decoration: inherit;
    /* 1 */
    vertical-align: inherit;
    /* 2 */
}

/**
 * 1. Use the default cursor in all browsers (opinionated).
 * 2. Change the line height in all browsers (opinionated).
 * 3. Breaks words to prevent overflow in all browsers (opinionated).
 * 4. Use a 4-space tab width in all browsers (opinionated).
 * 5. Remove the grey highlight on links in iOS (opinionated).
 * 6. Prevent adjustments of font size after orientation changes in iOS.
 */
:where(:root) {
    cursor: default;
    /* 1 */
    line-height: 1.5;
    /* 2 */
    overflow-wrap: break-word;
    /* 3 */
    /* 4 */
    tab-size: 4;
    /* 4 */
    -webkit-tap-highlight-color: transparent;
    /* 5 */
    -webkit-text-size-adjust: 100%;
    /* 6 */
}

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

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Edge, Firefox, and Safari.
 */
:where(h1) {
    font-size: 2em;
    margin: 0.67em 0;
}

/* Grouping content
 * ========================================================================== */
/**
 * Remove the margin on nested lists in Chrome, Edge, and Safari.
 */
:where(dl, ol, ul) :where(dl, ol, ul) {
    margin: 0;
}

/**
 * 1. Correct the inheritance of border color in Firefox.
 * 2. Add the correct box sizing in Firefox.
 */
:where(hr) {
    color: inherit;
    /* 1 */
    height: 0;
    /* 2 */
}

/**
 * Remove the list style on navigation lists in all browsers (opinionated).
 */
:where(nav) :where(ol, ul) {
    list-style-type: none;
    padding: 0;
}

/**
 * Prevent VoiceOver from ignoring list semantics in Safari (opinionated).
 */
:where(nav li)::before {
    content: '​';
    float: left;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 * 3. Prevent overflow of the container in all browsers (opinionated).
 */
:where(pre) {
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
    overflow: auto;
    /* 3 */
}

/* Text-level semantics
 * ========================================================================== */
/**
 * Add the correct text decoration in Safari.
 */
:where(abbr[title]) {
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
            text-decoration: underline dotted;
}

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

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

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

/* Embedded content
 * ========================================================================== */
/*
 * Change the alignment on media elements in all browsers (opinionated).
 */
:where(audio, canvas, iframe, img, svg, video) {
    vertical-align: middle;
}

/**
 * Remove the border on iframes in all browsers (opinionated).
 */
:where(iframe) {
    border-style: none;
}

/**
 * Change the fill color to match the text color in all browsers (opinionated).
 */
:where(svg:not([fill])) {
    fill: currentColor;
}

/* Tabular data
 * ========================================================================== */
/**
 * 1. Collapse border spacing in all browsers (opinionated).
 * 2. Correct table border color inheritance in all Chrome, Edge, and Safari.
 * 3. Remove text indentation from table contents in Chrome, Edge, and Safari.
 */
:where(table) {
    border-collapse: collapse;
    /* 1 */
    border-color: inherit;
    /* 2 */
    text-indent: 0;
    /* 3 */
}

/* Forms
 * ========================================================================== */
/**
 * Remove the margin on controls in Safari.
 */
:where(button, input, select) {
    margin: 0;
}

/**
 * Correct the inability to style buttons in iOS and Safari.
 */
:where(button, [type='button' i], [type='reset' i], [type='submit' i]) {
    -webkit-appearance: button;
}

/**
 * Change the inconsistent appearance in all browsers (opinionated).
 */
:where(fieldset) {
    border: 1px solid #a0a0a0;
}

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

/**
 * 1. Remove the margin in Firefox and Safari.
 * 3. Change the resize direction in all browsers (opinionated).
 */
:where(textarea) {
    margin: 0;
    /* 1 */
    resize: vertical;
    /* 3 */
}

/**
 * 1. Correct the odd appearance in Chrome, Edge, and Safari.
 * 2. Correct the outline style in Safari.
 */
:where([type='search' i]) {
    -webkit-appearance: textfield;
    /* 1 */
    outline-offset: -2px;
    /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Safari.
 */
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
    height: auto;
}

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */
::-webkit-input-placeholder {
    color: inherit;
    opacity: 0.54;
}

/**
 * Remove the inner padding in Chrome, Edge, and Safari on macOS.
 */
::-webkit-search-decoration {
    -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style upload buttons in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
    -webkit-appearance: button;
    /* 1 */
    font: inherit;
    /* 2 */
}

/* Interactive
 * ========================================================================== */
/*
 * Add the correct styles in Safari.
 */
:where(dialog) {
    background-color: white;
    border: solid;
    color: black;
    height: -moz-fit-content;
    height: -webkit-fit-content;
    height: fit-content;
    left: 0;
    margin: auto;
    padding: 1em;
    position: absolute;
    right: 0;
    width: -moz-fit-content;
    width: -webkit-fit-content;
    width: fit-content;
}

:where(dialog:not([open])) {
    display: none;
}

/*
 * Add the correct display in Safari.
 */
:where(details > summary:first-of-type) {
    display: list-item;
}

/* Accessibility
 * ========================================================================== */
/**
 * Change the cursor on busy elements in all browsers (opinionated).
 */
:where([aria-busy='true' i]) {
    cursor: progress;
}

/*
 * Change the cursor on control elements in all browsers (opinionated).
 */
:where([aria-controls]) {
    cursor: pointer;
}

/*
 * Change the cursor on disabled, not-editable, or otherwise
 * inoperable elements in all browsers (opinionated).
 */
:where([aria-disabled='true' i], [disabled]) {
    cursor: not-allowed;
}

/*
 * Change the display on visually hidden accessible elements
 * in all browsers (opinionated).
 */
:where([aria-hidden='false' i][hidden]) {
    display: initial;
}

:where([aria-hidden='false' i][hidden]:not(:focus)) {
    clip: rect(0, 0, 0, 0);
    position: absolute;
}

/* stylelint-enable */
:root {
    --base-red: #bb0014;
    --accent-red: #ff0000;
}

html {
    scroll-behavior: smooth;
}
body {
    height: 100%;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    background-color: var(--base-red);
}

@keyframes gradient {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}
h1,
h2,
h3,
h4,
h5,
h6,
p,
dl,
dt,
dd {
    padding: 0;
    margin: 0;
    font-size: 1rem;
}

figure {
    margin: 0;
    text-align: center;
}

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

.page-top {
    position: fixed;
    right: 2.75em;
    bottom: 16vw;
    z-index: 99;
}
.page-top button {
    cursor: pointer;
    -webkit-appearance: none;
            appearance: none;
    border: 0;
    padding: 0;
    margin: 0;
    background-color: transparent;
}

.u-mt8 {
    margin-top: 2em;
}

.u-link {
    display: inline-block;
    pointer-events: auto;
    cursor: pointer;
}
.u-link.is-disable {
    pointer-events: none;
    cursor: auto;
}

.u-outer-glow {
    text-shadow: 0 0 0.18em rgba(255, 255, 255, 0.67),
        -0.18em -0.18em 0.34em var(--accent-red),
        0.18em -0.18em 0.34em var(--accent-red),
        0.18em 0.18em 0.34em var(--accent-red),
        -0.18em 0.18em 0.34em var(--accent-red);
}

.u-box-glow {
    box-shadow: 0 0 0.18em rgba(255, 255, 255, 0.67),
        -0.18em -0.18em 0.34em var(--accent-red),
        0.18em -0.18em 0.34em var(--accent-red),
        0.18em 0.18em 0.34em var(--accent-red),
        -0.18em 0.18em 0.34em var(--accent-red);
}

.view-wrapper {
    position: relative;
    background-color: var(--base-red);
    background-image: url('./images/viewwrap-bg.png');
    background-repeat: repeat;
    background-size: auto;
}

.header-content {
    position: relative;
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    max-width: 750px;
    margin: 0 auto 0;
    z-index: 100;
    background-color: var(--base-red);
}

.header-button {
    position: fixed;
    top: 0;
    display: flex;
    flex-flow: row nowrap;
    align-items: flex-start;
    justify-content: flex-end;
    background-image: linear-gradient(
        45deg,
        transparent 50%,
        rgba(0, 0, 0, 0.8) 50%
    );
    width: 183px;
    height: 183px;
    padding: 10px;
    z-index: 3;
}

.header-nav {
    position: relative;
    z-index: 2;
}
.header-nav.is-active .u-nav-list {
    opacity: 1;
    transform: scaleY(1) translateX(-50%);
}
.header-nav .u-nav-list {
    position: fixed;
    top: 0;
    left: 50%;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: flex-end;
    transform: scaleY(0) translateX(-50%);
    transition-property: transform, opacity;
    transition-duration: 360ms;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transform-origin: top;
    width: 100%;
    max-width: 750px;
    padding: 183px 0 16vw 0;
    margin: 0 auto;
    background-image: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0.77) 92%,
        rgba(0, 0, 0, 0) 100%
    );
    opacity: 0;
}
.header-nav .u-nav-list > .game-logo {
    position: absolute;
    top: 0;
    left: 10px;
}
.header-nav .u-nav-list > .nav-link {
    height: calc(100vh - 286px);
    overflow-y: scroll;
    margin: 0 auto;
}
.header-nav .u-nav-list > .nav-link > .item {
    width: 93.2vw;
    height: auto;
    margin-right: auto;
    margin-left: auto;
    text-align: center;
}
.header-nav .u-nav-list > .nav-link > .item + .item {
    margin-top: 1.25em;
}
.header-nav .u-nav-list > .nav-link > .item.-now {
    position: relative;
}
.header-nav .u-nav-list > .nav-link > .item.-now ::before {
    position: absolute;
    top: -0.25em;
    left: 1.25em;
    content: url('./images/u-nav-list_now-badge.png');
    display: block;
    width: 17.733vw;
    height: 6.533vw;
    font-size: 125%;
    color: #ff0000;
    font-size: 4.8vw;
    text-decoration: none;
    text-shadow: 0 0 5px rgba(255, 255, 255, 0.88), -2px -1px 2px #ffffff,
        2px -1px 2px #ffffff, 2px 1px 2px #ffffff, -2px 1px 2px #ffffff;
}
.header-nav .u-nav-list > .nav-link > .item > .u-link.is-disable {
    opacity: 0.4;
}

.u-menu-button {
    width: 5rem;
    padding: 0;
    margin: 0;
    -webkit-appearance: none;
            appearance: none;
    background-color: transparent;
    border: none;
}
.u-menu-button svg,
.u-menu-button img {
    max-width: 100%;
    height: auto;
    object-fit: contain;
}
.u-menu-button.is-open + .u-nav-list {
    position: absolute;
    display: flex;
}

.u-toggle-icon {
    --animation-duration: 260ms;
    position: relative;
    width: 100%;
    height: auto;
    padding: 0;
    margin: 0;
    object-fit: contain;
}
.u-toggle-icon > [class^='u-icon_'] {
    position: absolute;
    width: 100%;
    transition: opacity 0s calc(var(--animation-duration) / 2),
        transform var(--animation-duration);
    transform-origin: center center;
}
.u-toggle-icon > .u-icon-pre {
    opacity: 1;
    transform: scale(1);
}
.u-toggle-icon > .u-icon_post {
    opacity: 0;
    transform: scale(0.88);
}
.u-toggle-icon.is-open > .u-icon_pre {
    opacity: 0;
    transform: scale(0.88);
}
.u-toggle-icon.is-open > .u-icon_post {
    opacity: 1;
    transform: scale(1);
}

section.keyvisual {
    text-align: center;
    background-color: var(--base-red);
}
section.keyvisual > .arrow {
    padding: 0;
    margin: 0.75em 0 1em;
    min-height: 8rem;
    background-image: url('./images/scroll-arrow.png');
    background-size: auto;
    background-position: center bottom 1.75em;
    background-repeat: no-repeat;
    animation: arrows 1360ms cubic-bezier(0.215, 0.61, 0.355, 1) normal infinite;
}
section.keyvisual > .arrow > .caption {
    font-size: 3.467vw;
    font-style: italic;
}

@keyframes arrows {
    0% {
        background-position: center bottom 1.75em;
    }
    100% {
        background-position: center bottom 0px;
    }
}
.c-sub-section_content.-dark {
    background-color: rgba(0, 0, 0, 0.8);
}
.c-sub-section_content.-dark:not(.-border) {
    max-width: 92vw;
    margin-right: auto;
    margin-left: auto;
}
.c-sub-section_content.-border {
    padding: 4.667vw 0 8vw;
    text-align: center;
    background-color: transparent;
    background-image: url('./images/content-bg.png');
    background-repeat: repeat-y;
    background-size: 710px 1px;
    background-position: center top;
}

section.intro {
    text-align: center;
}
section.intro > .title {
    padding: 14.133vw 0 4.267vw;
}
section.intro > .description {
    padding: 10.667vw 0;
    background-image: url('./images/intro_bg.png');
    background-position: center top;
    background-repeat: no-repeat;
    background-size: contain;
}
section.intro > .description > .text {
    margin: 0;
    color: #ffffff;
    font-style: italic;
    font-weight: 700;
    font-size: 4vw;
    line-height: 2;
    letter-spacing: -0.02em;
}
section.intro > .description > .text + .text {
    margin-top: 1.875em;
}

section.video-clip {
    padding: 4.75em 0 2.75em;
    text-align: center;
}
section.video-clip .ytb-wrap {
    position: relative;
    width: 92.533vw;
    height: 52.4vw;
    margin: 0 auto;
    border: solid 6px #ffffff;
    box-shadow: 0 0 0.18em rgba(255, 255, 255, 0.67),
        -0.18em -0.18em 0.34em var(--accent-red),
        0.18em -0.18em 0.34em var(--accent-red),
        0.18em 0.18em 0.34em var(--accent-red),
        -0.18em 0.18em 0.34em var(--accent-red);
}
section.video-clip .ytb-wrap > iframe {
    width: 100%;
    height: 100%;
    box-shadow: inset 0 0 0.18em rgba(255, 255, 255, 0.67),
        inset -0.18em -0.18em 0.34em var(--accent-red),
        inset 0.18em -0.18em 0.34em var(--accent-red),
        inset 0.18em 0.18em 0.34em var(--accent-red),
        inset -0.18em 0.18em 0.34em var(--accent-red);
}
section.schedule {
    text-align: center;
    padding: 6.4vw 0 7.467vw;
}

section.anchor {
    width: 100%;
    height: 12.8vw;
    margin: 3.733vw 0;
}
section.anchor > .list {
    position: static;
    display: flex;
    width: 100%;
    height: 6em;
    max-width: 750px;
    padding: 0;
    margin: 0 auto;
    transition: opacity 360ms ease, transform 220ms ease;
    border-top: 3px solid rgba(255, 255, 255, 0.67);
    background-image: linear-gradient(
        0deg,
        #949494,
        #b8b8b8 40%,
        #ffffff 47%,
        #8b8b8b 100%
    );
    box-shadow: 0 0 18px -9px rgba(0, 0, 0, 0.34);
}
section.anchor > .list.is-active {
    position: fixed;
    bottom: 0;
    opacity: 1;
    transform: scaleY(1);
    z-index: 1000;
}
section.anchor > .list > .item {
    display: block;
    width: 20%;
    height: 100%;
}
section.anchor > .list > .item:nth-of-type(n + 2) {
    border-left: 2px solid #666;
}
section.anchor > .list > .item > .u-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    transition: background-color 280ms ease-in-out;
}

section.copy .description {
    margin: 1.25em 0;
    text-align: center;
}
section.copy .description > .text {
    font-size: 4vw;
    font-style: italic;
    font-weight: 700;
}

section.reward > .copy .description {
    margin: 1.25em 0;
    text-align: center;
}
section.reward > .copy .description > .text {
    font-size: 4vw;
    font-style: italic;
    font-weight: 700;
}
section.reward .title {
    text-align: center;
}
section.reward .sub-section .sub-section_content {
    padding-top: 8vw;
}
section.reward .sub-section .sub-section_content + .sub-section_content {
    padding-top: 0;
}
section.reward .sub-section .sub-section_heading {
    margin-top: 1.25em;
    color: #ffffff;
    font-size: 2.25em;
    font-weight: 700;
    font-style: italic;
    text-align: center;
}
section.reward .sub-section .label {
    display: inline-block;
    padding: 0.34em 1.25em;
    margin: 0 auto;
    font-size: 4.267vw;
    font-style: italic;
    font-weight: 700;
    line-height: 1;
    border-radius: 9999px;
    color: #111111;
    background-color: #ffffff;
}
section.reward .sub-section .description + .label {
    margin-top: 2.133vw;
}
section.reward .sub-section figure + .label {
    margin-top: 4.267vw;
}
section.reward .sub-section .heading {
    padding: 0.67em 0 0.5em;
    text-align: center;
    font-size: 4.8vw;
    font-style: italic;
    font-weight: 700;
}
section.reward .sub-section .description {
    padding: 3.75em 0 0;
    margin: 0 auto;
    text-align: center;
}
section.reward .sub-section .description > .text {
    font-size: 4vw;
    font-style: italic;
    font-weight: 700;
}
section.reward .sub-section .notes {
    padding: 1.75em 3.75em 1em;
    text-align: left;
}
section.reward .sub-section .notes > span {
    display: block;
    font-size: 3.2vw;
    line-height: 1.6;
    text-indent: -1em;
    padding-left: 1em;
}

section.mvp {
    padding: 21.333vw 0 0;
}
section.mvp .title {
    text-align: center;
}
section.mvp .description {
    padding: 4vw 0;
    margin: 0 auto;
    text-align: center;
}
section.mvp .description > .text {
    font-size: 4vw;
    font-style: italic;
    font-weight: 700;
}
section.mvp > .plain-list {
    max-width: 690px;
    padding: 0 0 0 3em;
    margin: 1.75em auto;
}
section.mvp > .plain-list > .item {
    padding: 0;
    margin: 0;
    font-size: 3.2vw;
    font-weight: 700;
    line-height: 1.6;
}
section.mvp .sub-section {
    padding: 0 4vw;
}
section.mvp .sub-section .sub-section_content {
    text-align: center;
}
section.mvp .sub-section .sub-section_content .label {
    display: inline-block;
    padding: 0.34em 1.25em;
    margin: 3em auto 0;
    font-size: 4.267vw;
    font-style: italic;
    font-weight: 700;
    line-height: 1;
    border-radius: 9999px;
    color: #111111;
    background-color: #ffffff;
}
section.mvp .sub-section .sub-section_content .description + .label {
    margin-top: 0.75em;
}
section.mvp .sub-section .sub-section_content .heading {
    padding: 0.5em 0 0.75em;
    font-size: 4.8vw;
    font-weight: 700;
    font-style: italic;
}
section.mvp .sub-section .sub-section_content .notes {
    margin-top: 1.75em;
    padding: 4.8vw 0 6.4vw;
}
section.mvp .sub-section .sub-section_content .notes > span {
    display: block;
    font-size: 3.2vw;
    text-indent: -1em;
    padding-left: 1em;
}

section.rule {
    padding: 21.333vw 0 0;
}
section.rule .title {
    text-align: center;
}
section.rule .sub-section .sub-section_heading {
    margin-top: 1.25em;
    color: #ffffff;
    font-size: 2.25em;
    font-weight: 700;
    font-style: italic;
    text-align: center;
}
section.rule .sub-section .heading {
    text-align: center;
    font-size: 4.8vw;
    font-style: italic;
    font-weight: 700;
}
section.rule .sub-section .description {
    margin: 0.75em auto 0.75em;
    text-align: center;
}
section.rule .sub-section .description > .text {
    font-size: 4vw;
    font-style: italic;
    font-weight: 700;
}
section.rule .sub-section .description.u-mt8 {
    margin-top: 6em;
}
section.rule .sub-section .block {
    padding: 6vw;
    margin: 0;
}
section.rule .sub-section .block > .item > .heading {
    padding: 0;
    margin: 0;
}
section.rule .sub-section .block > .item > .description {
    font-size: 4vw;
    font-style: italic;
    font-weight: 700;
}
section.rule .sub-section .block > .item + .item::before {
    content: '';
    display: block;
    width: 100%;
    height: 2px;
    margin: 8vw 0;
    background-color: #ffffff;
}
section.rule .sub-section figure + figure {
    margin-top: 4vw;
}
section.rule .sub-section .summary {
    padding: 1.75em 0 2.75em;
}
section.rule .sub-section .flow {
    padding: 0;
    margin: 0;
}
section.rule .sub-section .flow + .flow::before {
    content: '';
    display: block;
    width: 100%;
    height: 10.667vw;
    margin: 0.75em auto;
    background-image: url('./images/rule_flow-arrow.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
}
section.rule .sub-section .notes {
    padding: 1em 4vw;
    margin: 0 auto;
    text-align: left;
}
section.rule .sub-section .notes > span {
    display: block;
    font-size: 2.933vw;
    text-indent: -1em;
    padding-left: 1em;
}

section.prize {
    padding: 16vw 0;
}
section.prize .title {
    text-align: center;
}
section.prize .sub-section {
    padding: 0 4vw;
    text-align: center;
}
section.prize .sub-section .description {
    margin: 1.75em auto 0.75em;
    text-align: center;
}
section.prize .sub-section .description > .text {
    font-size: 4vw;
    font-style: italic;
    font-weight: 700;
}
section.prize .sub-section .sub-section_content.-dark {
    padding: 4.5em 0;
}
section.prize .sub-section .sub-section_content .label {
    display: inline-block;
    min-width: 9em;
    padding: 0.34em 1.25em;
    margin: 0 auto;
    font-size: 4.267vw;
    font-style: italic;
    font-weight: 700;
    text-align: center;
    line-height: 1;
    border-radius: 9999px;
    color: #111111;
    background-color: #ffffff;
}
section.prize .sub-section .sub-section_content figure + .label {
    margin-top: 2em;
}
section.prize .sub-section .sub-section_content .heading {
    padding: 0.67em 0 0.5em;
    text-align: center;
    font-size: 4.8vw;
    font-style: italic;
    font-weight: 700;
}

section.closing-party {
    position: relative;
    padding: 21.333vw 0;
    z-index: 1;
}
section.closing-party::before {
    position: absolute;
    top: 8vw;
    left: 0;
    content: '';
    display: block;
    width: 100%;
    height: calc(100% - 7.5em);
    background-color: #df6900;
    box-shadow: inset 0 0 1.67em rgba(123, 5, 0, 0.34),
        inset 0 0.25em 0.25em rgba(0, 0, 0, 0.67);
    transform: skewY(-6.3deg);
    z-index: -1;
}
section.closing-party .title {
    text-align: center;
}
section.closing-party .sub-section .sub-section_heading {
    padding: 0 0 1em;
    margin-top: 1.25em;
    color: #ffffff;
    font-size: 2.25em;
    font-weight: 700;
    font-style: italic;
    text-align: center;
}
section.closing-party .sub-section .description {
    margin: 1.75em auto 0.75em;
    text-align: center;
}
section.closing-party .sub-section .description > .text {
    font-size: 4vw;
    font-style: italic;
    font-weight: 700;
}
section.closing-party .sub-section .notes {
    padding: 1em 4vw;
    margin: 0 auto;
    text-align: center;
}
section.closing-party .sub-section .notes > span {
    display: block;
    font-size: 2.933vw;
    text-indent: -1em;
    padding-left: 1em;
}

section.faq {
    padding: 21.333vw 0 16vw;
}
section.faq .title {
    text-align: center;
}
section.faq .sub-section {
    max-width: 690px;
    margin: 6.267vw auto 0;
    background-color: rgba(0, 0, 0, 0.77);
}
section.faq .sub-section .faq-list {
    padding: 6.267vw 4.267vw;
}
section.faq .sub-section .faq-list > .item + .item::before {
    content: '';
    display: block;
    width: 100%;
    height: 2px;
    margin: 2.5em auto;
    background-color: #ffffff;
    box-shadow: 0 0 0.18em rgba(255, 255, 255, 0.67),
        -0.18em -0.18em 0.34em var(--accent-red),
        0.18em -0.18em 0.34em var(--accent-red),
        0.18em 0.18em 0.34em var(--accent-red),
        -0.18em 0.18em 0.34em var(--accent-red);
}
section.faq .sub-section .faq-list > .item .question {
    text-indent: -2.25em;
    padding-left: 2.25em;
    font-size: 4vw;
    font-style: italic;
    font-weight: 700;
    line-height: 1.33;
}
section.faq .sub-section .faq-list > .item .question::before {
    content: '';
    display: inline-block;
    width: 2.25em;
    height: 2.25em;
    vertical-align: middle;
    background-image: url('./images/faq_first-letter-q.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}
section.faq .sub-section .faq-list > .item .answer {
    margin-top: 0.75em;
    text-indent: -2.25em;
    padding-left: 2.25em;
    font-size: 3.733vw;
}
section.faq .sub-section .faq-list > .item .answer::before {
    content: '';
    display: inline-block;
    width: 1.75em;
    height: 1.75em;
    margin: 0 0.25em 0 0.25em;
    vertical-align: middle;
    background-image: url('./images/faq_first-letter-a.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}
section.faq .sub-section .faq-list > .item .answer .note {
    display: inline;
    font-size: 2.667vw;
    line-height: 2;
}
section.faq .sub-section .faq-list > .item .answer figure {
    padding: 1.25em 0 1.5em;
    margin: 0 auto;
}
section.faq .sub-section .faq-list > .item .answer figure img {
    display: block;
}
section.faq .sub-section .def-table {
    padding-top: 6.4vw;
}
section.faq .sub-section .def-table > table {
    width: 100%;
}
section.faq .sub-section .def-table > table > tbody > tr {
    border-style: solid;
    border-color: #898989;
    border-width: 1px;
    background-color: #313131;
}
section.faq .sub-section .def-table > table > tbody > tr > th,
section.faq .sub-section .def-table > table > tbody > tr td {
    padding: 2.133vw 2.933vw;
    font-size: 3.2vw;
    line-height: 1.67;
    font-weight: 400;
}
section.faq .sub-section .def-table > table > tbody > tr > th {
    width: 50%;
    text-align: left;
    vertical-align: top;
}
section.faq .sub-section .def-table > table > tbody > tr > td {
    width: 50%;
    padding-left: 0;
    border-width: 0;
    text-align: right;
    font-family: 'Roboto Mono', monospace;
    letter-spacing: -0.04em;
}
section.faq .sub-section .def-table > table > tbody > tr > td img {
    width: 32vw;
    height: auto;
}

section.link {
    padding: 12vw 0;
}
section.link .title {
    text-align: center;
}
section.link .link-list {
    display: block;
    width: 92vw;
    margin: 0 auto;
    padding: 6.933vw 0 0;
}
section.link .link-list > .item {
    display: block;
}
section.link .link-list > .item + .item {
    margin-top: 1.25em;
}
section.link .link-list > .item.-new {
    position: relative;
}
section.link .link-list > .item.-new::before {
    content: url('./images/link_item-badge.png');
    position: absolute;
    top: -2.4vw;
    right: 2.4vw;
    width: 24.4vw;
    height: 8vw;
}

.footer-content .game-copyright {
    background-color: #000000;
    padding: 2.75em 2.15em 4.7em;
}
.footer-content .game-copyright > span {
    display: block;
}
.footer-content .footer-base {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: space-between;
    background-color: #ffffff;
    padding: 2.25em 2.15em 7em;
}
.footer-content .footer-base .bn-logo {
    width: 13.333vw;
}
.footer-content .footer-base .copyright {
    color: #000000;
}
@media (min-width: 36em){
    [data-view='>sm'],
    [data-view='sm'] {
        display: revert;
    }
}
@media not all and (min-width: 36em){
    [data-view='<sm'] {
        display: revert;
    }
}
@media (min-width: 751px){
    [data-view='>md'],
    [data-view='md'] {
        display: revert;
    }
    [data-view='pc'],
    [data-view='desktop'],
    .-pc {
        display: block;
    }
    [data-view='sp'],
    [data-view='mobile'],
    .-sp {
        display: none;
    }
    .page-top {
        right: unset;
        bottom: 7.5em;
        left: calc(50vw - 375px + 570px);
    }
    .view-wrapper {
        max-width: 750px;
        margin: 0 auto;
        box-shadow: 0 0 48vw -3vw rgba(0, 0, 0, 0.67);
    }
    .header-button {
        left: calc(50vw - 375px + 560px);
    }
    .header-nav .u-nav-list {
        padding-bottom: 7.5rem;
    }
    .header-nav .u-nav-list > .nav-link > .item {
        width: 43.688rem;
    }
    .header-nav .u-nav-list > .nav-link > .item.-now ::before {
        width: 8.313rem;
        height: 3.063rem;
        font-size: 2.25rem;
    }
    section.keyvisual > .arrow > .caption {
        font-size: 1.625rem;
    }
    .c-sub-section_content.-dark:not(.-border) {
        max-width: 43.125rem;
    }
    .c-sub-section_content.-border {
        padding: 2.188em 0 3.75em;
    }
    section.intro > .title {
        padding: 6.625em 0 2em;
    }
    section.intro > .description {
        min-height: 40.625em;
        padding: 5em 0 5em;
    }
    section.intro > .description > .text {
        font-size: 1.875em;
    }
    section.video-clip .ytb-wrap {
        width: 43.25rem;
        height: 24.625rem;
    }
    section.schedule {
        padding: 3em 0 3.5em;
    }
    section.anchor {
        max-width: 750px;
        height: 6rem;
        margin: 1.75em 0;
    }
    section.copy .description > .text {
        font-size: 1.875em;
    }
    section.reward > .copy .description > .text {
        font-size: 1.875em;
    }
    section.reward .sub-section .sub-section_content {
        padding-top: 3.75em;
    }
    section.reward .sub-section .label {
        font-size: 2rem;
    }
    section.reward .sub-section .description + .label {
        margin-top: 1em;
    }
    section.reward .sub-section figure + .label {
        margin-top: 2em;
    }
    section.reward .sub-section .heading {
        font-size: 2.25em;
    }
    section.reward .sub-section .description > .text {
        font-size: 1.875em;
    }
    section.reward .sub-section .notes > span {
        font-size: 1.5em;
    }
    section.mvp {
        padding: 10em 0 0;
    }
    section.mvp .description {
        padding: 1.875em 0;
    }
    section.mvp .description > .text {
        font-size: 1.875em;
    }
    section.mvp > .plain-list > .item {
        font-size: 1.5em;
    }
    section.mvp .sub-section {
        padding: 0 1.875em;
    }
    section.mvp .sub-section .sub-section_content .label {
        font-size: 2rem;
    }
    section.mvp .sub-section .sub-section_content .heading {
        font-size: 2.25em;
    }
    section.mvp .sub-section .sub-section_content .notes {
        padding: 2.25em 0 3em;
    }
    section.mvp .sub-section .sub-section_content .notes > span {
        font-size: 1.5em;
    }
    section.rule {
        padding: 10em 0 0;
    }
    section.rule .sub-section .heading {
        padding: 1em 0 0.5em;
        font-size: 2.25em;
    }
    section.rule .sub-section .description > .text {
        font-size: 1.875em;
    }
    section.rule .sub-section .block {
        padding: 2.813rem;
    }
    section.rule .sub-section .block > .item > .description {
        font-size: 1.875em;
    }
    section.rule .sub-section .block > .item + .item::before {
        margin: 3.75rem 0;
    }
    section.rule .sub-section figure + figure {
        margin-top: 2.25em;
    }
    section.rule .sub-section .flow + .flow::before {
        height: 5rem;
    }
    section.rule .sub-section .notes {
        padding: 1.25em 0;
        max-width: 600px;
    }
    section.rule .sub-section .notes > span {
        font-size: 1.375em;
        letter-spacing: -0.02em;
    }
    section.prize {
        padding: 7.5em 0;
    }
    section.prize .sub-section {
        padding: 0 1.875em;
    }
    section.prize .sub-section .description > .text {
        font-size: 1.875em;
    }
    section.prize .sub-section .sub-section_content .label {
        font-size: 2rem;
    }
    section.prize .sub-section .sub-section_content .heading {
        font-size: 2.25em;
    }
    section.closing-party {
        padding: 10em 0;
    }
    section.closing-party::before {
        top: 3.75em;
    }
    section.closing-party .sub-section .description > .text {
        font-size: 1.875em;
    }
    section.closing-party .sub-section .notes {
        padding: 1.25em 0;
        max-width: 690px;
    }
    section.closing-party .sub-section .notes > span {
        font-size: 1.375em;
        letter-spacing: -0.02em;
    }
    section.faq {
        padding: 10em 0 7.5em;
    }
    section.faq .sub-section {
        margin: 2.938em auto 0;
    }
    section.faq .sub-section .faq-list {
        padding: 2.938em 2em;
    }
    section.faq .sub-section .faq-list > .item .question {
        font-size: 1.875em;
    }
    section.faq .sub-section .faq-list > .item .answer {
        font-size: 1.75em;
    }
    section.faq .sub-section .faq-list > .item .answer .note {
        font-size: 1.25rem;
    }
    section.faq .sub-section .def-table {
        padding-top: 3rem;
    }
    section.faq .sub-section .def-table > table > tbody > tr > th,
    section.faq .sub-section .def-table > table > tbody > tr td {
        padding: 1rem 1.375rem;
        font-size: 1.5rem;
    }
    section.faq .sub-section .def-table > table > tbody > tr > td img {
        width: 15rem;
    }
    section.link {
        padding: 5.625em 0;
    }
    section.link .link-list {
        width: 43.125rem;
        padding-top: 3.25rem;
    }
    section.link .link-list > .item.-new::before {
        top: -1.125rem;
        right: 1.125rem;
        width: 11.438rem;
        height: 3.75rem;
    }
    .footer-content .footer-base .bn-logo {
        width: 8.438em;
    }
}
@media not all and (min-width: 751px){
    [data-view='<md'] {
        display: revert;
    }
    [data-view='pc'],
    [data-view='desktop'],
    .-pc {
        display: none;
    }
    [data-view='sp'],
    [data-view='mobile'],
    .-sp {
        display: block;
    }
    .header-button {
        right: 0;
    }
    section.keyvisual > .arrow {
        width: 16.533vw;
        min-height: 17.067vw;
        margin: 3.467vw auto;
    }
    section.reward .sub-section .notes {
        max-width: 80vw;
        padding: 4vw 0;
        margin-right: auto;
        margin-left: auto;
    }
    section.rule .sub-section .notes {
        max-width: 80vw;
        padding: 4vw 0;
        margin-right: auto;
        margin-left: auto;
    }
    .footer-content .footer-base .bn-logo {
        margin-left: 6vw;
    }
    #ot-sdk-btn-floating.ot-floating-button {
        bottom: 15.733vw !important;
    }
}
@media (min-width: 62em){
    [data-view='>lg'],
    [data-view='lg'] {
        display: revert;
    }
}
@media not all and (min-width: 62em){
    [data-view='<lg'] {
        display: revert;
    }
}
@media (min-width: 75em){
    [data-view='>xl'],
    [data-view='xl'] {
        display: revert;
    }
}
@media not all and (min-width: 75em){
    [data-view='<xl'] {
        display: revert;
    }
}
@media (min-width: 90em){
    [data-view='>xxl'],
    [data-view='xxl'] {
        display: revert;
    }
}
@media not all and (min-width: 90em){
    [data-view='<xxl'] {
        display: revert;
    }
}
@media (hover: hover){
    section.anchor > .list > .item > .u-link:hover {
        background-color: rgba(255, 255, 255, 0.24);
    }
}
@media all and (-ms-high-contrast: none){
    *::-ms-backdrop,
    .u-fit-contain {
        object-fit: contain;
        font-family: 'object-fit: contain';
    }

    *::-ms-backdrop,
    .u-fit-cover {
        object-fit: cover;
        font-family: 'object-fit: cover';
    }
}
@media screen and (prefers-reduced-motion: reduce){
    html {
        scroll-behavior: auto;
    }
}
