a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
    border: 0;
    font: inherit;
    font-size: 100%;
    margin: 0;
    padding: 0;
    vertical-align: baseline
}

html {
    line-height: 1
}

ol,
ul {
    list-style: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

caption,
td,
th {
    font-weight: 400;
    text-align: left;
    vertical-align: middle
}

blockquote,
q {
    quotes: none
}

blockquote:after,
blockquote:before,
q:after,
q:before {
    content: "";
    content: none
}

a img {
    border: none
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
    display: block
}

:root {
    --font-family-sans: "Noto Sans", "Noto Sans SC", sans-serif;
    --font-family-serif: "Noto Serif SC", serif;
    --font-family-roboto: "Roboto", system-ui, -apple-system, sans-serif;
    --font-family-roboto-sans: "Roboto", "Noto Sans SC", system-ui, -apple-system, sans-serif;
    --font-family: var(--font-family-sans)
}

*,
:after,
:before {
    box-sizing: border-box
}

@media(prefers-reduced-motion:no-preference) {
    html {
        scroll-behavior: smooth
    }
}

body {
    color: var(--color-font-base);
    font-family: var(--font-family);
    font-weight: 400;
    letter-spacing: 0;
    position: relative;
    -webkit-text-size-adjust: 100%;
    background: #000;
    font-feature-settings: "palt"
}

a {
    color: var(--color-accent);
    text-decoration: none
}

img {
    display: block
}

#container {
    overflow: hidden;
    z-index: 100
}

#container,
section {
    position: relative
}

.v-pc {
    display: block
}

.v-sp {
    display: none
}

@media(max-width:750px) {
    .v-pc {
        display: none
    }

    .v-sp {
        display: block
    }
}

:root {
    --swiper-theme-color: #007aff
}

:host {
    display: block;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    z-index: 1
}

.swiper {
    display: block;
    list-style: none;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
    padding: 0;
    position: relative;
    z-index: 1
}

.swiper-vertical>.swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    box-sizing: content-box;
    display: flex;
    height: 100%;
    position: relative;
    transition-property: transform;
    transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
    width: 100%;
    z-index: 1
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
    transform: translateZ(0)
}

.swiper-horizontal {
    touch-action: pan-y
}

.swiper-vertical {
    touch-action: pan-x
}

.swiper-slide {
    display: block;
    flex-shrink: 0;
    height: 100%;
    position: relative;
    transition-property: transform;
    width: 100%
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
    height: auto
}

.swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height
}

.swiper-backface-hidden .swiper-slide {
    backface-visibility: hidden;
    transform: translateZ(0)
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px
}

.swiper-3d .swiper-wrapper {
    transform-style: preserve-3d
}

.swiper-3d {
    perspective: 1200px
}

.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide {
    transform-style: preserve-3d
}

.swiper-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-css-mode.swiper-horizontal>.swiper-wrapper {
    scroll-snap-type: x mandatory
}

.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    margin-inline-start: var(--swiper-slides-offset-before);
    scroll-margin-inline-start: var(--swiper-slides-offset-before)
}

.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:last-child {
    margin-inline-end: var(--swiper-slides-offset-after)
}

.swiper-css-mode.swiper-vertical>.swiper-wrapper {
    scroll-snap-type: y mandatory
}

.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
    margin-block-start: var(--swiper-slides-offset-before);
    scroll-margin-block-start: var(--swiper-slides-offset-before)
}

.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:last-child {
    margin-block-end: var(--swiper-slides-offset-after)
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper {
    scroll-snap-type: none
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: none
}

.swiper-css-mode.swiper-centered>.swiper-wrapper:before {
    content: "";
    flex-shrink: 0;
    order: 9999
}

.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before {
    height: 100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
    margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before {
    height: var(--swiper-centered-offset-after);
    min-width: 1px;
    width: 100%
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 10
}

.swiper-3d .swiper-slide-shadow {
    background: #00000026
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(270deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(90deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(0deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(180deg, rgba(0, 0, 0, .5), transparent)
}

.swiper-lazy-preloader {
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top: 4px solid transparent;
    box-sizing: border-box;
    height: 42px;
    left: 50%;
    margin-left: -21px;
    margin-top: -21px;
    position: absolute;
    top: 50%;
    transform-origin: 50%;
    width: 42px;
    z-index: 10
}

:is(.swiper-watch-progress .swiper-slide-visible, .swiper:not(.swiper-watch-progress)) .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s linear infinite
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000
}

@keyframes swiper-preloader-spin {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(1turn)
    }
}

.swiper-scrollbar {
    background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, .1));
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    position: relative;
    touch-action: none
}

.swiper-scrollbar.swiper-scrollbar-disabled,
.swiper-scrollbar-disabled>.swiper-scrollbar {
    display: none !important
}

.swiper-scrollbar.swiper-scrollbar-horizontal,
.swiper-horizontal>.swiper-scrollbar {
    bottom: var(--swiper-scrollbar-bottom, 4px);
    height: var(--swiper-scrollbar-size, 4px);
    left: var(--swiper-scrollbar-sides-offset, 1%);
    position: absolute;
    top: var(--swiper-scrollbar-top, auto);
    width: calc(100% - var(--swiper-scrollbar-sides-offset, 1%)*2);
    z-index: 50
}

.swiper-scrollbar.swiper-scrollbar-vertical,
.swiper-vertical>.swiper-scrollbar {
    height: calc(100% - var(--swiper-scrollbar-sides-offset, 1%)*2);
    left: var(--swiper-scrollbar-left, auto);
    position: absolute;
    right: var(--swiper-scrollbar-right, 4px);
    top: var(--swiper-scrollbar-sides-offset, 1%);
    width: var(--swiper-scrollbar-size, 4px);
    z-index: 50
}

.swiper-scrollbar-drag {
    background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, .5));
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    height: 100%;
    left: 0;
    position: relative;
    top: 0;
    width: 100%
}

.swiper-scrollbar-cursor-drag {
    cursor: move
}

.swiper-scrollbar-lock {
    display: none
}

.site-header {
    inset: 0;
    pointer-events: none;
    position: fixed;
    z-index: 2000
}

.site-menu-toggle {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    border: 0;
    cursor: pointer;
    display: block;
    height: 4.1666666667vw;
    margin: 0;
    padding: 0;
    pointer-events: auto;
    position: fixed;
    right: 1.25vw;
    top: 1.25vw;
    width: 4.1666666667vw;
    z-index: 1200
}

.site-menu-toggle img {
    display: block;
    height: 100%;
    transition: .1s ease-in-out;
    width: 100%
}

@media(min-width:751px)and (hover:hover) {
    .site-menu-toggle img:hover {
        opacity: .8
    }
}

.site-menu-toggle .close,
.site-menu-toggle[aria-expanded=true] .open {
    display: none
}

.site-menu-toggle[aria-expanded=true] .close {
    display: block
}

.site-nav-drawer {
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    inset: 0;
    opacity: 0;
    pointer-events: none;
    position: fixed;
    transition: opacity .25s ease, visibility 0s linear .25s;
    visibility: hidden;
    will-change: opacity;
    z-index: 1100
}

.site-nav-drawer[data-open=true] {
    opacity: 1;
    pointer-events: auto;
    transition: opacity .25s ease, visibility 0s linear 0s;
    visibility: visible
}

@media(prefers-reduced-motion:reduce) {
    .site-nav-drawer {
        transition: none
    }
}

.site-nav-drawer__dim,
.site-nav-drawer__overlay {
    inset: 0;
    position: absolute
}

.site-nav-drawer__dim {
    background: #1a372fe6;
    opacity: 1
}

.site-nav-drawer__dim-left {
    background: url(/metaphor/cn/switch2/resources/img/common/bluck-pattern.BzgbTYmB.webp) 0 0 repeat;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 61.09375vw
}

.site-nav-drawer__dim-left:before {
    background: #000000d9;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 99%
}

.site-nav-drawer__dim-left:after {
    background: #d3d3d3d9;
    content: "";
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 1%
}

.site-nav-drawer__fixed {
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 83.4895833333vw
}

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

.common-sns-nav.site-nav-drawer__social {
    right: 7.4479166667vw;
    top: 2.2916666667vw
}

.site-nav-drawer__contents {
    display: flex;
    height: 100%;
    overflow: hidden auto;
    position: relative;
    width: 100%
}

.site-nav-drawer__contents>div {
    align-items: center;
    display: flex;
    justify-content: center
}

.site-nav-drawer__contents--bnr-news {
    height: 100%;
    position: relative;
    width: 60.46875vw
}

.site-nav-drawer__contents--bnr-news>div {
    margin: auto;
    padding: 4.1666666667vw 0;
    width: 46.875vw
}

.site-nav-drawer__contents--logo {
    margin: 0 auto 3.125vw;
    position: relative;
    width: 22.34375vw
}

