@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto+Mono&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);
    background-image: linear-gradient(180deg, var(--base-red), #8a0c0c);
}

@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('/wanganmaxi6rr/en/wangan-tournament/assets/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: 24.4vw;
    height: 24.4vw;
    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('/wanganmaxi6rr/en/wangan-tournament/assets/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('/wanganmaxi6rr/en/wangan-tournament/assets/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-ribbon-heading {
    width: 92vw;
    padding: 0.55em 0;
    margin: 0.75em auto;
    font-size: 4.8vw;
    font-style: italic;
    background-color: rgba(0, 0, 0, 0.6);
}

.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;
}

.c-ribbon-heading {
    width: 92vw;
    padding: 0.55em 0;
    margin: 0.75em auto;
    font-size: 4.8vw;
    font-style: italic;
    background-color: rgba(0, 0, 0, 0.6);
}

.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.anchor {
    width: 100%;
    height: 12.8vw;
    margin: 0;
}
section.anchor > .list {
    position: fixed;
    bottom: 0;
    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);
    opacity: 0;
}
section.anchor > .list.is-active {
    opacity: 1;
    transform: scaleY(1);
    z-index: 1000;
}
section.anchor > .list > .item {
    display: block;
    width: 100%;
    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.anchor > .list > .item > .u-link > img {
    display: block;
}
section.anchor > .list > .item > .u-link > img.secondary {
    display: none;
}
section.anchor > .list > .item > .u-link.is-expand {
    position: relative;
}
section.anchor > .list > .item > .u-link.is-expand > img {
    display: none;
}
section.anchor > .list > .item > .u-link.is-expand > img.secondary {
    display: block;
}

section.results {
    padding: 0 0 16vw;
}
section.results > .title {
    text-align: center;
}
section.results .description {
    margin: 1.75em auto 2.25em;
    text-align: center;
}
section.results .description > .text {
    font-size: 3.733vw;
    font-style: italic;
    font-weight: 700;
}
section.results .description > .text.-lg {
    font-size: 4.267vw;
}
section.results > .caption {
    text-align: center;
}
section.results .feature_heading {
    font-weight: 400;
    text-align: center;
}
section.results .venue-list {
    padding: 0;
}
section.results .venue-list + .venue-list {
    margin-top: 4vw;
}
section.results .venue-list > .heading {
    position: relative;
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: flex-start;
    min-height: 17.6vw;
    padding: 0 0 0 6vw;
    margin: 0 2.4vw -0.34em;
    color: #ffffff;
    text-align: left;
    font-size: 1rem;
    background-color: transparent;
    background-image: url('./images/results_heading-bg.png');
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100% auto;
    z-index: 1;
}
section.results .venue-list > .location {
    padding: 8vw 4.667vw 3.467vw;
    margin: 0 4.667vw;
    background-color: #000000;
    z-index: -1;
}
section.results .venue-list > .location + .location {
    padding-top: 0;
}
section.results .pref-heading {
    padding: 0;
    font-size: 4vw;
}
section.results .pref-heading svg {
    transition: transform 280ms ease;
    transform: scaleY(-1);
    transform-origin: center;
}
section.results .pref-heading.is-expand svg {
    transform: scaleY(1);
}
section.results .pref-heading.is-expand + .shop-list {
    height: auto;
    opacity: 1;
    transform: scaleY(1);
}
section.results .pref-heading > button {
    cursor: pointer;
    -webkit-appearance: none;
            appearance: none;
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 2vw;
    margin: 0;
    border: 0;
    font-size: 4vw;
    line-height: 1;
    color: #ffffff;
    background-color: #ff0000;
}
section.results .shop-list {
    height: 0;
    padding: 0;
    margin: 0;
    opacity: 0;
    transform: scaleY(0);
    transform-origin: top;
    transition-property: height, transform, opacity;
    transition-duration: 340ms, 180ms, 280ms;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
section.results .shop-list > .feature-shop-group {
    padding: 4vw 0 0;
}
section.results .shop-list > .feature-shop-group > .rank-list {
    padding: 0;
    margin: 0;
}
section.results
    .shop-list
    > .feature-shop-group
    > .rank-list
    > .rank-list_item {
    list-style: none;
    display: grid;
    grid-template-columns: 6.667vw 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 0px 0px;
    grid-template-areas: 'rankbadge shopname' 'rankbadge value';
    padding: 0.8vw;
    margin: 0;
    border: solid 2px #898989;
    background-color: #313131;
}
section.results
    .shop-list
    > .feature-shop-group
    > .rank-list
    > .rank-list_item
    + .rank-list_item {
    border-top: none;
}
section.results
    .shop-list
    > .feature-shop-group
    > .rank-list
    > .rank-list_item
    > .rank-badge {
    grid-area: rankbadge;
}
section.results
    .shop-list
    > .feature-shop-group
    > .rank-list
    > .rank-list_item
    > .shop-name {
    grid-area: shopname;
    padding: 0.25em 0 0 0.5em;
    font-size: 3.467vw;
    line-height: 1.8;
}
section.results
    .shop-list
    > .feature-shop-group
    > .rank-list
    > .rank-list_item
    > .count,
section.results
    .shop-list
    > .feature-shop-group
    > .rank-list
    > .rank-list_item
    > .distance {
    grid-area: value;
    text-align: right;
    font-size: 4.267vw;
}
section.results
    .shop-list
    > .feature-shop-group
    > .rank-list
    > .rank-list_item
    > .count::after,
section.results
    .shop-list
    > .feature-shop-group
    > .rank-list
    > .rank-list_item
    > .distance::after {
    display: inline;
    padding: 0 0.25em;
    font-size: 3.467vw;
}
section.results
    .shop-list
    > .feature-shop-group
    > .rank-list
    > .rank-list_item
    > .count::after {
    content: '台';
}
section.results
    .shop-list
    > .feature-shop-group
    > .rank-list
    > .rank-list_item
    > .distance::after {
    content: 'km';
}
section.results .shop-list > .result-shop-group {
    position: relative;
    margin-top: 1.25em;
    border-style: solid;
    border-width: 2px;
    border-color: #888888;
    background-color: #303030;
}
section.results .shop-list > .result-shop-group::before {
    content: attr(data-group-num);
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: center;
    position: absolute;
    width: 2.5em;
    height: 100%;
    top: 0;
    left: 0;
    color: #fff;
    font-size: 1.25rem;
    background-color: #888888;
}
section.results .shop-list > .result-shop-group > .shop-data {
    padding: 0 0 0 3.25rem;
    background-color: #535353;
}
section.results .shop-list > .result-shop-group > .shop-data > .item + .item {
    border-top: 2px solid #888888;
}
section.results
    .shop-list
    > .result-shop-group
    > .shop-data
    > .item
    > .heading {
    display: grid;
    grid-template-columns: 6.667vw 1fr 6.667vw;
    grid-template-rows: 1fr 1fr;
    gap: 0px 0px;
    grid-template-areas: 'rankbadge shopname expand' 'rankbadge distance expand';
    padding: 0.533vw;
    background-color: #313131;
}
section.results
    .shop-list
    > .result-shop-group
    > .shop-data
    > .item
    > .heading.is-expand
    > .expand-mark
    > .wrap
    > svg {
    transform: scaleY(1);
}
section.results
    .shop-list
    > .result-shop-group
    > .shop-data
    > .item
    > .heading.is-expand
    + .details {
    opacity: 1;
    transform: scaleY(1);
    max-height: 9999px;
}
section.results
    .shop-list
    > .result-shop-group
    > .shop-data
    > .item
    > .heading
    > .rank-badge {
    grid-area: rankbadge;
}
section.results
    .shop-list
    > .result-shop-group
    > .shop-data
    > .item
    > .heading
    > .shop-name {
    grid-area: shopname;
    padding: 0.25em 0 0 0.5em;
    font-size: 3.467vw;
    line-height: 1.8;
}
section.results
    .shop-list
    > .result-shop-group
    > .shop-data
    > .item
    > .heading
    > .total-distance {
    grid-area: distance;
    text-align: right;
    font-size: 4.267vw;
}
section.results
    .shop-list
    > .result-shop-group
    > .shop-data
    > .item
    > .heading
    > .total-distance::after {
    content: 'm';
    display: inline;
    padding: 0 0.75em 0 0.25em;
    font-size: 3.467vw;
}
section.results
    .shop-list
    > .result-shop-group
    > .shop-data
    > .item
    > .heading
    > .expand-mark {
    grid-area: expand;
    display: flex;
    align-items: center;
    justify-content: center;
}
section.results
    .shop-list
    > .result-shop-group
    > .shop-data
    > .item
    > .heading
    > .expand-mark
    > .wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 6.4vw;
    height: 6.4vw;
    border: 0.25rem outset #bb0014;
    background-color: #ff0000;
    box-shadow: inset 0 0 0.25em #bb0014;
}
section.results
    .shop-list
    > .result-shop-group
    > .shop-data
    > .item
    > .heading
    > .expand-mark
    > .wrap
    > svg {
    transition-property: opacity transform;
    transition-duration: 260ms;
    transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transform: scaleY(-1);
    transform-origin: center;
}
section.results
    .shop-list
    > .result-shop-group
    > .shop-data
    > .item
    > .details {
    opacity: 0;
    transition-property: opacity transform max-height;
    transition-duration: 260ms;
    transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transform: scaleY(0);
    transform-origin: top;
    max-height: 0;
}
section.results
    .shop-list
    > .result-shop-group
    > .shop-data
    > .item
    > .details
    > .mvp-list {
    padding: 1.067vw 2.133vw 1.067vw 7.2vw;
    margin: 0;
}
section.results
    .shop-list
    > .result-shop-group
    > .shop-data
    > .item
    > .details
    > .mvp-list
    > .mvp-list_item {
    padding: 0.25em 0;
    list-style: none;
}
section.results
    .shop-list
    > .result-shop-group
    > .shop-data
    > .item
    > .details
    > .mvp-list
    > .mvp-list_item
    + .mvp-list_item {
    margin-top: 0.25em;
    border-top: 1px solid #fff;
}
section.results
    .shop-list
    > .result-shop-group
    > .shop-data
    > .item
    > .details
    > .mvp-list
    > .mvp-list_item
    > img {
    display: inline-block;
}
section.results
    .shop-list
    > .result-shop-group
    > .shop-data
    > .item
    > .details
    > .mvp-list
    > .mvp-list_item
    > span {
    padding: 0 0.5em;
    vertical-align: middle;
    font-size: 3.467vw;
    line-height: 1.33;
}
section.results .shop-list > .shop-group {
    position: relative;
    border-style: solid;
    border-width: 2px;
    border-color: #888888;
    background-color: #303030;
}
section.results .shop-list > .shop-group::before {
    content: attr(data-group-num);
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    justify-content: center;
    position: absolute;
    width: 2.5em;
    height: 100%;
    top: 0;
    left: 0;
    color: #fff;
    font-size: 1.25rem;
    background-color: #888888;
}
section.results .shop-list > .shop-group > .item {
    display: block;
    padding: 1.25em 1.75em;
}
section.results .shop-list > .shop-group > .item > span {
    color: #ffffff;
    font-size: 3.733vw;
    line-height: 1.33;
}
section.results .shop-list > .item {
    display: block;
    padding: 1.25em 1.75em;
    background-color: #303030;
    border-style: solid;
    border-width: 0 2px 0 2px;
    border-color: #ffffff;
}
section.results .shop-list > .item:nth-child(1) {
    border-top-width: 2px;
}
section.results .shop-list > .item:nth-child(3n) {
    border-bottom-width: 2px;
}
section.results .shop-list > .item:nth-child(3n + 1) {
    margin-top: 2.133vw;
    border-top-width: 2px;
}
section.results .shop-list > .item:last-child {
    border-bottom-width: 2px;
}
section.results .shop-list > .item > span {
    color: #ffffff;
    font-size: 3.733vw;
    line-height: 1.33;
}

.footer-nav {
    position: fixed;
    bottom: 0;
    width: 100%;
    padding: 6vw 4vw 16.8vw;
    background-color: rgba(0, 0, 0, 0.9);
    opacity: 0;
    transform: scaleY(0);
    transform-origin: bottom;
    z-index: 100;
    transition-property: transform, opacity;
    transition-duration: 360ms;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.footer-nav.is-expand {
    opacity: 1;
    transform: scaleY(1);
}
.footer-nav .area-list {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: flex-start;
}
.footer-nav .area-list > .item {
    width: 48%;
    border-bottom: solid 0.267vw var(--base-red);
}
.footer-nav .area-list .u-link {
    display: block;
    padding: 1.867vw 0;
    color: #ffffff;
    font-size: 4vw;
    line-height: 1.33;
    text-decoration: none;
}

.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 {
        width: 11.438rem;
        height: 11.438rem;
        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-ribbon-heading {
        max-width: 690px;
        padding: 1.438rem;
        font-size: 2.25rem;
        line-height: 1;
    }
    .c-sub-section_content.-dark:not(.-border) {
        max-width: 43.125rem;
    }
    .c-sub-section_content.-border {
        padding: 2.188em 0 3.75em;
    }
    .c-ribbon-heading {
        max-width: 690px;
        padding: 1.438rem;
        font-size: 2.25rem;
        line-height: 1;
    }
    .c-sub-section_content.-dark:not(.-border) {
        max-width: 43.125rem;
    }
    .c-sub-section_content.-border {
        padding: 2.188em 0 3.75em;
    }
    section.anchor {
        max-width: 750px;
        height: 6rem;
    }
    section.results {
        padding: 0 0 7.5em;
    }
    section.results .description > .text {
        font-size: 1.75em;
    }
    section.results .description > .text.-lg {
        font-size: 2rem;
    }
    section.results .venue-list + .venue-list {
        margin-top: 1.875rem;
    }
    section.results .venue-list > .heading {
        min-height: 8.25rem;
        padding: 0 0 0 2.813rem;
        margin: 0 1.125rem -0.34em;
    }
    section.results .venue-list > .location {
        padding: 3.75rem 2.188rem 1.625rem;
        margin: 0 2.188rem;
    }
    section.results .pref-heading {
        font-size: 1.875rem;
    }
    section.results .pref-heading > button {
        padding: 0.938rem;
        font-size: 1.875rem;
    }
    section.results .shop-list > .feature-shop-group {
        padding: 1.875rem 0 0;
    }
    section.results
        .shop-list
        > .feature-shop-group
        > .rank-list
        > .rank-list_item {
        grid-template-columns: 3.125rem 1fr;
        padding: 0.375rem;
    }
    section.results
        .shop-list
        > .feature-shop-group
        > .rank-list
        > .rank-list_item
        > .shop-name {
        font-size: 1.625rem;
    }
    section.results
        .shop-list
        > .feature-shop-group
        > .rank-list
        > .rank-list_item
        > .count,
    section.results
        .shop-list
        > .feature-shop-group
        > .rank-list
        > .rank-list_item
        > .distance {
        font-size: 2rem;
    }
    section.results
        .shop-list
        > .feature-shop-group
        > .rank-list
        > .rank-list_item
        > .count::after,
    section.results
        .shop-list
        > .feature-shop-group
        > .rank-list
        > .rank-list_item
        > .distance::after {
        font-size: 1.625rem;
    }
    section.results
        .shop-list
        > .result-shop-group
        > .shop-data
        > .item
        > .heading {
        grid-template-columns: 3.125rem 1fr 3.125rem;
        padding: 0.25rem;
    }
    section.results
        .shop-list
        > .result-shop-group
        > .shop-data
        > .item
        > .heading
        > .shop-name {
        font-size: 1.5rem;
    }
    section.results
        .shop-list
        > .result-shop-group
        > .shop-data
        > .item
        > .heading
        > .total-distance {
        font-size: 2rem;
    }
    section.results
        .shop-list
        > .result-shop-group
        > .shop-data
        > .item
        > .heading
        > .total-distance::after {
        font-size: 1.625rem;
    }
    section.results
        .shop-list
        > .result-shop-group
        > .shop-data
        > .item
        > .heading
        > .expand-mark
        > .wrap {
        width: 3rem;
        height: 3rem;
    }
    section.results
        .shop-list
        > .result-shop-group
        > .shop-data
        > .item
        > .details
        > .mvp-list {
        padding: 0.5rem 1rem 0.5rem 3.375rem;
    }
    section.results
        .shop-list
        > .result-shop-group
        > .shop-data
        > .item
        > .details
        > .mvp-list
        > .mvp-list_item
        > span {
        font-size: 1.625rem;
    }
    section.results .shop-list > .shop-group > .item > span {
        font-size: 1.75rem;
    }
    section.results .shop-list > .item:nth-child(3n + 1) {
        margin-top: 1rem;
    }
    section.results .shop-list > .item > span {
        font-size: 1.75rem;
    }
    .footer-nav {
        max-width: 750px;
        padding: 1.875rem 1.875rem 7.875rem;
    }
    .footer-nav .area-list {
        max-height: calc(100vh - 156px);
        overflow: auto;
    }
    .footer-nav .area-list > .item {
        border-bottom-width: 0.125rem;
    }
    .footer-nav .area-list .u-link {
        padding: 1.867vw 0;
        font-size: 1.875rem;
    }
    .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;
    }
    .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);
    }
    .footer-nav .area-list .u-link:hover {
        text-decoration: underline;
    }
}
@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;
    }
}