.site-nav-drawer__contents--logo img {
    display: block;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.site-nav-drawer__contents--banners {
    margin-bottom: 3.4895833333vw;
    margin-left: -.625vw;
    position: relative;
    width: 48.125vw
}

.site-nav-drawer__contents--banners .swiper-wrapper {
    display: flex
}

@media(min-width:751px) {
    .site-nav-drawer__contents--banners .swiper-wrapper {
        gap: .5208333333vw;
        justify-content: center
    }

    .site-nav-drawer__contents--banners .swiper-slide {
        flex: 0 0 auto;
        width: auto
    }
}

.site-nav-drawer__contents--banner {
    display: block;
    transition: .1s ease-in-out;
    width: 15.8333333333vw
}

@media(min-width:751px)and (hover:hover) {
    .site-nav-drawer__contents--banner:hover {
        opacity: .8
    }
}

.site-nav-drawer__contents--banner img {
    display: block;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.site-nav-drawer__contents--banners-pagination {
    display: none
}

.site-nav-drawer__contents--news {
    position: relative
}

.site-nav-drawer__contents--news-title {
    height: 1.5625vw;
    margin: 0 auto 2.34375vw;
    position: relative;
    width: 6.1979166667vw
}

.site-nav-drawer__contents--news-title img {
    display: block;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.site-nav-drawer__contents--news-list {
    position: relative
}

.site-nav-drawer__contents--news-list li {
    margin-bottom: 1.5625vw;
    position: relative
}

.site-nav-drawer__contents--news-list li:last-child {
    margin-bottom: 0
}

.site-nav-drawer__contents--news-list li a {
    align-items: center;
    color: #fff;
    display: flex;
    font-size: 1.0416666667vw;
    font-weight: 400;
    transition: .1s ease-in-out
}

@media(min-width:751px)and (hover:hover) {
    .site-nav-drawer__contents--news-list li a:hover {
        opacity: .8
    }
}

.site-nav-drawer__contents--news-list time {
    flex-shrink: 0;
    font-family: var(--font-family-sans);
    letter-spacing: .0416666667vw;
    margin-right: 1.9270833333vw
}

.site-nav-drawer__contents--news-list p {
    display: -webkit-box;
    flex: 1;
    min-width: 0;
    overflow: hidden;
    -webkit-box-orient: vertical;
    border-left: .0520833333vw solid #fff;
    font-family: var(--font-family-sans);
    letter-spacing: .0416666667vw;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    line-height: 1.40625vw;
    padding-left: .5208333333vw
}

.site-nav-drawer__contents--nav {
    height: calc(100% - 5.46875vw);
    margin-top: 5.46875vw;
    position: relative;
    width: 31.7708333333vw
}

.site-nav-drawer__contents--menu {
    position: relative
}

.site-nav-drawer__contents--menu-list {
    margin-bottom: 2.7083333333vw;
    padding-left: .625vw;
    position: relative
}

.site-nav-drawer__contents--menu-list li {
    margin-bottom: 2.4479166667vw;
    position: relative
}

.site-nav-drawer__contents--menu-list li:last-child {
    margin-bottom: 0
}

.site-nav-drawer__contents--menu-list li a {
    color: #fff;
    display: block;
    font-family: var(--font-family-serif);
    font-size: 1.4583333333vw;
    font-weight: 400;
    transition: .1s ease-in-out
}

@media(min-width:751px)and (hover:hover) {
    .site-nav-drawer__contents--menu-list li a:hover {
        opacity: .8
    }
}

.site-nav-drawer__contents--cta {
    display: block;
    height: 3.0208333333vw;
    position: relative;
    transition: .1s ease-in-out;
    width: 21.6666666667vw
}

@media(min-width:751px)and (hover:hover) {
    .site-nav-drawer__contents--cta:hover {
        opacity: .8
    }
}

.site-nav-drawer__contents--cta img {
    display: block;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.site-nav-drawer__contents--cta span {
    font-family: var(--font-family-sans);
    font-size: 1.7708333333vw;
    font-weight: 700;
    left: 3.8541666667vw;
    letter-spacing: .0729166667vw;
    position: absolute;
    top: .625vw
}

@media(max-width:750px) {
    .site-menu-toggle {
        height: 13.3333333333vw;
        right: 3.2vw;
        top: 3.2vw;
        width: 13.3333333333vw
    }

    .site-nav-drawer__dim-left,
    .site-nav-drawer__fixed {
        display: none
    }

    .common-sns-nav.site-nav-drawer__social {
        right: 22.2666666667vw;
        top: 6.5333333333vw
    }

    .site-nav-drawer__contents {
        align-content: flex-start;
        flex-wrap: wrap;
        height: calc(100dvh - 17.33333vw);
        margin-top: 17.3333333333vw
    }

    .site-nav-drawer__contents>div {
        align-items: flex-start
    }

    .site-nav-drawer__contents--bnr-news {
        height: -moz-fit-content;
        height: fit-content;
        margin-top: 8.2666666667vw;
        order: 2;
        padding-bottom: 6.6666666667vw;
        width: 100vw
    }

    .site-nav-drawer__contents--bnr-news>div {
        padding: 0;
        width: 100%
    }

    .site-nav-drawer__contents--logo {
        display: none
    }

    .site-nav-drawer__contents--banners {
        margin: 0 0 11.3333333333vw;
        overflow: visible;
        padding-inline: 6.6666666667vw;
        width: 100%
    }

    .site-nav-drawer__contents--banners--single .swiper-wrapper {
        justify-content: center
    }

    .site-nav-drawer__contents--banners--single .site-nav-drawer__contents--banners-pagination {
        display: none
    }

    .site-nav-drawer__contents--banner,
    .site-nav-drawer__contents--banners .swiper-slide {
        width: 50.6666666667vw
    }

    .site-nav-drawer__contents--banners-pagination {
        align-items: center;
        block-size: 2.1333333333vw;
        display: flex;
        gap: 4vw;
        justify-content: center;
        margin-top: 2.8vw
    }

    .site-nav-drawer__contents--banners-pagination .swiper-pagination-bullet {
        background-color: transparent;
        background-image: url(/metaphor/cn/switch2/resources/img/top/pagination_dot_inactive.DCeKG4QN.webp);
        background-position: 50%;
        background-repeat: no-repeat;
        background-size: cover;
        border-radius: 0;
        height: 2.1333333333vw;
        margin: 0;
        opacity: 1;
        width: 2.1333333333vw
    }

    .site-nav-drawer__contents--banners-pagination.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
        background-color: transparent;
        background-image: url(/metaphor/cn/switch2/resources/img/top/pagination_dot_active.CqPDuDE0.webp);
        background-position: 50%;
        background-repeat: no-repeat;
        background-size: cover;
        height: 2.2666666667vw;
        width: 2.2666666667vw
    }

    .site-nav-drawer__contents--news-title {
        height: 4vw;
        margin: 0 auto 6vw;
        width: 15.8666666667vw
    }

    .site-nav-drawer__contents--news-list li {
        margin-bottom: 4vw
    }

    .site-nav-drawer__contents--news-list li:last-child {
        margin-bottom: 0
    }

    .site-nav-drawer__contents--news-list li a {
        font-size: 2.9333333333vw
    }

    .site-nav-drawer__contents--news-list time {
        letter-spacing: .12vw;
        margin: 0 2.9333333333vw 0 6.9333333333vw
    }

    .site-nav-drawer__contents--news-list p {
        border-left-width: .1333333333vw;
        letter-spacing: .12vw;
        line-height: 4.2666666667vw;
        padding: 0 4.6666666667vw 0 1.3333333333vw
    }

    .site-nav-drawer__contents--nav {
        height: -moz-fit-content;
        height: fit-content;
        margin-top: 0;
        order: 1;
        padding-top: 8.2666666667vw;
        width: 100vw
    }

    .site-nav-drawer__contents--menu-list {
        margin-bottom: 5.3333333333vw;
        padding-left: 0
    }

    .site-nav-drawer__contents--menu-list li {
        margin-bottom: 4.2666666667vw;
        text-align: center
    }

    .site-nav-drawer__contents--menu-list li:last-child {
        margin-bottom: 0
    }

    .site-nav-drawer__contents--menu-list li a {
        font-size: 4.5333333333vw
    }

    .site-nav-drawer__contents--cta {
        height: 9.6vw;
        width: 69.3333333333vw
    }

    .site-nav-drawer__contents--cta span {
        font-size: 5.7333333333vw;
        left: 12vw;
        letter-spacing: .2266666667vw;
        top: 1.7333333333vw
    }
}

.common-sns-nav {
    align-items: center;
    display: flex;
    gap: 1.5104166667vw;
    position: absolute;
    z-index: 10
}

.common-sns-nav__item {
    display: block
}

.common-sns-nav__item>a,
.common-sns-nav__lang {
    filter: drop-shadow(0 0 .78125vw rgba(0, 0, 0, .8));
    transition: .1s ease-in-out
}

@media(min-width:751px)and (hover:hover) {

    .common-sns-nav__item>a:hover,
    .common-sns-nav__lang:hover {
        opacity: .8
    }
}

.common-sns-nav__item:first-child {
    width: 1.6666666667vw
}

.common-sns-nav__item:nth-child(2) {
    width: 1.9791666667vw
}

.common-sns-nav__item:nth-child(4) {
    width: 1.7708333333vw
}

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

.common-sns-nav__item-sep {
    background: #fff;
    display: block;
    filter: drop-shadow(0 0 .78125vw rgba(0, 0, 0, .8));
    height: 2.0833333333vw;
    width: .1041666667vw
}

.common-sns-nav__lang {
    background: transparent;
    border: 0;
    cursor: pointer;
    display: block;
    margin: 0;
    padding: 0
}

.lang-list {
    background: #000c;
    box-sizing: border-box;
    height: 0;
    overflow: hidden;
    position: absolute;
    right: -1.4583333333vw;
    top: 3.0729166667vw;
    transition: height .3s ease;
    width: 4.53125vw;
    will-change: height;
    z-index: 10
}

.lang-list.opened {
    border-bottom: .1041666667vw solid #c1bfb3;
    border-top: .1041666667vw solid #c1bfb3
}

.lang-list li {
    padding: .1041666667vw 0
}

.lang-list li:first-child {
    padding-top: .3125vw
}

.lang-list li:last-child {
    padding-bottom: .5208333333vw
}

.lang-list li a {
    color: #fff;
    display: block;
    font-family: var(--font-family-serif);
    font-size: .9375vw;
    font-weight: 400;
    padding: .3125vw;
    text-align: center
}

@media(min-width:751px) {
    .lang-list li a:hover {
        opacity: .7
    }
}

@media(max-width:750px) {
    .common-sns-nav {
        gap: 4.6666666667vw
    }

    .common-sns-nav__item>a,
    .common-sns-nav__lang {
        filter: drop-shadow(0 0 2.4vw rgba(0, 0, 0, .8))
    }

    .common-sns-nav__item:first-child {
        width: 4.8vw
    }

    .common-sns-nav__item:nth-child(2) {
        width: 6.1333333333vw
    }

    .common-sns-nav__item:nth-child(4) {
        width: 5.3333333333vw
    }

    .common-sns-nav__item-sep {
        filter: drop-shadow(0 0 2.4vw rgba(0, 0, 0, .8));
        height: 6.4vw;
        width: .2666666667vw
    }

    .lang-list {
        right: -4.4vw;
        top: 9.7333333333vw;
        width: 13.7333333333vw
    }

    .lang-list.opened {
        border-bottom-width: .2666666667vw;
        border-top-width: .2666666667vw
    }

    .lang-list li {
        padding: .2666666667vw 0
    }

    .lang-list li:first-child {
        padding-top: .8vw
    }

    .lang-list li:last-child {
        padding-bottom: 1.3333333333vw
    }

    .lang-list li a {
        font-size: 2.4vw;
        padding: .8vw
    }
}

.trailer-modal {
    background: transparent;
    border: none;
    color: inherit;
    height: 100%;
    margin: 0;
    max-height: none;
    max-width: none;
    padding: 0;
    width: 100%
}

.trailer-modal::backdrop {
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    background: #000000b3
}

.trailer-modal__shell {
    align-items: center;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    min-height: 100dvh;
    padding: 0 1.25vw;
    pointer-events: none;
    position: relative
}

.trailer-modal__scrim {
    background: transparent;
    border: 0;
    cursor: pointer;
    inset: 0;
    margin: 0;
    padding: 0;
    pointer-events: auto;
    position: fixed;
    z-index: 0
}

.trailer-modal__panel {
    box-sizing: border-box;
    max-width: 100%;
    pointer-events: auto;
    position: relative;
    width: min(90vw, 960px);
    z-index: 1
}

.trailer-modal__aspect {
    aspect-ratio: 16/9;
    background: #000;
    overflow: hidden;
    position: relative;
    width: 100%
}

.trailer-modal__iframe {
    border: 0;
    display: block;
    height: 100%;
    inset: 0;
    position: absolute;
    width: 100%
}

.trailer-modal .trailer-modal__close {
    background: transparent;
    border: 0;
    cursor: pointer;
    margin: 0;
    padding: 0;
    position: absolute;
    right: 0;
    top: -5.2083333333vw;
    width: 4.1666666667vw
}

.trailer-modal .trailer-modal__close img {
    display: block;
    height: auto;
    width: 100%
}

@media(max-width:750px) {
    .trailer-modal__shell {
        padding: 0 3.2vw
    }

    .trailer-modal__panel {
        width: min(90vw, 700px)
    }

    .trailer-modal .trailer-modal__close {
        outline: none;
        top: -13.3333333333vw;
        width: 10.6666666667vw
    }
}

.shop-modal-overlay {
    background: transparent;
    display: block;
    inset: 0;
    opacity: 0;
    position: fixed;
    transition: opacity .3s ease;
    z-index: 2000
}

.shop-modal-overlay.is-open {
    opacity: 1
}

.shop-modal-overlay.is-closing {
    opacity: 0
}

.shop-modal {
    background: url(/metaphor/cn/switch2/resources/img/common/bg.DgyJLJm2.webp) 0 0/cover no-repeat;
    block-size: 100lvh;
    inline-size: 100%;
    opacity: 0;
    overflow: hidden;
    position: relative;
    transition: opacity .3s ease
}

.shop-modal-overlay.is-open .shop-modal {
    opacity: 1
}

.shop-modal-overlay.is-closing .shop-modal {
    opacity: 0
}

@media(prefers-reduced-motion:reduce) {

    .shop-modal,
    .shop-modal-overlay {
        transition: none
    }
}

.shop-modal__brand {
    inline-size: 13.75vw;
    left: 2.0833333333vw;
    position: absolute;
    top: 2.0833333333vw
}

.shop-modal__brand-img {
    block-size: auto;
    display: block;
    inline-size: 100%
}

.shop-modal__close {
    background: transparent;
    block-size: 4.1666666667vw;
    border: 0;
    cursor: pointer;
    inline-size: 4.1666666667vw;
    padding: 0;
    position: absolute;
    right: 1.25vw;
    top: 1.25vw;
    z-index: 5
}

.shop-modal__close img {
    display: block;
    height: auto;
    width: 100%
}

.shop-modal__inner {
    align-items: center;
    display: flex;
    flex-direction: column;
    inline-size: 100%;
    left: 0;
    max-block-size: 100lvh;
    overflow: hidden auto;
    padding: 8.4895833333vw 0 12.2395833333vw;
    position: absolute;
    top: 0;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.shop-modal__inner::-webkit-scrollbar {
    display: none
}

.shop-modal__heading {
    margin-bottom: -1.8229166667vw
}

.shop-modal__heading-media {
    block-size: 8.6979166667vw;
    display: block;
    inline-size: 39.6875vw
}

.shop-modal__title {
    color: #fff;
    font-family: var(--font-family-sans);
    font-size: 2.0833333333vw;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 3.125vw;
    text-align: center
}

.shop-modal__content {
    inline-size: 62.5vw;
    overflow: visible;
    position: relative
}

.shop-modal__catalog {
    align-items: center;
    flex-direction: column
}

.shop-modal__catalog,
.shop-modal__grid {
    display: flex;
    gap: 2.0833333333vw;
    inline-size: 100%;
    position: relative
}

.shop-modal__grid {
    flex-wrap: wrap;
    justify-content: center
}

.shop-store-rail {
    block-size: 2.6041666667vw;
    display: flex;
    inline-size: 100%;
    position: relative
}

.shop-store-rail__cap {
    block-size: 100%;
    flex: 0 0 4.1666666667vw;
    overflow: hidden;
    position: relative
}

.shop-store-rail__cap-img {
    block-size: 100%;
    inline-size: 687.5%;
    left: 0;
    max-inline-size: none;
    position: absolute;
    top: 0
}

.shop-store-rail__cap--end .shop-store-rail__cap-img {
    left: -587.5%
}

.shop-store-rail__mid {
    background: #fff;
    block-size: 100%;
    flex: 1 1 auto;
    min-inline-size: 0;
    position: relative
}

.shop-store-rail--solid {
    block-size: 2.6041666667vw
}

.shop-store-rail--solid img {
    block-size: 100%;
    display: block;
    inline-size: 100%;
    inset: 0;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute
}

.shop-store-pane__edge-solid {
    display: none
}

.shop-store-pane__edge-ornate {
    display: block
}

@media(max-width:750px) {
    .shop-store-pane--rails-sp-solid .shop-store-pane__edge-ornate {
        display: none
    }

    .shop-store-pane--rails-sp-solid .shop-store-pane__edge-solid {
        display: block
    }
}

.shop-store-pane {
    display: flex;
    flex-direction: column;
    inline-size: 59.8958333333vw;
    max-inline-size: 100%;
    position: relative
}

.shop-store-pane__body {
    align-items: center;
    background: #fff;
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 1.1458333333vw;
    margin: -.0520833333vw 0;
    min-block-size: 0;
    padding-bottom: .15625vw;
    position: relative
}

.shop-store-pane__row {
    align-items: center
}

.shop-store-pane__brands,
.shop-store-pane__row {
    display: flex;
    flex-flow: row wrap;
    gap: 1.5625vw;
    inline-size: 100%;
    justify-content: center;
    position: relative
}

.shop-store-pane__brands {
    align-items: flex-start
}

.shop-store-pane__brands>.shop-store-tile__brand {
    box-sizing: border-box;
    flex: 0 0 16.9270833333vw;
    inline-size: 16.9270833333vw;
    max-inline-size: 100%
}

.shop-store-pane__cta-stack {
    align-items: flex-end;
    gap: .78125vw
}

.shop-store-pane__cta-stack,
.shop-store-tile {
    display: flex;
    flex-direction: column;
    position: relative
}

.shop-store-tile {
    inline-size: 28.6458333333vw;
    max-inline-size: 100%;
    min-block-size: 15.625vw
}

.shop-store-tile--tall {
    min-block-size: 17.1875vw
}

.shop-store-tile__body {
    background: #fff;
    flex: 1 1 auto;
    gap: 1.5625vw;
    justify-content: space-between;
    margin: -.0520833333vw 0;
    min-block-size: 0
}

.shop-store-tile__body,
.shop-store-tile__brand {
    align-items: center;
    display: flex;
    flex-direction: column;
    position: relative
}

.shop-store-tile__brand {
    inline-size: 100%
}

.shop-store-tile__name {
    color: #3b3b3b;
    font-family: var(--font-family-sans);
    font-size: 1.0416666667vw;
    font-weight: 400;
    line-height: 1.5;
    margin: 0;
    text-align: center
}

div.shop-store-tile__name {
    align-items: center;
    display: flex;
    flex-direction: column
}

.shop-store-tile__name-line {
    display: block
}

.shop-store-tile__name-note {
    display: block;
    font: inherit;
    margin: 0
}

.shop-store-brand-logo {
    block-size: 4.5833333333vw;
    inline-size: 16.9270833333vw;
    position: relative
}

.shop-store-brand-logo__img {
    block-size: 100%;
    display: block;
    inline-size: 100%;
    inset: 0;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute
}

.shop-store-brand-logo--contain .shop-store-brand-logo__img {
    -o-object-fit: contain;
    object-fit: contain
}

.shop-store-brand-logo--amazon .shop-store-brand-logo__img {
    block-size: 108%;
    inline-size: 108%;
    inset: -7.49% auto auto -4%
}

.shop-store-brand-logo--stella .shop-store-brand-logo__img {
    block-size: 103.49%;
    inline-size: 100%;
    inset: -3.49% auto auto 0
}

.shop-store-brand-logo--joshin .shop-store-brand-logo__img {
    block-size: 90.1%;
    inline-size: 81.19%;
    inset: 4.95% auto auto 9.41%
}

.shop-store-brand-logo--nojima .shop-store-brand-logo__img {
    block-size: 129%;
    inline-size: 129%;
    inset: -14.5% auto auto -14.5%
}

.shop-store-brand-logo--kojima .shop-store-brand-logo__img {
    block-size: 125%;
    inline-size: 91.67%;
    inset: -17.71% auto auto 4.17%
}

.shop-store-benefit {
    display: flex;
    flex-direction: column;
    gap: 1.0416666667vw;
    inline-size: 24.4791666667vw;
    max-inline-size: 100%;
    position: relative
}

.shop-store-benefit__frame {
    inline-size: 100%;
    position: relative
}

.shop-store-benefit__frame img {
    display: block;
    height: auto;
    width: 100%
}

.shop-store-benefit__label {
    color: #3b3b3b;
    font-family: var(--font-family-sans);
    font-size: 1.0416666667vw;
    font-weight: 400;
    inline-size: 100%;
    margin: 0;
    text-align: center
}

.shop-store-cta {
    align-items: center;
    background: transparent;
    block-size: 3vw;
    border: 0;
    cursor: pointer;
    display: flex;
    font: inherit;
    inline-size: 21.6666666667vw;
    justify-content: center;
    max-inline-size: 100%;
    padding: 0;
    position: relative;
    text-align: inherit;
    text-decoration: none;
    transition: .1s ease-in-out
}

@media(min-width:751px)and (hover:hover) {
    .shop-store-cta:hover {
        opacity: .8
    }
}

button.shop-store-cta {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.shop-store-cta__bg {
    block-size: 100%;
    display: block;
    inline-size: 100%;
    inset: 0;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute
}

.shop-store-cta__inner {
    align-items: center;
    display: flex;
    inline-size: 15.625vw;
    justify-content: space-between;
    position: relative
}

.shop-store-cta__inner--wide {
    inline-size: 18.3333333333vw
}

.shop-store-cta__label {
    color: #000;
    font-family: var(--font-family-sans);
    font-size: 1.4583333333vw;
    font-weight: 700;
    letter-spacing: .04em;
    line-height: .9714285714;
    margin: 0;
    text-align: center;
    width: 12.5vw
}

.shop-store-cta__label--lg {
    font-size: 1.6666666667vw;
    letter-spacing: .04em;
    line-height: .85;
    margin-left: 1.1458333333vw;
    width: auto
}

.shop-store-cta__label--sm {
    font-size: 1.40625vw;
    letter-spacing: .04em;
    line-height: 1.0074074074;
    white-space: nowrap;
    width: auto
}

.shop-store-cta__icon {
    align-items: center;
    block-size: 1.65625vw;
    display: flex;
    flex-shrink: 0;
    inline-size: 2.15625vw;
    justify-content: center;
    position: relative
}

.shop-store-cta__icon-img {
    block-size: 100%;
    display: block;
    inline-size: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

.shop-store-cta--pending-publication {
    cursor: default;
    pointer-events: none
}

.shop-store-cta--pending-publication .shop-store-cta__bg,
.shop-store-cta--pending-publication .shop-store-cta__inner {
    opacity: .5
}

.shop-store-cta.is-disabled,
.shop-store-cta:disabled {
    cursor: not-allowed;
    opacity: .5;
    pointer-events: none
}

@media(max-width:750px) {
    .shop-modal {
        background-size: cover
    }

    .shop-modal__inner {
        max-block-size: 100lvh;
        padding: 19.2vw 0 20.2666666667vw;
        top: 0
    }

    .shop-modal__close {
        block-size: 13.3333333333vw;
        inline-size: 13.3333333333vw;
        outline: none;
        right: 3.2vw;
        top: 3.2vw
    }

    .shop-modal__brand {
        display: none
    }

    .shop-modal__heading {
        inline-size: 100%;
        margin-bottom: -4.6666666667vw
    }

    .shop-modal__heading-media {
        block-size: 22.2666666667vw;
        inline-size: 101.6vw;
        transform: translate(-.8vw)
    }

    .shop-modal__title {
        font-size: 5.3333333333vw;
        margin-bottom: 8vw
    }

    .shop-modal__content {
        inline-size: 100%;
        overflow: visible
    }

    .shop-modal__catalog {
        gap: 5.3333333333vw;
        inline-size: 73.3333333333vw;
        margin-inline: auto;
        max-inline-size: 100%
    }

    .shop-modal__grid {
        gap: 5.3333333333vw
    }

    .shop-store-rail {
        block-size: 6.6666666667vw
    }

    .shop-store-rail__cap {
        flex-basis: 10.6666666667vw
    }

    .shop-store-pane {
        inline-size: 100%
    }

    .shop-store-pane__body {
        gap: 2.9333333333vw;
        margin: -.1333333333vw 0
    }

    .shop-store-pane__row {
        flex-direction: column;
        gap: 3.3333333333vw
    }

    .shop-store-pane__brands {
        align-items: center;
        flex-direction: column;
        gap: 3.4666666667vw
    }

    .shop-store-pane__brands>.shop-store-tile__brand {
        flex: 0 0 auto;
        inline-size: 100%;
        max-inline-size: 43.3333333333vw
    }

    .shop-store-pane__cta-stack {
        align-items: center;
        gap: 2vw;
        inline-size: 100%
    }

    .shop-store-tile {
        inline-size: 100%;
        min-block-size: 40vw
    }

    .shop-store-tile--tall {
        min-block-size: 44vw
    }

    .shop-store-tile__body {
        gap: 0;
        margin: -.1333333333vw 0
    }

    .shop-store-tile__name {
        font-size: 2.6666666667vw
    }

    .shop-store-brand-logo {
        block-size: 11.7333333333vw;
        inline-size: 43.3333333333vw
    }

    .shop-store-benefit {
        gap: 2.6666666667vw;
        inline-size: 62.6666666667vw
    }

    .shop-store-benefit__label {
        font-size: 2.6666666667vw
    }

    .shop-store-cta {
        block-size: 7.68vw;
        inline-size: 55.4666666667vw
    }

    .shop-store-cta__inner {
        inline-size: 40vw
    }

    .shop-store-cta__inner--wide {
        inline-size: 46.9333333333vw
    }

    .shop-store-cta__label {
        font-size: 3.7333333333vw;
        width: 32.6666666667vw
    }

    .shop-store-cta__label--lg {
        font-size: 4.2666666667vw;
        margin-left: 2.9333333333vw;
        width: auto
    }

    .shop-store-cta__label--sm {
        font-size: 3.6vw;
        width: auto
    }

    .shop-store-cta__icon {
        block-size: 4.24vw;
        inline-size: 5.52vw
    }
}

.site-footer {
    color: #fff;
    margin-top: -10.9375vw;
    overflow: hidden;
    position: relative;
    width: 100vw;
    z-index: 99
}

.site-footer:before {
    background-image: url(/metaphor/cn/switch2/resources/img/top/footer_bg.V-QrFOMf.webp);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute
}

.site-footer__inner {
    height: 56.25vw;
    position: relative;
    width: 100%
}

.site-footer__main {
    margin-left: 9.6875vw;
    padding-top: 1.1458333333vw;
    position: relative;
    width: 35vw
}

.site-footer__title {
    width: 35vw
}

.site-footer__title img {
    display: block;
    height: auto;
    width: 100%
}

.site-footer__spec {
    display: flex;
    flex-direction: column;
    font-size: 1.0416666667vw;
    gap: .6770833333vw;
    letter-spacing: .0416666667vw;
    margin: .8854166667vw 0 0 5.78125vw;
    width: 100%
}

.site-footer__spec-row {
    align-items: baseline;
    display: flex;
    gap: 0
}

.site-footer__spec-term {
    flex: none;
    font-weight: 400;
    margin: 0;
    width: 8.28125vw
}

.site-footer__spec-desc {
    font-weight: 400;
    line-height: 1.40625vw;
    margin: 0
}

.site-footer__cta {
    display: block;
    margin: .9375vw auto 0;
    width: 31.25vw
}

.site-footer__cta img {
    display: block;
    height: auto;
    transition: .1s ease-in-out;
    width: 100%
}

@media(min-width:751px)and (hover:hover) {
    .site-footer__cta img:hover {
        opacity: .8
    }
}

.site-footer__bottom {
    align-items: flex-end;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    margin-top: 1.0416666667vw;
    padding: 0 4.1666666667vw;
    position: relative;
    width: 100vw
}

.site-footer__bottom-left {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    gap: .4166666667vw;
    justify-content: flex-end;
    margin-bottom: -.2083333333vw
}

.site-footer__copyright {
    font-size: .8333333333vw;
    letter-spacing: .0333333333vw;
    line-height: 1.7708333333vw;
    margin: 0;
    text-align: center;
    white-space: nowrap
}

.site-footer__links {
    margin: 0
}

.site-footer__links-list {
    align-items: center;
    display: flex;
    list-style: none;
    position: relative
}

.site-footer__links-item {
    align-items: center;
    display: flex;
    justify-content: center;
    margin: 0;
    padding: 0 1.0416666667vw;
    position: relative;
    transition: .1s ease-in-out
}

@media(min-width:751px)and (hover:hover) {
    .site-footer__links-item:hover {
        opacity: .8
    }
}

.site-footer__links-item:after,
.site-footer__links-item:before {
    background: #fff;
    content: "";
    height: .7291666667vw;
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: .0520833333vw
}

.site-footer__links-item:after {
    left: auto;
    right: 0
}

.site-footer__links-item:not(:nth-child(3)):after {
    display: none
}

.site-footer__link {
    color: #fff;
    display: block;
    font-size: .8333333333vw;
    letter-spacing: .0333333333vw;
    text-decoration: underline;
    white-space: nowrap
}

.site-footer__logos {
    align-items: flex-end;
    display: flex;
    gap: 1.5625vw;
    list-style: none;
    margin: 0;
    padding: 0
}

.site-footer__logos-item {
    margin: 0
}

.site-footer__logos-item img {
    display: block;
    height: auto;
    width: 100%
}

.site-footer__logos-item--atlus {
    width: 8.4375vw
}

.site-footer__logos-item--atlus a {
    transition: .1s ease-in-out
}

@media(min-width:751px)and (hover:hover) {
    .site-footer__logos-item--atlus a:hover {
        opacity: .8
    }
}

.site-footer__logos-item--studiozero {
    width: 2.6041666667vw
}

.site-footer__logos-item--35th {
    width: 4.4791666667vw
}

@media(max-width:750px) {
    .site-footer {
        margin-top: -28.8vw;
        padding-bottom: 12vw
    }

    .site-footer:before {
        background-image: url(/metaphor/cn/switch2/resources/img/top/footer_bg_sp.CBl3stwB.webp);
        background-position: top;
        background-size: 100% auto
    }

    .site-footer:after {
        background: #000;
        bottom: 0;
        content: "";
        height: 55%;
        left: 0;
        position: absolute;
        width: 100%
    }

    .site-footer__inner {
        height: auto;
        z-index: 10
    }

    .site-footer__main {
        margin-left: 0;
        padding-top: 47.7333333333vw;
        width: 100%
    }

    .site-footer__title {
        margin: 0 auto;
        width: 89.6vw
    }

    .site-footer__spec {
        font-size: 3.2vw;
        gap: 2.8vw;
        letter-spacing: .128vw;
        margin: 8vw 0 0 14.8vw
    }

    .site-footer__spec-term {
        width: 24.4vw
    }

    .site-footer__spec-desc {
        line-height: 4vw
    }

    .site-footer__cta {
        margin: 8.9333333333vw auto 0;
        width: 100vw
    }

    .site-footer__bottom {
        align-items: center;
        flex-direction: column;
        gap: 6.9333333333vw;
        margin-top: 9.3333333333vw;
        padding: 0
    }

    .site-footer__logos {
        gap: 4vw;
        order: 1
    }

    .site-footer__logos-item--atlus {
        order: 2;
        width: 21.6vw
    }

    .site-footer__logos-item--studiozero {
        order: 3;
        width: 6.6666666667vw
    }

    .site-footer__logos-item--35th {
        order: 1;
        width: 11.4666666667vw
    }

    .site-footer__bottom-left {
        align-items: center;
        gap: 2.4vw;
        order: 2
    }

    .site-footer__links {
        order: 1
    }

    .site-footer__links-list {
        border-right: 0;
        display: flex;
        flex-wrap: wrap;
        gap: 0;
        justify-content: center
    }

    .site-footer__links-item {
        padding: 0 2.6666666667vw
    }

    .site-footer__links-item:after,
    .site-footer__links-item:before {
        height: 1.8666666667vw;
        width: .1333333333vw
    }

    .site-footer__links-item:nth-child(2):after {
        display: block
    }

    .site-footer__copyright,
    .site-footer__link {
        font-size: 2.1333333333vw;
        letter-spacing: .0853333333vw;
        line-height: 4.5333333333vw
    }

    .site-footer__copyright {
        order: 2;
        text-align: center
    }
}

.cn-top#top .site-nav-drawer__contents--cta span {
    font-size: 1.7708333333vw;
    left: 5.78125vw;
    letter-spacing: 0
}

.cn-top#top .site-nav-drawer__contents--logo {
    margin: .5208333333vw auto 3.125vw
}

.cn-top#top .site-nav-drawer__contents--banners {
    margin-bottom: 0
}

@media(min-width:751px) {
    .cn-top#top .site-nav-drawer__contents--banners .swiper-wrapper {
        gap: .3125vw
    }
}

@media(max-width:750px) {
    .cn-top#top .site-nav-drawer__contents--cta span {
        font-size: 6.4vw;
        left: 15.6vw;
        top: 1.4666666667vw
    }
}

.cn-top#top .common-sns-nav__item:first-child,
.cn-top#top .common-sns-nav__item:nth-child(2),
.cn-top#top .common-sns-nav__item:nth-child(3),
.cn-top#top .common-sns-nav__item:nth-child(4) {
    width: 2.0833333333vw
}

.cn-top#top .common-sns-nav__item:nth-child(5) {
    width: auto
}

.cn-top#top .common-sns-nav__item:nth-child(6) {
    width: 1.7708333333vw
}

@media(max-width:750px) {

    .cn-top#top .common-sns-nav__item:first-child,
    .cn-top#top .common-sns-nav__item:nth-child(2),
    .cn-top#top .common-sns-nav__item:nth-child(3),
    .cn-top#top .common-sns-nav__item:nth-child(4) {
        width: 6.4vw
    }

    .cn-top#top .common-sns-nav__item:nth-child(6) {
        width: 5.3333333333vw
    }
}

.cn-top#top .fixed-cta {
    inline-size: 22.7083333333vw
}

@media(max-width:750px) {
    .cn-top#top .fixed-cta {
        inline-size: 58.1333333333vw
    }
}

.cn-top#top .fv {
    padding-bottom: 5.2604166667vw
}

.cn-top#top .fv__media {
    margin-top: 1.9791666667vw
}

.cn-top#top .fv__purchase {
    margin: -18.2291666667vw 0 0 62.1875vw;
    width: 36.71875vw
}

.cn-top#top .fv__purchase>img {
    width: 36.71875vw
}

.cn-top#top .fv__cta {
    margin-top: -2.1354166667vw;
    width: 27.7083333333vw
}

.cn-top#top .fv__lead {
    margin-top: 1.4583333333vw
}

.cn-top#top .fv__lead-image {
    width: 85.8333333333vw
}

.cn-top#top .fv__lead-text {
    margin-top: 0;
    width: 47.1354166667vw
}

.cn-top#top .fv__divider {
    margin-top: 2.0833333333vw
}

.cn-top#top .fv__awards {
    flex-direction: row;
    gap: 1.1458333333vw;
    justify-content: center;
    margin-top: 2.1354166667vw
}

.cn-top#top .fv__award-badges li:first-child {
    width: 9.375vw
}

.cn-top#top .fv__award-badges li:nth-child(2) {
    width: 26.7708333333vw
}

.cn-top#top .fv__award-list {
    width: 42.4479166667vw
}

.cn-top#top .fv__galica {
    bottom: .625vw
}

@media(max-width:750px) {
    .cn-top#top .fv {
        padding-bottom: 13.7333333333vw
    }

    .cn-top#top .fv__hero {
        padding-top: 51.4666666667vw
    }

    .cn-top#top .fv__media {
        margin-top: -2.6666666667vw
    }

    .cn-top#top .fv__purchase {
        margin: -5.4666666667vw 0 0;
        width: 94vw
    }

    .cn-top#top .fv__purchase>img {
        width: 94vw
    }

    .cn-top#top .fv__cta {
        margin-top: -6.2666666667vw;
        width: 70.9333333333vw
    }

    .cn-top#top .fv__lead {
        margin-top: 5.8666666667vw
    }

    .cn-top#top .fv__lead-image {
        width: 87.6vw
    }

    .cn-top#top .fv__lead-text {
        margin-top: 0;
        width: 85.8666666667vw
    }

    .cn-top#top .fv__awards,
    .cn-top#top .fv__divider {
        margin-top: 5.3333333333vw
    }

    .cn-top#top .fv__awards {
        flex-wrap: wrap;
        gap: 5.3333333333vw
    }

    .cn-top#top .fv__award-badges {
        gap: 0 2.4vw;
        padding: 0
    }

    .cn-top#top .fv__award-badges li:first-child {
        width: 21.6vw
    }

    .cn-top#top .fv__award-badges li:nth-child(2) {
        width: 61.6vw
    }

    .cn-top#top .fv__award-list {
        width: 82.6666666667vw
    }

    .cn-top#top .fv__galica {
        bottom: -17.2vw
    }
}

.cn-top#top .story__inner {
    padding-top: 22.7604166667vw
}

.cn-top#top .story__text-title {
    margin-bottom: 15.1041666667vw;
    width: 22.8125vw
}

.cn-top#top .story__text-1 {
    margin-bottom: 1.5625vw;
    width: 42.65625vw
}

.cn-top#top .story__text-2 {
    margin-bottom: 15.1041666667vw;
    width: 24.9479166667vw
}

.cn-top#top .story__text-3 {
    margin-bottom: 15.1041666667vw;
    width: 40.6770833333vw
}

.cn-top#top .story__text-4 {
    width: 40.8333333333vw
}

@media(max-width:750px) {
    .cn-top#top .story__inner {
        padding-top: 72.6666666667vw
    }

    .cn-top#top .story__text-title {
        margin-bottom: 31.6vw;
        width: 73.7333333333vw
    }

    .cn-top#top .story__text-1 {
        margin: 0 0 2.8vw;
        width: 78.5333333333vw
    }

    .cn-top#top .story__text-2 {
        margin: 0 0 31.8666666667vw;
        width: 71.4666666667vw
    }

    .cn-top#top .story__text-3 {
        margin-bottom: 32.2666666667vw;
        width: 86.5333333333vw
    }

    .cn-top#top .story__text-4 {
        width: 86.9333333333vw
    }
}

.cn-top#top .character__title-sub {
    height: 5.9895833333vw;
    top: 13.90625vw
}

@media(max-width:750px) {
    .cn-top#top .character__title-sub {
        height: 15.3333333333vw;
        top: 13.7333333333vw
    }
}

.cn-top#top .world__desc-text {
    gap: .7291666667vw
}

.cn-top#top .world__desc--01 {
    top: 17.34375vw
}

.cn-top#top .world__content02 {
    z-index: 2
}

.cn-top#top .world__content02-label {
    left: 48.8020833333vw;
    top: 3.8541666667vw;
    width: 32.8125vw
}

.cn-top#top .world__desc--02 {
    left: 57.03125vw;
    top: 12.5vw
}

@media(max-width:750px) {
    .cn-top#top .world__desc-text {
        gap: 1.8666666667vw
    }

    .cn-top#top .world__desc--01 {
        margin-left: 5.8666666667vw;
        top: 0
    }

    .cn-top#top .world__content02 {
        margin-top: 17.4666666667vw
    }

    .cn-top#top .world__content02-label {
        left: 0;
        margin: -8.2666666667vw 0 0 -14.8vw;
        top: 0;
        width: 84vw
    }

    .cn-top#top .world__desc--02 {
        left: 0;
        margin: -.2666666667vw 0 0 5.7333333333vw;
        top: 0
    }

    .cn-top#top .world__gallery {
        margin-top: -1.0666666667vw
    }
}

.cn-top#top .enemy__image01 {
    margin: -20.15625vw 0 0 2.8125vw;
    width: 77.8125vw
}

.cn-top#top .enemy__label {
    width: 23.6458333333vw
}

.cn-top#top .enemy__desc {
    top: 28.90625vw
}

.cn-top#top .enemy__desc-row {
    background-repeat: repeat-x
}

@media(max-width:750px) {
    .cn-top#top .enemy__image01 {
        margin: -30.9333333333vw 0 0;
        width: 100vw
    }

    .cn-top#top .enemy__image01-1 {
        top: 28.9333333333vw !important
    }

    .cn-top#top .enemy__image02 {
        margin-top: 9.8666666667vw
    }

    .cn-top#top .enemy__label {
        top: 104vw;
        width: 60.5333333333vw
    }

    .cn-top#top .enemy__desc {
        top: 119.2vw
    }

    .cn-top#top .enemy__desc-text {
        gap: 2vw
    }
}

.cn-top#top .system__title {
    width: 60.625vw
}

.cn-top#top .system__desc--01 {
    left: 8.90625vw;
    top: 26.9270833333vw
}

.cn-top#top .system__desc--01 .system__desc-row.l-4 {
    width: -moz-fit-content;
    width: fit-content
}

.cn-top#top .system__content02 {
    margin-top: 2.2916666667vw
}

.cn-top#top .system__content02-label {
    margin-left: 45.5208333333vw;
    width: 38.9583333333vw
}

.cn-top#top .system__desc--02 {
    margin: .15625vw 0 0 59.5833333333vw;
    position: relative
}

.cn-top#top .system__content02-img {
    margin-top: 2.2916666667vw
}

.cn-top#top .system__content03-heading {
    height: 13.8541666667vw;
    width: 32.34375vw
}

.cn-top#top .system__content04-heading {
    height: 13.8541666667vw;
    width: 35.8333333333vw
}

.cn-top#top .system__content03 .system__card-desc {
    top: 11.4583333333vw
}

.cn-top#top .system__card-image--03-01 {
    width: 60.625vw
}

.cn-top#top .system__card-image--03-03 {
    height: 18.90625vw;
    top: 22.3958333333vw
}

.cn-top#top .system__content04 .system__gallery {
    top: 19.6354166667vw
}

.cn-top#top .system__gallery-item--01 {
    height: 21.71875vw
}

@media(max-width:750px) {
    .cn-top#top .system__title {
        width: 124.1333333333vw
    }

    .cn-top#top .system__desc--01 {
        left: 0;
        margin: 4vw 0 0 5.7333333333vw;
        top: 0
    }

    .cn-top#top .system__content02 {
        margin-top: 113.8666666667vw
    }

    .cn-top#top .system__content02-label {
        margin-left: -22.9333333333vw;
        width: 99.7333333333vw
    }

    .cn-top#top .system__desc--02 {
        margin: .4vw 0 0 5.7333333333vw
    }

    .cn-top#top .system__content02-img {
        margin-top: 1.7333333333vw
    }

    .cn-top#top .system__content03 {
        height: 190.5333333333vw
    }

    .cn-top#top .system__content04 {
        height: 209.8666666667vw;
        margin-top: 34vw
    }

    .cn-top#top .system__content03-heading {
        height: 35.4666666667vw;
        left: -7.4666666667vw;
        width: 82.8vw
    }

    .cn-top#top .system__content04-heading {
        height: 35.4666666667vw;
        width: 91.7333333333vw
    }

    .cn-top#top .system__content03 .system__card-desc {
        top: 104.1333333333vw
    }

    .cn-top#top .system__content04 .system__card-desc {
        top: 98.2666666667vw
    }

    .cn-top#top .system__card-image--03-01 {
        top: 37.7333333333vw;
        width: 100vw
    }

    .cn-top#top .system__card-image--03-02 {
        left: .1333333333vw;
        top: 127.8666666667vw
    }

    .cn-top#top .system__content04 .system__card-image--04-01 {
        top: 19.7333333333vw
    }

    .cn-top#top .system__content04 .system__gallery {
        top: 119.4666666667vw
    }

    .cn-top#top .system__gallery-item--01 {
        height: 47.4666666667vw
    }
}

.cn-top#top .staff__lead {
    width: 70.8333333333vw
}

.cn-top#top .staff__list {
    margin-top: .8854166667vw
}

@media(max-width:750px) {
    .cn-top#top .staff__lead {
        margin-top: -2.6666666667vw;
        width: 95.2vw
    }

    .cn-top#top .staff__list {
        gap: 1.3333333333vw;
        margin-top: 1.8666666667vw
    }

    .cn-top#top .staff__row {
        gap: .9333333333vw
    }
}

.cn-top#top .common-content-body__description {
    width: 100%
}

.cn-top#top .common-content-body__price-amount {
    letter-spacing: 0
}

@media(max-width:750px) {
    .cn-top#top .common-content-body__heading {
        letter-spacing: 0
    }
}

.cn-top#top .product-card__inner {
    grid-template: "media meta"auto "media actions"auto/16.71875vw 28.90625vw;
    padding-bottom: 3.2291666667vw
}

.cn-top#top .product-card__meta {
    padding-top: .78125vw
}

.cn-top#top .product-card__name {
    margin-bottom: 1.40625vw
}

.cn-top#top .product-card__note {
    margin-top: -.3125vw
}

.cn-top#top .product-card--dl .product-card__inner {
    grid-template: "media meta"auto "media actions"auto/19.3229166667vw 28.90625vw;
    padding-bottom: 3.4375vw;
    width: 100%
}

.cn-top#top .product-card--dl .product-card__meta {
    padding-top: .2083333333vw
}

.cn-top#top .product-card__cta {
    margin-top: 1.5625vw
}

.cn-top#top .product-card--dl .product-card__cta {
    margin-top: .9895833333vw
}

.cn-top#top .product__benefits {
    margin-top: 3.1770833333vw
}

.cn-top#top .product__benefits-title {
    height: 6.1979166667vw;
    width: 29.3229166667vw
}

.cn-top#top .product__benefits-list {
    margin-bottom: 1.0416666667vw
}

.cn-top#top .product__benefit:nth-child(2) .product__benefit-figure .product__benefit-body {
    margin-top: -.4166666667vw
}

@media(max-width:750px) {
    .cn-top#top .product-card__inner {
        align-items: start;
        grid-template: "media meta"auto "actions actions"auto/40.8vw 38.2666666667vw;
        padding-bottom: 8.9333333333vw
    }

    .cn-top#top .product-card__meta {
        padding: 10vw 0 0 .8vw
    }

    .cn-top#top .product-card__name {
        font-size: 8.8vw;
        letter-spacing: .2666666667vw;
        line-height: 1.1;
        margin-bottom: 0
    }

    .cn-top#top .product-card .common-content-body__price {
        margin: 3.0666666667vw 0 0
    }

    .cn-top#top .product-card__note {
        margin-top: 4vw;
        padding: 0 2.6666666667vw
    }

    .cn-top#top .product-card__link {
        display: inline-block;
        margin: auto;
        vertical-align: top;
        width: 46.6666666667vw;
        word-break: break-all
    }

    .cn-top#top .product-card--dl .product-card__inner {
        grid-template: "media meta"auto "actions actions"auto/41.0666666667vw 38vw;
        padding: 9.3333333333vw 0
    }

    .cn-top#top .product-card--dl .product-card__meta {
        margin-top: -.9333333333vw;
        padding-top: 0
    }

    .cn-top#top .product-card--dl .common-content-body__price {
        margin: 3.0666666667vw 0 0
    }

    .cn-top#top .product-card__cta {
        margin: 4.6666666667vw auto 0
    }

    .cn-top#top .product-card--dl .product-card__cta {
        margin-top: 4.9333333333vw
    }

    .cn-top#top .product__benefits {
        margin-top: 5.3333333333vw
    }

    .cn-top#top .product__benefits-title {
        height: 15.8666666667vw;
        width: 75.0666666667vw
    }

    .cn-top#top .product__benefits-list {
        gap: 4vw;
        margin-bottom: 2.6666666667vw
    }

    .cn-top#top .product__benefit-body {
        gap: 2.4vw
    }

    .cn-top#top .product__benefit-name {
        line-height: 1
    }
}

.cn-top#top .dlc .dlc-card {
    margin-top: .5208333333vw
}

.cn-top#top .dlc__slider-next,
.cn-top#top .dlc__slider-prev {
    inset-block-start: 19.6354166667vw
}

@media(max-width:750px) {
    .cn-top#top .dlc .dlc-card {
        gap: 6vw;
        margin-top: -.4vw
    }

    .cn-top#top .dlc .dlc-card .common-content-body__description {
        top: 87.8666666667vw
    }

    .cn-top#top .dlc__slider-next,
    .cn-top#top .dlc__slider-prev {
        inset-block-start: 32.9333333333vw
    }
}

.cn-top#top .to-page-top-btn {
    margin-top: 9.1666666667vw
}

@media(max-width:750px) {
    .cn-top#top .to-page-top-btn {
        margin-top: 16.2666666667vw
    }
}

.cn-top#top .site-footer {
    margin-top: -14.3229166667vw;
    overflow: visible
}

.cn-top#top .site-footer:before {
    height: 56.25vw;
    inset: unset;
    top: -1.3020833333vw;
    width: 100vw
}

.cn-top#top .site-footer__inner {
    height: 54.9479166667vw
}

.cn-top#top .site-footer__main {
    padding-top: 0;
    z-index: 2
}

.cn-top#top .site-footer__spec {
    gap: .6770833333vw;
    letter-spacing: .0364583333vw;
    margin: .9895833333vw 0 0 .3645833333vw;
    width: 103%
}

.cn-top#top .site-footer__spec-term {
    width: 8.28125vw
}

.cn-top#top .site-footer__bottom {
    flex-direction: column-reverse;
    gap: 1.0416666667vw;
    margin-top: -4.0625vw
}

.cn-top#top .site-footer__bottom-left {
    align-items: flex-end
}

.cn-top#top .site-footer__links-item:after {
    display: block
}

@media(max-width:750px) {
    .cn-top#top .site-footer {
        margin-top: -39.4666666667vw
    }

    .cn-top#top .site-footer:before {
        height: 120vw;
        top: 2.9333333333vw
    }

    .cn-top#top .site-footer__inner {
        height: auto
    }

    .cn-top#top .site-footer__main {
        padding-top: 50.4vw
    }

    .cn-top#top .site-footer__spec {
        gap: 1.7333333333vw;
        letter-spacing: .1333333333vw;
        margin: 8.9333333333vw 0 0 10.2666666667vw;
        width: 100%
    }

    .cn-top#top .site-footer__spec-term {
        width: 24.4vw
    }

    .cn-top#top .site-footer__cta {
        margin: 8.9333333333vw auto 0;
        width: 100vw
    }

    .cn-top#top .site-footer__bottom {
        flex-direction: column;
        gap: 6vw;
        margin-top: 7.6vw
    }

    .cn-top#top .site-footer__bottom-left {
        align-items: center
    }
}

.cn-top#top .shop-modal__heading {
    margin-bottom: 3.8020833333vw
}

.cn-top#top .shop-modal__catalog-placeholder {
    color: #fff;
    font-family: var(--font-family-sans);
    font-size: 1.3541666667vw;
    font-weight: 700;
    margin: 0;
    padding: 4.1666666667vw 0;
    text-align: center
}

@media(max-width:750px) {
    .cn-top#top .shop-modal__heading {
        margin-bottom: 9.7333333333vw
    }

    .cn-top#top .shop-store-tile--tall .shop-store-tile__body {
        gap: 4vw
    }
}

[hidden] {
    display: none !important
}

@keyframes fade-in-up-animation {
    0% {
        opacity: 0;
        transform: translateY(30px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.top,
.top>.section-container,
.top>section {
    position: relative
}

.top-section-bg {
    z-index: 0
}

.top-section-bg,
.top-section-bg-enemy {
    block-size: 100lvh;
    inset-block-start: 0;
    inset-inline: 0;
    overflow: hidden;
    pointer-events: none;
    position: fixed
}

.top-section-bg-enemy {
    z-index: 2
}

.top-section-bg-enemy--z-minus-1 {
    z-index: -1
}

.top-section-bg__item {
    display: block;
    inset: 0;
    opacity: 0;
    position: absolute
}

.top-section-bg__item img {
    block-size: 100%;
    display: block;
    inline-size: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.top-section-bg__item--story {
    isolation: isolate;
    --story-bg-scale: 1;
    --story-viewport-scale: max(.05208vw, .09259lvh)
}

.top-section-bg__story-mask,
.top-section-bg__story-shot {
    inset: 0;
    position: absolute
}

.top-section-bg__story-mask img {
    transform: scale(var(--story-bg-scale));
    transform-origin: center
}

.top-section-bg__story-shot img {
    block-size: auto;
    inline-size: calc(var(--story-shot-design-width)*var(--story-viewport-scale));
    inset-block-start: 50%;
    inset-inline-start: 50%;
    max-block-size: none;
    max-inline-size: none;
    -o-object-fit: unset;
    object-fit: unset;
    position: absolute;
    transform: translate(-50%, -50%) translate(calc(var(--story-shot-design-x, 0)*var(--story-viewport-scale)), calc(var(--story-shot-design-y, 0)*var(--story-viewport-scale))) scale(var(--story-bg-scale, 1));
    transform-origin: center
}

.top-section-bg__story-shot {
    opacity: 0;
    overflow: hidden
}

.top-section-bg__story-shot--1 {
    --story-shot-design-width: 1134;
    --story-shot-design-x: 1;
    --story-shot-design-y: -8
}

.top-section-bg__story-shot--2 {
    --story-shot-design-width: 1126;
    --story-shot-design-x: 126;
    --story-shot-design-y: -9
}

.top-section-bg__story-shot--3 {
    --story-shot-design-width: 1118;
    --story-shot-design-x: -26;
    --story-shot-design-y: -6
}

@media(max-width:750px) {
    .top-section-bg__item--story {
        --story-viewport-scale: max(.13333vw, .07496lvh)
    }

    .top-section-bg__story-shot--1,
    .top-section-bg__story-shot--2 {
        --story-shot-design-width: 750;
        --story-shot-design-x: 0;
        --story-shot-design-y: -3
    }

    .top-section-bg__story-shot--3 {
        --story-shot-design-width: 750;
        --story-shot-design-x: 0;
        --story-shot-design-y: -4
    }
}

@media(prefers-reduced-motion:reduce) {

    .top-section-bg-enemy .top-section-bg__item,
    .top-section-bg__item,
    .top-section-bg__story-shot {
        transition: none
    }
}

#bg-front-movie {
    height: 100vh;
    left: 0;
    mix-blend-mode: screen;
    -o-object-fit: cover;
    object-fit: cover;
    pointer-events: none;
    position: fixed;
    top: 0;
    width: 100vw;
    z-index: 1000
}

.fixed-cta {
    background: transparent;
    block-size: 7.2916666667vw;
    bottom: 1.25vw;
    display: block;
    inline-size: 24.0104166667vw;
    opacity: 0;
    position: fixed;
    right: 0;
    text-decoration: none;
    transform: translate(120%);
    transition: transform .2s ease, filter .2s ease;
    visibility: hidden;
    z-index: 100
}

.fixed-cta img {
    transition: .1s ease-in-out
}

@media(min-width:751px)and (hover:hover) {
    .fixed-cta img:hover {
        opacity: .8
    }
}

.fixed-cta__img,
.fixed-cta__media {
    block-size: 100%;
    display: block;
    inline-size: 100%
}

.fixed-cta__text {
    block-size: 1px;
    border: 0;
    inline-size: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    clip: rect(0 0 0 0);
    clip-path: inset(50%)
}

@media(max-width:750px) {
    .fixed-cta {
        block-size: 18.6666666667vw;
        bottom: 3.2vw;
        inline-size: 61.4666666667vw;
        right: 0
    }
}

.fv {
    background-color: #fff;
    overflow: hidden;
    padding-bottom: 3.4895833333vw;
    z-index: 30
}

.fv:after {
    background: #d3d3d3 url(/metaphor/cn/switch2/resources/img/top/pagination_dot_inactive.DCeKG4QN.webp) 0 0/5.2083333333vw 5.2083333333vw repeat;
    bottom: 0;
    content: "";
    height: .2604166667vw;
    left: 0
}

.fv:after,
.fv__bg {
    pointer-events: none;
    position: absolute;
    width: 100vw
}

.fv__bg {
    inset: 0;
    z-index: 0
}

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

.fv__mv {
    left: 7.4479166667vw;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 96.1458333333vw
}

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

.fv-menu {
    right: 7.4479166667vw;
    top: 2.2916666667vw;
    z-index: 10
}

.fv__hero {
    display: flex;
    flex-direction: column;
    padding-top: 7.2395833333vw;
    position: relative;
    z-index: 2
}

.fv__switch2-logo {
    height: auto;
    left: 0;
    position: absolute;
    top: 0;
    width: 7.8125vw
}

.fv__title {
    margin: 0 0 0 8.3854166667vw;
    opacity: 0;
    width: 43.75vw
}

.fv__title.run {
    animation: fade-in-up-animation .3s ease-out both
}

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

.fv__media {
    margin: 1.5625vw 0 0 5.5208333333vw;
    position: relative;
    width: 49.7395833333vw
}

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

.fv__trailer {
    background-color: #000;
    display: block;
    height: 84.6%;
    left: 17.8%;
    position: absolute;
    top: 8%;
    width: 64.5%
}

@media(min-width:751px) {
    .fv__trailer {
        transition: filter .1s ease-in-out
    }
}

@media(min-width:751px)and (hover:hover) {
    .fv__trailer:hover {
        filter: brightness(1.3)
    }
}

.fv__trailer iframe {
    border: 0;
    height: 100%;
    pointer-events: none;
    position: relative;
    width: 100%
}

.fv__trailer-link {
    inset: 0;
    position: absolute
}

.fv__play {
    bottom: 0;
    height: auto;
    position: absolute;
    right: 0;
    width: 13.2291666667vw
}

.fv__purchase {
    align-items: center;
    display: flex;
    flex-direction: column;
    margin: -18.8541666667vw 0 0 68.75vw;
    opacity: 0;
    width: 30.1041666667vw
}

.fv__purchase.run {
    animation: fade-in-up-animation .3s ease-out both
}

.fv__purchase>img {
    display: block;
    height: auto;
    width: 30.1041666667vw
}

.fv__cta {
    display: block;
    margin-top: -3.1770833333vw;
    width: 27.7083333333vw
}

.fv__cta img {
    display: block;
    height: auto;
    transition: .1s ease-in-out;
    width: 100%
}

@media(min-width:751px)and (hover:hover) {
    .fv__cta img:hover {
        opacity: .8
    }
}

.fv__scroll-hint {
    left: 2.0833333333vw;
    position: absolute;
    top: 28.4895833333vw;
    width: .9895833333vw
}

.fv__scroll-text {
    display: block;
    height: auto;
    width: 100%
}

.fv__scroll-line {
    height: 11.1458333333vw;
    left: .3645833333vw;
    overflow: hidden;
    position: absolute;
    top: 6.0416666667vw;
    width: .1041666667vw
}

.fv__scroll-line:before {
    animation: scroll-line-animation 1.5s linear infinite;
    background-color: #fff;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transform: translateY(-100%);
    width: 100%
}

@keyframes scroll-line-animation {
    0% {
        transform: translateY(-100%)
    }

    22% {
        transform: translateY(0)
    }

    55% {
        transform: translateY(0)
    }

    77% {
        transform: translateY(100%)
    }

    to {
        transform: translateY(100%)
    }
}

.fv__lead {
    align-items: center;
    display: flex;
    flex-direction: column;
    margin: 1.71875vw auto 0;
    position: relative;
    z-index: 1
}

.fv__lead-image {
    display: block;
    width: 70.625vw
}

.fv__lead-image img {
    display: block;
    height: auto;
    width: 100%
}

.fv__lead-text {
    display: block;
    margin-top: -.8333333333vw;
    width: 43.0208333333vw
}

.fv__lead-text img {
    display: block;
    height: auto;
    width: 100%
}

.fv__divider {
    display: block;
    margin: 1.5625vw auto 0;
    position: relative;
    width: 84.375vw
}

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

.fv__awards {
    flex-direction: column;
    gap: 1.8229166667vw;
    margin-top: 1.8229166667vw;
    position: relative;
    z-index: 1
}

.fv__award-badges,
.fv__awards {
    align-items: center;
    display: flex
}

.fv__award-badges {
    gap: 1.0416666667vw;
    list-style: none;
    margin: 0;
    padding: 0
}

.fv__award-badges img {
    display: block;
    height: auto;
    width: 100%
}

.fv__award-badges li:first-child,
.fv__award-badges li:nth-child(2),
.fv__award-badges li:nth-child(3) {
    width: 9.4270833333vw
}

.fv__award-badges li:nth-child(4) {
    width: 9.375vw
}

.fv__award-badges li:nth-child(5) {
    width: 26.7708333333vw
}

.fv__award-list {
    display: block;
    width: 73.4375vw
}

.fv__award-list img {
    display: block;
    height: auto;
    width: 100%
}

.fv__galica {
    bottom: 8.3854166667vw;
    height: auto;
    left: 85.3645833333vw;
    position: absolute;
    width: 19.6875vw
}

@media(max-width:750px) {
    .fv {
        padding-bottom: 13.3333333333vw
    }

    .fv:after {
        background-size: 13.3333333333vw 13.3333333333vw;
        height: .6666666667vw
    }

    .fv__mv {
        left: 0;
        top: 0;
        width: 100vw
    }

    .fv-menu {
        right: 22.2666666667vw;
        top: 6.5333333333vw
    }

    .fv__hero {
        align-items: center;
        padding-top: 51.3333333333vw
    }

    .fv__switch2-logo {
        width: 17.3333333333vw
    }

    .fv__title {
        margin: 0 auto;
        order: 1;
        width: 80.5333333333vw
    }

    .fv__media {
        margin: -1.4666666667vw auto 0;
        order: 3;
        width: 94.6666666667vw
    }

    .fv__play {
        width: 24.5333333333vw
    }

    .fv__purchase {
        margin: -7.6vw auto 0;
        order: 2
    }

    .fv__purchase,
    .fv__purchase>img {
        width: 77.0666666667vw
    }

    .fv__cta {
        height: 25.7333333333vw;
        margin-top: -9.7333333333vw;
        width: 70.9333333333vw
    }

    .fv__scroll-hint {
        left: 3.8666666667vw;
        top: 62.4vw;
        width: 2.5333333333vw
    }

    .fv__scroll-line {
        height: 22.1333333333vw;
        left: .9333333333vw;
        top: 15.0666666667vw;
        width: .2666666667vw
    }

    .fv__lead {
        margin-top: 6.4vw
    }

    .fv__lead-image {
        width: 100.5333333333vw
    }

    .fv__lead-text {
        margin-top: -.5333333333vw;
        width: 77.3333333333vw
    }

    .fv__divider {
        margin-top: 5.0666666667vw;
        width: 93.8666666667vw
    }

    .fv__awards {
        gap: 5.3333333333vw;
        margin-top: 5.3333333333vw
    }

    .fv__award-badges {
        flex-wrap: wrap;
        gap: 2.5333333333vw 3.3333333333vw;
        justify-content: center;
        padding: 0 4.6666666667vw
    }

    .fv__award-badges li:first-child,
    .fv__award-badges li:nth-child(2),
    .fv__award-badges li:nth-child(3),
    .fv__award-badges li:nth-child(4) {
        width: 21.6vw
    }

    .fv__award-badges li:nth-child(5) {
        width: 61.6vw
    }

    .fv__award-list {
        width: 82.6666666667vw
    }

    .fv__galica {
        bottom: -17.3333333333vw;
        left: 73.0666666667vw;
        width: 35.3333333333vw
    }
}

.story {
    color: #fff;
    font-family: var(--font-family-serif);
    isolation: isolate;
    z-index: 5;
    --story-screen-dim: 0
}

.story:before {
    background: rgb(0, 0, 0, var(--story-screen-dim));
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
    z-index: 2
}

@media(prefers-reduced-motion:reduce) {
    .story:before {
        display: none
    }
}

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

.story__inner {
    align-items: center;
    display: flex;
    flex-direction: column;
    padding: 22.7604166667vw 0 26.0416666667vw;
    position: relative
}

.story__text {
    display: block
}

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

.story__text-title {
    margin-bottom: 14.5833333333vw;
    width: 38.2291666667vw
}

.story__text-1 {
    margin-bottom: 1.0416666667vw;
    width: 45.3125vw
}

.story__text-2 {
    margin-bottom: 14.5833333333vw;
    width: 35.9895833333vw
}

.story__text-3 {
    margin-bottom: 14.5833333333vw;
    width: 42.7604166667vw
}

.story__text-4 {
    width: 40.78125vw
}

@media(max-width:750px) {
    .story__inner {
        padding: 72.8vw 0 40vw
    }

    .story__text-title {
        margin-bottom: 22.1333333333vw;
        width: 97.8666666667vw
    }

    .story__text-1 {
        margin-bottom: 2.6666666667vw;
        width: 86.4vw
    }

    .story__text-2 {
        margin-bottom: 22.9333333333vw;
        width: 78.9333333333vw
    }

    .story__text-3 {
        margin-bottom: 22.9333333333vw;
        width: 96vw
    }

    .story__text-4 {
        width: 80.8vw
    }
}

.section-container {
    position: relative;
    z-index: 10
}

.character {
    height: 70.8333333333vw;
    position: relative
}

.character p {
    transform: scaleX(.8);
    transform-origin: left
}

.character__arche,
.character__bg,
.character__bg-circle,
.character__bg-line,
.character__img,
.character__name,
.character__panel,
.character__panels,
.character__select,
.character__select-line,
.character__text,
.character__title,
.character__title-sub {
    position: absolute
}

.character__panel,
.character__panels {
    inset: 0
}

.character__panels {
    z-index: 3
}

.character__panel[hidden] {
    display: none
}

.character__panel {
    opacity: 0;
    transition: opacity .3s ease;
    will-change: opacity
}

.character__panel.is-active {
    opacity: 1
}

@media(prefers-reduced-motion:reduce) {
    .character__panel {
        transition: none
    }
}

.character__bg-circle,
.character__bg-line {
    z-index: 0
}

.character__bg-line {
    height: 57.8125vw;
    left: 17.7083333333vw;
    -o-object-fit: cover;
    object-fit: cover;
    top: 12.2395833333vw;
    width: 82.2916666667vw
}

.character__bg-circle {
    animation: circle-rotate 50s linear infinite;
    height: 37.9166666667vw;
    left: 55.6770833333vw;
    top: 20.0520833333vw;
    width: 37.9166666667vw
}

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

    to {
        transform: rotate(1turn)
    }
}

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

.character__title,
.character__title-sub {
    z-index: 1
}

.character__img {
    z-index: 2
}

.character__arche,
.character__name,
.character__select,
.character__text {
    z-index: 3
}

.character__name {
    pointer-events: none;
    z-index: 4
}

.character__title {
    height: 7.96875vw;
    left: 50%;
    top: 8.1770833333vw;
    transform: translate(-50%);
    width: 100%
}

.character__title img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.character__title-sub {
    height: 5.9895833333vw;
    left: 0;
    top: 13.90625vw;
    width: 24.4791666667vw
}

.character__img {
    height: 79.3229166667vw;
    left: 41.1458333333vw;
    overflow: hidden;
    top: 0;
    width: 79.1666666667vw
}

.character__img img {
    display: block;
    height: 100%;
    inset: 0;
    -o-object-fit: cover;
    object-fit: cover;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    transition: opacity .3s ease;
    width: 100%;
    will-change: opacity
}

.character__img img.is-active {
    opacity: 1
}

.character__text {
    left: 12.96875vw;
    top: 15.8854166667vw;
    width: 39.0625vw
}

.character__text-base img {
    display: block;
    height: auto;
    width: 100%
}

.character__meta {
    align-items: center;
    display: flex;
    left: 3.4375vw;
    position: absolute;
    top: 18.75vw
}

.character__meta-item {
    align-items: center;
    display: flex;
    gap: .78125vw
}

.character__meta-item--cv {
    width: 14.4791666667vw
}

.character__meta-label {
    height: 1.7708333333vw;
    width: 3.6458333333vw
}

.character__meta-value {
    font-size: 1.7708333333vw;
    letter-spacing: .05em;
    margin: 0
}

.character__desc,
.character__meta-value {
    color: #fff;
    font-family: var(--font-family-sans);
    font-weight: 700
}

.character__desc {
    font-size: 1.4583333333vw;
    left: 3.8541666667vw;
    letter-spacing: .1em;
    line-height: 1.46;
    position: absolute;
    top: 23.2291666667vw;
    width: 41.4583333333vw
}

.character--desc-lines-2 .character__desc,
.character__panel[data-desc-lines="2"] .character__desc {
    top: 24.2708333333vw
}

.character--desc-lines-4 .character__desc,
.character__panel[data-desc-lines="4"] .character__desc {
    top: 22.1875vw
}

.character__name {
    height: 11.4583333333vw;
    left: 8.125vw;
    top: 25.2604166667vw;
    width: 51.0416666667vw
}

.character__name-bg img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.character__name-text {
    color: #fff;
    font-family: var(--font-family-sans);
    font-size: 3.125vw;
    font-weight: 700;
    left: 6.5625vw;
    letter-spacing: .05em;
    margin: 0;
    position: absolute;
    top: 4.1666666667vw
}

.character__arche {
    height: 12.03125vw;
    left: 12.96875vw;
    top: 46.3020833333vw;
    width: 39.0625vw
}

.character__arche-bg {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.character__arche-bottom,
.character__arche-top {
    color: #fff;
    font-family: var(--font-family-sans);
    font-weight: 700;
    left: 9.5833333333vw;
    letter-spacing: .05em;
    margin: 0;
    position: absolute
}

.character__arche-top {
    font-size: 1.6666666667vw;
    top: 5.3125vw
}

.character__arche-bottom {
    font-size: 2.3958333333vw;
    top: 7.8125vw
}

.character__select-line {
    display: block;
    height: auto;
    pointer-events: none;
    z-index: 2
}

.character__select,
.character__select-line {
    left: 11.25vw;
    top: 15.625vw;
    width: 38.125vw
}

.character__thumbs {
    display: flex;
    flex-wrap: wrap;
    gap: .625vw;
    left: .78125vw;
    list-style: none;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 3.125vw;
    width: 36.5625vw
}

.character__thumb {
    height: 3.75vw;
    position: relative;
    width: 5.5729166667vw
}

.character__thumb-btn {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #4e4e4e;
    border: .0520833333vw solid hsla(0, 0%, 100%, .55);
    border-radius: 0;
    box-shadow: 0 0 .5208333333vw #000c;
    box-sizing: border-box;
    cursor: pointer;
    display: block;
    height: 100%;
    overflow: hidden;
    padding: 0;
    position: relative;
    transform-origin: 50% 50%;
    width: 100%
}

.character__thumb-btn:focus {
    outline: none
}

@media(min-width:751px) {
    .character__thumb-btn {
        transition: transform .3s
    }
}

@media(min-width:751px)and (hover:hover) {
    .character__thumb-btn:hover {
        transform: scale(1.05);
        z-index: 1
    }
}

.character__thumb--active .character__thumb-btn {
    background: #4e4e4e;
    border-color: #ffffffd9;
    transform: scale(1.05)
}

.character__thumb-img {
    display: block;
    height: 100%;
    inset: 0;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    width: 100%
}

.character__thumb-img--off {
    opacity: 1
}

.character__thumb--active .character__thumb-img--off,
.character__thumb-img--on {
    opacity: 0
}

.character__thumb--active .character__thumb-img--on {
    opacity: 1
}

@media(hover:hover) {
    .character__thumb-btn:hover .character__thumb-img--off {
        opacity: 0
    }

    .character__thumb-btn:hover .character__thumb-img--on {
        opacity: 1
    }
}

.character__thumb-btn:focus-visible .character__thumb-img--off {
    opacity: 0
}

.character__thumb-btn:focus-visible .character__thumb-img--on {
    opacity: 1
}

.character__arrow-btn {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    border: 0;
    border-radius: 0;
    cursor: pointer;
    height: 8.8541666667vw;
    padding: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 4.4270833333vw;
    z-index: 10
}

.character__arrow-btn img {
    display: block;
    height: auto;
    width: 100%
}

.character__arrow-btn--left {
    left: 1.4583333333vw
}

.character__arrow-btn--right {
    right: 1.4583333333vw
}

@media(min-width:751px) {
    .character__arrow-btn img {
        transition: transform .3s
    }
}

@media(min-width:751px)and (hover:hover) {
    .character__arrow-btn:hover img {
        transform: scale(1.05)
    }
}

@media(max-width:750px) {
    .character {
        height: 266.6666666667vw
    }

    .character__bg-line {
        height: 148vw;
        left: -80vw;
        top: 40.4vw;
        width: 210.6666666667vw
    }

    .character__bg-circle {
        height: 80.9333333333vw;
        left: 9.4666666667vw;
        top: 64.8vw;
        width: 80.9333333333vw
    }

    .character__title {
        height: 14.9333333333vw;
        top: 4.9333333333vw
    }

    .character__title-sub {
        height: 15.3333333333vw;
        left: -25.8666666667vw;
        top: 14vw;
        width: 62.6666666667vw
    }

    .character__img {
        height: 283.2vw;
        left: -65.3333333333vw;
        top: 0;
        width: 282.6666666667vw
    }

    .character__text {
        left: 0;
        top: 138.5333333333vw;
        width: 100vw
    }

    .character__meta {
        left: 8.8vw;
        top: 47.2vw
    }

    .character__meta-item {
        gap: 2vw
    }

    .character__meta-item--cv {
        width: 37.0666666667vw
    }

    .character__meta-label {
        height: 4.5333333333vw;
        width: 9.3333333333vw
    }

    .character__meta-value {
        font-size: 4.5333333333vw
    }

    .character__desc {
        font-size: 3.7333333333vw;
        left: 9.8666666667vw;
        top: 58.9333333333vw;
        width: 106.1333333333vw
    }

    .character--desc-lines-2 .character__desc {
        top: 62vw
    }

    .character--desc-lines-4 .character__desc {
        top: 56.8vw
    }

    .character__panel[data-desc-lines="2"] .character__desc {
        top: 62vw
    }

    .character__panel[data-desc-lines="4"] .character__desc {
        top: 56.8vw
    }

    .character__name {
        height: 29.3333333333vw;
        left: -12.4vw;
        top: 162.2666666667vw;
        width: 130.6666666667vw
    }

    .character__name-text {
        font-size: 8vw;
        left: 16.8vw;
        top: 10.1333333333vw
    }

    .character__arche {
        height: 30.8vw;
        left: 0;
        top: 216.2666666667vw;
        width: 100vw
    }

    .character__arche-bottom,
    .character__arche-top {
        left: 24.5333333333vw
    }

    .character__arche-top {
        font-size: 4.2666666667vw;
        top: 13.3333333333vw
    }

    .character__arche-bottom {
        font-size: 6.1333333333vw;
        top: 19.8666666667vw
    }

    .character__select,
    .character__select-line {
        left: 1.2vw;
        top: 18.1333333333vw;
        width: 97.6vw
    }

    .character__thumbs {
        gap: 1.6vw;
        left: 1.8666666667vw;
        top: 8.1333333333vw;
        width: 93.6vw
    }

    .character__thumb {
        height: 9.6vw;
        width: 14.2666666667vw
    }

    .character__thumb-btn {
        border-width: .1333333333vw;
        box-shadow: 0 0 1.3333333333vw #000c;
        padding: 0
    }

    .character__arrow-btn {
        height: 22.6666666667vw;
        width: 11.3333333333vw
    }

    .character__arrow-btn--left {
        left: -.2666666667vw
    }

    .character__arrow-btn--right {
        right: -.2666666667vw
    }
}

.world {
    color: #fff;
    height: 103.3854166667vw;
    margin-top: 9.4270833333vw
}

.world__title {
    left: -10.7291666667vw;
    position: absolute;
    top: -10.0520833333vw;
    width: 61.5625vw;
    z-index: 1
}

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

.world__content01,
.world__movie {
    position: relative
}

.world__movie {
    height: 36.875vw;
    margin-left: 37.1875vw;
    pointer-events: none;
    width: 62.8125vw
}

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

.world__movie video {
    height: 94%;
    left: 1.7%;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 3%;
    width: 98.4%
}

.world__desc--01 {
    left: 8.9583333333vw;
    position: absolute;
    top: 17.2916666667vw;
    z-index: 2
}

.world__desc-text {
    color: #000;
    display: flex;
    flex-direction: column;
    font-family: var(--font-family-sans);
    font-size: 1.3541666667vw;
    font-weight: 700;
    gap: .6770833333vw;
    letter-spacing: .04em;
    padding-top: .3645833333vw;
    position: relative;
    z-index: 1
}

.world__desc-row {
    background: #fff url(/metaphor/cn/switch2/resources/img/top/pagination_dot_inactive.DCeKG4QN.webp) 0 0/5.2083333333vw 5.2083333333vw no-repeat;
    border: .1041666667vw solid #fff;
    box-sizing: border-box;
    line-height: 1;
    margin: 0;
    padding: .1041666667vw .625vw;
    position: relative;
    text-shadow: 0 0 .2604166667vw #fff;
    white-space: nowrap;
    width: -moz-fit-content;
    width: fit-content;
    z-index: 0
}

.world__content02 {
    margin-top: -2.8125vw;
    position: relative
}

.world__content02-img {
    margin-left: 8.2291666667vw;
    position: relative;
    width: 46.9791666667vw;
    z-index: 2
}

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

.world__content02-label {
    left: 49.84375vw;
    position: absolute;
    top: 4.53125vw;
    width: 43.125vw
}

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

.world__desc--02 {
    left: 57.1354166667vw;
    position: absolute;
    top: 12.03125vw
}

.world__gallery {
    position: relative
}

.world__gallery-item {
    display: block;
    position: absolute
}

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

.world__gallery-item--04 {
    left: 0;
    top: 21.7708333333vw;
    width: 17.8645833333vw
}

.world__gallery-item--01 {
    left: 1.6145833333vw;
    top: 6.7708333333vw;
    width: 33.8541666667vw
}

.world__gallery-item--02 {
    left: 37.5vw;
    top: 1.7708333333vw;
    width: 44.7916666667vw
}

.world__gallery-item--03 {
    left: 83.2291666667vw;
    top: -4.2708333333vw;
    width: 16.7708333333vw
}

.world__gallery-item--05 {
    left: 42.4479166667vw;
    top: 21.875vw;
    width: 26.09375vw
}

.world__gallery-item--06 {
    left: 69.53125vw;
    top: 13.3333333333vw;
    width: 27.7604166667vw
}

.world__gallery-item--07 {
    left: 21.1979166667vw;
    top: 19.3229166667vw;
    width: 26.8229166667vw
}

@media(max-width:750px) {
    .world {
        height: 477.3333333333vw;
        margin-top: 26.6666666667vw
    }

    .world__title {
        left: 0;
        margin-left: -21.4666666667vw;
        position: relative;
        top: 0;
        width: 126.1333333333vw;
        z-index: 0
    }

    .world__movie {
        height: 61.8666666667vw;
        margin: -13.7333333333vw 0 0;
        width: 100vw
    }

    .world__movie video {
        height: 90%;
        left: 0;
        top: 5.3%;
        width: 100%
    }

    .world__desc--01 {
        left: 0;
        margin: 3.0666666667vw 0 0 6vw;
        position: relative;
        top: 0
    }

    .world__desc-text {
        font-size: 3.4666666667vw;
        gap: 1.7333333333vw;
        padding-top: .9333333333vw
    }

    .world__desc-row {
        background-size: 13.3333333333vw 13.3333333333vw;
        border-width: .2666666667vw;
        padding: .2666666667vw 1.6vw;
        text-shadow: 0 0 .6666666667vw #fff
    }

    .world__content02 {
        margin-top: 17.8666666667vw
    }

    .world__content02-img {
        margin: 0;
        width: 100vw;
        z-index: auto
    }

    .world__content02-label {
        left: 0;
        margin: -8.5333333333vw 0 0 -13.8666666667vw;
        position: relative;
        top: 0;
        width: 110.4vw
    }

    .world__desc--02 {
        left: 0;
        margin: 1.3333333333vw 0 0 6vw;
        position: relative;
        top: 0
    }

    .world__gallery-item--04 {
        top: 106.8vw;
        width: 33.0666666667vw;
        z-index: 2
    }

    .world__gallery-item--01 {
        left: auto;
        right: 0;
        top: 17.3333333333vw;
        width: 82.1333333333vw
    }

    .world__gallery-item--02 {
        left: 0;
        top: 52.5333333333vw;
        width: 83.8666666667vw
    }

    .world__gallery-item--03 {
        left: auto;
        right: 0;
        top: 72vw;
        width: 32vw
    }

    .world__gallery-item--05 {
        left: 23.3333333333vw;
        top: 91.2vw;
        width: 53.4666666667vw
    }

    .world__gallery-item--06 {
        left: auto;
        right: 0;
        top: 114vw;
        width: 55.3333333333vw
    }

    .world__gallery-item--07 {
        left: 0;
        top: 147.8666666667vw;
        width: 93.8666666667vw
    }
}

.enemy {
    margin-top: 10.78125vw
}

.dlc,
.enemy,
.product,
.section-container,
.staff,
.system,
.trailers {
    z-index: 3
}

.enemy__title {
    margin-left: -9.7916666667vw;
    position: relative;
    width: 60.7291666667vw;
    z-index: 2
}

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

.enemy__bg-deco {
    left: -11.1458333333vw;
    position: absolute;
    top: 15.15625vw;
    width: 44.9479166667vw
}

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

.enemy__images {
    display: block;
    position: absolute
}

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

.enemy__image01 {
    margin: -16.875vw 0 0 8.2291666667vw;
    position: relative;
    width: 72.5520833333vw;
    z-index: 1
}

.enemy__image01-1 {
    display: none
}

.enemy__image02 {
    left: 74.21875vw;
    top: 10.1041666667vw;
    width: 25.78125vw
}

.enemy__image03 {
    left: 64.6875vw;
    top: 30.46875vw;
    width: 34.6875vw
}

.enemy__label {
    left: 7.03125vw;
    position: absolute;
    top: 23.2291666667vw;
    width: 32.8125vw;
    z-index: 2
}

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

.enemy__desc {
    color: #fff;
    left: 7.34375vw;
    position: absolute;
    text-shadow: 0 0 .78125vw #f23a5c;
    top: 28.9583333333vw;
    z-index: 3
}

.enemy__desc-text {
    display: flex;
    flex-direction: column;
    font-family: var(--font-family-sans);
    font-size: 1.3541666667vw;
    font-weight: 700;
    gap: .625vw;
    letter-spacing: .04em
}

.enemy__desc-row {
    background: url(/metaphor/cn/switch2/resources/img/top/enemy_desc_bg.DlVBH_AC.webp) 0 0/43.125vw 7.3958333333vw no-repeat;
    border: .1041666667vw solid #f23a5c;
    box-sizing: border-box;
    line-height: 1;
    margin: 0;
    padding: .15625vw .625vw;
    white-space: nowrap;
    width: -moz-fit-content;
    width: fit-content
}

@media(max-width:750px) {
    .enemy {
        margin-top: 20vw
    }

    .enemy__title {
        margin-left: -24.2666666667vw;
        width: 124.4vw
    }

    .enemy__bg-deco {
        display: none
    }

    .enemy__images {
        left: 0 !important;
        position: relative !important;
        top: 0 !important
    }

    .enemy__image01 {
        margin: -30.9333333333vw 0 0;
        width: 100vw
    }

    .enemy__image01-1 {
        display: block;
        position: absolute !important;
        top: 28.9333333333vw !important;
        width: 100vw;
        z-index: 3
    }

    .enemy__image02 {
        margin: 17.3333333333vw 0 0 auto;
        width: 57.0666666667vw
    }

    .enemy__image03 {
        margin: -34.5333333333vw 0 0;
        width: 60.4vw
    }

    .enemy__label {
        left: 4.8vw;
        top: 104.2666666667vw;
        width: 84vw
    }

    .enemy__desc {
        left: 6vw;
        text-shadow: 0 0 2vw #f23a5c;
        top: 119.0666666667vw
    }

    .enemy__desc-text {
        font-size: 3.4666666667vw;
        gap: 1.7333333333vw
    }

    .enemy__desc-row {
        background-size: 110.4vw 18.9333333333vw;
        border-width: .2666666667vw;
        padding: 0 1.2vw .4vw
    }
}

.system {
    color: #fff;
    margin-top: 21.1458333333vw
}

.system__archetype {
    left: -2.2916666667vw;
    position: absolute;
    top: 33.6979166667vw;
    width: 60.46875vw
}

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

.system__title {
    margin-left: -9.6875vw;
    position: relative;
    width: 60.7291666667vw;
    z-index: 1
}

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

.system__content01,
.system__movie1 {
    position: relative
}

.system__movie1 {
    height: 36.875vw;
    margin: -19.0104166667vw 0 0 37.1875vw;
    pointer-events: none;
    width: 62.8125vw
}

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

.system__movie1 video {
    height: 94%;
    left: 1.7%;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 3%;
    width: 98.4%
}

.system__desc-text {
    color: #000;
    display: flex;
    flex-direction: column;
    font-family: var(--font-family-sans);
    font-size: 1.3541666667vw;
    font-weight: 700;
    gap: .6770833333vw;
    letter-spacing: .04em;
    padding-top: .3645833333vw;
    position: relative;
    z-index: 1
}

.system__desc-row {
    background: #fff url(/metaphor/cn/switch2/resources/img/top/pagination_dot_inactive.DCeKG4QN.webp) 0 0/5.2083333333vw 5.2083333333vw no-repeat;
    border: .1041666667vw solid #fff;
    box-sizing: border-box;
    line-height: 1;
    margin: 0;
    padding: .1041666667vw .625vw;
    position: relative;
    text-shadow: 0 0 .2604166667vw #fff;
    white-space: nowrap;
    width: -moz-fit-content;
    width: fit-content;
    z-index: 0
}

.system__desc--01 {
    left: 9.0104166667vw;
    position: absolute;
    top: 26.875vw
}

.system__desc--01 .system__desc-row.l-4 {
    width: 29.5833333333vw
}

.system__content02 {
    margin-top: 2.0833333333vw;
    position: relative
}

.system__content02-label {
    margin-left: 45.5208333333vw;
    position: relative;
    width: 46.6666666667vw
}

.system__content02-label img {
    display: block;
    height: auto;
    width: 100%
}

.system__desc--02 {
    margin: .3125vw 0 0 59.6354166667vw;
    position: relative
}

.system__content02-img {
    margin: -.15625vw 0 0 68.5416666667vw;
    position: relative;
    width: 31.40625vw
}

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

.system__movie2 {
    height: 22.7083333333vw;
    margin: -5.3125vw 0 0 47.6041666667vw;
    pointer-events: none;
    position: relative;
    width: 38.6458333333vw
}

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

.system__movie2 video {
    height: 90%;
    left: 3%;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 5%;
    width: 94.3%
}

.system__content03,
.system__content04 {
    margin-left: 2.4479166667vw;
    overflow: visible;
    position: relative;
    width: 96.8229166667vw
}

.system__content03 {
    margin-top: 11.6145833333vw
}

.system__content04 {
    height: 46.6145833333vw;
    margin-top: 9.6875vw
}

.system__content03-bg,
.system__content04-bg {
    border-radius: inherit;
    display: block;
    overflow: hidden;
    position: relative;
    width: 100%;
    z-index: 0
}

.system__content03-bg img,
.system__content04-bg img {
    display: block;
    height: auto;
    width: 100%
}

.system__content03>.system__card-image,
.system__content03>.system__card-image--03-01,
.system__content03>.system__card-image--03-02,
.system__content03>.system__card-image--03-03 {
    z-index: 1
}

.system__card {
    background: radial-gradient(120% 120% at 0 0, #ffffff1a 0, #fff0 55%), linear-gradient(180deg, #00000073, #0003);
    border-radius: .5208333333vw;
    height: 42.7604166667vw;
    left: 2.4479166667vw;
    overflow: hidden;
    position: absolute;
    width: 96.8229166667vw
}

.system__card--04 {
    top: 3.8541666667vw
}

.system__card-lead {
    background: #0009;
    font-size: 1.3541666667vw;
    letter-spacing: .08em;
    padding: .4166666667vw .7291666667vw;
    top: 4.1666666667vw
}

.system__card-lead,
.system__card-title {
    font-weight: 900;
    left: 5.2083333333vw;
    margin: 0;
    position: absolute;
    z-index: 1
}

.system__card-title {
    background: #c62d52;
    font-size: 2.3958333333vw;
    letter-spacing: .06em;
    padding: .5208333333vw .8333333333vw;
    top: 6.5625vw
}

.system__content03-heading {
    height: 13.8541666667vw;
    top: -2.5520833333vw;
    width: 45.3125vw
}

.system__content03-heading,
.system__content04-heading {
    display: block;
    left: -.46875vw;
    position: absolute;
    z-index: 1
}

.system__content04-heading {
    height: 13.90625vw;
    top: -2.65625vw;
    width: 38.125vw
}

.system__content03-heading img,
.system__content04-heading img {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.system__card-desc {
    font-size: 1.3541666667vw;
    font-weight: 700;
    left: 5.2083333333vw;
    letter-spacing: .04em;
    margin: 0;
    position: absolute;
    text-shadow: 0 0 .2604166667vw rgba(0, 0, 0, .6);
    top: 12.2395833333vw;
    width: 45.8333333333vw;
    z-index: 1
}

.system__content03 .system__card-desc,
.system__content04 .system__card-desc {
    color: #000;
    display: inline-flex;
    line-height: 2.5vw;
    text-shadow: 0 0 .2604166667vw #fff;
    white-space: nowrap;
    width: -moz-fit-content;
    width: fit-content;
    z-index: 1
}

.system__content03 .system__card-desc {
    left: 6.0416666667vw;
    top: 11.40625vw
}

.system__card-row {
    margin: 0
}

.system__card-image {
    display: block;
    position: absolute
}

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

.system__card-image--03-01 {
    height: 23.9583333333vw;
    right: -.7291666667vw;
    top: -4.21875vw;
    width: 48.4375vw
}

.system__card-image--03-02 {
    height: 27.4479166667vw;
    left: 42.65625vw;
    -o-object-fit: cover;
    object-fit: cover;
    top: 15.2083333333vw;
    width: 45.7291666667vw
}

.system__card-image--03-03 {
    height: 16.4583333333vw;
    left: 3.59375vw;
    -o-object-fit: cover;
    object-fit: cover;
    top: 24.6875vw;
    width: 39.0625vw
}

.system__gallery {
    align-items: flex-end;
    display: flex;
    gap: .7291666667vw;
    left: 50%;
    position: absolute;
    top: 25.8333333333vw;
    transform: translate(-50%)
}

.system__gallery-item {
    display: block
}

.system__gallery-item--01 {
    height: 19.2708333333vw;
    width: 39.0625vw
}

.system__gallery-item--02,
.system__gallery-item--03 {
    height: 14.5833333333vw;
    width: 23.6979166667vw
}

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

.system__content04 .system__card-desc {
    left: 5.625vw;
    top: 11.25vw
}

.system__content04 .system__card-image--04-01 {
    height: 30.6770833333vw;
    left: 38.75vw;
    -o-object-fit: cover;
    object-fit: cover;
    top: -3.8020833333vw;
    width: 54.53125vw;
    z-index: 1
}

.system__content04 .system__gallery {
    left: 3.6458333333vw;
    position: absolute;
    top: 22.03125vw;
    transform: none;
    z-index: 1
}

@media(max-width:750px) {
    .system {
        margin-top: 33.3333333333vw
    }

    .system__archetype {
        left: -8.5333333333vw;
        top: 129.0666666667vw;
        width: 116.5333333333vw
    }

    .system__title {
        margin-left: -19.4666666667vw;
        width: 124.1333333333vw
    }

    .system__movie1 {
        height: 61.8666666667vw;
        margin: -9.8666666667vw 0 0;
        width: 100vw
    }

    .system__movie1 video {
        height: 91%;
        left: 0;
        top: 4.2%;
        width: 100%
    }

    .system__desc-text {
        font-size: 3.4666666667vw;
        gap: 1.6vw
    }

    .system__desc-row {
        background-size: 110.6666666667vw 28.8vw;
        border-width: .2666666667vw;
        padding: .4vw 1.6vw
    }

    .system__desc--01 {
        left: 0;
        margin: 4.2666666667vw 0 0 6vw;
        position: relative;
        top: 0
    }

    .system__desc--01 .system__desc-row.l-4 {
        width: 75.7333333333vw
    }

    .system__content02 {
        margin-top: 100.2666666667vw
    }

    .system__content02-label {
        margin-left: 0;
        width: 81.0666666667vw
    }

    .system__desc--02 {
        margin: .8vw 0 0 6vw;
        position: relative
    }

    .system__content02-img {
        margin: 1.7333333333vw 0 0 20.1333333333vw;
        width: 80.4vw
    }

    .system__movie2 {
        height: 58.1333333333vw;
        margin: -11.7333333333vw auto 0;
        width: 98.9333333333vw
    }

    .system__content03 {
        margin-top: 15.7333333333vw
    }

    .system__content03,
    .system__content04 {
        margin-left: 3.0666666667vw;
        width: 93.8666666667vw
    }

    .system__content04 {
        height: 230.5333333333vw;
        margin-top: 14.6666666667vw
    }

    .system__content04-heading {
        height: 35.6vw;
        left: -7.3333333333vw;
        top: 0;
        width: 97.6vw;
        z-index: 2
    }

    .system__content04 .system__card-desc {
        left: 8.5333333333vw;
        line-height: 6.4vw;
        text-shadow: 0 0 .6666666667vw #fff;
        top: 102vw;
        white-space: nowrap;
        width: -moz-fit-content;
        width: fit-content
    }

    .system__content04 .system__gallery {
        display: grid;
        gap: 1.3333333333vw;
        grid-template-columns: 1fr 1fr;
        left: 1.4666666667vw;
        top: 137.0666666667vw;
        width: 90.6666666667vw
    }

    .system__content04 .system__gallery-item--01 {
        grid-column: 1/-1;
        height: 47.4666666667vw;
        width: 90.6666666667vw
    }

    .system__content04 .system__gallery-item--02,
    .system__content04 .system__gallery-item--03 {
        height: 32.8vw;
        width: 44.6666666667vw
    }

    .system__card {
        border-radius: 1.3333333333vw;
        height: auto;
        left: 3.0666666667vw;
        width: 93.8666666667vw
    }

    .system__card-lead {
        font-size: 3.4666666667vw;
        left: 5.3333333333vw;
        padding: 1.0666666667vw 1.8666666667vw;
        top: 8vw
    }

    .system__card-title {
        font-size: 5.6vw;
        left: 5.3333333333vw;
        top: 14.6666666667vw
    }

    .system__content03-heading {
        height: 46.9333333333vw;
        left: -7.3333333333vw;
        top: 0;
        width: 82.2666666667vw
    }

    .system__card-image--03-01 {
        height: 64vw;
        left: -3.0666666667vw;
        right: auto;
        top: 49.6vw;
        width: 100vw
    }

    .system__card-image--03-02 {
        height: 56.2133333333vw;
        left: .1333333333vw;
        top: 146.9333333333vw;
        width: 93.6533333333vw
    }

    .system__card-image--03-03 {
        display: none
    }

    .system__card-desc {
        font-size: 3.4666666667vw;
        left: 5.3333333333vw;
        top: 34.6666666667vw;
        width: 85.3333333333vw
    }

    .system__content03 .system__card-desc {
        color: #000;
        display: inline-flex;
        gap: 0;
        left: 6.6666666667vw;
        line-height: 6.4vw;
        text-shadow: 0 0 .6666666667vw #fff;
        top: 116.1333333333vw;
        width: -moz-fit-content;
        width: fit-content
    }

    .system__content04 .system__card-image--04-01 {
        height: 78.5333333333vw;
        left: -22.8vw;
        top: 23.7333333333vw;
        width: 139.6vw
    }
}

.trailers {
    margin-top: 13.0208333333vw
}

.trailers__title {
    margin: auto;
    position: relative;
    width: 45.5208333333vw;
    z-index: 2
}

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

.trailers__main {
    height: 28.6458333333vw;
    margin: -1.1979166667vw auto 0;
    position: relative;
    width: 50.5208333333vw
}

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

.trailers__video {
    border: 0;
    box-shadow: 0 0 .78125vw #000c;
    height: 98.1%;
    left: .5%;
    position: absolute;
    top: 1%;
    width: 99%
}

.trailers__thumbs {
    margin: 2.5520833333vw 0 0;
    padding: 0 11.875vw !important;
    position: relative
}

.trailers__thumb {
    aspect-ratio: 16/9;
    background: transparent;
    border: 0;
    cursor: pointer;
    flex: 0 0 auto;
    margin: 0 .78125vw;
    overflow: hidden;
    padding: 0;
    position: relative;
    width: 13.3333333333vw !important
}

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

.trailers__thumb-nowplaying {
    background: url(/metaphor/cn/switch2/resources/img/top/trailers_nowplaying.y3MCUTsD.webp) 50%/cover no-repeat;
    inset: 0;
    opacity: 0;
    position: absolute;
    z-index: 2
}

.trailers__thumb.is-active .trailers__thumb-nowplaying {
    opacity: 1
}

.trailers__thumb:after {
    background: url(/metaphor/cn/switch2/resources/img/top/trailers_play.DBOlOyys.webp) 50%/cover no-repeat;
    content: "";
    inset: 0;
    opacity: 0;
    position: absolute;
    transition: .3s;
    z-index: 1
}

@media(hover:hover) {
    .trailers__thumb:hover:after {
        opacity: 1
    }

    .trailers__thumb.is-active:hover:after {
        opacity: 0
    }
}

.trailers__thumbs-scrollbar {
    height: 1.5625vw;
    left: -1.4583333333vw;
    margin: 1.0416666667vw auto 0;
    position: relative;
    width: 72.9166666667vw
}

.trailers__thumbs-scrollbar img {
    display: block;
    height: auto;
    width: 100%
}

.trailers__thumbs-scrollbar--body.swiper-scrollbar {
    background: transparent;
    height: .6770833333vw !important;
    inset: 0;
    left: .6770833333vw !important;
    position: absolute;
    top: .4166666667vw !important;
    width: 71.5625vw !important
}

.trailers__thumbs-scrollbar--body.swiper-scrollbar .swiper-scrollbar-drag {
    background: url(/metaphor/cn/switch2/resources/img/top/pagination_dot_inactive.DCeKG4QN.webp) 0 0/cover no-repeat;
    border-radius: 0
}

@media(max-width:750px) {
    .trailers {
        margin-top: 33.3333333333vw
    }

    .trailers__title {
        margin-left: -8.4vw;
        width: 116.5333333333vw
    }

    .trailers__main {
        height: 58.1333333333vw;
        margin: -5.4666666667vw auto 0;
        width: 98.9333333333vw
    }

    .trailers__video {
        box-shadow: none;
        height: 90%;
        left: 3%;
        top: 4.8%;
        width: 94%
    }

    .trailers__thumbs {
        margin: 9.6vw 0 0;
        padding: 0 2vw !important
    }

    .trailers__thumb {
        margin: 0 1.3333333333vw;
        width: 34.1333333333vw !important
    }

    .trailers__thumbs-scrollbar {
        height: 4vw;
        left: 0;
        margin: 5.7333333333vw auto 0;
        width: 94.9333333333vw
    }

    .trailers__thumbs-scrollbar--body.swiper-scrollbar {
        height: 1.7333333333vw !important;
        left: .9333333333vw !important;
        top: 1.0666666667vw !important;
        width: 93.0666666667vw !important
    }
}

.staff {
    margin-top: 8.3333333333vw;
    z-index: 2
}

.staff__title {
    margin: 0 auto;
    position: relative;
    width: 33.28125vw
}

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

.staff__lead {
    display: block;
    margin: 0 auto;
    position: relative;
    width: 70.0520833333vw
}

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

.staff__list {
    display: flex;
    flex-direction: column;
    gap: 2.0833333333vw;
    margin-top: 2.0833333333vw;
    position: relative
}

.staff__row {
    align-items: center;
    display: flex;
    gap: 3.125vw;
    justify-content: center
}

.staff__item {
    display: block;
    width: 25.0520833333vw
}

.staff__item--03,
.staff__item--06 {
    width: 25vw
}

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

@media(max-width:750px) {
    .staff {
        margin-top: 46vw
    }

    .staff__title {
        width: 85.2vw
    }

    .staff__lead {
        margin: -2.9333333333vw auto 0;
        width: 97.3333333333vw
    }

    .staff__list {
        gap: 3.8666666667vw;
        margin-top: 5.8666666667vw
    }

    .staff__row {
        flex-wrap: wrap;
        gap: 3.8666666667vw;
        justify-content: flex-start;
        margin-left: 4.6666666667vw
    }

    .staff__item {
        width: 71.2vw
    }
}

.product-area {
    margin-top: 13.2291666667vw;
    padding: 0 0 15.625vw;
    position: relative;
    width: 100vw;
    z-index: 1
}

.product-area__bg {
    background: url(/metaphor/cn/switch2/resources/img/top/product_area_bg.BoBxRMPn.webp) 0 0 repeat-y;
    background-size: 100% auto;
    inset: 0;
    pointer-events: none;
    position: absolute;
    top: -29.1666666667vw;
    z-index: 0
}

.product-area>:not(.product-area__bg) {
    position: relative;
    z-index: 1
}

@media(max-width:750px) {
    .product-area {
        margin-top: 44vw;
        padding: 0 0 40vw
    }

    .product-area__bg {
        top: -172vw
    }
}

.common-content-body {
    border: .0520833333vw solid;
    -o-border-image: url(/metaphor/cn/switch2/resources/img/top/product_frame.C4Ohw9TA.webp);
    border-image: url(/metaphor/cn/switch2/resources/img/top/product_frame.C4Ohw9TA.webp);
    border-image-repeat: repeat !important;
    border-image-slice: 90;
    border-image-width: 4.6875vw;
    margin: 0 auto;
    padding: 3.28125vw 0 3.125vw;
    position: relative;
    width: 72.9166666667vw
}

.common-content-body__heading {
    color: #fff;
    font-family: var(--font-family-serif);
    font-size: 1.9270833333vw;
    font-weight: 700;
    line-height: 2.5vw;
    margin: 0 auto;
    text-align: center;
    width: 62.5vw
}

.common-content-body__heading span {
    display: block;
    font-family: var(--font-family-sans);
    font-size: 1.1458333333vw;
    font-weight: 700;
    line-height: 1.5625vw;
    margin-bottom: .5208333333vw
}

.common-content-body__price {
    align-items: center;
    color: #fff;
    display: flex;
    font-size: 0;
    font-weight: 700;
    justify-content: center;
    line-height: 0;
    margin: 1.6666666667vw auto 0
}

.common-content-body__price-label {
    align-items: flex-start;
    background: #fff url(/metaphor/cn/switch2/resources/img/top/pagination_dot_inactive.DCeKG4QN.webp);
    background-position: -6.1458333333vw -1.3020833333vw;
    background-repeat: no-repeat;
    background-size: 544.74% 321.33%;
    border: .1041666667vw solid #fff;
    box-sizing: border-box;
    display: flex;
    flex: none;
    height: 1.5625vw;
    justify-content: center;
    margin-right: .78125vw;
    overflow: hidden;
    padding: 0;
    position: relative;
    width: 3.5416666667vw
}

.common-content-body__price-label-text {
    color: #000;
    display: block;
    font-size: 1.1458333333vw;
    font-weight: 700;
    letter-spacing: .0458333333vw;
    line-height: 1.15;
    text-shadow: 0 0 .2604166667vw #fff;
    white-space: nowrap
}

.common-content-body__price-amount {
    font-size: 1.875vw;
    letter-spacing: .0625vw;
    position: relative
}

.common-content-body__price-unit {
    font-size: 1.3541666667vw;
    letter-spacing: .0541666667vw
}

.common-content-body__description {
    color: #fff;
    font-size: 1.1458333333vw;
    letter-spacing: .04em;
    line-height: 1.7708333333vw;
    margin: 1.6666666667vw auto 0;
    text-align: center;
    width: 50.5208333333vw
}

.common-content-body__list {
    border-bottom: .0520833333vw solid #a6a6a6;
    list-style: none;
    margin: 2.6041666667vw auto 0;
    padding: 0;
    width: 62.5vw
}

.common-content-body__item {
    border-top: .0520833333vw solid #a6a6a6;
    padding: 0
}

.common-content-body__details {
    display: block
}

.common-content-body__details.is-expanded .common-content-body__item-icon {
    transform: rotate(-180deg)
}

.common-content-body__item-head {
    align-items: center;
    cursor: pointer;
    display: flex;
    gap: .78125vw;
    list-style: none;
    padding: .7291666667vw 0
}

.common-content-body__item-head::-webkit-details-marker {
    display: none
}

.common-content-body__item-head::marker {
    content: ""
}

.common-content-body__item-icon {
    height: auto;
    transition: transform .3s ease;
    width: 2.0833333333vw
}

.common-content-body__item-title {
    font-size: 1.1979166667vw;
    font-weight: 700
}

.common-content-body__item-desc,
.common-content-body__item-title {
    color: #fff;
    letter-spacing: .04em;
    line-height: 1.7708333333vw;
    margin: 0
}

.common-content-body__item-desc {
    box-sizing: border-box;
    font-size: 1.0416666667vw;
    height: 0;
    overflow: hidden;
    padding-left: 2.8645833333vw;
    transition: height .35s cubic-bezier(.2, 0, 0, 1);
    will-change: height
}

@media(prefers-reduced-motion:reduce) {

    .common-content-body__item-desc,
    .common-content-body__item-icon {
        transition: none
    }
}

.common-content-body__item-desc-inner {
    overflow: hidden;
    padding-bottom: .4166666667vw
}

.common-content-body__item-desc p {
    margin: 0
}

.common-content-body__set-label {
    margin: 0 0 .5208333333vw
}

.common-content-body__set {
    list-style: none;
    margin: 0;
    padding: 0
}

.common-content-body__set li {
    margin: 0
}

.common-content-body__note {
    color: #fff;
    font-size: 1.0416666667vw;
    letter-spacing: .04em;
    line-height: 1.7708333333vw;
    margin: 2.5520833333vw auto 0;
    width: 62.5vw
}

@media(max-width:750px) {
    .common-content-body {
        border: .1333333333vw solid;
        -o-border-image: url(/metaphor/cn/switch2/resources/img/top/product_frame.C4Ohw9TA.webp);
        border-image: url(/metaphor/cn/switch2/resources/img/top/product_frame.C4Ohw9TA.webp);
        border-image-slice: 90;
        border-image-width: 12vw;
        padding: 8.4vw 0 7.6vw;
        width: 88vw
    }

    .common-content-body__heading {
        font-size: 4.9333333333vw;
        letter-spacing: -.4666666667vw;
        line-height: 6.4vw;
        width: 100%
    }

    .common-content-body__heading span {
        font-size: 2.9333333333vw;
        letter-spacing: 0;
        line-height: 4vw;
        margin-bottom: 1.3333333333vw
    }

    .common-content-body__price {
        margin-top: 4.5333333333vw
    }

    .common-content-body__price-label {
        border-width: .2666666667vw;
        height: 4vw;
        margin-right: 2vw;
        width: 9.0666666667vw
    }

    .common-content-body__price-label-text {
        font-size: 2.9333333333vw;
        letter-spacing: .1173333333vw;
        text-shadow: 0 0 .6666666667vw #fff
    }

    .common-content-body__price-amount {
        font-size: 4.8vw;
        letter-spacing: .16vw
    }

    .common-content-body__price-unit {
        font-size: 3.4666666667vw;
        letter-spacing: .1386666667vw
    }

    .common-content-body__description {
        font-size: 2.9333333333vw;
        line-height: 4.5333333333vw;
        margin-top: 3.3333333333vw;
        width: 65.0666666667vw
    }

    .common-content-body__corner--tl {
        width: 6vw
    }

    .common-content-body__corner--tr {
        width: 9.6vw
    }

    .common-content-body__corner--bl {
        width: 9.3333333333vw
    }

    .common-content-body__corner--br {
        width: 9.6vw
    }

    .common-content-body__list {
        border-bottom-width: .1333333333vw;
        margin-top: 7.0666666667vw;
        width: 80vw
    }

    .common-content-body__item {
        border-top-width: .1333333333vw;
        padding-bottom: 2.1333333333vw
    }

    .common-content-body__item-head {
        gap: 1.7333333333vw;
        padding: 3.2vw 0 1.0666666667vw
    }

    .common-content-body__item-icon {
        width: 5.3333333333vw
    }

    .common-content-body__item-title {
        font-size: 3.0666666667vw;
        line-height: 4.5333333333vw
    }

    .common-content-body__item-desc {
        font-size: 2.6666666667vw;
        line-height: 4.5333333333vw;
        margin-top: 0;
        padding-left: 7.3333333333vw
    }

    .common-content-body__item-desc-inner {
        padding-bottom: 0
    }

    .common-content-body__note {
        font-size: 2.6666666667vw;
        line-height: 4.5333333333vw;
        margin-top: 7.0666666667vw;
        width: 80vw
    }
}

.product__title {
    margin: 0 auto;
    width: 45.5208333333vw
}

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

.product-tabs {
    display: flex;
    flex-direction: column;
    margin: 2.0833333333vw auto 0;
    width: 72.9166666667vw
}

.product-tabs__list {
    align-items: center;
    display: flex;
    gap: 3.125vw;
    justify-content: center
}

.product-tabs__tab {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    border: 0;
    cursor: pointer;
    height: 6.25vw;
    padding: 0;
    position: relative;
    width: 23.4375vw
}

.product-tabs__img {
    display: block;
    inset: 0;
    pointer-events: none;
    position: absolute
}

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

.product-tabs__img--on {
    display: none
}

.product-tabs__tab[aria-selected=true] .product-tabs__img--on {
    display: block
}

.product-tabs__tab[aria-selected=true] .product-tabs__img--off {
    display: none
}

.product-tabs__tab:focus-visible .product-tabs__img--on,
.product-tabs__tab:hover .product-tabs__img--on {
    display: block
}

.product-tabs__tab:focus-visible .product-tabs__img--off,
.product-tabs__tab:hover .product-tabs__img--off {
    display: none
}

.product-tabs__panels {
    padding-top: 1.0416666667vw;
    position: relative;
    width: 100%
}

.product-panel {
    display: flex;
    justify-content: center
}

.product-card {
    box-sizing: border-box;
    padding: 0
}

.product-card__inner {
    align-items: start;
    display: grid;
    grid-template: "media meta"auto "media actions"auto/17.03125vw 32.1875vw;
    justify-content: center;
    margin: 0 auto;
    padding: 3.5416666667vw 0
}

.product-card--dl .product-card__inner {
    grid-template: "media meta"auto "media actions"auto/19.4270833333vw 32.1875vw;
    width: 47.65625vw
}

.product-card__media {
    grid-area: media;
    height: 21.09375vw;
    place-self: start center;
    width: 13.0208333333vw
}

.product-card__media img,
.product-card__media source {
    display: block
}

.product-card__media img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.product-card__media--square {
    height: 15.625vw;
    width: 15.625vw
}

.product-card__meta {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    grid-area: meta;
    line-break: strict;
    min-width: 0;
    overflow-wrap: break-word;
    padding-top: .6770833333vw;
    width: 100%;
    word-break: normal
}

.product-card--dl .product-card__meta {
    padding-top: .2604166667vw
}

.product-card__actions {
    grid-area: actions;
    min-width: 0;
    width: 100%
}

.product-card__series {
    color: #fff;
    font-size: 1.1458333333vw;
    font-weight: 700;
    letter-spacing: .04em;
    line-height: 1.7708333333vw;
    margin-bottom: .5208333333vw
}

.product-card__name {
    color: #fff;
    font-family: var(--font-family-serif);
    font-size: 3.4375vw;
    font-weight: 700;
    line-height: 3.75vw;
    margin-bottom: 1.40625vw
}

.product-card__price {
    align-items: center;
    color: #fff;
    display: flex;
    font-size: 0;
    justify-content: flex-start;
    line-height: 0
}

.product-card .common-content-body__price {
    justify-content: flex-start;
    margin: 0
}

.product-card__note {
    color: #fff;
    font-size: 1.1458333333vw;
    font-weight: 400;
    letter-spacing: .04em;
    line-break: strict;
    line-height: 1.7708333333vw;
    overflow-wrap: break-word;
    word-break: normal
}

.product-card__link {
    color: #00ffd5;
    overflow-wrap: normal;
    text-decoration: underline;
    word-break: keep-all
}

.product-card__cta {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    border: 0;
    cursor: pointer;
    display: block;
    height: 3.75vw;
    margin-top: 1.5625vw;
    padding: 0;
    transition: .1s ease-in-out;
    width: 27.0833333333vw
}

@media(min-width:751px)and (hover:hover) {
    .product-card__cta:hover {
        opacity: .8
    }
}

.product-card__cta.closed {
    pointer-events: none
}

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

.product-deluxe {
    display: block;
    margin-top: 2.6041666667vw
}

.product-deluxe__cta {
    display: block;
    height: 3.75vw;
    margin: 2.0833333333vw auto 0;
    transition: .1s ease-in-out;
    width: 27.0833333333vw
}

@media(min-width:751px)and (hover:hover) {
    .product-deluxe__cta:hover {
        opacity: .8
    }
}

.product-deluxe__cta.closed {
    pointer-events: none
}

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

.product-deluxe .common-content-body__item--single .common-content-body__item-icon {
    display: none
}

.product-deluxe .common-content-body__item--single .common-content-body__item-head {
    cursor: default;
    gap: 0;
    padding-left: 2.8645833333vw
}

.product__benefits {
    display: flex;
    flex-direction: column;
    margin: 2.96875vw auto 0;
    width: 72.9166666667vw
}

.product__benefits-title {
    height: 6.1979166667vw;
    margin-bottom: 1.9791666667vw;
    width: 29.3229166667vw
}

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

.product__benefits-list {
    align-items: flex-start;
    display: flex;
    gap: 1.5625vw;
    justify-content: flex-start;
    list-style: none;
    margin: 0 0 1.1979166667vw;
    padding: 0;
    width: 100%
}

.product__benefit {
    box-sizing: border-box;
    width: 34.375vw
}

.product__benefit-figure {
    align-items: center;
    display: flex;
    gap: 1.3020833333vw;
    margin: 0
}

.product__benefit-thumb {
    flex: none;
    height: 6.25vw;
    -o-object-fit: cover;
    object-fit: cover;
    width: 6.25vw
}

.product__benefit-body {
    display: flex;
    flex: 1 0 0;
    flex-direction: column;
    gap: .5208333333vw;
    min-width: 0
}

.product__benefit-name {
    color: #fff;
    font-family: var(--font-family-serif);
    font-size: 1.6666666667vw;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 2.2916666667vw;
    margin: 0;
    width: 100%
}

.product__benefit-tags {
    color: #fff;
    display: flex;
    flex-wrap: nowrap;
    font-size: 1.1979166667vw;
    font-weight: 400;
    gap: 1.0416666667vw;
    letter-spacing: .0479166667vw;
    line-height: 1.7708333333vw;
    list-style: none;
    margin: 0;
    padding: 0
}

.product__benefit-tag {
    align-items: center;
    display: flex;
    gap: .5208333333vw;
    white-space: nowrap
}

.product__benefit-icon {
    flex: none;
    height: 1.3020833333vw;
    -o-object-fit: cover;
    object-fit: cover;
    width: .78125vw
}

.product__benefit-tags--wrap {
    flex-wrap: wrap;
    gap: 0 1.0416666667vw
}

.product__benefit-tags--wrap .product__benefit-tag {
    white-space: nowrap
}

.product__benefits-note {
    color: #fff;
    font-size: 0;
    letter-spacing: .0416666667vw;
    line-height: 0;
    margin: 0;
    text-align: left;
    width: 100%
}

.product__benefits-note p {
    font-size: 1.0416666667vw;
    font-weight: 400;
    line-height: 1.7708333333vw;
    margin: 0
}

@media(max-width:750px) {
    .product__title {
        margin-left: -8.4vw;
        width: 116.5333333333vw
    }

    .product-deluxe .common-content-body__item--single .common-content-body__item-head {
        padding-left: 7.3333333333vw
    }

    .product-tabs {
        margin-top: -.2666666667vw;
        width: 100vw
    }

    .product-tabs__list {
        gap: 0
    }

    .product-tabs__tab {
        height: 16vw;
        width: 46.6666666667vw
    }

    .product-tabs__panels {
        padding-top: 4.4vw
    }

    .product-card {
        padding: 0
    }

    .product-card__inner {
        align-items: start;
        margin: 0 auto
    }

    .product-card--dl .product-card__inner,
    .product-card__inner {
        grid-template: "media meta"auto "actions actions"auto/41.0666666667vw 1fr;
        padding: 8.6666666667vw 0;
        width: 88vw
    }

    .product-card__media {
        height: 54vw;
        width: 33.3333333333vw
    }

    .product-card__media--square {
        height: 33.3333333333vw;
        width: 33.3333333333vw
    }

    .product-card__meta {
        align-items: flex-start;
        padding: 10vw 0 0 .8vw;
        text-align: left
    }

    .product-card__actions {
        align-items: center;
        gap: 4vw;
        min-height: 0;
        text-align: center
    }

    .product-card__series {
        font-size: 2.9333333333vw;
        line-height: 4.5333333333vw;
        margin-bottom: 2vw
    }

    .product-card__name {
        font-size: 8.8vw;
        letter-spacing: -.5333333333vw;
        line-height: 9.3333333333vw;
        margin-bottom: 3.0666666667vw
    }

    .product-card--dl .product-card__name {
        font-size: 7.4666666667vw;
        line-height: 8.6666666667vw
    }

    .product-card .common-content-body__price,
    .product-card__price {
        justify-content: center
    }

    .product-card__note {
        font-size: 2.9333333333vw;
        line-height: 4.5333333333vw;
        margin-top: 4vw
    }

    .product-card__cta {
        margin: 4.4vw auto 0
    }

    .product-card--dl .product-card__cta {
        margin: 5.3333333333vw auto 0
    }

    .product-card__cta,
    .product-deluxe__cta {
        height: 9.6vw;
        width: 69.3333333333vw
    }

    .product-deluxe {
        margin-top: 4vw
    }

    .product-deluxe .common-content-body__description {
        width: 100%
    }

    .product-deluxe__cta {
        margin-top: 6.6666666667vw
    }

    .product__benefits {
        margin: 5.4666666667vw auto 0;
        width: 88vw
    }

    .product__benefits-title {
        height: 15.8666666667vw;
        margin-bottom: 5.3333333333vw;
        width: 75.0666666667vw
    }

    .product__benefits-list {
        align-items: flex-start;
        flex-direction: column;
        gap: 3.3333333333vw;
        margin-bottom: 2.6666666667vw
    }

    .product__benefit {
        width: 100%
    }

    .product__benefit-figure {
        align-items: center;
        gap: 3.3333333333vw
    }

    .product__benefit-thumb {
        height: 16vw;
        width: 16vw
    }

    .product__benefit-body {
        flex: 1 0 0;
        gap: 1.3333333333vw;
        min-width: 0
    }

    .product__benefit-name {
        font-size: 4.2666666667vw;
        line-height: 5.8666666667vw
    }

    .product__benefit-tags {
        font-size: 3.0666666667vw;
        gap: 0 3.3333333333vw;
        letter-spacing: .1226666667vw;
        line-height: 4.5333333333vw
    }

    .product__benefits-note {
        letter-spacing: .1066666667vw;
        text-align: left
    }

    .product__benefits-note p {
        font-size: 2.6666666667vw;
        line-height: 4.5333333333vw
    }

    .product__benefit-icon {
        height: 3.3333333333vw;
        width: 2vw
    }
}

.dlc {
    margin-top: 5.7291666667vw
}

.dlc__title {
    margin: 0 auto;
    width: 23.75vw
}

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

.dlc__slider-pagination {
    align-items: center;
    display: flex;
    gap: 1.5625vw;
    justify-content: center;
    margin-top: 2.5vw
}

.dlc__slider-pagination .swiper-pagination-bullet {
    background-color: transparent;
    background-image: url(/metaphor/cn/switch2/resources/img/top/pagination_dot_inactive.DCeKG4QN.webp);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 0;
    cursor: pointer;
    height: .8333333333vw;
    margin: 0;
    opacity: 1;
    width: .8333333333vw
}

.dlc__slider-pagination.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: transparent;
    background-image: url(/metaphor/cn/switch2/resources/img/top/pagination_dot_active.CqPDuDE0.webp);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    height: .8854166667vw;
    width: .8854166667vw
}

.dlc__slider-wrap {
    margin: 2.6041666667vw auto 0;
    position: relative;
    width: 72.9166666667vw
}

.dlc__slider {
    width: 100%
}

.dlc__slider-next,
.dlc__slider-prev {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    border: 0;
    cursor: pointer;
    height: 8.8541666667vw;
    inset-block-start: 23.90625vw;
    padding: 0;
    position: absolute;
    transform: translateY(-50%);
    transition: .1s ease-in-out;
    width: 4.4270833333vw;
    z-index: 2
}

@media(min-width:751px)and (hover:hover) {

    .dlc__slider-next:hover,
    .dlc__slider-prev:hover {
        opacity: .8
    }
}

.dlc__slider-prev {
    inset-inline-start: -7.5520833333vw
}

.dlc__slider-next {
    inset-inline-end: -7.5520833333vw
}

.dlc__slider-next img,
.dlc__slider-prev img {
    block-size: 100%;
    display: block;
    inline-size: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    pointer-events: none
}

.dlc__slider-next:before,
.dlc__slider-prev:before {
    content: none
}

.common-content-body.dlc-1 .common-content-body__heading {
    color: #fff
}

.dlc .dlc-card {
    align-items: center;
    display: flex;
    gap: 2.6041666667vw;
    justify-content: center
}

.dlc .dlc-card__media {
    block-size: 15.625vw;
    flex: none;
    inline-size: 15.625vw
}

.dlc .dlc-card__media img {
    block-size: 100%;
    display: block;
    inline-size: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.dlc .dlc-card__right {
    display: flex;
    flex-direction: column;
    inline-size: 44.2708333333vw
}

.dlc .dlc-card__body {
    display: flex;
    flex-direction: column;
    gap: 1.5625vw
}

.dlc .dlc-card .common-content-body__description,
.dlc .dlc-card .common-content-body__heading,
.dlc .dlc-card .common-content-body__price {
    margin-left: 0;
    margin-right: 0;
    width: 100%
}

.dlc .dlc-card .common-content-body__heading {
    font-size: 1.9270833333vw;
    line-height: 2.6041666667vw;
    margin-top: 0;
    text-align: left
}

.dlc .dlc-card .common-content-body__heading span {
    font-size: 1.1458333333vw;
    line-height: 1.7708333333vw;
    margin-bottom: .5208333333vw
}

.dlc .dlc-card .common-content-body__price {
    justify-content: flex-start;
    margin-top: 0
}

.dlc .dlc-card .common-content-body__description {
    font-size: 1.1458333333vw;
    letter-spacing: .0458333333vw;
    line-height: 1.7708333333vw;
    margin: 1.5625vw 0 .2083333333vw;
    text-align: left
}

.dlc .dlc-card .common-content-body__description,
.dlc .dlc-card .common-content-body__heading {
    text-align: left
}

@media(max-width:750px) {
    .dlc {
        margin-top: 24vw
    }

    .dlc__title {
        width: 60.8vw
    }

    .dlc__slider-pagination {
        gap: 4vw;
        margin-top: 4vw
    }

    .dlc__slider-pagination .swiper-pagination-bullet {
        height: 2.1333333333vw;
        width: 2.1333333333vw
    }

    .dlc__slider-pagination.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
        height: 2.2666666667vw;
        width: 2.2666666667vw
    }

    .dlc__slider-wrap {
        margin-top: 4.6666666667vw;
        width: 88vw
    }

    .dlc__slider-next,
    .dlc__slider-prev {
        height: 22.6666666667vw;
        inset-block-start: 47.0666666667vw;
        width: 11.3333333333vw
    }

    .dlc__slider-prev {
        inset-inline-start: -6vw
    }

    .dlc__slider-next {
        inset-inline-end: -6vw
    }

    .dlc .dlc-card {
        align-items: center;
        flex-direction: column;
        gap: 5.3333333333vw;
        padding-bottom: 18vw
    }

    .dlc .dlc-card__media {
        block-size: 45.0666666667vw;
        inline-size: 80vw
    }

    .dlc .dlc-card__body {
        gap: 3.7333333333vw
    }

    .dlc .dlc-card__body,
    .dlc .dlc-card__description {
        inline-size: 80vw;
        margin-inline: auto
    }

    .dlc .dlc-card__media {
        order: 2
    }

    .dlc .dlc-card__right {
        gap: 5.3333333333vw;
        inline-size: 80vw;
        order: 1
    }

    .dlc .dlc-card__description {
        order: 3
    }

    .dlc .dlc-card .common-content-body__heading {
        font-size: 4.2666666667vw;
        letter-spacing: -.2666666667vw;
        line-height: 5.8666666667vw;
        text-align: center
    }

    .dlc .dlc-card .common-content-body__heading span {
        font-size: 2.9333333333vw;
        line-height: 4.5333333333vw;
        margin-bottom: .9333333333vw
    }

    .dlc .dlc-card .common-content-body__price {
        justify-content: center
    }

    .dlc .dlc-card .common-content-body__description {
        font-size: 2.9333333333vw;
        left: 0;
        letter-spacing: .1173333333vw;
        line-height: 4.5333333333vw;
        margin: 0;
        padding: 0 4vw;
        position: absolute;
        text-align: left !important;
        top: 88vw;
        width: 100%
    }

    .dlc__slider-next:before,
    .dlc__slider-prev:before {
        content: none
    }
}

.to-page-top-btn {
    display: block;
    margin: 7.9166666667vw auto 0;
    position: relative;
    transition: .1s ease-in-out;
    width: 7.8125vw
}

@media(min-width:751px)and (hover:hover) {
    .to-page-top-btn:hover {
        opacity: .8
    }
}

.to-page-top-btn img {
    display: block;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

@media(max-width:750px) {
    .to-page-top-btn {
        margin: 24.6666666667vw auto 0;
        width: 20vw
    }
}