@charset "UTF-8";

/*! destyle.css v2.0.2 | MIT License | https://github.com/nicolas-cusan/destyle.css */
*,
::after,
::before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-style: solid;
    border-width: 0;
    font-family: 'Noto Serif' !important;
}

@font-face {
    font-family: 'Noto Serif';
    src: url(../../fonts/Noto_Serif_SC/NotoSerifSC-Medium.otf) format('opentype');
}

html {
    line-height: 1;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent
}

body {
    margin: 0
}

main {
    display: block
}

address,
blockquote,
dl,
figure,
form,
iframe,
p,
pre,
table {
    margin: 0
}

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

ol,
ul {
    margin: 0;
    padding: 0;
    list-style: none
}

dt {
    font-weight: 700
}

dd {
    margin-left: 0
}

hr {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    height: 0;
    overflow: visible;
    border-top-width: 1px;
    margin: 0;
    clear: both;
    color: inherit
}

pre {
    font-family: monospace, monospace;
    font-size: inherit
}

address {
    font-style: inherit
}

a {
    background-color: transparent;
    text-decoration: none;
    color: inherit
}

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

b,
strong {
    font-weight: bolder
}

code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: inherit
}

small {
    font-size: 80%
}

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

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

embed,
iframe,
img,
object {
    vertical-align: bottom
}

button,
input,
optgroup,
select,
textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    vertical-align: middle;
    color: inherit;
    font: inherit;
    background: 0 0;
    padding: 0;
    margin: 0;
    outline: 0;
    border-radius: 0;
    text-align: inherit
}

[type=checkbox] {
    -webkit-appearance: checkbox;
    -moz-appearance: checkbox;
    appearance: checkbox
}

[type=radio] {
    -webkit-appearance: radio;
    -moz-appearance: radio;
    appearance: radio
}

button,
input {
    overflow: visible
}

button,
select {
    text-transform: none
}

[type=button],
[type=reset],
[type=submit],
button {
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

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

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
    border-style: none;
    padding: 0
}

[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
    outline: 1px dotted ButtonText
}

select::-ms-expand {
    display: none
}

option {
    padding: 0
}

fieldset {
    margin: 0;
    padding: 0;
    min-width: 0
}

legend {
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

label[for] {
    cursor: pointer
}

details {
    display: block
}

summary {
    display: list-item
}

[contenteditable] {
    outline: 0
}

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

caption {
    text-align: left
}

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

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

template {
    display: none
}

[hidden] {
    display: none
}

@-webkit-keyframes focus {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    20% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    30% {
        -webkit-transform: translateY(10%);
        transform: translateY(10%)
    }

    40% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    50% {
        -webkit-transform: translateY(10%);
        transform: translateY(10%)
    }

    60% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes focus {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    20% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    30% {
        -webkit-transform: translateY(10%);
        transform: translateY(10%)
    }

    40% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    50% {
        -webkit-transform: translateY(10%);
        transform: translateY(10%)
    }

    60% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@-webkit-keyframes scale {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0
    }

    30% {
        opacity: 1
    }

    100% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3);
        opacity: 0
    }
}

@keyframes scale {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0
    }

    30% {
        opacity: 1
    }

    100% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3);
        opacity: 0
    }
}

@-webkit-keyframes scale-arrow {
    0% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }

    20% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }

    30% {
        -webkit-transform: scaleX(1.1);
        transform: scaleX(1.1)
    }

    40% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }

    50% {
        -webkit-transform: scaleX(1.05);
        transform: scaleX(1.05)
    }

    60% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }

    100% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
}

@keyframes scale-arrow {
    0% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }

    20% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }

    30% {
        -webkit-transform: scaleX(1.1);
        transform: scaleX(1.1)
    }

    40% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }

    50% {
        -webkit-transform: scaleX(1.05);
        transform: scaleX(1.05)
    }

    60% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }

    100% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
}

@-webkit-keyframes scale-arrow2 {
    0% {
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1)
    }

    20% {
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1)
    }

    30% {
        -webkit-transform: scale(1.05, 1.05);
        transform: scale(1.05, 1.05)
    }

    40% {
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1)
    }

    50% {
        -webkit-transform: scale(1.05, 1.08);
        transform: scale(1.05, 1.08)
    }

    60% {
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1)
    }

    100% {
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1)
    }
}

@keyframes scale-arrow2 {
    0% {
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1)
    }

    20% {
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1)
    }

    30% {
        -webkit-transform: scale(1.05, 1.05);
        transform: scale(1.05, 1.05)
    }

    40% {
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1)
    }

    50% {
        -webkit-transform: scale(1.05, 1.08);
        transform: scale(1.05, 1.08)
    }

    60% {
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1)
    }

    100% {
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1)
    }
}

html {
    font-size: 62.5%
}

@media print,
screen and (min-width:1921px) {
    html {
        font-size: .5208333333vw
    }
}

@media print,
screen and (max-width:1024px) {
    html {
        font-size: 1.3020833333vw
    }
}

body {
    -webkit-font-smoothing: antialiased;
    word-wrap: break-word;
    overflow-wrap: break-word;
    overflow-x: hidden;
    height: 100%;
    min-height: 100%;
    -webkit-transition: opacity .4s ease-out;
    transition: opacity .4s ease-out;
    font-weight: 500;
    color: #3d4b4e;
    background: #1e1a10
}

@media print,
screen and (max-width:1024px) {
    body {
        -webkit-text-size-adjust: 100%;
        -webkit-overflow-scrolling: touch
    }
}

body.ja {
    font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif
}

body.en {
    font-family: helvetica-lt-pro, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif
}

body.tc {
    font-family: "Noto Sans TC", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif
}

img {
    -o-object-fit: contain;
    object-fit: contain;
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    max-width: 100%;
    width: 100%;
    height: 100%
}

.--resizing *,
.--resizing ::after,
.--resizing ::before {
    -webkit-transition: none !important;
    transition: none !important;
    -webkit-transition-delay: unset !important;
    transition-delay: unset !important
}

.u-display__block--pc {
    display: block !important
}

@media print,
screen and (max-width:1024px) {
    .u-display__block--pc {
        display: none !important
    }
}

.u-display__inline--pc {
    display: inline !important
}

@media print,
screen and (max-width:1024px) {
    .u-display__inline--pc {
        display: none !important
    }
}

.u-display__inline--sp {
    display: none !important
}

@media print,
screen and (max-width:1024px) {
    .u-display__inline--sp {
        display: inline !important
    }
}

.u-display__block--tab {
    display: block !important
}

@media print,
screen and (max-width:1053px) {
    .u-display__block--tab {
        display: none !important
    }
}

.u-display__block--tab-tc {
    display: none !important
}

@media print,
screen and (max-width:1120px) {
    .u-display__block--tab-tc {
        display: block !important
    }
}

.u-display__block--sp {
    display: none !important
}

@media print,
screen and (max-width:1024px) {
    .u-display__block--sp {
        display: block !important
    }
}

.m-wrapper {
    position: relative;
    z-index: 2
}

.m-btn {
    position: relative;
    z-index: 5;
    border-radius: 50%;
    background: rgba(61, 75, 78, .1)
}

@media print,
screen and (min-width:1025px) {
    .m-btn {
        width: max(60px, 3.125vw);
        height: max(60px, 3.125vw);
        border: max(1px, .0520833333vw) solid rgba(255, 255, 255, .5);
        padding: max(7px, .3645833333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .m-btn {
        width: 10.4166666667vw;
        height: 10.4166666667vw;
        border: max(1px, .1302083333vw) solid rgba(255, 255, 255, .5);
        padding: 1.0416666667vw
    }
}

.m-btn .m-btn__inner {
    position: relative;
    width: 100%;
    height: 100%;
    text-align:center;
    border-radius: inherit;
    background: rgba(255, 255, 255, .7)
}

@media print,
screen and (min-width:1025px) {
    .m-btn .m-btn__inner {
        border: max(1px, .0520833333vw) solid #fff;
        -webkit-box-shadow: 0 0 max(4px, .2083333333vw) #fff;
        box-shadow: 0 0 max(4px, .2083333333vw) #fff
    }
}

@media print,
screen and (max-width:1024px) {
    .m-btn .m-btn__inner {
        border: max(1px, .1302083333vw) solid #fff;
        -webkit-box-shadow: 0 0 .5208333333vw #fff;
        box-shadow: 0 0 .5208333333vw #fff
    }
}

@media print,
screen and (min-width:1025px) {
    .m-btn.m-btn--large {
        width: max(70px, 3.6458333333vw);
        height: max(70px, 3.6458333333vw);
        padding: max(7px, .3645833333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .m-btn.m-btn--large {
        width: 16.40625vw;
        height: 16.40625vw;
        padding: 1.5625vw
    }
}

.m-btn.m-btn--arrow::after {
    content: "";
    display: block;
    position: absolute;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2011%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M11.0001%207.00024L0.500061%2014.0002L0.500061%2010.8889L6.33307%207.00024L0.500061%203.11157L0.50006%200.000244141L11.0001%207.00024Z%22%20fill%3D%22%2369594D%22%2F%3E%0A%3Cpath%20d%3D%22M3.33301%207.0011L0%209.33411L-2.04001e-07%204.66711L3.33301%207.0011Z%22%20fill%3D%22%2369594D%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

@media print,
screen and (min-width:1025px) {
    .m-btn.m-btn--arrow::after {
        width: max(11px, .5729166667vw);
        height: max(14px, .7291666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .m-btn.m-btn--arrow::after {
        width: 2.6041666667vw;
        height: 3.3854166667vw
    }
}

.m-btn.m-btn--plus::after {
    content: "";
    display: block;
    position: absolute;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2017%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%2216.5001%22%20y%3D%229.14307%22%20width%3D%2216%22%20height%3D%222.28571%22%20transform%3D%22rotate(180%2016.5001%209.14307)%22%20fill%3D%22%2369594D%22%2F%3E%0A%3Crect%20x%3D%227.35754%22%20y%3D%2216%22%20width%3D%2216%22%20height%3D%222.28571%22%20transform%3D%22rotate(-90%207.35754%2016)%22%20fill%3D%22%2369594D%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

@media print,
screen and (min-width:1025px) {
    .m-btn.m-btn--plus::after {
        width: max(16px, .8333333333vw);
        height: max(16px, .8333333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .m-btn.m-btn--plus::after {
        width: 2.9947916667vw;
        height: 2.9947916667vw
    }
}

.m-btn.m-btn--link::after {
    content: "";
    display: block;
    position: absolute;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2030%2031%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M12.8229%2018.3593C13.9032%2019.4396%2015.3575%2020.0633%2016.8848%2020.1014C18.4122%2020.1395%2019.8957%2019.5892%2021.0287%2018.5641L21.2442%2018.3593L24.6123%2014.99C25.7092%2013.8911%2026.3336%2012.4073%2026.3523%2010.8547C26.371%209.30219%2025.7825%207.80373%2024.7124%206.67876C23.6422%205.55379%2022.175%204.89128%2020.6235%204.83245C19.0719%204.77361%2017.5588%205.32311%2016.4065%206.36381L16.1921%206.56865L13.6649%209.0959C13.4513%209.31022%2013.3273%209.59781%2013.318%209.90026C13.3088%2010.2027%2013.415%2010.4973%2013.6151%2010.7243C13.8153%2010.9512%2014.0943%2011.0935%2014.3955%2011.1222C14.6967%2011.1509%2014.9976%2011.0639%2015.237%2010.8788L15.3489%2010.7799L17.8761%208.25269C18.5313%207.59375%2019.4173%207.21594%2020.3464%207.19942C21.2754%207.18289%2022.1743%207.52894%2022.8525%208.16417C23.5306%208.79939%2023.9346%209.67382%2023.9788%2010.602C24.023%2011.5301%2023.7038%2012.4389%2023.089%2013.1357L22.9283%2013.306L19.5602%2016.6752C19.2284%2017.0071%2018.8345%2017.2703%2018.401%2017.4499C17.9674%2017.6295%2017.5028%2017.7219%2017.0335%2017.7219C16.5643%2017.7219%2016.0996%2017.6295%2015.6661%2017.4499C15.2326%2017.2703%2014.8387%2017.0071%2014.5069%2016.6752C14.2823%2016.4583%2013.9814%2016.3383%2013.6692%2016.341C13.3569%2016.3437%2013.0582%2016.4689%2012.8374%2016.6898C12.6165%2016.9106%2012.4913%2017.2093%2012.4886%2017.5215C12.4859%2017.8338%2012.6059%2018.1347%2012.8229%2018.3593ZM5.2435%2025.9386C6.32387%2027.0189%207.77813%2027.6426%209.30547%2027.6808C10.8328%2027.7189%2012.3164%2027.1685%2013.4493%2026.1435L13.6649%2025.9386L16.1909%2023.4102C16.4045%2023.1959%2016.5285%2022.9083%2016.5378%2022.6058C16.547%2022.3034%2016.4408%2022.0088%2016.2406%2021.7818C16.0405%2021.5548%2015.7615%2021.4126%2015.4603%2021.3839C15.1591%2021.3552%2014.8582%2021.4422%2014.6188%2021.6273L14.5069%2021.7262L11.9808%2024.2522C11.3246%2024.9042%2010.441%2025.2762%209.51604%2025.2901C8.59107%2025.3039%207.69679%2024.9584%207.02134%2024.3263C6.3459%2023.6942%205.94194%2022.8248%205.89446%2021.9009C5.84698%2020.9771%206.15967%2020.0708%206.76676%2019.3728L6.92754%2019.2013L10.2968%2015.832C10.9668%2015.1622%2011.8754%2014.7859%2012.8229%2014.7859C13.7703%2014.7859%2014.6789%2015.1622%2015.3489%2015.832C15.4595%2015.9427%2015.5908%2016.0305%2015.7353%2016.0904C15.8798%2016.1503%2016.0347%2016.1812%2016.1911%2016.1812C16.3475%2016.1813%2016.5024%2016.1505%2016.647%2016.0907C16.7915%2016.0309%2016.9229%2015.9432%2017.0335%2015.8326C17.1442%2015.7221%2017.232%2015.5908%2017.2919%2015.4463C17.3518%2015.3018%2017.3827%2015.1469%2017.3827%2014.9904C17.3828%2014.834%2017.352%2014.6791%2017.2922%2014.5345C17.2324%2014.39%2017.1447%2014.2587%2017.0341%2014.148C15.9538%2013.0677%2014.4995%2012.444%2012.9722%2012.4059C11.4448%2012.3677%209.96125%2012.9181%208.82833%2013.9432L8.61157%2014.148L5.2435%2017.5173C4.12714%2018.634%203.5%2020.1483%203.5%2021.7273C3.5%2023.3064%204.12714%2024.8219%205.2435%2025.9386Z%22%20fill%3D%22%233D4B4E%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

@media print,
screen and (min-width:1025px) {
    .m-btn.m-btn--link::after {
        width: max(30px, 1.5625vw);
        height: max(30px, 1.5625vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .m-btn.m-btn--link::after {
        width: 6.5104166667vw;
        height: 6.5104166667vw
    }
}

.m-btn.m-btn--facebook::after {
    content: "";
    display: block;
    position: absolute;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2030%2031%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M21.5742%2017.3777L22.3603%2012.301H17.4432V9.00794C17.4432%207.6187%2018.1288%206.26375%2020.3311%206.26375H22.568V1.94166C22.568%201.94166%2020.5389%201.59863%2018.5998%201.59863C14.5484%201.59863%2011.9029%204.03067%2011.9029%208.43166V12.301H7.40137V17.3777H11.9029V29.6511C12.8067%2029.7917%2013.7312%2029.8638%2014.6731%2029.8638C15.6149%2029.8638%2016.5395%2029.7917%2017.4432%2029.6511V17.3777H21.5742Z%22%20fill%3D%22%233D4B4E%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

@media print,
screen and (min-width:1025px) {
    .m-btn.m-btn--facebook::after,
    .m-btn.m-btn--xiaohongshu::after {
        width: max(30px, 1.5625vw);
        height: max(30px, 1.5625vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .m-btn.m-btn--facebook::after,
    .m-btn.m-btn--xiaohongshu::after{
        width: 6.5104166667vw;
        height: 6.5104166667vw
    }
}

.m-btn.m-btn--x::after {
    content: "";
    display: block;
    position: absolute;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2041%2040%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M23.6598%2017.4128L34.5398%204.76562H31.9616L22.5144%2015.747L14.969%204.76562H6.2663L17.6764%2021.3714L6.2663%2034.6339H8.84467L18.8211%2023.0372L26.7896%2034.6339H35.4923L23.6591%2017.4128H23.6598ZM20.1283%2021.5177L18.9722%2019.8641L9.77369%206.70658H13.7339L21.1573%2017.3251L22.3133%2018.9787L31.9628%2032.7812H28.0026L20.1283%2021.5183V21.5177Z%22%20fill%3D%22%233D4B4E%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.m-btn.m-btn--xiaohongshu::after {
    content: "";
    display: block;
    position: absolute;
    /* TODO */
    background: url("../../../xiaohongshu.svg");
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.m-btn.m-btn--xiaoheihe::after {
    content: "";
    display: block;
    position: absolute;
    /* TODO */
    background: url("");
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

@media print,
screen and (min-width:1025px) {
    .m-btn.m-btn--x::after,
    .m-btn.m-btn--xiaoheihe::after {
        width: max(30px, 1.5625vw);
        height: max(30px, 1.5625vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .m-btn.m-btn--x::after,
    .m-btn.m-btn--xiaoheihe::after {
        width: 6.5104166667vw;
        height: 6.5104166667vw
    }
}

.m-btn.m-btn--center {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

@media (any-hover:hover) {
    .m-btn::before {
        content: "";
        display: block;
        position: absolute;
        z-index: 2;
        pointer-events: none;
        border-radius: inherit;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        opacity: 0
    }
}

@media print and (any-hover:hover),
screen and (any-hover:hover) and (min-width:1025px) {
    .m-btn::before {
        border: max(1px, .0520833333vw) solid rgba(255, 255, 255, .5)
    }
}

@media print and (any-hover:hover),
screen and (any-hover:hover) and (max-width:1024px) {
    .m-btn::before {
        border: max(1px, .1302083333vw) solid rgba(255, 255, 255, .5)
    }
}

.m-navigation {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center
}

@media print,
screen and (min-width:1025px) {
    .m-navigation {
        gap: max(26px, 1.3541666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .m-navigation {
        gap: 5.2083333333vw
    }
}

.m-navigation .m-navigation-next,
.m-navigation .m-navigation-prev {
    will-change: filter
}

@media print,
screen and (min-width:1025px) {

    .m-navigation .m-navigation-next,
    .m-navigation .m-navigation-prev {
        width: max(28px, 1.4583333333vw);
        height: max(18px, .9375vw);
        -webkit-filter: drop-shadow(0 0 max(10px, .5208333333vw) rgba(255, 255, 255, .7));
        filter: drop-shadow(0 0 max(10px, .5208333333vw) rgba(255, 255, 255, .7))
    }
}

@media print,
screen and (max-width:1024px) {

    .m-navigation .m-navigation-next,
    .m-navigation .m-navigation-prev {
        width: 5.7291666667vw;
        height: 3.6458333333vw;
        -webkit-filter: drop-shadow(0 0 1.5625vw rgba(255, 255, 255, .7));
        filter: drop-shadow(0 0 1.5625vw rgba(255, 255, 255, .7))
    }
}

.m-navigation .m-navigation-next::after,
.m-navigation .m-navigation-prev::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #fff;
    -webkit-clip-path: polygon(0 50%, 100% 0, 78.5% 50%, 100% 100%);
    clip-path: polygon(0 50%, 100% 0, 78.5% 50%, 100% 100%)
}

@media (any-hover:hover) {

    .m-navigation .m-navigation-next,
    .m-navigation .m-navigation-prev {
        cursor: pointer;
        -webkit-transition: -webkit-filter .4s;
        transition: -webkit-filter .4s;
        transition: filter .4s;
        transition: filter .4s, -webkit-filter .4s
    }
}

@media print and (any-hover:hover),
screen and (any-hover:hover) and (min-width:1025px) {

    .m-navigation .m-navigation-next:hover,
    .m-navigation .m-navigation-prev:hover {
        -webkit-filter: drop-shadow(0 0 max(5px, .2604166667vw) #fff);
        filter: drop-shadow(0 0 max(5px, .2604166667vw) #fff)
    }
}

@media print and (any-hover:hover),
screen and (any-hover:hover) and (max-width:1024px) {

    .m-navigation .m-navigation-next:hover,
    .m-navigation .m-navigation-prev:hover {
        -webkit-filter: drop-shadow(0 0 .78125vw #fff);
        filter: drop-shadow(0 0 .78125vw #fff)
    }
}

.m-navigation .m-navigation-next {
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1)
}

.m-navigation .m-navigation-pagination {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    width: auto
}

@media print,
screen and (min-width:1025px) {
    .m-navigation .m-navigation-pagination {
        gap: max(8px, .4166666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .m-navigation .m-navigation-pagination {
        gap: 1.5625vw
    }
}

.m-navigation .m-navigation-pagination .swiper-pagination-bullet {
    margin: 0;
    border-radius: 0;
    opacity: 1;
    background: rgba(255, 255, 255, 0)
}

@media print,
screen and (min-width:1025px) {
    .m-navigation .m-navigation-pagination .swiper-pagination-bullet {
        border: max(1px, .0520833333vw) solid rgba(255, 255, 255, .6);
        width: max(10px, .5208333333vw);
        height: max(10px, .5208333333vw);
        -webkit-box-shadow: 0 0 max(10px, .5208333333vw) rgba(255, 255, 255, .7);
        box-shadow: 0 0 max(10px, .5208333333vw) rgba(255, 255, 255, .7)
    }
}

@media print,
screen and (max-width:1024px) {
    .m-navigation .m-navigation-pagination .swiper-pagination-bullet {
        border: max(1px, .1302083333vw) solid rgba(255, 255, 255, .6);
        width: 2.34375vw;
        height: 2.34375vw;
        -webkit-box-shadow: 0 0 1.5625vw rgba(255, 255, 255, .7);
        box-shadow: 0 0 1.5625vw rgba(255, 255, 255, .7)
    }
}

.m-navigation .m-navigation-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: #fff;
    border-color: #fff
}

.m-navigation.m-navigation--brown {
    opacity: .7
}

.m-navigation.m-navigation--brown .m-navigation-next::after,
.m-navigation.m-navigation--brown .m-navigation-prev::after {
    background: #69594d
}

.m-navigation.m-navigation--brown .m-navigation-pagination .swiper-pagination-bullet {
    background: rgba(105, 89, 77, 0);
    border-color: rgba(105, 89, 77, .6)
}

.m-navigation.m-navigation--brown .m-navigation-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: #69594d;
    border-color: #69594d
}

.m-title {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center
}

@media print,
screen and (min-width:1025px) {
    .m-title {
        -webkit-filter: drop-shadow(0 0 max(6px, .3125vw) rgba(255, 255, 255, .3));
        filter: drop-shadow(0 0 max(6px, .3125vw) rgba(255, 255, 255, .3))
    }
}

@media print,
screen and (max-width:1024px) {
    .m-title {
        -webkit-filter: drop-shadow(0 0 .78125vw rgba(255, 255, 255, .3));
        filter: drop-shadow(0 0 .78125vw rgba(255, 255, 255, .3))
    }
}

.m-title span {
    display: inline-block
}

.m-title .m-title__text {
    font-family: "Noto Serif JP", serif;
    line-height: 1.4;
    font-weight: 500;
    letter-spacing: .06em;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff4d0), to(#fff));
    background: -webkit-linear-gradient(top, #fff4d0 0, #fff 100%);
    background: linear-gradient(to bottom, #fff4d0 0, #fff 100%);
    text-align: center;
    -webkit-background-clip: text;
    background-clip: text;
    color: rgba(255, 255, 255, 0)
}

@media print,
screen and (min-width:1025px) {
    .m-title .m-title__text {
        font-size: 5.4rem
    }
}

@media print,
screen and (max-width:1024px) {
    .m-title .m-title__text {
        font-size: 6rem
    }
}

.m-title .m-title__deco {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center
}

@media print,
screen and (min-width:1025px) {
    .m-title .m-title__deco {
        height: max(11px, .5729166667vw);
        margin-top: max(14px, .7291666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .m-title .m-title__deco {
        height: 1.8229166667vw;
        margin-top: 2.6041666667vw
    }
}

.m-title .m-title__deco svg {
    width: auto;
    height: 100%
}

@media print,
screen and (min-width:1025px) {
    .m-title.m-title--gr {
        -webkit-filter: drop-shadow(0 0 max(10px, .5208333333vw) rgba(224, 212, 132, .7));
        filter: drop-shadow(0 0 max(10px, .5208333333vw) rgba(224, 212, 132, .7))
    }
}

@media print,
screen and (max-width:1024px) {
    .m-title.m-title--gr {
        -webkit-filter: drop-shadow(0 0 1.3020833333vw rgba(224, 212, 132, .7));
        filter: drop-shadow(0 0 1.3020833333vw rgba(224, 212, 132, .7))
    }
}

.m-title.m-title--gr .m-title__text {
    background: -webkit-gradient(linear, left top, right top, color-stop(0, #9c8120), to(#59351a));
    background: -webkit-linear-gradient(left, #9c8120 0, #59351a 100%);
    background: linear-gradient(to right, #9c8120 0, #59351a 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: rgba(255, 255, 255, 0)
}

.js-mask {
    /* -webkit-mask: url(../../images/common/mask.png) no-repeat top 0 left 0/auto 100%; */
    /* mask: url(../../images/common/mask.png) no-repeat top 0 left 0/auto 100%; */
    will-change: mask-position;
    -webkit-transition: -webkit-mask-position 10ms 0s steps(29);
    transition: -webkit-mask-position 10ms 0s steps(29);
    transition: mask-position 10ms 0s steps(29);
    transition: mask-position 10ms 0s steps(29), -webkit-mask-position 10ms 0s steps(29)
}

.js-mask.--animated {
    -webkit-transition: -webkit-mask-position 2.6s .1s steps(29);
    transition: -webkit-mask-position 2.6s .1s steps(29);
    transition: mask-position 2.6s .1s steps(29);
    transition: mask-position 2.6s .1s steps(29), -webkit-mask-position 2.6s .1s steps(29);
    -webkit-mask-position: top 0 left 100%;
    mask-position: top 0 left 100%
}

.js-mask.js-mask--slow {
    -webkit-transition-duration: 1s;
    transition-duration: 1s
}

.js-mask.js-mask--slow.--animated {
    -webkit-transition-duration: 3.6s;
    transition-duration: 3.6s
}

.js-mask.js-mask--fast {
    -webkit-transition-duration: 1s;
    transition-duration: 1s
}

.js-mask.js-mask--fast.--animated {
    -webkit-transition-duration: 1.6s;
    transition-duration: 1.6s
}

.js-mask.js-mask--delay {
    -webkit-transition-delay: 0s;
    transition-delay: 0s
}

.js-mask.js-mask--delay.--animated {
    -webkit-transition-delay: .3s;
    transition-delay: .3s
}

.m-movie-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    z-index: 99;
    -webkit-transition: opacity .3s ease-in-out, visibility .3s;
    transition: opacity .3s ease-in-out, visibility .3s
}

.m-movie-modal.show {
    opacity: 1;
    visibility: visible
}

.m-movie-modal.show .m-movie-modal__close,
.m-movie-modal.show .m-movie-modal__content,
.m-movie-modal.show .m-movie-modal__overlay {
    opacity: 1;
    visibility: visible;
    pointer-events: all
}

.m-movie-modal .m-movie-modal__overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    background: rgba(105, 89, 77, .98);
    -webkit-transition: opacity .3s ease-in-out, visibility .3s;
    transition: opacity .3s ease-in-out, visibility .3s;
    opacity: 0;
    visibility: hidden;
    pointer-events: none
}

.m-movie-modal .m-movie-modal__close {
    position: fixed;
    z-index: 100;
    -webkit-transition: opacity .3s ease-in-out, visibility .3s;
    transition: opacity .3s ease-in-out, visibility .3s;
    opacity: 0;
    visibility: hidden;
    pointer-events: none
}

@media print,
screen and (min-width:1025px) {
    .m-movie-modal .m-movie-modal__close {
        width: 31px;
        height: 31px;
        top: 42px;
        right: 42px
    }
}

@media print,
screen and (min-width:1921px) {
    .m-movie-modal .m-movie-modal__close {
        width: 1.6145833333vw;
        height: 1.6145833333vw;
        top: 2.1875vw;
        right: 2.1875vw
    }
}

@media print,
screen and (max-width:1024px) {
    .m-movie-modal .m-movie-modal__close {
        width: 5.3385416667vw;
        height: 5.3385416667vw;
        top: 3.90625vw;
        right: 3.90625vw
    }
}

.m-movie-modal .m-movie-modal__close::after,
.m-movie-modal .m-movie-modal__close::before {
    content: "";
    position: absolute;
    display: block;
    background: #fff;
    top: 50%;
    left: 50%
}

@media print,
screen and (min-width:1025px) {

    .m-movie-modal .m-movie-modal__close::after,
    .m-movie-modal .m-movie-modal__close::before {
        width: 40px;
        height: 3px
    }
}

@media print,
screen and (min-width:1921px) {

    .m-movie-modal .m-movie-modal__close::after,
    .m-movie-modal .m-movie-modal__close::before {
        width: 2.0833333333vw;
        height: .15625vw
    }
}

@media print,
screen and (max-width:1024px) {

    .m-movie-modal .m-movie-modal__close::after,
    .m-movie-modal .m-movie-modal__close::before {
        width: 6.5104166667vw;
        height: .390625vw
    }
}

.m-movie-modal .m-movie-modal__close::before {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(45deg)
}

.m-movie-modal .m-movie-modal__close::after {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg)
}

@media (any-hover:hover) {
    .m-movie-modal .m-movie-modal__close {
        cursor: pointer
    }

    .m-movie-modal .m-movie-modal__close:hover {
        opacity: .7
    }
}

.m-movie-modal .m-movie-modal__content {
    width: 100%;
    height: 100%;
    margin: auto;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: grid;
    place-items: center;
    -webkit-transition: opacity .3s ease-in-out, visibility .3s;
    transition: opacity .3s ease-in-out, visibility .3s;
    opacity: 0;
    visibility: hidden
}

@media print,
screen and (min-width:1025px) {
    .m-movie-modal .m-movie-modal__content {
        max-width: 66.6666666667vw;
        max-height: 37.5vw
    }
}

@media print,
screen and (max-width:1024px) {
    .m-movie-modal .m-movie-modal__content {
        max-width: 92.1875vw;
        max-height: 51.85546875vw
    }
}

.m-movie-modal .m-movie-modal__content iframe,
.m-movie-modal .m-movie-modal__content video {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

@media print,
screen and (min-width:1025px) {

    .m-movie-modal .m-movie-modal__content iframe,
    .m-movie-modal .m-movie-modal__content video {
        max-width: 66.6666666667vw;
        max-height: 37.5vw
    }
}

@media print,
screen and (max-width:1024px) {

    .m-movie-modal .m-movie-modal__content iframe,
    .m-movie-modal .m-movie-modal__content video {
        max-width: 92.1875vw;
        max-height: 51.85546875vw;
        margin: auto 0
    }
}

.m-image-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    z-index: 99;
    -webkit-transition: opacity .3s ease-in-out, visibility .3s;
    transition: opacity .3s ease-in-out, visibility .3s;
    background: rgba(105, 89, 77, .98);
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    flex-direction: column
}

.m-image-modal.show {
    opacity: 1;
    visibility: visible;
    pointer-events: auto
}

.m-image-modal.show .m-image-modal__close,
.m-image-modal.show .m-image-modal__content {
    opacity: 1;
    visibility: visible
}

.m-image-modal .m-image-modal__content {
    position: relative;
    aspect-ratio: 1200/675;
    max-width: 90vw
}

@media print,
screen and (min-width:1025px) {
    .m-image-modal .m-image-modal__content {
        max-height: calc(100vh - max(138px, 7.1875vw))
    }
}

.m-image-modal .m-image-modal__content img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@media print,
screen and (min-width:1025px) {
    .m-image-modal .m-image-modal__navigation {
        margin-top: max(40px, 2.0833333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .m-image-modal .m-image-modal__navigation {
        margin-top: 5.2083333333vw
    }
}

.m-image-modal .m-image-modal__close {
    position: fixed;
    z-index: 100;
    -webkit-transition: opacity .3s ease-in-out, visibility .3s;
    transition: opacity .3s ease-in-out, visibility .3s;
    opacity: 0;
    visibility: hidden
}

@media print,
screen and (min-width:1025px) {
    .m-image-modal .m-image-modal__close {
        width: 31px;
        height: 31px;
        top: 42px;
        right: 42px
    }
}

@media print,
screen and (min-width:1921px) {
    .m-image-modal .m-image-modal__close {
        width: 1.6145833333vw;
        height: 1.6145833333vw;
        top: 2.1875vw;
        right: 2.1875vw
    }
}

@media print,
screen and (max-width:1024px) {
    .m-image-modal .m-image-modal__close {
        width: 5.3385416667vw;
        height: 5.3385416667vw;
        top: 3.90625vw;
        right: 3.90625vw
    }
}

.m-image-modal .m-image-modal__close::after,
.m-image-modal .m-image-modal__close::before {
    content: "";
    position: absolute;
    display: block;
    background: #fff;
    top: 50%;
    left: 50%
}

@media print,
screen and (min-width:1025px) {

    .m-image-modal .m-image-modal__close::after,
    .m-image-modal .m-image-modal__close::before {
        width: 40px;
        height: 3px
    }
}

@media print,
screen and (min-width:1921px) {

    .m-image-modal .m-image-modal__close::after,
    .m-image-modal .m-image-modal__close::before {
        width: 2.0833333333vw;
        height: .15625vw
    }
}

@media print,
screen and (max-width:1024px) {

    .m-image-modal .m-image-modal__close::after,
    .m-image-modal .m-image-modal__close::before {
        width: 6.5104166667vw;
        height: .390625vw
    }
}

.m-image-modal .m-image-modal__close::before {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(45deg)
}

.m-image-modal .m-image-modal__close::after {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg)
}

@media (any-hover:hover) {
    .m-image-modal .m-image-modal__close {
        cursor: pointer
    }

    .m-image-modal .m-image-modal__close:hover {
        opacity: .7
    }
}

.m-platform {
    position: fixed;
    z-index: 5;
    bottom: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex
}

@media print,
screen and (min-width:1025px) {
    .m-platform {
        left: calc(50% - max(370px, 19.2708333333vw));
        width: max(740px, 38.5416666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .m-platform {
        width: 100%;
        left: 0
    }
}

.m-platform .m-platform__item {
    width: 50%
}

.m-platform .m-platform__item.m-platform__item--steam a {
    background: -webkit-gradient(linear, left top, right top, color-stop(0, #07264c), to(#0f73a3));
    background: -webkit-linear-gradient(left, #07264c 0, #0f73a3 100%);
    background: linear-gradient(to right, #07264c 0, #0f73a3 100%)
}

@media print,
screen and (max-width:1024px) {
    .m-platform .m-platform__item.m-platform__item--steam a {
        padding-left: 3.3854166667vw
    }
}

@media print,
screen and (min-width:1025px) {
    .m-platform .m-platform__item.m-platform__item--steam a .m-platform__item-image {
        width: max(120px, 6.25vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .m-platform .m-platform__item.m-platform__item--steam a .m-platform__item-image {
        width: 25vw
    }
}

.m-platform .m-platform__item.m-platform__item--switch a {
    background: #e60012
}

@media print,
screen and (max-width:1024px) {
    .m-platform .m-platform__item.m-platform__item--switch a {
        padding-left: 5.859375vw
    }
}

@media print,
screen and (min-width:1025px) {
    .m-platform .m-platform__item.m-platform__item--switch a .m-platform__item-image {
        width: max(86px, 4.4791666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .m-platform .m-platform__item.m-platform__item--switch a .m-platform__item-image {
        width: 20.0520833333vw
    }
}

@media print,
screen and (max-width:1024px) {
    .m-platform .m-platform__item.m-platform__item--switch a .m-platform__item-image.coming-soon {
        width: 18.75vw
    }
}

.m-platform .m-platform__item.m-platform__item--switch a[href=""] {
    pointer-events: none !important
}

.m-platform .m-platform__item a {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    font-weight: 700;
    letter-spacing: .06em;
    line-height: 1.3;
    color: #fff
}

@media print,
screen and (min-width:1025px) {
    .m-platform .m-platform__item a {
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        justify-content: center;
        height: max(64px, 3.3333333333vw);
        font-size: 1.6rem;
        gap: max(14px, .7291666667vw);
        border-radius: max(10px, .5208333333vw) max(10px, .5208333333vw) 0 0;
        padding: max(4px, .2083333333vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .m-platform .m-platform__item a {
        font-size: 2rem;
        height: 15.625vw;
        gap: 3.125vw;
        border-radius: 1.8229166667vw 1.8229166667vw 0 0
    }
}

@media print,
screen and (min-width:1025px) {
    .m-platform .m-platform__item a .m-platform__item-image {
        -webkit-transform: translateY(max(1px, .0520833333vw));
        transform: translateY(max(1px, .0520833333vw))
    }
}

@media print,
screen and (max-width:1024px) {
    .m-platform .m-platform__item a .m-platform__item-image {
        -webkit-transform: translateY(.2604166667vw);
        transform: translateY(.2604166667vw)
    }
}

@media (any-hover:hover) {
    .m-platform .m-platform__item a {
        pointer-events: auto
    }

    .m-platform .m-platform__item a:hover {
        color: #fff !important;
        -webkit-transform: scale(1.05) !important;
        transform: scale(1.05) !important
    }

    .m-platform .m-platform__item a:hover .m-platform__item-image {
        opacity: 1 !important
    }
}

@media (any-hover:hover) {
    .m-platform {
        pointer-events: none
    }

    .m-platform .m-platform__item a {
        -webkit-transition: color .4s, -webkit-transform .4s;
        transition: color .4s, -webkit-transform .4s;
        transition: transform .4s, color .4s;
        transition: transform .4s, color .4s, -webkit-transform .4s;
        -webkit-transform-origin: bottom;
        transform-origin: bottom
    }

    .m-platform .m-platform__item a .m-platform__item-image {
        -webkit-transition: opacity .4s;
        transition: opacity .4s
    }

    .m-platform:hover .m-platform__item a {
        color: rgba(255, 255, 255, .6);
        -webkit-transform: scale(.95);
        transform: scale(.95)
    }

    .m-platform:hover .m-platform__item a .m-platform__item-image {
        opacity: .6
    }
}

.js-parallax {
    will-change: transform
}

.js-animation.js-animation--fadein {
    -webkit-transition: opacity 1s .2s, -webkit-transform 1s .2s;
    transition: opacity 1s .2s, -webkit-transform 1s .2s;
    transition: opacity 1s .2s, transform 1s .2s;
    transition: opacity 1s .2s, transform 1s .2s, -webkit-transform 1s .2s;
    opacity: 0
}

@media print,
screen and (min-width:1025px) {
    .js-animation.js-animation--fadein {
        -webkit-transform: translateY(max(20px, 1.0416666667vw));
        transform: translateY(max(20px, 1.0416666667vw))
    }
}

@media print,
screen and (max-width:1024px) {
    .js-animation.js-animation--fadein {
        -webkit-transform: translateY(2.6041666667vw);
        transform: translateY(2.6041666667vw)
    }
}

.js-animation.js-animation--fadein.--animated {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

body.en .m-title .m-title__text {
    font-family: adobe-garamond-pro, serif
}

@media print,
screen and (min-width:1025px) {
    body.en .m-title .m-title__text {
        font-size: 7.6rem
    }
}

@media print,
screen and (max-width:1024px) {
    body.en .m-title .m-title__text {
        font-size: 8.4rem
    }
}

@media print,
screen and (min-width:1025px) {
    body.en .m-title .m-title__deco {
        margin-top: min(-6px, -.3125vw)
    }
}

@media print,
screen and (max-width:1024px) {
    body.en .m-title .m-title__deco {
        margin-top: .2604166667vw
    }
}

body.tc .m-title .m-title__text {
    font-family: "Noto Serif TC", serif
}

.header {
    position: absolute;
    z-index: 5;
    top: 0;
    left: 0;
    width: 100%
}

.header .header__logo {
    position: absolute
}

@media print,
screen and (min-width:1025px) {
    .header .header__logo {
        top: max(14px, .7291666667vw);
        left: max(14px, .7291666667vw);
        width: max(236px, 12.2916666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .header .header__logo {
        width: 29.9479166667vw;
        top: 2.0833333333vw;
        left: 2.0833333333vw
    }
}

.header .header__language {
    position: absolute
}

@media print,
screen and (min-width:1025px) {
    .header .header__language {
        top: max(14px, .7291666667vw);
        right: max(14px, .7291666667vw);
        width: max(176px, 9.1666666667vw);
        height: max(56px, 2.9166666667vw);
        border-radius: max(100px, 5.2083333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .header .header__language {
        top: 1.8229166667vw;
        right: 1.3020833333vw;
        width: 27.8645833333vw;
        height: 9.1145833333vw;
        border-radius: 13.0208333333vw
    }
}

@media (any-hover:hover) {
    .header .header__language:hover .header__language-list {
        pointer-events: auto
    }

    .header .header__language:hover .header__language-list .header__language-item {
        opacity: 1
    }
}

.header .header__language .header__language-select {
    background: rgba(61, 75, 78, .1);
    border-radius: inherit;
    width: 100%;
    height: 100%
}

@media print,
screen and (min-width:1025px) {
    .header .header__language .header__language-select {
        border: max(1px, .0520833333vw) solid rgba(255, 255, 255, .5);
        padding: max(5px, .2604166667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .header .header__language .header__language-select {
        border: .2604166667vw solid rgba(255, 255, 255, .5);
        padding: .78125vw
    }
}

.header .header__language .header__language-select span {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    background: rgba(255, 255, 255, .7);
    height: 100%;
    border-radius: inherit;
    font-family: adobe-garamond-pro, serif;
    font-weight: 600;
    line-height: 1;
    letter-spacing: .08em
}

@media print,
screen and (min-width:1025px) {
    .header .header__language .header__language-select span {
        border: max(1px, .0520833333vw) solid #fff;
        padding: max(4px, .2083333333vw) 0 0 max(9px, .46875vw);
        gap: max(12px, .625vw);
        font-size: 1.4rem
    }
}

@media print,
screen and (max-width:1024px) {
    .header .header__language .header__language-select span {
        border: max(1px, .1302083333vw) solid #fff;
        padding: .2604166667vw 0 0 1.3020833333vw;
        gap: 1.8229166667vw;
        font-size: 1.8rem
    }
}

.header .header__language .header__language-select span::after {
    content: "";
    display: block;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M19.8923%208.54645C19.6136%206.6429%2018.7956%204.87099%2017.5285%203.42042L17.4859%203.37138C17.4678%203.35202%2017.4549%203.3404%2017.4498%203.33911C16.5092%202.28087%2015.375%201.44976%2014.0808%200.869018C11.4912%20-0.289888%208.49385%20-0.289888%205.9081%200.870309C4.61393%201.45105%203.47977%202.28216%202.57785%203.30298C2.52495%203.34557%202.47979%203.39461%202.44366%203.4501L2.4385%203.45913C1.19078%204.90067%200.38435%206.65968%200.106937%208.54645C-0.173057%2010.45%200.0991949%2012.3832%200.895306%2014.1358C1.69142%2015.887%202.96752%2017.3647%204.58555%2018.4075C6.20358%2019.4502%208.07708%2020%2010.0009%2020C11.9247%2020%2013.797%2019.4489%2015.4163%2018.4075C17.0343%2017.3647%2018.3091%2015.8883%2019.1052%2014.1358C19.9013%2012.3832%2020.1736%2010.45%2019.8923%208.54645ZM10.6203%209.3711V6.17443C11.7647%206.13572%2012.9028%205.97569%2014.0111%205.69951C14.366%206.89585%2014.566%208.12702%2014.6073%209.3711H10.6203ZM16.873%204.59739C17.9491%205.96407%2018.5969%207.63791%2018.7207%209.3711H15.8524C15.8085%208.00571%2015.5866%206.65581%2015.1905%205.3472C15.7698%205.14458%2016.3337%204.89293%2016.873%204.59739ZM14.7698%204.17022C14.4202%203.33782%2013.9982%202.60351%2013.5183%201.99179C14.4344%202.39573%2015.2743%202.95582%2016.0047%203.64626C15.6059%203.84759%2015.1931%204.0231%2014.7698%204.17022ZM10.6203%204.9239V1.33103C11.7712%201.63431%2012.8241%202.7674%2013.5776%204.51867C12.6086%204.75097%2011.6164%204.88776%2010.6203%204.9239ZM10.6203%2013.7835V10.6216H14.6008C14.5582%2011.858%2014.3595%2013.0788%2014.0111%2014.261C12.9015%2013.9835%2011.7647%2013.8235%2010.6203%2013.7835ZM13.5931%2015.4444C12.8421%2017.2111%2011.7828%2018.3559%2010.6203%2018.6604V15.034C11.6189%2015.0701%2012.6163%2015.2082%2013.5931%2015.4431V15.4444ZM16.0317%2016.3258C15.2963%2017.0279%2014.446%2017.5944%2013.5195%2018.0022C14.0073%2017.3815%2014.4357%2016.6356%2014.7866%2015.7928C15.2137%2015.9425%2015.6305%2016.1206%2016.0317%2016.3258ZM16.895%2015.3695C16.3543%2015.0727%2015.7866%2014.8185%2015.2021%2014.6133C15.5905%2013.3189%2015.8085%2011.9793%2015.8524%2010.6216H18.7233C18.5994%2012.3445%2017.9594%2014.0093%2016.8962%2015.3695H16.895ZM9.37125%201.33232V4.92519C8.37385%204.88776%207.38162%204.75226%206.41389%204.51996C7.16743%202.76869%208.2216%201.6356%209.37125%201.33232ZM9.37125%206.17572V9.37239H5.39069C5.43069%208.12702%205.6294%206.89585%205.98165%205.7008C7.09001%205.97698%208.22676%206.13701%209.37125%206.17572ZM3.98943%203.64755C4.71716%202.95711%205.55714%202.39831%206.47067%201.99437C5.99326%202.6048%205.57262%203.33911%205.22295%204.1728C4.80103%204.02568%204.38813%203.84888%203.98943%203.64755ZM9.37125%2010.6229V13.7848C8.22805%2013.8248%207.09001%2013.9848%205.98036%2014.2635C5.63069%2013.0801%205.43327%2011.858%205.39069%2010.6229H9.37125ZM4.80103%205.34978C4.4062%206.65839%204.18427%208.00829%204.1404%209.37368H1.27078C1.39594%207.64049%202.04367%205.96536%203.11848%204.59997C3.65654%204.89551%204.22168%205.14716%204.80103%205.34978ZM4.1404%2010.6229C4.18427%2011.978%204.40233%2013.3176%204.7907%2014.6172C4.20749%2014.8198%203.63976%2015.074%203.09784%2015.3721C2.03335%2014.0119%201.39336%2012.3458%201.27078%2010.6229H4.1404ZM5.20876%2015.7941C5.56101%2016.6407%205.98681%2017.3841%206.46938%2018.0022C5.54553%2017.5944%204.6978%2017.0279%203.96492%2016.3271C4.3662%2016.1219%204.78167%2015.9438%205.20876%2015.7941ZM9.37125%2015.0366V18.6617C8.22031%2018.352%207.14162%2017.1879%206.3997%2015.447C7.37129%2015.2108%208.36869%2015.074%209.37125%2015.0379V15.0366Z%22%20fill%3D%22%233D4B4E%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain
}

@media print,
screen and (min-width:1025px) {
    .header .header__language .header__language-select span::after {
        width: max(20px, 1.0416666667vw);
        height: max(20px, 1.0416666667vw);
        -webkit-transform: translateY(min(-2px, -.1041666667vw));
        transform: translateY(min(-2px, -.1041666667vw))
    }
}

@media print,
screen and (max-width:1024px) {
    .header .header__language .header__language-select span::after {
        width: 4.1666666667vw;
        height: 4.1666666667vw;
        -webkit-transform: translateY(-.2604166667vw);
        transform: translateY(-.2604166667vw)
    }
}

@media (any-hover:hover) {
    .header .header__language .header__language-select {
        cursor: pointer
    }
}

.header .header__language .header__language-select.--active+.header__language-list {
    pointer-events: auto
}

.header .header__language .header__language-select.--active+.header__language-list .header__language-item {
    opacity: 1
}

.header .header__language .header__language-list {
    margin: 0 auto;
    pointer-events: none
}

@media print,
screen and (min-width:1025px) {
    .header .header__language .header__language-list {
        padding: max(8px, .4166666667vw) 0 0;
        width: max(164px, 8.5416666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .header .header__language .header__language-list {
        padding: 1.4322916667vw 0 0;
        width: 26.5625vw
    }
}

.header .header__language .header__language-list .header__language-item {
    opacity: 0
}

.header .header__language .header__language-list .header__language-item:nth-of-type(1) {
    -webkit-transition: opacity .6s .1s;
    transition: opacity .6s .1s
}

.header .header__language .header__language-list .header__language-item:nth-of-type(2) {
    -webkit-transition: opacity .6s .2s;
    transition: opacity .6s .2s
}

.header .header__language .header__language-list .header__language-item:nth-of-type(3) {
    -webkit-transition: opacity .6s .3s;
    transition: opacity .6s .3s
}

.header .header__language .header__language-list .header__language-item:nth-of-type(4) {
    -webkit-transition: opacity .6s .4s;
    transition: opacity .6s .4s
}

@media print,
screen and (min-width:1025px) {
    .header .header__language .header__language-list .header__language-item+.header__language-item {
        margin-top: max(4px, .2083333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .header .header__language .header__language-list .header__language-item+.header__language-item {
        margin-top: .78125vw
    }
}

@media print,
screen and (min-width:1025px) {
    .header .header__language .header__language-list .header__language-item:first-of-type a {
        border-radius: max(6px, .3125vw) max(6px, .3125vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .header .header__language .header__language-list .header__language-item:first-of-type a {
        border-radius: .78125vw .78125vw 0 0
    }
}

@media print,
screen and (min-width:1025px) {
    .header .header__language .header__language-list .header__language-item:last-of-type a {
        border-radius: 0 0 max(6px, .3125vw) max(6px, .3125vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .header .header__language .header__language-list .header__language-item:last-of-type a {
        border-radius: 0 0 .78125vw .78125vw
    }
}

.header .header__language .header__language-list .header__language-item a {
    color: #3d4b4e;
    letter-spacing: .06em;
    line-height: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    background: rgba(255, 255, 255, .7)
}

@media print,
screen and (min-width:1025px) {
    .header .header__language .header__language-list .header__language-item a {
        font-size: 1.4rem;
        height: max(42px, 2.1875vw);
        -webkit-box-shadow: 0 0 max(4px, .2083333333vw) #fff;
        box-shadow: 0 0 max(4px, .2083333333vw) #fff;
        border: max(1px, .0520833333vw) solid #fff
    }
}

@media print,
screen and (max-width:1024px) {
    .header .header__language .header__language-list .header__language-item a {
        font-size: 2.2rem;
        height: 7.8125vw;
        -webkit-box-shadow: 0 0 .5208333333vw #fff;
        box-shadow: 0 0 .5208333333vw #fff;
        border: max(1px, .1302083333vw) solid #fff
    }
}

.header .header__language .header__language-list .header__language-item a[href=""] {
    pointer-events: none;
    opacity: .6
}

@media (any-hover:hover) {
    .header .header__language .header__language-list .header__language-item a {
        -webkit-transition: background .4s;
        transition: background .4s
    }

    .header .header__language .header__language-list .header__language-item a:hover {
        background: rgba(255, 255, 255, .9)
    }
}

body.en .header .header__logo {
    position: absolute
}

@media print,
screen and (min-width:1025px) {
    body.en .header .header__logo {
        top: max(14px, .7291666667vw);
        left: max(14px, .7291666667vw);
        width: max(236px, 12.2916666667vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1280px) {
    body.en .header .header__logo {
        width: 18.4375vw
    }
}

.footer {
    position: relative;
    z-index: 2
}

.footer .footer__inner {
    margin: 0 auto
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__inner {
        max-width: max(1280px, 66.6666666667vw);
        padding: 0 max(40px, 2.0833333333vw) max(60px, 3.125vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__inner {
        width: 86.9791666667vw;
        padding: 0 0 7.8125vw
    }
}

.footer .footer__logo {
    margin: 0 auto
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__logo {
        width: max(360px, 18.75vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__logo {
        width: 58.59375vw
    }
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__official {
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        justify-content: center;
        gap: max(24px, 1.25vw);
        margin: max(66px, 3.4375vw) 0 0
    }

    .footer .footer__official_cn {
        margin-top: 30px;
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__official {
        margin: 9.1145833333vw 0 0
    }

    .footer .footer__official_cn {
        margin-top: 5%;
    }
}

.footer .footer__official .footer__official-item {
    position: relative
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__official .footer__official-item {
        width: max(410px, 21.3541666667vw)
    }
}

.footer .footer__official .footer__official-item::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    opacity: .4;
    background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(10.46%, rgba(255, 255, 255, .72)), color-stop(20.47%, rgba(255, 255, 255, .84)), color-stop(49.09%, rgba(255, 255, 255, .9)), color-stop(82.56%, rgba(255, 255, 255, .84)), color-stop(92.81%, rgba(255, 255, 255, .2)), color-stop(98.17%, rgba(255, 255, 255, 0)));
    background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, .72) 10.46%, rgba(255, 255, 255, .84) 20.47%, rgba(255, 255, 255, .9) 49.09%, rgba(255, 255, 255, .84) 82.56%, rgba(255, 255, 255, .2) 92.81%, rgba(255, 255, 255, 0) 98.17%);
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, .72) 10.46%, rgba(255, 255, 255, .84) 20.47%, rgba(255, 255, 255, .9) 49.09%, rgba(255, 255, 255, .84) 82.56%, rgba(255, 255, 255, .2) 92.81%, rgba(255, 255, 255, 0) 98.17%)
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__official .footer__official-item::before {
        width: max(330px, 17.1875vw);
        height: max(96px, 5vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__official .footer__official-item::before {
        width: 78.3854166667vw;
        height: 19.140625vw
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__official .footer__official-item+.footer__official-item {
        margin-top: 4.1666666667vw
    }
}

.footer .footer__official .footer__official-item a {
    position: relative;
    z-index: 2;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    /* justify-content: flex-start; */
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    letter-spacing: .06em;
    line-height: 1.4
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__official .footer__official-item a {
        font-size: 1.8rem;
        gap: max(18px, .9375vw);
        height: max(84px, 4.375vw);
        background: url(../../images/pc/footer/official-grunge.png) no-repeat top center/cover, #fff
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__official .footer__official-item a {
        font-size: 2.8rem;
        gap: 5.2083333333vw;
        height: 16.5364583333vw;
        background: url(../../images/sp/footer/official-grunge.png) no-repeat top center/cover, #fff
    }
}

/* .footer .footer__official .footer__official-item a::before {
    content: "";
    display: block
} */

@media print,
screen and (min-width:1025px) {
    .footer .footer__official .footer__official-item a::before {
        width: max(40px, 2.0833333333vw);
        height: max(40px, 2.0833333333vw)
    }
    .footer .footer__official .footer__official-item a img {
        width: max(40px, 2.0833333333vw);
        height: max(40px, 2.0833333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__official .footer__official-item a::before {
        width: 7.8125vw;
        height: 7.8125vw
    }

    .footer .footer__official .footer__official-item a img {
        width: 7.8125vw;
        height: 7.8125vw
    }
}

.footer .footer__official .footer__official-item a.footer__official-item--x::before {
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2041%2040%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M23.6598%2017.4128L34.5398%204.76562H31.9616L22.5144%2015.747L14.969%204.76562H6.2663L17.6764%2021.3714L6.2663%2034.6339H8.84467L18.8211%2023.0372L26.7896%2034.6339H35.4923L23.6591%2017.4128H23.6598ZM20.1283%2021.5177L18.9722%2019.8641L9.77369%206.70658H13.7339L21.1573%2017.3251L22.3133%2018.9787L31.9628%2032.7812H28.0026L20.1283%2021.5183V21.5177Z%22%20fill%3D%22%233D4B4E%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain
}

.footer .footer__official .footer__official-item a.footer__official-item--youtube::before {
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2044%2040%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M22%205C22%205%2035.7607%204.99984%2039.1943%205.91406C41.0885%206.41805%2042.5769%207.89797%2043.084%209.78027H43.0801C43.9958%2013.1733%2044%2020.2389%2044%2020.3037C44%2020.3037%2044%2027.4195%2043.0801%2030.8281C42.573%2032.7105%2041.0847%2034.1904%2039.1904%2034.6943C35.7604%2035.6086%2022%2035.6084%2022%2035.6084C21.945%2035.6084%208.23275%2035.6067%204.80957%2034.6943C2.91544%2034.1903%201.42697%2032.7104%200.919922%2030.8281C1.96032e-05%2027.4195%200%2020.3037%200%2020.3037C1.9287e-05%2020.2389%200.0042613%2013.1733%200.919922%209.78027C1.42697%207.89798%202.91545%206.41807%204.80957%205.91406C8.23275%205.00168%2021.945%205%2022%205ZM17.5977%2026.8623L29.0322%2020.3037L17.5977%2013.7461V26.8623Z%22%20fill%3D%22%233D4B4E%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain
}

.footer .footer__official .footer__official-item a.footer__official-item--b::before {
    /* TODO */
    background: url("")
}

.footer .footer__official .footer__official-item a.footer__official-item--weibo::before {
    /* TODO */
    background: url("")
}

@media (any-hover:hover) {
    .footer .footer__official .footer__official-item a {
        pointer-events: auto;
        -webkit-transition: opacity .6s, -webkit-transform .6s;
        transition: opacity .6s, -webkit-transform .6s;
        transition: opacity .6s, transform .6s;
        transition: opacity .6s, transform .6s, -webkit-transform .6s
    }

    .footer .footer__official .footer__official-item a:hover {
        opacity: 1 !important;
        -webkit-transform: scale(1.05) !important;
        transform: scale(1.05) !important
    }
}

@media (any-hover:hover) {
    .footer .footer__official {
        pointer-events: none
    }

    .footer .footer__official:hover a {
        opacity: .6;
        -webkit-transform: scale(.95);
        transform: scale(.95)
    }
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__sns {
        margin: max(76px, 3.9583333333vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__sns {
        margin: 18.2291666667vw 0 0
    }
}

.footer .footer__sns .footer__sns-text {
    line-height: 1.4;
    letter-spacing: .14em;
    text-align: center;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff4d0), to(#fff));
    background: -webkit-linear-gradient(top, #fff4d0 0, #fff 100%);
    background: linear-gradient(to bottom, #fff4d0 0, #fff 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: rgba(255, 255, 255, 0)
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__sns .footer__sns-text {
        font-size: 2.2rem;
        text-shadow: 0 0 max(4px, .2083333333vw) #fff
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__sns .footer__sns-text {
        font-size: 3.2rem;
        text-shadow: 0 0 .5208333333vw #fff
    }
}

.footer .footer__sns .footer__sns-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__sns .footer__sns-list {
        margin: max(24px, 1.25vw) 0 0;
        gap: max(10px, .5208333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__sns .footer__sns-list {
        margin: 3.6458333333vw 0 0;
        gap: 2.34375vw
    }
}

.footer .footer__sns .footer__sns-list .footer__sns-item {
    position: relative
}

.footer .footer__sns .footer__sns-list .footer__sns-item .footer__sns-item-text {
    position: absolute;
    left: 50%;
    -webkit-transform: translate(-50%, 80%);
    transform: translate(-50%, 80%);
    opacity: 0;
    white-space: nowrap;
    color: #fff;
    -webkit-transition: opacity .4s, -webkit-transform .4s;
    transition: opacity .4s, -webkit-transform .4s;
    transition: transform .4s, opacity .4s;
    transition: transform .4s, opacity .4s, -webkit-transform .4s
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__sns .footer__sns-list .footer__sns-item .footer__sns-item-text {
        font-size: 1.2rem
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__sns .footer__sns-list .footer__sns-item .footer__sns-item-text {
        font-size: 2rem
    }
}

.footer .footer__sns .footer__sns-list .footer__sns-item .footer__sns-item-text.--click {
    -webkit-transform: translate(-50%, 120%);
    transform: translate(-50%, 120%);
    opacity: 1
}

.footer .footer__sns .footer__sns-list .footer__sns-item a,
.footer .footer__sns .footer__sns-list .footer__sns-item span {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center
}

@media (any-hover:hover) {

    .footer .footer__sns .footer__sns-list .footer__sns-item a,
    .footer .footer__sns .footer__sns-list .footer__sns-item span {
        pointer-events: auto;
        cursor: pointer
    }

    .footer .footer__sns .footer__sns-list .footer__sns-item a:hover,
    .footer .footer__sns .footer__sns-list .footer__sns-item span:hover {
        opacity: 1 !important;
        -webkit-transform: scale(1.1) !important;
        transform: scale(1.1) !important
    }

    .footer .footer__sns .footer__sns-list .footer__sns-item a:hover::before,
    .footer .footer__sns .footer__sns-list .footer__sns-item span:hover::before {
        -webkit-animation: scale 1.4s infinite;
        animation: scale 1.4s infinite
    }
}

@media (any-hover:hover) {
    .footer .footer__sns .footer__sns-list {
        pointer-events: none
    }

    .footer .footer__sns .footer__sns-list .footer__sns-item a,
    .footer .footer__sns .footer__sns-list .footer__sns-item span {
        -webkit-transition: opacity .4s, -webkit-transform .4s;
        transition: opacity .4s, -webkit-transform .4s;
        transition: opacity .4s, transform .4s;
        transition: opacity .4s, transform .4s, -webkit-transform .4s
    }

    .footer .footer__sns .footer__sns-list:hover .footer__sns-item a,
    .footer .footer__sns .footer__sns-list:hover .footer__sns-item span {
        opacity: .6;
        -webkit-transform: scale(.9);
        transform: scale(.9)
    }
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__platform {
        margin: max(140px, 7.2916666667vw) 0 0;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        gap: max(20px, 1.0416666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__platform {
        margin: 14.3229166667vw 0 0
    }
}

.footer .footer__platform .footer__platform-item {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__platform .footer__platform-item {
        gap: max(14px, .7291666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__platform .footer__platform-item {
        gap: 3.90625vw
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__platform .footer__platform-item+.footer__platform-item {
        margin-top: 1.8229166667vw
    }
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__platform .footer__platform-item.footer__platform-item--steam {
        -webkit-box-flex: 1;
        -webkit-flex: 1;
        flex: 1
    }
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__platform .footer__platform-item.footer__platform-item--steam .footer__platform-logo {
        width: max(120px, 6.25vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__platform .footer__platform-item.footer__platform-item--steam .footer__platform-logo {
        width: 23.4375vw
    }
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__platform .footer__platform-item.footer__platform-item--switch {
        width: max(498px, 25.9375vw)
    }
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__platform .footer__platform-item.footer__platform-item--switch .footer__platform-logo {
        width: max(100px, 5.2083333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__platform .footer__platform-item.footer__platform-item--switch .footer__platform-logo {
        width: 23.4375vw;
        padding: 0 2.6041666667vw
    }
}

.footer .footer__platform .footer__platform-item .footer__platform-text {
    color: #fff;
    font-weight: 400;
    line-height: 1.8;
    letter-spacing: .06em;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    flex: 1
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__platform .footer__platform-item .footer__platform-text {
        font-size: 1.2rem
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__platform .footer__platform-item .footer__platform-text {
        font-size: 2.2rem
    }
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__bottom {
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        -webkit-box-align: end;
        -webkit-align-items: flex-end;
        align-items: flex-end;
        margin: max(30px, 1.5625vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__bottom {
        margin: 7.8125vw 0 0
    }
}

.footer .footer__bottom .footer__company {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__bottom .footer__company {
        -webkit-box-align: end;
        -webkit-align-items: flex-end;
        align-items: flex-end;
        gap: max(20px, 1.0416666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__bottom .footer__company {
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center;
        gap: 6.25vw
    }
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__bottom .footer__company-item.footer__company-item--sigono {
        width: max(140px, 7.2916666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__bottom .footer__company-item.footer__company-item--sigono {
        width: 29.9479166667vw
    }
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__bottom .footer__company-item.footer__company-item--shueisha-games {
        width: max(238px, 12.3958333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__bottom .footer__company-item.footer__company-item--shueisha-games {
        width: 50.78125vw
    }
}

.footer .footer__bottom .footer__company-item a {
    display: block
}

@media (any-hover:hover) {
    .footer .footer__bottom .footer__company-item a {
        -webkit-transition: opacity .4s;
        transition: opacity .4s
    }

    .footer .footer__bottom .footer__company-item a:hover {
        opacity: .6
    }
}

.footer .footer__bottom .footer__text {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__bottom .footer__text {
        -webkit-box-pack: end;
        -webkit-justify-content: flex-end;
        justify-content: flex-end;
        width: max(300px, 15.625vw);
        gap: max(30px, 1.5625vw) max(16px, .8333333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__bottom .footer__text {
        margin: 5.46875vw auto 0;
        gap: 11.71875vw 5.46875vw;
        width: 65.1041666667vw;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        justify-content: center
    }
}

.footer .footer__bottom .footer__text a {
    position: relative;
    color: #fff;
    font-weight: 400;
    letter-spacing: .06em;
    line-height: 1
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__bottom .footer__text a {
        font-size: 1.2rem
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__bottom .footer__text a {
        font-size: 2.2rem
    }
}

.footer .footer__bottom .footer__text a::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    -webkit-transform-origin: left;
    transform-origin: left;
    width: 100%;
    background: rgba(255, 255, 255, .8)
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__bottom .footer__text a::after {
        height: max(1px, .0520833333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__bottom .footer__text a::after {
        height: max(1px, .1302083333vw)
    }
}

@media (any-hover:hover) {
    .footer .footer__bottom .footer__text a {
        -webkit-transition: opacity .4s;
        transition: opacity .4s
    }

    .footer .footer__bottom .footer__text a::after {
        -webkit-transition: -webkit-transform .4s;
        transition: -webkit-transform .4s;
        transition: transform .4s;
        transition: transform .4s, -webkit-transform .4s
    }

    .footer .footer__bottom .footer__text a:hover {
        opacity: .6
    }

    .footer .footer__bottom .footer__text a:hover::after {
        -webkit-transform-origin: right;
        transform-origin: right;
        -webkit-transform: scaleX(0);
        transform: scaleX(0)
    }
}

.footer .footer__bottom .footer__text p {
    font-family: adobe-garamond-pro, serif;
    font-weight: 600;
    letter-spacing: .06em;
    line-height: 1.6;
    color: rgba(255, 255, 255, .4)
}

@media print,
screen and (min-width:1025px) {
    .footer .footer__bottom .footer__text p {
        font-size: 1.2rem
    }
}

@media print,
screen and (max-width:1024px) {
    .footer .footer__bottom .footer__text p {
        font-size: 2rem
    }
}

.top-content {
    position: relative;
    z-index: 2;
    overflow: hidden
}

@media print,
screen and (min-width:1025px) {
    .top-content {
        padding: 0 0 max(83px, 4.3229166667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .top-content {
        padding: 0 0 max(90px, 4.6875vw)
    }
}

.top-content .top-content__deco-photo {
    position: absolute;
    z-index: 2;
    bottom: 0;
    pointer-events: none
}

@media print,
screen and (min-width:1025px) {
    .top-content .top-content__deco-photo {
        width: max(640px, 33.3333333333vw);
        left: min(-298px, -15.5208333333vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1280px) {
    .top-content .top-content__deco-photo {
        left: calc(50% - 640px - 298px)
    }
}

@media print,
screen and (max-width:1024px) {
    .top-content .top-content__deco-photo {
        width: 29.9479166667vw;
        left: 0
    }
}

.top-content .top-content__background {
    position: absolute;
    top: 0;
    pointer-events: none;
    background: -webkit-gradient(linear, right top, left top, color-stop(0, #10b0e8), to(#0091e4));
    background: -webkit-linear-gradient(right, #10b0e8 0, #0091e4 100%);
    background: linear-gradient(to left, #10b0e8 0, #0091e4 100%)
}

@media print,
screen and (min-width:1025px) {
    .top-content .top-content__background {
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        width: max(1920px, 100vw);
        height: calc(100% - max(83px, 4.3229166667vw))
    }
}

@media print,
screen and (max-width:1024px) {
    .top-content .top-content__background {
        width: 100%;
        left: 0;
        height: calc(100% - 11.71875vw)
    }
}

.top-content .top-content__background-blur {
    position: absolute
}

@media print,
screen and (min-width:1025px) {
    .top-content .top-content__background-blur {
        width: max(1920px, 100vw);
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        bottom: min(-241px, -12.5520833333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .top-content .top-content__background-blur {
        width: 100%;
        left: 0;
        bottom: 24.3489583333vw
    }
}

.top-content .top-content__background-scene-right {
    position: absolute
}

@media print,
screen and (min-width:1025px) {
    .top-content .top-content__background-scene-right {
        top: max(980px, 51.0416666667vw);
        right: min(-350px, -18.2291666667vw);
        width: max(977px, 50.8854166667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .top-content .top-content__background-scene-right {
        top: 205.078125vw;
        right: -63.0208333333vw;
        width: 120.3125vw
    }
}

.top-content .top-content__background-scene-left {
    position: absolute
}

@media print,
screen and (min-width:1025px) {
    .top-content .top-content__background-scene-left {
        top: max(1550px, 80.7291666667vw);
        left: min(-350px, -18.2291666667vw);
        width: max(1120px, 58.3333333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .top-content .top-content__background-scene-left {
        width: 110.6770833333vw;
        top: 346.3541666667vw;
        left: -54.6875vw
    }
}

.top-content .top-content__background-cloud-right {
    position: absolute;
    right: 0
}

@media print,
screen and (min-width:1025px) {
    .top-content .top-content__background-cloud-right {
        width: max(669px, 34.84375vw);
        bottom: min(-83px, -4.3229166667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .top-content .top-content__background-cloud-right {
        width: 59.8958333333vw;
        bottom: 40.7552083333vw;
        right: -22.1354166667vw;
        opacity: .2
    }
}

.top-content .top-content__background-cloud-left {
    position: absolute
}

@media print,
screen and (min-width:1025px) {
    .top-content .top-content__background-cloud-left {
        left: 0;
        top: max(994px, 51.7708333333vw);
        width: max(520px, 27.0833333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .top-content .top-content__background-cloud-left {
        top: 200.5208333333vw;
        width: 52.0833333333vw;
        left: -9.765625vw;
        opacity: .67
    }
}

@media print,
screen and (max-width:1024px) {
    .top-content .top-content__background-cloud-left--second {
        position: absolute;
        bottom: 16.9270833333vw;
        left: -5.2083333333vw;
        width: 52.0833333333vw;
        opacity: .2
    }
}

@media print,
screen and (max-width:1024px) {
    .top-content .top-content__background-cloud-left--third {
        position: absolute;
        bottom: 151.0416666667vw;
        left: -19.53125vw;
        width: 52.0833333333vw;
        opacity: .2;
        -webkit-transform: rotate(20deg) scaleY(-1);
        transform: rotate(20deg) scaleY(-1)
    }
}

@media print,
screen and (max-width:1024px) {
    .top-content .top-content__background-cloud-left--fourth {
        position: absolute;
        bottom: 165.3645833333vw;
        left: 0;
        width: 70.703125vw
    }
}

.top-content .top-content__background-leaf-right {
    position: absolute;
    right: 0
}

@media print,
screen and (min-width:1025px) {
    .top-content .top-content__background-leaf-right {
        bottom: max(57px, 2.96875vw);
        width: max(736px, 38.3333333333vw)
    }
}

.top-content .top-content__background-leaf-left {
    position: absolute;
    left: 0
}

@media print,
screen and (min-width:1025px) {
    .top-content .top-content__background-leaf-left {
        bottom: max(57px, 2.96875vw);
        width: max(610px, 31.7708333333vw)
    }
}

.hero {
    position: relative;
    z-index: 2
}

.hero .hero__visual {
    position: absolute;
    top: 0
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__visual {
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        width: max(1920px, 100vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__visual {
        left: 0;
        width: 100%
    }
}

.hero .hero__catch {
    position: absolute;
}

.hero .hero__catch_cn {
    margin-top: 2%;
    margin-right: 3%;
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__catch {
        top: max(110px, 5.7291666667vw);
        right: 0;
        width: max(220px, 11.4583333333vw)
    }
    .hero .hero__catch_cn {
        width: 50px;
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__catch {
        top: 18.2291666667vw;
        right: -3.125vw;
        width: 24.7395833333vw
    }

    .hero .hero__catch_cn {
        width: 6vw;
        right: 2%;
        top: 20vw;
    }
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__catch.hero__catch--center {
        top: min(-46px, -2.3958333333vw);
        right: calc(50% - max(405px, 21.09375vw));
        width: max(810px, 42.1875vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__catch.hero__catch--center {
        top: 79.4270833333vw;
        right: calc(50% - 58.4635416667vw);
        width: 116.9270833333vw
    }
}

.hero .hero__inner {
    position: relative
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__inner {
        padding: max(490px, 25.5208333333vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__inner {
        padding: 95.0520833333vw 0 0
    }
    .hero .hero__inner {
        width: 80%;
        margin: 0 auto;
    }
}

.hero .hero__release {
    position: relative;
    z-index: 2
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__release {
        margin: 0 auto;
        width: max(630px, 32.8125vw)
    }
}

.hero .hero__platform {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__platform {
        gap: max(10px, .5208333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__platform {
        gap: 2.0833333333vw;
        margin: -1.3020833333vw 0 0
    }
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__platform .hero__platform-item {
        width: max(280px, 14.5833333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__platform .hero__platform-item {
        width: 45.0520833333vw
    }
}

.hero .hero__platform .hero__platform-item .hero__platform-text {
    position: relative;
    z-index: 1;
    color: #fff;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    font-weight: 700;
    letter-spacing: .06em;
    line-height: 1.4;
    will-change: filter;
    -webkit-animation: focus 1.4s linear infinite;
    animation: focus 1.4s linear infinite
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__platform .hero__platform-item .hero__platform-text {
        font-size: 1.6rem;
        gap: max(8px, .4166666667vw);
        -webkit-filter: drop-shadow(0 0 max(20px, 1.0416666667vw) #1dd3f3) drop-shadow(0 0 max(20px, 1.0416666667vw) #1dd3f3) drop-shadow(0 0 max(20px, 1.0416666667vw) #007a8f) drop-shadow(0 0 max(20px, 1.0416666667vw) rgba(0, 122, 143, .6));
        filter: drop-shadow(0 0 max(20px, 1.0416666667vw) #1dd3f3) drop-shadow(0 0 max(20px, 1.0416666667vw) #1dd3f3) drop-shadow(0 0 max(20px, 1.0416666667vw) #007a8f) drop-shadow(0 0 max(20px, 1.0416666667vw) rgba(0, 122, 143, .6))
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__platform .hero__platform-item .hero__platform-text {
        font-size: 2.4rem;
        gap: 1.0416666667vw;
        -webkit-filter: drop-shadow(0 0 1.3020833333vw #1dd3f3) drop-shadow(0 0 1.3020833333vw #007a8f) drop-shadow(0 0 2.6041666667vw rgba(0, 122, 143, .6));
        filter: drop-shadow(0 0 1.3020833333vw #1dd3f3) drop-shadow(0 0 1.3020833333vw #007a8f) drop-shadow(0 0 2.6041666667vw rgba(0, 122, 143, .6))
    }
}

.hero .hero__platform .hero__platform-item .hero__platform-text::after,
.hero .hero__platform .hero__platform-item .hero__platform-text::before {
    content: "";
    display: block;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2016%2010%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M8%2010L0.5%201H3.83301L8%206L12.167%201H15.5L8%2010Z%22%20fill%3D%22white%22%2F%3E%0A%3Cpath%20d%3D%22M8%203.42871L5.5%200.571289H10.5L8%203.42871Z%22%20fill%3D%22white%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain
}

@media print,
screen and (min-width:1025px) {

    .hero .hero__platform .hero__platform-item .hero__platform-text::after,
    .hero .hero__platform .hero__platform-item .hero__platform-text::before {
        width: max(15px, .78125vw);
        height: max(10px, .5208333333vw);
        -webkit-transform: translateY(max(1px, .0520833333vw));
        transform: translateY(max(1px, .0520833333vw))
    }
}

@media print,
screen and (max-width:1024px) {

    .hero .hero__platform .hero__platform-item .hero__platform-text::after,
    .hero .hero__platform .hero__platform-item .hero__platform-text::before {
        width: 2.6041666667vw;
        height: 1.6927083333vw
    }
}

.hero .hero__platform .hero__platform-item .hero__platform-image {
    position: relative;
    z-index: 2;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__platform .hero__platform-item .hero__platform-image {
        border-radius: max(10px, .5208333333vw);
        -webkit-box-shadow: 0 max(10px, .5208333333vw) max(20px, 1.0416666667vw) rgba(0, 217, 255, .2);
        box-shadow: 0 max(10px, .5208333333vw) max(20px, 1.0416666667vw) rgba(0, 217, 255, .2);
        height: max(78px, 4.0625vw);
        margin: max(12px, .625vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__platform .hero__platform-item .hero__platform-image {
        border-radius: 1.8229166667vw;
        -webkit-box-shadow: 0 1.3020833333vw 2.6041666667vw rgba(0, 217, 255, .2);
        box-shadow: 0 1.3020833333vw 2.6041666667vw rgba(0, 217, 255, .2);
        height: 14.3229166667vw;
        margin: 2.0833333333vw 0 0
    }
}

.hero .hero__platform .hero__platform-item .hero__platform-image.hero__platform-image--steam {
    background: -webkit-gradient(linear, left top, right top, color-stop(0, #07264c), to(#0f73a3));
    background: -webkit-linear-gradient(left, #07264c 0, #0f73a3 100%);
    background: linear-gradient(to right, #07264c 0, #0f73a3 100%)
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__platform .hero__platform-item .hero__platform-image.hero__platform-image--steam .hero__platform-logo {
        width: max(164px, 8.5416666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__platform .hero__platform-item .hero__platform-image.hero__platform-image--steam .hero__platform-logo {
        width: 30.46875vw
    }
}

.hero .hero__platform .hero__platform-item .hero__platform-image.hero__platform-image--switch {
    background: #e60012
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__platform .hero__platform-item .hero__platform-image.hero__platform-image--switch .hero__platform-logo {
        width: max(124px, 6.4583333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__platform .hero__platform-item .hero__platform-image.hero__platform-image--switch .hero__platform-logo {
        width: 23.1770833333vw
    }
}

.hero .hero__platform .hero__platform-item .hero__platform-image[href=""] {
    pointer-events: none !important
}

@media (any-hover:hover) {
    .hero .hero__platform .hero__platform-item .hero__platform-image {
        -webkit-transition: opacity .4s, -webkit-transform .4s;
        transition: opacity .4s, -webkit-transform .4s;
        transition: opacity .4s, transform .4s;
        transition: opacity .4s, transform .4s, -webkit-transform .4s;
        pointer-events: auto
    }

    .hero .hero__platform .hero__platform-item .hero__platform-image:hover {
        opacity: 1 !important;
        -webkit-transform: scale(1.05) !important;
        transform: scale(1.05) !important
    }
}

@media (any-hover:hover) {
    .hero .hero__platform {
        pointer-events: none
    }

    .hero .hero__platform:hover .hero__platform-item .hero__platform-image {
        opacity: .6;
        -webkit-transform: scale(.95);
        transform: scale(.95)
    }
}

.hero .hero__movie {
    position: relative
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__movie {
        margin: max(134px, 6.9791666667vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__movie {
        margin: 20.0520833333vw 0 0
    }
}

.hero .hero__movie .hero__movie-inner {
    margin: 0 auto
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__movie .hero__movie-inner {
        max-width: max(1656px, 86.25vw);
        padding: 0 max(18px, .9375vw) max(40px, 2.0833333333vw)
    }
}

@media print,
screen and (min-width:1701px) {
    .hero .hero__movie .hero__movie-inner {
        overflow: hidden
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__movie .hero__movie-inner {
        width: 86.1979166667vw;
        padding: 0 0 5.2083333333vw
    }
}

.hero .hero__movie .hero__movie-body.--center .swiper {
    overflow: visible
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__movie .hero__movie-body.--center .swiper-wrapper {
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        justify-content: center
    }
}

.hero .hero__movie .hero__movie-body.--center .hero__movie-navigation {
    display: none
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__movie .hero__movie-body.--active {
        margin: 0 auto;
        width: max(552px, 28.75vw)
    }
}

.hero .hero__movie .hero__movie-body.--active .swiper {
    overflow: visible
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__movie .hero__movie-body .swiper {
        overflow: visible
    }
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide {
        width: max(552px, 28.75vw);
        padding: 0 max(16px, .8333333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide {
        padding: 0 1.5625vw
    }
}

.hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-title {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    align-items: flex-end;
    color: #fff;
    font-family: "Noto Serif JP", serif;
    font-weight: 600;
    letter-spacing: .06em;
    line-height: 1.4
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-title {
        font-size: 2.2rem;
        gap: max(16px, .8333333333vw);
        text-shadow: 0 0 max(4px, .2083333333vw) #fff
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-title {
        font-size: 3rem;
        gap: 2.6041666667vw;
        text-shadow: 0 0 .5208333333vw #fff
    }
}

.hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-title::after,
.hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-title::before {
    content: "";
    display: block;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%205%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M2.51527%200C3.64504%200%204.5%200.852942%204.5%201.94118C4.5%203.02941%203.64504%203.88235%202.51527%203.88235C1.35496%203.88235%200.5%203.02941%200.5%201.94118C0.5%200.852942%201.35496%200%202.51527%200ZM2.51527%2012C1.35496%2012%200.5%2011.1471%200.5%2010.0588C0.5%208.97059%201.35496%208.11765%202.51527%208.11765C3.64504%208.11765%204.5%208.97059%204.5%2010.0588C4.5%2011.1471%203.64504%2012%202.51527%2012Z%22%20fill%3D%22white%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain;
    will-change: filter
}

@media print,
screen and (min-width:1025px) {

    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-title::after,
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-title::before {
        width: max(4px, .2083333333vw);
        height: max(12px, .625vw);
        -webkit-transform: translateY(min(-8px, -.4166666667vw));
        transform: translateY(min(-8px, -.4166666667vw));
        -webkit-filter: drop-shadow(0 0 max(4px, .2083333333vw) #fff);
        filter: drop-shadow(0 0 max(4px, .2083333333vw) #fff)
    }
}

@media print,
screen and (max-width:1024px) {

    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-title::after,
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-title::before {
        width: .78125vw;
        height: 2.4739583333vw;
        -webkit-transform: translateY(-1.0416666667vw);
        transform: translateY(-1.0416666667vw);
        -webkit-filter: drop-shadow(0 0 .6510416667vw #fff);
        filter: drop-shadow(0 0 .6510416667vw #fff)
    }
}

.hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame {
    position: relative
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame {
        margin: max(16px, .8333333333vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame {
        margin: 3.90625vw 0 0
    }
}

.hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame .hero__movie-content::after,
.hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame .hero__movie-content::before,
.hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame::after,
.hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame::before {
    content: "";
    display: block;
    position: absolute;
    will-change: filter
}

@media print,
screen and (min-width:1025px) {

    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame .hero__movie-content::after,
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame .hero__movie-content::before,
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame::after,
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame::before {
        width: max(10px, .5208333333vw);
        height: max(10px, .5208333333vw);
        -webkit-filter: drop-shadow(0 0 max(4px, .2083333333vw) #fff);
        filter: drop-shadow(0 0 max(4px, .2083333333vw) #fff)
    }
}

@media print,
screen and (max-width:1024px) {

    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame .hero__movie-content::after,
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame .hero__movie-content::before,
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame::after,
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame::before {
        width: 1.8229166667vw;
        height: 1.8229166667vw;
        -webkit-filter: drop-shadow(0 0 .5208333333vw #fff);
        filter: drop-shadow(0 0 .5208333333vw #fff)
    }
}

.hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame::before {
    top: 0;
    left: 0;
    -webkit-transform-origin: top left;
    transform-origin: top left
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame::before {
        border-top: max(1px, .0520833333vw) solid #fff;
        border-left: max(1px, .0520833333vw) solid #fff
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame::before {
        border-top: max(1px, .1302083333vw) solid #fff;
        border-left: max(1px, .1302083333vw) solid #fff
    }
}

.hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame::after {
    top: 0;
    right: 0
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame::after {
        border-top: max(1px, .0520833333vw) solid #fff;
        border-right: max(1px, .0520833333vw) solid #fff
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame::after {
        border-top: max(1px, .1302083333vw) solid #fff;
        border-right: max(1px, .1302083333vw) solid #fff
    }
}

@media (any-hover:hover) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame {
        cursor: pointer
    }

    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame .hero__movie-content .hero__movie-content-inner {
        -webkit-transition: -webkit-filter .4s;
        transition: -webkit-filter .4s;
        transition: filter .4s;
        transition: filter .4s, -webkit-filter .4s
    }

    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame .hero__movie-content .hero__movie-contenet-thumbnail::before {
        -webkit-transition: background .4s;
        transition: background .4s
    }

    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame .hero__movie-content .hero__movie-contenet-thumbnail::after {
        -webkit-transition: -webkit-transform .4s;
        transition: -webkit-transform .4s;
        transition: transform .4s;
        transition: transform .4s, -webkit-transform .4s
    }

    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame .hero__movie-content .hero__movie-contenet-thumbnail .m-btn {
        -webkit-transition: -webkit-transform .4s;
        transition: -webkit-transform .4s;
        transition: transform .4s;
        transition: transform .4s, -webkit-transform .4s
    }
}

@media print and (any-hover:hover),
screen and (any-hover:hover) and (min-width:1025px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame:hover .hero__movie-content .hero__movie-content-inner {
        -webkit-filter: drop-shadow(0 0 max(5px, .2604166667vw) #fff);
        filter: drop-shadow(0 0 max(5px, .2604166667vw) #fff)
    }
}

@media print and (any-hover:hover),
screen and (any-hover:hover) and (max-width:1024px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame:hover .hero__movie-content .hero__movie-content-inner {
        -webkit-filter: drop-shadow(0 0 .78125vw #fff);
        filter: drop-shadow(0 0 .78125vw #fff)
    }
}

@media (any-hover:hover) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame:hover .hero__movie-content .hero__movie-contenet-thumbnail::before {
        background: rgba(61, 75, 78, .5)
    }

    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame:hover .hero__movie-content .hero__movie-contenet-thumbnail::after {
        -webkit-transform: scale(.95);
        transform: scale(.95)
    }

    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame:hover .hero__movie-content .hero__movie-contenet-thumbnail .m-btn {
        -webkit-transform: translate(-50%, -50%) scale(1.1);
        transform: translate(-50%, -50%) scale(1.1)
    }

    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-frame:hover .hero__movie-content .hero__movie-contenet-thumbnail .m-btn::before {
        -webkit-animation: scale 1.4s infinite;
        animation: scale 1.4s infinite
    }
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-content {
        padding: max(4px, .2083333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-content {
        padding: .5208333333vw
    }
}

.hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-content::before {
    bottom: 0;
    left: 0
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-content::before {
        border-bottom: max(1px, .0520833333vw) solid #fff;
        border-left: max(1px, .0520833333vw) solid #fff
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-content::before {
        border-bottom: max(1px, .1302083333vw) solid #fff;
        border-left: max(1px, .1302083333vw) solid #fff
    }
}

.hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-content::after {
    bottom: 0;
    right: 0
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-content::after {
        border-bottom: max(1px, .0520833333vw) solid #fff;
        border-right: max(1px, .0520833333vw) solid #fff
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-content::after {
        border-bottom: max(1px, .1302083333vw) solid #fff;
        border-right: max(1px, .1302083333vw) solid #fff
    }
}

.hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-content .hero__movie-content-inner {
    will-change: filter
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-content .hero__movie-content-inner {
        -webkit-filter: drop-shadow(0 0 max(10px, .5208333333vw) rgba(255, 255, 255, .7));
        filter: drop-shadow(0 0 max(10px, .5208333333vw) rgba(255, 255, 255, .7))
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-content .hero__movie-content-inner {
        -webkit-filter: drop-shadow(0 0 1.5625vw rgba(255, 255, 255, .7));
        filter: drop-shadow(0 0 1.5625vw rgba(255, 255, 255, .7))
    }
}

.hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-content .hero__movie-contenet-thumbnail {
    position: relative;
    -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%20508%20280%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cmask%20id%3D%22mask0_522_22%22%20style%3D%22mask-type%3Aalpha%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%220%22%20y%3D%220%22%20width%3D%22508%22%20height%3D%22281%22%3E%0A%3Cpath%20d%3D%22M0%2022.0001V258L22%20280H486L508%20258V22.0001L486%200.00012207H22L0%2022.0001Z%22%20fill%3D%22black%22%2F%3E%0A%3C%2Fmask%3E%0A%3Cg%20mask%3D%22url(%23mask0_522_22)%22%3E%0A%3Cpath%20d%3D%22M0%200.00012207H508V280H0V0.00012207Z%22%20fill%3D%22black%22%2F%3E%0A%3Cpath%20opacity%3D%220.2%22%20d%3D%22M0%200.00012207H508V280H0V0.00012207Z%22%20fill%3D%22black%22%2F%3E%0A%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain;
    mask: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%20508%20280%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cmask%20id%3D%22mask0_522_22%22%20style%3D%22mask-type%3Aalpha%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%220%22%20y%3D%220%22%20width%3D%22508%22%20height%3D%22281%22%3E%0A%3Cpath%20d%3D%22M0%2022.0001V258L22%20280H486L508%20258V22.0001L486%200.00012207H22L0%2022.0001Z%22%20fill%3D%22black%22%2F%3E%0A%3C%2Fmask%3E%0A%3Cg%20mask%3D%22url(%23mask0_522_22)%22%3E%0A%3Cpath%20d%3D%22M0%200.00012207H508V280H0V0.00012207Z%22%20fill%3D%22black%22%2F%3E%0A%3Cpath%20opacity%3D%220.2%22%20d%3D%22M0%200.00012207H508V280H0V0.00012207Z%22%20fill%3D%22black%22%2F%3E%0A%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain;
    aspect-ratio: 508/280;
    width: 100%
}

.hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-content .hero__movie-contenet-thumbnail img {
    -o-object-fit: cover;
    object-fit: cover
}

.hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-content .hero__movie-contenet-thumbnail::before {
    content: "";
    display: block;
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 100%;
    background: rgba(61, 75, 78, .2)
}

.hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-content .hero__movie-contenet-thumbnail::after {
    content: "";
    display: block;
    position: absolute;
    z-index: 3;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%20508%20280%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cg%20opacity%3D%220.5%22%3E%0A%3Cmask%20id%3D%22path-1-inside-1_522_49%22%20fill%3D%22white%22%3E%0A%3Cpath%20d%3D%22M0%2022.0001V258L22%20280H486L508%20258V22.0001L486%200.00012207H22L0%2022.0001Z%22%2F%3E%0A%3C%2Fmask%3E%0A%3Cpath%20d%3D%22M0%2022.0001H-1V21.5859L-0.707107%2021.293L0%2022.0001ZM0%20258L-0.707107%20258.707L-1%20258.414V258H0ZM22%20280V281H21.5858L21.2929%20280.707L22%20280ZM486%20280L486.707%20280.707L486.414%20281H486V280ZM508%20258H509V258.414L508.707%20258.707L508%20258ZM508%2022.0001L508.707%2021.293L509%2021.5859V22.0001H508ZM486%200.00012207V-0.999878H486.414L486.707%20-0.706985L486%200.00012207ZM22%200.00012207L21.2929%20-0.706985L21.5858%20-0.999878H22V0.00012207ZM0%2022.0001H1V258H0H-1V22.0001H0ZM0%20258L0.707107%20257.293L22.7071%20279.293L22%20280L21.2929%20280.707L-0.707107%20258.707L0%20258ZM22%20280V279H486V280V281H22V280ZM486%20280L485.293%20279.293L507.293%20257.293L508%20258L508.707%20258.707L486.707%20280.707L486%20280ZM508%20258H507V22.0001H508H509V258H508ZM508%2022.0001L507.293%2022.7072L485.293%200.707229L486%200.00012207L486.707%20-0.706985L508.707%2021.293L508%2022.0001ZM486%200.00012207V1.00012H22V0.00012207V-0.999878H486V0.00012207ZM22%200.00012207L22.7071%200.707229L0.707107%2022.7072L0%2022.0001L-0.707107%2021.293L21.2929%20-0.706985L22%200.00012207Z%22%20fill%3D%22white%22%20mask%3D%22url(%23path-1-inside-1_522_49)%22%2F%3E%0A%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain
}

.hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-content .hero__movie-contenet-thumbnail .hero__movie-contenet-thumbnail-inner {
    position: relative;
    z-index: 1;
    height: 100%
}

.hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-content .hero__movie-contenet-thumbnail .hero__movie-contenet-btn {
    z-index: 3
}

@media print,
screen and (min-width:1025px) {
    .hero .hero__movie .hero__movie-body .hero__movie-navigation {
        margin: max(40px, 2.0833333333vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .hero .hero__movie .hero__movie-body .hero__movie-navigation {
        margin: 6.5104166667vw 0 0
    }
}

.announce {
    position: relative;
    z-index: 2
}

@media print,
screen and (min-width:1025px) {
    .announce {
        margin: max(102px, 5.3125vw) 0 0;
        padding: 0 0 max(190px, 9.8958333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .announce {
        margin: 16.1458333333vw 0 0;
        padding: 0 0 15.625vw
    }
}

.announce .announce__heading {
    margin: 0 auto;
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    text-align: center
}

@media print,
screen and (min-width:1025px) {
    .announce .announce__heading {
        width: max(960px, 50vw);
        gap: max(14px, .7291666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .announce .announce__heading {
        width: 92.1875vw;
        gap: 3.90625vw
    }
}

.announce .announce__heading::after,
.announce .announce__heading::before {
    content: "";
    position: relative;
    z-index: 2;
    display: block;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%205%2013%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M2.51527%200C3.64504%200%204.5%200.92402%204.5%202.10294C4.5%203.28186%203.64504%204.20588%202.51527%204.20588C1.35496%204.20588%200.5%203.28186%200.5%202.10294C0.5%200.92402%201.35496%200%202.51527%200ZM2.51527%2013C1.35496%2013%200.5%2012.076%200.5%2010.8971C0.5%209.71814%201.35496%208.79412%202.51527%208.79412C3.64504%208.79412%204.5%209.71814%204.5%2010.8971C4.5%2012.076%203.64504%2013%202.51527%2013Z%22%20fill%3D%22url(%23paint0_linear_448_18658)%22%2F%3E%0A%3Cdefs%3E%0A%3ClinearGradient%20id%3D%22paint0_linear_448_18658%22%20x1%3D%222.5%22%20y1%3D%220%22%20x2%3D%222.5%22%20y2%3D%2213%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%0A%3Cstop%20stop-color%3D%22%23008ED4%22%2F%3E%0A%3Cstop%20offset%3D%221%22%20stop-color%3D%22%2300659C%22%2F%3E%0A%3C%2FlinearGradient%3E%0A%3C%2Fdefs%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain
}

@media print,
screen and (min-width:1025px) {

    .announce .announce__heading::after,
    .announce .announce__heading::before {
        width: max(4px, .2083333333vw);
        height: max(13px, .6770833333vw);
        -webkit-transform: translateY(max(3px, .15625vw));
        transform: translateY(max(3px, .15625vw))
    }
}

@media print,
screen and (max-width:1024px) {

    .announce .announce__heading::after,
    .announce .announce__heading::before {
        width: .9114583333vw;
        height: 2.734375vw;
        -webkit-transform: translateY(.390625vw);
        transform: translateY(.390625vw)
    }
}

.announce .announce__heading .announce__heading-background {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 100%
}

@media print,
screen and (min-width:1025px) {
    .announce .announce__heading .announce__heading-background {
        height: max(54px, 2.8125vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .announce .announce__heading .announce__heading-background {
        height: 13.5416666667vw
    }
}

.announce .announce__heading .announce__heading-background::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    opacity: .4
}

@media print,
screen and (min-width:1025px) {
    .announce .announce__heading .announce__heading-background::before {
        width: max(760px, 39.5833333333vw);
        height: max(66px, 3.4375vw);
        background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(10.46%, rgba(255, 255, 255, .72)), color-stop(20.47%, rgba(255, 255, 255, .84)), color-stop(49.09%, rgba(255, 255, 255, .9)), color-stop(82.56%, rgba(255, 255, 255, .84)), color-stop(92.81%, rgba(255, 255, 255, .2)), color-stop(98.17%, rgba(255, 255, 255, 0)));
        background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, .72) 10.46%, rgba(255, 255, 255, .84) 20.47%, rgba(255, 255, 255, .9) 49.09%, rgba(255, 255, 255, .84) 82.56%, rgba(255, 255, 255, .2) 92.81%, rgba(255, 255, 255, 0) 98.17%);
        background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, .72) 10.46%, rgba(255, 255, 255, .84) 20.47%, rgba(255, 255, 255, .9) 49.09%, rgba(255, 255, 255, .84) 82.56%, rgba(255, 255, 255, .2) 92.81%, rgba(255, 255, 255, 0) 98.17%)
    }
}

@media print,
screen and (max-width:1024px) {
    .announce .announce__heading .announce__heading-background::before {
        width: 79.1666666667vw;
        height: 15.625vw;
        background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(10.46%, rgba(255, 255, 255, .1)), color-stop(20.47%, rgba(255, 255, 255, .3)), color-stop(49.09%, rgba(255, 255, 255, .5)), color-stop(82.56%, rgba(255, 255, 255, .3)), color-stop(92.81%, rgba(255, 255, 255, .1)), color-stop(98.17%, rgba(255, 255, 255, 0)));
        background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, .1) 10.46%, rgba(255, 255, 255, .3) 20.47%, rgba(255, 255, 255, .5) 49.09%, rgba(255, 255, 255, .3) 82.56%, rgba(255, 255, 255, .1) 92.81%, rgba(255, 255, 255, 0) 98.17%);
        background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, .1) 10.46%, rgba(255, 255, 255, .3) 20.47%, rgba(255, 255, 255, .5) 49.09%, rgba(255, 255, 255, .3) 82.56%, rgba(255, 255, 255, .1) 92.81%, rgba(255, 255, 255, 0) 98.17%)
    }
}

.announce .announce__heading .announce__heading-background::after {
    content: "";
    display: block;
    position: absolute;
    background: -webkit-gradient(linear, left top, right top, color-stop(1.51%, rgba(255, 255, 255, 0)), color-stop(11.32%, rgba(255, 255, 255, .6)), color-stop(21.13%, rgba(255, 255, 255, .8)), color-stop(50.55%, rgba(255, 255, 255, .9)), color-stop(79.97%, rgba(255, 255, 255, .8)), color-stop(89.78%, rgba(255, 255, 255, .4)), color-stop(99.58%, rgba(255, 255, 255, 0)));
    background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 1.51%, rgba(255, 255, 255, .6) 11.32%, rgba(255, 255, 255, .8) 21.13%, rgba(255, 255, 255, .9) 50.55%, rgba(255, 255, 255, .8) 79.97%, rgba(255, 255, 255, .4) 89.78%, rgba(255, 255, 255, 0) 99.58%);
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 1.51%, rgba(255, 255, 255, .6) 11.32%, rgba(255, 255, 255, .8) 21.13%, rgba(255, 255, 255, .9) 50.55%, rgba(255, 255, 255, .8) 79.97%, rgba(255, 255, 255, .4) 89.78%, rgba(255, 255, 255, 0) 99.58%);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}

.announce .announce__heading .announce__heading-text {
    position: relative;
    z-index: 2;
    display: inline-block;
    font-family: "Noto Serif JP", serif;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: .08em;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #00659c), to(#008ed4));
    background: -webkit-linear-gradient(top, #00659c 0, #008ed4 100%);
    background: linear-gradient(to bottom, #00659c 0, #008ed4 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: rgba(255, 255, 255, 0);
    display: inline-block
}

@media print,
screen and (min-width:1025px) {
    .announce .announce__heading .announce__heading-text {
        font-size: 2.8rem
    }
}

@media print,
screen and (max-width:1024px) {
    .announce .announce__heading .announce__heading-text {
        font-size: 3.2rem
    }
}

@media print,
screen and (min-width:1025px) {
    .announce .announce__heading .announce__heading-text .announce__heading-text--ls {
        margin: 0 0 0 min(-12px, -.625vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .announce .announce__heading .announce__heading-text .announce__heading-text--ls {
        margin: 0 0 0 -.78125vw
    }
}

.announce .announce__text {
    position: relative
}

@media print,
screen and (min-width:1025px) {
    .announce .announce__text {
        margin: max(44px, 2.2916666667vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .announce .announce__text {
        margin: 8.3333333333vw 0 0
    }
}

@media print,
screen and (max-width:1024px) {

    .announce .announce__text::after,
    .announce .announce__text::before {
        content: "";
        display: block;
        position: absolute;
        width: 100%;
        pointer-events: none
    }
}

@media print,
screen and (max-width:1024px) {
    .announce .announce__text::before {
        top: -41.5364583333vw;
        height: 67.96875vw;
        background: url(../../images/sp/index/deco_leaf_1.png) no-repeat top center/100% 100%
    }
}

@media print,
screen and (max-width:1024px) {
    .announce .announce__text::after {
        top: 62.5vw;
        height: 54.9479166667vw;
        background: url(../../images/sp/index/deco_leaf_2.png) no-repeat top center/100% 100%
    }
}

.announce .announce__text p {
    color: #fff;
    text-align: center;
    letter-spacing: .06em;
    line-height: 2.2
}

@media print,
screen and (min-width:1025px) {
    .announce .announce__text p {
        font-size: 2rem;
        text-shadow: 0 0 max(50px, 2.6041666667vw) #007ce4
    }
}

@media print,
screen and (max-width:1024px) {
    .announce .announce__text p {
        font-size: 2.6rem
    }
}

.announce .announce__text p.announce__text--large {
    font-family: "Noto Serif JP", serif;
    font-weight: 600;
    letter-spacing: .04em;
    line-height: 1.3
}

@media print,
screen and (min-width:1025px) {
    .announce .announce__text p.announce__text--large {
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-box-align: baseline;
        -webkit-align-items: baseline;
        align-items: baseline;
        font-size: 8rem;
        gap: 0 max(3px, .15625vw);
        text-shadow: none;
        -webkit-filter: drop-shadow(0 0 max(46px, 2.3958333333vw) #007ce4);
        filter: drop-shadow(0 0 max(46px, 2.3958333333vw) #007ce4);
        max-width: max(1320px, 68.75vw);
        margin: 0 auto;
        padding: 0 max(40px, 2.0833333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .announce .announce__text p.announce__text--large {
        font-size: 8rem;
        text-shadow: none;
        -webkit-filter: drop-shadow(0 0 5.9895833333vw #007ce4);
        filter: drop-shadow(0 0 5.9895833333vw #007ce4);
        text-align: center
    }
}

.announce .announce__text p.announce__text--large>span {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff4d0), to(#fff));
    background: -webkit-linear-gradient(top, #fff4d0 0, #fff 100%);
    background: linear-gradient(to bottom, #fff4d0 0, #fff 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: rgba(255, 255, 255, 0)
}

@media print,
screen and (max-width:1024px) {
    .announce .announce__text p.announce__text--large>span {
        display: inline-block;
        letter-spacing: .04em
    }
}

@media print,
screen and (min-width:1025px) {
    .announce .announce__text p.announce__text--large>span .announce__text--xlarge {
        font-size: 8.6rem
    }
}

@media print,
screen and (max-width:1024px) {
    .announce .announce__text p.announce__text--large>span .announce__text--xlarge {
        font-size: 8.4rem
    }
}

@media print,
screen and (min-width:1025px) {
    .announce .announce__text p.announce__text--large>span .announce__text--small {
        font-size: 6.2rem
    }
}

@media print,
screen and (max-width:1024px) {
    .announce .announce__text p.announce__text--large>span .announce__text--small {
        font-size: 7rem
    }
}

@media print,
screen and (min-width:1025px) {
    .announce .announce__text p.announce__text--large>span.ml {
        margin-left: min(-40px, -2.0833333333vw)
    }
}

@media print,
screen and (min-width:1025px) {
    .announce .announce__text p+p {
        margin-top: max(30px, 1.5625vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .announce .announce__text p+p {
        margin-top: 5.2083333333vw
    }
}

.announce .announce__award {
    background: -webkit-linear-gradient(1deg, rgba(255, 255, 255, 0) .45%, rgba(255, 255, 255, .06) 10.36%, rgba(255, 255, 255, .14) 50%, rgba(255, 255, 255, .06) 89.64%, rgba(255, 255, 255, 0) 99.55%);
    background: linear-gradient(89deg, rgba(255, 255, 255, 0) .45%, rgba(255, 255, 255, .06) 10.36%, rgba(255, 255, 255, .14) 50%, rgba(255, 255, 255, .06) 89.64%, rgba(255, 255, 255, 0) 99.55%)
}

@media print,
screen and (min-width:1025px) {
    .announce .announce__award {
        margin: max(70px, 3.6458333333vw) auto 0;
        width: max(800px, 41.6666666667vw);
        padding: max(30px, 1.5625vw) 0 max(34px, 1.7708333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .announce .announce__award {
        margin: 13.0208333333vw auto 0;
        padding: 9.1145833333vw 0;
        width: 92.1875vw
    }
}

.announce .announce__award .announce__award-text {
    font-family: "Noto Serif JP", serif;
    color: #ffe07a;
    letter-spacing: .14em;
    font-weight: 600;
    line-height: 1.4;
    text-align: center
}

@media print,
screen and (min-width:1025px) {
    .announce .announce__award .announce__award-text {
        font-size: 2rem
    }
}

@media print,
screen and (max-width:1024px) {
    .announce .announce__award .announce__award-text {
        font-size: 3rem
    }
}

@media print,
screen and (min-width:1025px) {
    .announce .announce__award .announce__award-image {
        margin: max(24px, 1.25vw) auto 0;
        width: max(720px, 37.5vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .announce .announce__award .announce__award-image {
        margin: 6.5104166667vw auto 0;
        width: 79.1666666667vw
    }
}

.announce.js-animation .announce__heading {
    -webkit-transition: opacity 1s .2s, -webkit-transform 1s .2s;
    transition: opacity 1s .2s, -webkit-transform 1s .2s;
    transition: opacity 1s .2s, transform 1s .2s;
    transition: opacity 1s .2s, transform 1s .2s, -webkit-transform 1s .2s;
    opacity: 0
}

@media print,
screen and (min-width:1025px) {
    .announce.js-animation .announce__heading {
        -webkit-transform: translateY(max(20px, 1.0416666667vw));
        transform: translateY(max(20px, 1.0416666667vw))
    }
}

@media print,
screen and (max-width:1024px) {
    .announce.js-animation .announce__heading {
        -webkit-transform: translateY(2.6041666667vw);
        transform: translateY(2.6041666667vw)
    }
}

.announce.js-animation .announce__text {
    -webkit-transition: opacity 1s .2s, -webkit-transform 1s .2s;
    transition: opacity 1s .2s, -webkit-transform 1s .2s;
    transition: opacity 1s .2s, transform 1s .2s;
    transition: opacity 1s .2s, transform 1s .2s, -webkit-transform 1s .2s;
    opacity: 0
}

@media print,
screen and (min-width:1025px) {
    .announce.js-animation .announce__text {
        -webkit-transform: translateY(max(20px, 1.0416666667vw));
        transform: translateY(max(20px, 1.0416666667vw))
    }
}

@media print,
screen and (max-width:1024px) {
    .announce.js-animation .announce__text {
        -webkit-transform: translateY(2.6041666667vw);
        transform: translateY(2.6041666667vw)
    }
}

.announce.js-animation.--animated .announce__heading,
.announce.js-animation.--animated .announce__text {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1
}

.shutter {
    position: relative
}

@media print,
screen and (min-width:1025px) {
    .shutter {
        height: calc(max(740px, 38.5416666667vw) + 200vh)
    }
}

@media print,
screen and (max-width:1024px) {
    .shutter {
        height: calc(78.125vw + 200vh)
    }
}

@media print,
screen and (min-width:1025px) {
    .shutter.shutter.shutter--first {
        margin: calc(min(-83px, -4.3229166667vw) - 100vh) 0 calc(min(-360px, -18.75vw) - 100vh)
    }
}

@media print,
screen and (max-width:1024px) {
    .shutter.shutter.shutter--first {
        margin: calc(-11.71875vw - 100vh) 0 calc(-24.7395833333vw - 100vh)
    }
}

@media print,
screen and (min-width:1025px) {
    .shutter.shutter.shutter--second {
        margin: calc(min(-252px, -13.125vw) - 100vh) 0 calc(min(-200px, -10.4166666667vw) - 100vh)
    }
}

@media print,
screen and (max-width:1024px) {
    .shutter.shutter.shutter--second {
        margin: calc(-16.6666666667vw - 100vh) 0 calc(-16.9270833333vw - 100vh)
    }
}

.shutter.shutter.shutter--second .shutter__scene img {
    -o-object-position: bottom center;
    object-position: bottom center
}

.shutter .shutter__scene {
    position: -webkit-sticky;
    position: sticky;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh
}

.shutter .shutter__scene img {
    -o-object-fit: cover;
    object-fit: cover
}

.shutter .shutter__scene.js-animation {
    will-change: filter;
    -webkit-transition: opacity .2s, -webkit-filter .6s;
    transition: opacity .2s, -webkit-filter .6s;
    transition: filter .6s, opacity .2s;
    transition: filter .6s, opacity .2s, -webkit-filter .6s;
    opacity: 0
}

@media print,
screen and (min-width:1025px) {
    .shutter .shutter__scene.js-animation {
        -webkit-filter: blur(max(10px, .5208333333vw));
        filter: blur(max(10px, .5208333333vw))
    }
}

@media print,
screen and (max-width:1024px) {
    .shutter .shutter__scene.js-animation {
        -webkit-filter: blur(1.3020833333vw);
        filter: blur(1.3020833333vw)
    }
}

.shutter .shutter__scene.js-animation.--animated {
    -webkit-filter: blur(0);
    filter: blur(0);
    opacity: 1
}

.shutter .shutter__inner {
    position: relative;
    z-index: 2;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    will-change: filter
}

@media print,
screen and (min-width:1025px) {
    .shutter .shutter__inner {
        height: max(740px, 38.5416666667vw);
        -webkit-filter: drop-shadow(0 0 max(10px, .5208333333vw) rgba(0, 0, 0, .6));
        filter: drop-shadow(0 0 max(10px, .5208333333vw) rgba(0, 0, 0, .6))
    }
}

@media print,
screen and (max-width:1024px) {
    .shutter .shutter__inner {
        height: 78.125vw;
        -webkit-filter: drop-shadow(0 0 1.3020833333vw rgba(0, 0, 0, .6));
        filter: drop-shadow(0 0 1.3020833333vw rgba(0, 0, 0, .6))
    }
}

.shutter .shutter__text {
    position: relative;
    z-index: 2;
    font-family: "Noto Serif JP", serif;
    letter-spacing: .16em;
    line-height: 1.6;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff4d0), to(#fff));
    background: -webkit-linear-gradient(top, #fff4d0 0, #fff 100%);
    background: linear-gradient(to bottom, #fff4d0 0, #fff 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: rgba(255, 255, 255, 0);
    text-align: center
}

@media print,
screen and (min-width:1025px) {
    .shutter .shutter__text {
        font-size: 3.8rem
    }
}

@media print,
screen and (max-width:1024px) {
    .shutter .shutter__text {
        font-size: 4.6rem
    }
}

@media print,
screen and (min-width:1025px) {
    .shutter .shutter__text .shutter__text--ls {
        margin-left: min(-20px, -1.0416666667vw)
    }
}

.shutter .shutter__text .shutter__text--line {
    display: inline-block;
    background: #fff
}

@media print,
screen and (min-width:1025px) {
    .shutter .shutter__text .shutter__text--line {
        width: max(40px, 2.0833333333vw);
        height: max(1px, .0520833333vw);
        margin: 0 max(10px, .5208333333vw) 0 max(4px, .2083333333vw);
        -webkit-transform: translateY(min(-14px, -.7291666667vw));
        transform: translateY(min(-14px, -.7291666667vw))
    }
}

@media print,
screen and (max-width:1024px) {
    .shutter .shutter__text .shutter__text--line {
        width: 6.5104166667vw;
        height: max(1px, .1302083333vw);
        margin: 0 1.3020833333vw 0 .5208333333vw;
        -webkit-transform: translateY(-1.8229166667vw);
        transform: translateY(-1.8229166667vw)
    }
}

.shutter .shutter__text.js-animation {
    will-change: filter;
    -webkit-transition: opacity .4s, -webkit-filter 1.6s;
    transition: opacity .4s, -webkit-filter 1.6s;
    transition: filter 1.6s, opacity .4s;
    transition: filter 1.6s, opacity .4s, -webkit-filter 1.6s;
    opacity: 0
}

@media print,
screen and (min-width:1025px) {
    .shutter .shutter__text.js-animation {
        -webkit-filter: blur(max(10px, .5208333333vw));
        filter: blur(max(10px, .5208333333vw))
    }
}

@media print,
screen and (max-width:1024px) {
    .shutter .shutter__text.js-animation {
        -webkit-filter: blur(1.3020833333vw);
        filter: blur(1.3020833333vw)
    }
}

.shutter .shutter__text.js-animation.--animated {
    -webkit-filter: blur(0);
    filter: blur(0);
    opacity: 1
}

.introduction {
    position: relative;
    z-index: 2;
    overflow: hidden
}

@media print,
screen and (min-width:1025px) {
    .introduction {
        padding: max(360px, 18.75vw) 0 max(252px, 13.125vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction {
        padding: 24.7395833333vw 0 16.6666666667vw
    }
}

.introduction .introduction__deco-photo-top {
    position: absolute;
    z-index: 2;
    top: 0;
    pointer-events: none
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__deco-photo-top {
        width: max(889px, 46.3020833333vw);
        right: min(-342px, -17.8125vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1400px) {
    .introduction .introduction__deco-photo-top {
        right: calc(50vw - 700px - 342px)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1280px) {
    .introduction .introduction__deco-photo-top {
        right: calc(50vw - 700px - 342px - 640px + 50vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__deco-photo-top {
        width: 42.96875vw;
        top: 13.0208333333vw;
        right: 0
    }
}

.introduction .introduction__deco-photo-bottom {
    position: absolute;
    z-index: 3;
    bottom: 0;
    pointer-events: none
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__deco-photo-bottom {
        left: min(-302px, -15.7291666667vw);
        width: max(870px, 45.3125vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1400px) {
    .introduction .introduction__deco-photo-bottom {
        left: calc(50vw - 700px - 302px)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1280px) {
    .introduction .introduction__deco-photo-bottom {
        left: calc(50vw - 700px - 302px - 640px + 50vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__deco-photo-bottom {
        left: 0;
        width: 42.96875vw
    }
}

.introduction .introduction__inner {
    position: relative;
    background: url(../../images/common/index/bg_grunge.jpg) repeat-y top center/100% auto
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__inner {
        background-size: 197.3958333333vw auto
    }
}

.introduction .introduction__scene {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    pointer-events: none
}

.introduction .introduction__scene .introduction__scene-large {
    position: absolute;
    top: 0
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__scene .introduction__scene-large {
        right: 0;
        width: max(890px, 46.3541666667vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1600px) {
    .introduction .introduction__scene .introduction__scene-large {
        right: calc(50vw - 800px)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1280px) {
    .introduction .introduction__scene .introduction__scene-large {
        right: calc(50vw - 800px - 640px + 50vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__scene .introduction__scene-large {
        left: 0;
        width: 100%
    }
}

.introduction .introduction__scene .introduction__scene-small {
    position: absolute;
    left: 0
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__scene .introduction__scene-small {
        top: 0;
        width: max(851px, 44.3229166667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__scene .introduction__scene-small {
        top: 122.5260416667vw;
        width: 100%
    }
}

.introduction .introduction__story {
    position: relative;
    z-index: 2
}

.introduction .introduction__story .introduction__story-deco-1 {
    position: absolute;
    pointer-events: none
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__story .introduction__story-deco-1 {
        width: max(161px, 8.3854166667vw);
        top: max(154px, 8.0208333333vw);
        left: max(129px, 6.71875vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1700px) {
    .introduction .introduction__story .introduction__story-deco-1 {
        left: calc(50vw - 850px + 129px)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__story .introduction__story-deco-1 {
        top: 0;
        left: 0;
        width: 100%
    }
}

.introduction .introduction__story .introduction__story-deco-2 {
    position: absolute;
    pointer-events: none
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__story .introduction__story-deco-2 {
        width: max(124px, 6.4583333333vw);
        top: max(652px, 33.9583333333vw);
        right: max(175px, 9.1145833333vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1600px) {
    .introduction .introduction__story .introduction__story-deco-2 {
        right: calc(50vw - 800px + 175px)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1280px) {
    .introduction .introduction__story .introduction__story-deco-2 {
        right: calc(50vw - 800px + 175px - 640px + 50vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__story .introduction__story-deco-2 {
        width: 35.8072916667vw;
        top: 145.8333333333vw;
        right: 0
    }
}

.introduction .introduction__story .introduction__story-inner {
    margin: 0 auto
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__story .introduction__story-inner {
        max-width: max(1280px, 66.6666666667vw);
        padding: max(140px, 7.2916666667vw) max(40px, 2.0833333333vw) 0
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__story .introduction__story-inner {
        padding: 20.8333333333vw 0 0;
        width: 86.9791666667vw
    }
}

.introduction .introduction__story .introduction__story-inner.js-animation .introduction__story-catch {
    -webkit-transition: opacity 1s .2s, -webkit-transform 1s .2s;
    transition: opacity 1s .2s, -webkit-transform 1s .2s;
    transition: opacity 1s .2s, transform 1s .2s;
    transition: opacity 1s .2s, transform 1s .2s, -webkit-transform 1s .2s;
    opacity: 0
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__story .introduction__story-inner.js-animation .introduction__story-catch {
        -webkit-transform: translateY(max(20px, 1.0416666667vw));
        transform: translateY(max(20px, 1.0416666667vw))
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__story .introduction__story-inner.js-animation .introduction__story-catch {
        -webkit-transform: translateY(2.6041666667vw);
        transform: translateY(2.6041666667vw)
    }
}

.introduction .introduction__story .introduction__story-inner.js-animation .introduction__story-text {
    -webkit-transition: opacity 1s .4s, -webkit-transform 1s .4s;
    transition: opacity 1s .4s, -webkit-transform 1s .4s;
    transition: opacity 1s .4s, transform 1s .4s;
    transition: opacity 1s .4s, transform 1s .4s, -webkit-transform 1s .4s;
    opacity: 0
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__story .introduction__story-inner.js-animation .introduction__story-text {
        -webkit-transform: translateY(max(20px, 1.0416666667vw));
        transform: translateY(max(20px, 1.0416666667vw))
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__story .introduction__story-inner.js-animation .introduction__story-text {
        -webkit-transform: translateY(2.6041666667vw);
        transform: translateY(2.6041666667vw)
    }
}

.introduction .introduction__story .introduction__story-inner.js-animation.--animated .introduction__story-catch,
.introduction .introduction__story .introduction__story-inner.js-animation.--animated .introduction__story-text {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1
}

.introduction .introduction__story .introduction__story-catch {
    font-family: "Noto Serif JP", serif;
    letter-spacing: .06em;
    line-height: 1.4;
    display: inline-block;
    background: -webkit-gradient(linear, left top, right top, color-stop(0, #9c8120), to(#59351a));
    background: -webkit-linear-gradient(left, #9c8120 0, #59351a 100%);
    background: linear-gradient(to right, #9c8120 0, #59351a 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: rgba(255, 255, 255, 0)
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__story .introduction__story-catch {
        font-size: 5.8rem
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__story .introduction__story-catch {
        font-size: 6.6rem
    }
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__story .introduction__story-text {
        margin: max(40px, 2.0833333333vw) 0 0;
        width: max(770px, 40.1041666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__story .introduction__story-text {
        margin: 5.2083333333vw 0 0
    }
}

.introduction .introduction__story .introduction__story-text p {
    letter-spacing: .06em;
    line-height: 2.2;
    font-weight: 400;
    color: #69594d
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__story .introduction__story-text p {
        font-size: 1.8rem;
        text-shadow: 0 0 max(4px, .2083333333vw) #fef2db
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__story .introduction__story-text p {
        font-size: 2.8rem;
        text-shadow: 0 0 .5208333333vw #fef2db
    }
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__story .introduction__story-text p+p {
        margin-top: max(26px, 1.3541666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__story .introduction__story-text p+p {
        margin-top: 2.6041666667vw
    }
}

.introduction .introduction__gallery {
    position: relative;
    z-index: 2
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__gallery {
        padding: max(130px, 6.7708333333vw) max(80px, 4.1666666667vw) max(100px, 5.2083333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__gallery {
        padding: 31.25vw 0 15.625vw
    }
}

.introduction .introduction__gallery .introduction__gallery-content {
    margin: 0 auto
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__gallery .introduction__gallery-content {
        max-width: max(1073px, 55.8854166667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__gallery .introduction__gallery-content {
        width: 84.375vw
    }
}

.introduction .introduction__gallery .swiper {
    overflow: visible
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__gallery .swiper {
        width: max(543px, 28.28125vw);
        margin: 0
    }
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__gallery .swiper .swiper-slide {
        padding: 0 max(13px, .6770833333vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__gallery .swiper .swiper-slide {
        padding: 0 .6510416667vw
    }
}

.introduction .introduction__gallery .swiper .swiper-slide:nth-of-type(even) .introduction__gallery-item::after {
    -webkit-transform: translateX(-50%) scaleX(-1);
    transform: translateX(-50%) scaleX(-1)
}

.introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item {
    position: relative;
    background: url(../../images/common/index/bg_grunge.jpg) repeat-y top left/max(1920px, 100vw) auto
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item {
        padding: max(10px, .5208333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item {
        padding: 1.5625vw;
        background-size: 197.3958333333vw auto
    }
}

.introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item::after {
    content: "";
    display: block;
    position: absolute;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2081%2044%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cg%20clip-path%3D%22url(%23clip0_888_255)%22%3E%0A%3Cpath%20opacity%3D%220.5%22%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M7.68407%202.17221C7.68407%202.17221%207.66714%201.70316%207.76233%202.18466C7.72372%202.20026%207.4674%202.98241%207.47911%203.0658C7.4405%203.0814%207.39224%203.1009%207.34956%203.10933C7.29941%203.5438%207.23961%203.98216%207.18946%204.41663C7.10362%204.49537%207.02336%204.56305%206.93752%204.6418C6.94365%204.73626%206.95537%204.81966%206.96149%204.91412C6.87158%204.9857%206.78574%205.06445%206.69583%205.13602C6.70196%205.23049%206.71368%205.31388%206.71981%205.40835C6.6299%205.47993%206.54406%205.55867%206.4638%205.62635C6.46993%205.72082%206.48165%205.80421%206.48777%205.89867C6.43951%205.91817%206.4009%205.93377%206.34857%205.9461C6.37152%206.17478%206.3904%206.39629%206.41334%206.62496C6.36508%206.64446%206.32647%206.66006%206.28379%206.66849C6.15296%207.39994%206.56474%208.00029%206.71881%208.33462C6.94458%208.81623%206.79682%209.07863%207.21862%209.27835C7.14917%209.72061%206.57224%2010.5442%206.67702%2010.8543C6.71563%2010.8387%206.7639%2010.8192%206.81216%2010.7997C6.87268%2010.9692%206.9388%2011.1275%206.99933%2011.297C6.77986%2011.4121%206.55481%2011.5382%206.33535%2011.6534C6.27804%2011.9497%206.36334%2011.7654%206.22013%2011.9731C6.3555%2012.5882%206.62784%2012.5663%206.87595%2013.0036C6.91456%2012.988%206.96283%2012.9685%207.00144%2012.9529C6.93447%2013.2532%206.87716%2013.5495%206.8102%2013.8498C6.6827%2013.9806%206.55928%2014.1186%206.43179%2014.2494C6.43792%2014.3439%206.44964%2014.4273%206.45577%2014.5218C6.41716%2014.5374%206.36889%2014.5569%206.32063%2014.5764C6.29987%2014.7698%206.26945%2014.9672%206.23496%2015.1574C6.19635%2015.173%206.14809%2015.1925%206.10542%2015.2009C6.12223%2015.3351%206.12939%2015.4732%206.1462%2015.6074C6.09794%2015.6269%206.05933%2015.6425%206.00701%2015.6549C6.02485%2015.8327%206.0427%2016.0106%206.06054%2016.1884C6.01228%2016.2079%205.97367%2016.2235%205.9254%2016.243C5.94222%2016.3772%205.94939%2016.5154%205.9662%2016.6496C5.79148%2016.8435%205.63048%2017.0408%205.46541%2017.2308C5.47154%2017.3253%205.48325%2017.4087%205.48939%2017.5032C5.45078%2017.5188%205.39845%2017.5311%205.35984%2017.5467C5.23848%2017.772%205.11712%2017.9973%205.00541%2018.2187C4.9155%2018.2902%204.83931%2018.3651%204.7494%2018.4367C4.76725%2018.6145%204.78916%2018.7996%204.80701%2018.9774C4.84562%2018.9618%204.89388%2018.9423%204.93656%2018.9339C5.04188%2019.3496%204.70416%2019.8209%204.48373%2020.0598C4.60781%2020.3622%204.57017%2020.254%204.79328%2020.3754C4.79431%2020.419%204.80499%2020.4588%204.8101%2020.5096C4.89697%2020.4745%204.98791%2020.4466%205.07885%2020.4186C5.18661%2020.5249%205.28065%2020.6279%205.3884%2020.7342C5.47527%2020.6991%205.57028%2020.6784%205.65716%2020.6433L6.13529%2020.6704L76.1576%2028.5651C76.6298%2027.5988%2076.4841%2026.5472%2076.5895%2025.7291C76.5635%2025.3695%2076.5278%2025.0138%2076.488%2024.6509C76.5363%2024.6314%2076.5749%2024.6158%2076.6231%2024.5963C76.6114%2024.5129%2076.6053%2024.4184%2076.5992%2024.324C76.6891%2024.2524%2076.7653%2024.1775%2076.8552%2024.106C76.849%2024.0115%2076.8373%2023.9281%2076.8312%2023.8336C76.9211%2023.7621%2077.0069%2023.6833%2077.0872%2023.6156C77.0811%2023.5212%2077.0694%2023.4378%2077.0632%2023.3433C77.1531%2023.2717%2077.239%2023.193%2077.3152%2023.1181C77.5807%2022.5614%2077.6471%2022.1556%2077.5681%2021.368C77.6976%2021.3244%2077.8368%2021.277%2077.9664%2021.2335C78.0892%2020.8225%2078.2516%2020.1048%2078.5289%2019.7989C78.7341%2019.5749%2078.8362%2019.6923%2079.0465%2019.3518C79.0851%2019.3362%2079.1334%2019.3167%2079.176%2019.3083C79.0601%2019.0202%2078.9345%2018.7361%2078.8226%2018.4552C78.8612%2018.4396%2078.9095%2018.4201%2078.9577%2018.4006C78.9409%2018.2664%2078.9241%2018.1322%2078.9169%2017.9941C79.0529%2017.4809%2079.3643%2017.214%2079.7849%2016.8679C79.762%2016.6392%2079.7431%2016.4177%2079.7242%2016.1962C79.7272%2016.1597%2079.8913%2016.0934%2079.8298%2015.8803C79.7815%2015.8998%2079.7429%2015.9154%2079.7043%2015.931C79.6467%2015.3903%2079.6028%2014.8528%2079.5452%2014.312C79.5096%2014.1237%2079.4151%2014.4175%2079.3988%2014.2214C79.4374%2014.2058%2079.4857%2014.1863%2079.538%2014.1739C79.6496%2013.4503%2080.1742%2012.8065%2080.458%2012.1983C80.4519%2012.1038%2080.4402%2012.0204%2080.434%2011.926C80.4823%2011.9065%2080.5209%2011.8909%2080.5732%2011.8785C80.6433%2011.7092%2080.7311%2011.5504%2080.8012%2011.381C80.8881%2011.3459%2080.9831%2011.3252%2081.074%2011.2973C81.073%2011.2536%2081.2795%2010.5092%2081.2785%2010.4655C81.3654%2010.4304%207.69372%202.16831%207.69372%202.16831L7.68407%202.17221Z%22%20fill%3D%22%23BE9B70%22%2F%3E%0A%3C%2Fg%3E%0A%3Cdefs%3E%0A%3CclipPath%20id%3D%22clip0_888_255%22%3E%0A%3Crect%20width%3D%2280%22%20height%3D%2244%22%20fill%3D%22white%22%20transform%3D%22translate(0.500122)%22%2F%3E%0A%3C%2FclipPath%3E%0A%3C%2Fdefs%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item::after {
        top: min(-16px, -.8333333333vw);
        width: max(80px, 4.1666666667vw);
        height: max(44px, 2.2916666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item::after {
        top: -2.4739583333vw;
        width: 12.5vw;
        height: 6.9010416667vw
    }
}

.introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item .introduction__gallery-image {
    position: relative
}

.introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item .introduction__gallery-image::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item .introduction__gallery-image::after {
        -webkit-box-shadow: 0 0 max(20px, 1.0416666667vw) rgba(61, 75, 78, .5) inset;
        box-shadow: 0 0 max(20px, 1.0416666667vw) rgba(61, 75, 78, .5) inset
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item .introduction__gallery-image::after {
        -webkit-box-shadow: 0 0 2.6041666667vw rgba(61, 75, 78, .5) inset;
        box-shadow: 0 0 2.6041666667vw rgba(61, 75, 78, .5) inset
    }
}

.introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item .introduction__gallery-btn {
    position: absolute;
    top: auto;
    left: auto;
    -webkit-transform: none;
    transform: none
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item .introduction__gallery-btn {
        bottom: max(20px, 1.0416666667vw);
        right: max(20px, 1.0416666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item .introduction__gallery-btn {
        bottom: 3.90625vw;
        right: 3.90625vw
    }
}

@media (any-hover:hover) {
    .introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item {
        cursor: pointer
    }

    .introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item .introduction__gallery-image {
        overflow: hidden
    }

    .introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item .introduction__gallery-image::after {
        -webkit-transition: -webkit-box-shadow .4s;
        transition: -webkit-box-shadow .4s;
        transition: box-shadow .4s;
        transition: box-shadow .4s, -webkit-box-shadow .4s
    }

    .introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item .introduction__gallery-image img {
        -webkit-transition: -webkit-transform .4s;
        transition: -webkit-transform .4s;
        transition: transform .4s;
        transition: transform .4s, -webkit-transform .4s
    }
}

@media print and (any-hover:hover),
screen and (any-hover:hover) and (min-width:1025px) {
    .introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item:hover .introduction__gallery-image::after {
        -webkit-box-shadow: 0 0 max(50px, 2.6041666667vw) #3d4b4e inset;
        box-shadow: 0 0 max(50px, 2.6041666667vw) #3d4b4e inset
    }
}

@media print and (any-hover:hover),
screen and (any-hover:hover) and (max-width:1024px) {
    .introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item:hover .introduction__gallery-image::after {
        -webkit-box-shadow: 0 0 6.5104166667vw #3d4b4e inset;
        box-shadow: 0 0 6.5104166667vw #3d4b4e inset
    }
}

@media (any-hover:hover) {
    .introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item:hover .introduction__gallery-image img {
        -webkit-transform: scale(1.05);
        transform: scale(1.05)
    }
}

@media (any-hover:hover) {
    .introduction .introduction__gallery .swiper .swiper-slide .introduction__gallery-item:hover .m-btn::before {
        -webkit-animation: scale 1.4s infinite;
        animation: scale 1.4s infinite
    }
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__gallery .introduction__gallery-navigation {
        margin: max(50px, 2.6041666667vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__gallery .introduction__gallery-navigation {
        margin: 6.5104166667vw 0 0
    }
}

.introduction .introduction__features {
    position: relative;
    z-index: 2
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features {
        padding: 0 max(40px, 2.0833333333vw) max(160px, 8.3333333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features {
        padding: 0 0 18.2291666667vw
    }
}

.introduction .introduction__features .introduction__features-deco-1 {
    position: absolute;
    pointer-events: none
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-deco-1 {
        width: max(91px, 4.7395833333vw);
        top: max(139px, 7.2395833333vw);
        left: max(83px, 4.3229166667vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1600px) {
    .introduction .introduction__features .introduction__features-deco-1 {
        left: calc(50vw - 800px + 83px)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-deco-1 {
        top: -12.7604166667vw;
        left: 0;
        width: 22.0052083333vw
    }
}

.introduction .introduction__features .introduction__features-deco-2 {
    position: absolute;
    pointer-events: none
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-deco-2 {
        width: max(473px, 24.6354166667vw);
        top: min(-96px, -5vw);
        right: max(98px, 5.1041666667vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1600px) {
    .introduction .introduction__features .introduction__features-deco-2 {
        right: calc(50vw - 800px + 98px)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-deco-2 {
        width: 8.59375vw;
        top: 12.3697916667vw;
        right: 0
    }
}

.introduction .introduction__features .introduction__features-content {
    margin: 0 auto;
    background: rgba(255, 255, 255, .3)
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-content {
        max-width: max(1620px, 84.375vw);
        padding: max(100px, 5.2083333333vw) max(40px, 2.0833333333vw) max(158px, 8.2291666667vw);
        -webkit-box-shadow: 0 0 max(40px, 2.0833333333vw) #f6ebd6;
        box-shadow: 0 0 max(40px, 2.0833333333vw) #f6ebd6;
        border: max(1px, .0520833333vw) solid rgba(105, 89, 77, .2)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-content {
        width: 92.1875vw;
        padding: 9.1145833333vw 6.5104166667vw 10.4166666667vw;
        -webkit-box-shadow: 0 0 5.2083333333vw #f6ebd6;
        box-shadow: 0 0 5.2083333333vw #f6ebd6;
        border: max(1px, .1302083333vw) solid rgba(105, 89, 77, .2)
    }
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-content .introduction__features-inner {
        max-width: max(1200px, 62.5vw);
        margin: 0 auto
    }
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-list {
        margin: max(80px, 4.1666666667vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-list {
        margin: 7.8125vw 0 0
    }
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-item {
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
        align-items: flex-start;
        gap: max(60px, 3.125vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1360px) {
    .introduction .introduction__features .introduction__features-item {
        gap: max(4.4117647059vw, 40px)
    }
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-item:nth-of-type(2n) {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -webkit-flex-direction: row-reverse;
        flex-direction: row-reverse
    }
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-item+.introduction__features-item {
        margin-top: max(90px, 4.6875vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-item+.introduction__features-item {
        margin-top: 7.8125vw
    }
}

.introduction .introduction__features .introduction__features-item .introduction__features-movie {
    position: relative
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie {
        max-width: max(608px, 31.6666666667vw);
        width: 100%
    }
}

@media print,
screen and (min-width:1921px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie {
        width: max(608px, 31.6666666667vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1360px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie {
        width: calc(44.7058823529vw - 340px + 25vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie {
        width: 100%
    }
}

.introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner::after,
.introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner::before,
.introduction .introduction__features .introduction__features-item .introduction__features-movie::after,
.introduction .introduction__features .introduction__features-item .introduction__features-movie::before {
    content: "";
    display: block;
    position: absolute;
    will-change: filter
}

@media print,
screen and (min-width:1025px) {

    .introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner::after,
    .introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner::before,
    .introduction .introduction__features .introduction__features-item .introduction__features-movie::after,
    .introduction .introduction__features .introduction__features-item .introduction__features-movie::before {
        width: max(10px, .5208333333vw);
        height: max(10px, .5208333333vw);
        -webkit-filter: drop-shadow(0 0 max(4px, .2083333333vw) #fff);
        filter: drop-shadow(0 0 max(4px, .2083333333vw) #fff)
    }
}

@media print,
screen and (max-width:1024px) {

    .introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner::after,
    .introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner::before,
    .introduction .introduction__features .introduction__features-item .introduction__features-movie::after,
    .introduction .introduction__features .introduction__features-item .introduction__features-movie::before {
        width: 1.8229166667vw;
        height: 1.8229166667vw;
        -webkit-filter: drop-shadow(0 0 .5208333333vw #fff);
        filter: drop-shadow(0 0 .5208333333vw #fff)
    }
}

.introduction .introduction__features .introduction__features-item .introduction__features-movie::before {
    top: 0;
    left: 0;
    -webkit-transform-origin: top left;
    transform-origin: top left
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie::before {
        border-top: max(1px, .0520833333vw) solid #69594d;
        border-left: max(1px, .0520833333vw) solid #69594d
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie::before {
        border-top: max(1px, .1302083333vw) solid #69594d;
        border-left: max(1px, .1302083333vw) solid #69594d
    }
}

.introduction .introduction__features .introduction__features-item .introduction__features-movie::after {
    top: 0;
    right: 0
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie::after {
        border-top: max(1px, .0520833333vw) solid #69594d;
        border-right: max(1px, .0520833333vw) solid #69594d
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie::after {
        border-top: max(1px, .1302083333vw) solid #69594d;
        border-right: max(1px, .1302083333vw) solid #69594d
    }
}

.introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner {
    will-change: filter
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner {
        padding: max(4px, .2083333333vw);
        -webkit-filter: drop-shadow(0 max(20px, 1.0416666667vw) max(30px, 1.5625vw) rgba(105, 89, 77, .14));
        filter: drop-shadow(0 max(20px, 1.0416666667vw) max(30px, 1.5625vw) rgba(105, 89, 77, .14))
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner {
        padding: .5208333333vw;
        -webkit-filter: drop-shadow(0 2.6041666667vw 3.90625vw rgba(105, 89, 77, .14));
        filter: drop-shadow(0 2.6041666667vw 3.90625vw rgba(105, 89, 77, .14))
    }
}

.introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner::before {
    bottom: 0;
    left: 0
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner::before {
        border-bottom: max(1px, .0520833333vw) solid #69594d;
        border-left: max(1px, .0520833333vw) solid #69594d
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner::before {
        border-bottom: max(1px, .1302083333vw) solid #69594d;
        border-left: max(1px, .1302083333vw) solid #69594d
    }
}

.introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner::after {
    bottom: 0;
    right: 0
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner::after {
        border-bottom: max(1px, .0520833333vw) solid #69594d;
        border-right: max(1px, .0520833333vw) solid #69594d
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner::after {
        border-bottom: max(1px, .1302083333vw) solid #69594d;
        border-right: max(1px, .1302083333vw) solid #69594d
    }
}

.introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner .introduction__features-movie-body {
    position: relative;
    width: 100%;
    aspect-ratio: 600/330;
    background: url(../../images/common/index/bg_grunge.jpg) repeat-y top center/max(1920px, 100vw) auto;
    -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%20600%20330%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cg%20clip-path%3D%22url(%23clip0_576_2)%22%3E%0A%3Cmask%20id%3D%22mask0_576_2%22%20style%3D%22mask-type%3Aalpha%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%220%22%20y%3D%220%22%20width%3D%22600%22%20height%3D%22330%22%3E%0A%3Cpath%20d%3D%22M600%2024V306L576%20330H24L0%20306V23.6514L23.6514%200H576L600%2024Z%22%20fill%3D%22%233D4B4E%22%2F%3E%0A%3C%2Fmask%3E%0A%3Cg%20mask%3D%22url(%23mask0_576_2)%22%3E%0A%3Cpath%20d%3D%22M0%20-0.149902H600V329.85H0V-0.149902Z%22%20fill%3D%22black%22%2F%3E%0A%3C%2Fg%3E%0A%3C%2Fg%3E%0A%3Cdefs%3E%0A%3CclipPath%20id%3D%22clip0_576_2%22%3E%0A%3Crect%20width%3D%22600%22%20height%3D%22330%22%20fill%3D%22white%22%2F%3E%0A%3C%2FclipPath%3E%0A%3C%2Fdefs%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/cover;
    mask: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%20600%20330%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cg%20clip-path%3D%22url(%23clip0_576_2)%22%3E%0A%3Cmask%20id%3D%22mask0_576_2%22%20style%3D%22mask-type%3Aalpha%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%220%22%20y%3D%220%22%20width%3D%22600%22%20height%3D%22330%22%3E%0A%3Cpath%20d%3D%22M600%2024V306L576%20330H24L0%20306V23.6514L23.6514%200H576L600%2024Z%22%20fill%3D%22%233D4B4E%22%2F%3E%0A%3C%2Fmask%3E%0A%3Cg%20mask%3D%22url(%23mask0_576_2)%22%3E%0A%3Cpath%20d%3D%22M0%20-0.149902H600V329.85H0V-0.149902Z%22%20fill%3D%22black%22%2F%3E%0A%3C%2Fg%3E%0A%3C%2Fg%3E%0A%3Cdefs%3E%0A%3CclipPath%20id%3D%22clip0_576_2%22%3E%0A%3Crect%20width%3D%22600%22%20height%3D%22330%22%20fill%3D%22white%22%2F%3E%0A%3C%2FclipPath%3E%0A%3C%2Fdefs%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/cover
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner .introduction__features-movie-body {
        background-size: 197.3958333333vw auto
    }
}

.introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner .introduction__features-movie-body img,
.introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner .introduction__features-movie-body video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner .introduction__features-movie-body video {
    position: relative;
    z-index: 2
}

.introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner .introduction__features-movie-body picture {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner .introduction__features-movie-body .introduction__features-movie-body-inner {
    position: relative;
    z-index: 1;
    height: 100%
}

.introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner .introduction__features-movie-body .introduction__features-movie-btn {
    position: absolute;
    z-index: 2
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner .introduction__features-movie-body .introduction__features-movie-btn {
        bottom: max(20px, 1.0416666667vw);
        right: max(20px, 1.0416666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner .introduction__features-movie-body .introduction__features-movie-btn {
        bottom: 2.6041666667vw;
        right: 2.6041666667vw
    }
}

@media (any-hover:hover) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie {
        cursor: pointer
    }

    .introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner {
        -webkit-transition: -webkit-filter .4s;
        transition: -webkit-filter .4s;
        transition: filter .4s;
        transition: filter .4s, -webkit-filter .4s
    }

    .introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner .introduction__features-movie-body::after {
        content: "";
        display: block;
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        pointer-events: none;
        -webkit-transition: -webkit-box-shadow .4s;
        transition: -webkit-box-shadow .4s;
        transition: box-shadow .4s;
        transition: box-shadow .4s, -webkit-box-shadow .4s;
        -webkit-box-shadow: 0 0 0 #3d4b4e inset;
        box-shadow: 0 0 0 #3d4b4e inset
    }

    .introduction .introduction__features .introduction__features-item .introduction__features-movie .introduction__features-movie-inner .introduction__features-movie-body video {
        -webkit-transition: -webkit-transform .4s;
        transition: -webkit-transform .4s;
        transition: transform .4s;
        transition: transform .4s, -webkit-transform .4s
    }
}

@media print and (any-hover:hover),
screen and (any-hover:hover) and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie:hover .introduction__features-movie-inner {
        -webkit-filter: drop-shadow(0 max(10px, .5208333333vw) max(15px, .78125vw) rgba(105, 89, 77, .6));
        filter: drop-shadow(0 max(10px, .5208333333vw) max(15px, .78125vw) rgba(105, 89, 77, .6))
    }
}

@media print and (any-hover:hover),
screen and (any-hover:hover) and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie:hover .introduction__features-movie-inner {
        -webkit-filter: drop-shadow(0 1.3020833333vw 1.953125vw rgba(105, 89, 77, .6));
        filter: drop-shadow(0 1.3020833333vw 1.953125vw rgba(105, 89, 77, .6))
    }
}

@media print and (any-hover:hover),
screen and (any-hover:hover) and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie:hover .introduction__features-movie-inner .introduction__features-movie-body::after {
        -webkit-box-shadow: 0 0 max(50px, 2.6041666667vw) #3d4b4e inset;
        box-shadow: 0 0 max(50px, 2.6041666667vw) #3d4b4e inset
    }
}

@media print and (any-hover:hover),
screen and (any-hover:hover) and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie:hover .introduction__features-movie-inner .introduction__features-movie-body::after {
        -webkit-box-shadow: 0 0 6.5104166667vw #3d4b4e inset;
        box-shadow: 0 0 6.5104166667vw #3d4b4e inset
    }
}

@media (any-hover:hover) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie:hover .introduction__features-movie-inner .introduction__features-movie-body video {
        -webkit-transform: scale(1.05);
        transform: scale(1.05)
    }
}

@media (any-hover:hover) {
    .introduction .introduction__features .introduction__features-item .introduction__features-movie:hover .m-btn::before {
        -webkit-animation: scale 1.4s infinite;
        animation: scale 1.4s infinite
    }
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-body {
        -webkit-box-flex: 1;
        -webkit-flex: 1;
        flex: 1
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-body {
        margin: 5.2083333333vw 0 0
    }
}

.introduction .introduction__features .introduction__features-item .introduction__features-body .introduction__features-heading p {
    display: inline-block;
    font-family: "Noto Serif JP", serif;
    line-height: 1.4;
    letter-spacing: .06em;
    background: -webkit-gradient(linear, left top, right top, color-stop(0, #9c8120), to(#59351a));
    background: -webkit-linear-gradient(left, #9c8120 0, #59351a 100%);
    background: linear-gradient(to right, #9c8120 0, #59351a 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: rgba(255, 255, 255, 0)
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-body .introduction__features-heading p {
        font-size: 4.2rem
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-body .introduction__features-heading p {
        font-size: 4.8rem
    }
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-body .introduction__features-text {
        margin: max(26px, 1.3541666667vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-body .introduction__features-text {
        margin: 2.6041666667vw 0 0
    }
}

.introduction .introduction__features .introduction__features-item .introduction__features-body .introduction__features-text p {
    color: #69594d;
    line-height: 2;
    font-weight: 400;
    letter-spacing: .06em
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-body .introduction__features-text p {
        font-size: 1.6rem
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-body .introduction__features-text p {
        font-size: 2.6rem
    }
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-body .introduction__features-text p+p {
        margin-top: max(20px, 1.0416666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-item .introduction__features-body .introduction__features-text p+p {
        margin-top: 1.8229166667vw
    }
}

.introduction .introduction__features .introduction__features-item.js-animation .introduction__features-heading {
    -webkit-transition: opacity 1s .2s, -webkit-transform 1s .2s;
    transition: opacity 1s .2s, -webkit-transform 1s .2s;
    transition: opacity 1s .2s, transform 1s .2s;
    transition: opacity 1s .2s, transform 1s .2s, -webkit-transform 1s .2s;
    opacity: 0
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-item.js-animation .introduction__features-heading {
        -webkit-transform: translateY(max(20px, 1.0416666667vw));
        transform: translateY(max(20px, 1.0416666667vw))
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-item.js-animation .introduction__features-heading {
        -webkit-transform: translateY(2.6041666667vw);
        transform: translateY(2.6041666667vw)
    }
}

.introduction .introduction__features .introduction__features-item.js-animation .introduction__features-text {
    -webkit-transition: opacity 1s .4s, -webkit-transform 1s .4s;
    transition: opacity 1s .4s, -webkit-transform 1s .4s;
    transition: opacity 1s .4s, transform 1s .4s;
    transition: opacity 1s .4s, transform 1s .4s, -webkit-transform 1s .4s;
    opacity: 0
}

@media print,
screen and (min-width:1025px) {
    .introduction .introduction__features .introduction__features-item.js-animation .introduction__features-text {
        -webkit-transform: translateY(max(20px, 1.0416666667vw));
        transform: translateY(max(20px, 1.0416666667vw))
    }
}

@media print,
screen and (max-width:1024px) {
    .introduction .introduction__features .introduction__features-item.js-animation .introduction__features-text {
        -webkit-transform: translateY(2.6041666667vw);
        transform: translateY(2.6041666667vw)
    }
}

.introduction .introduction__features .introduction__features-item.js-animation.--animated .introduction__features-heading,
.introduction .introduction__features .introduction__features-item.js-animation.--animated .introduction__features-text {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

.world {
    position: relative;
    z-index: 2;
    overflow: hidden
}

@media print,
screen and (min-width:1025px) {
    .world {
        padding: max(200px, 10.4166666667vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .world {
        padding: 16.9270833333vw 0 0
    }
}

.world .world__deco-photo {
    position: absolute;
    z-index: 2;
    right: 0;
    pointer-events: none
}

@media print,
screen and (min-width:1025px) {
    .world .world__deco-photo {
        top: max(100px, 5.2083333333vw);
        width: max(330px, 17.1875vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .world .world__deco-photo {
        top: 10.4166666667vw;
        width: 27.34375vw
    }
}

.world .world__wrapper {
    position: relative;
    z-index: 1;
    background: url(../../images/common/index/bg_grunge.jpg) repeat-y top center/100% auto
}

@media print,
screen and (min-width:1025px) {
    .world .world__wrapper {
        padding: max(160px, 8.3333333333vw) max(40px, 2.0833333333vw) max(200px, 10.4166666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .world .world__wrapper {
        padding: 19.53125vw 0 18.2291666667vw;
        background-size: 197.3958333333vw auto
    }
}

.world .world__background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    pointer-events: none
}

.world .world__background .world__background-scene-1 {
    position: absolute;
    top: 0
}

@media print,
screen and (min-width:1025px) {
    .world .world__background .world__background-scene-1 {
        left: min(-98px, -5.1041666667vw);
        width: max(857px, 44.6354166667vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1400px) {
    .world .world__background .world__background-scene-1 {
        left: calc(50vw - 700px - 98px)
    }
}

@media print,
screen and (max-width:1024px) {
    .world .world__background .world__background-scene-1 {
        left: 0;
        width: 60.8072916667vw
    }
}

.world .world__background .world__background-scene-2 {
    position: absolute
}

@media print,
screen and (min-width:1025px) {
    .world .world__background .world__background-scene-2 {
        top: min(-6px, -.3125vw);
        right: min(-164px, -8.5416666667vw);
        width: max(870px, 45.3125vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1400px) {
    .world .world__background .world__background-scene-2 {
        right: calc(50vw - 700px - 164px)
    }
}

@media print,
screen and (max-width:1024px) {
    .world .world__background .world__background-scene-2 {
        top: 2.2135416667vw;
        right: 0;
        width: 76.953125vw
    }
}

.world .world__deco-leaf-1 {
    position: absolute;
    left: 0;
    pointer-events: none
}

@media print,
screen and (min-width:1025px) {
    .world .world__deco-leaf-1 {
        top: 0;
        width: max(590px, 30.7291666667vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1600px) {
    .world .world__deco-leaf-1 {
        left: calc(50vw - 800px)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1280px) {
    .world .world__deco-leaf-1 {
        left: calc(50vw - 800px - 640px + 50vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .world .world__deco-leaf-1 {
        top: 27.4739583333vw;
        width: 100%
    }
}

.world .world__deco-leaf-2 {
    position: absolute;
    right: 0;
    pointer-events: none
}

@media print,
screen and (min-width:1025px) {
    .world .world__deco-leaf-2 {
        top: 0;
        width: max(580px, 30.2083333333vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1600px) {
    .world .world__deco-leaf-2 {
        right: calc(50vw - 800px)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1280px) {
    .world .world__deco-leaf-2 {
        right: calc(50vw - 800px - 640px + 50vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .world .world__deco-leaf-2 {
        width: 100%;
        top: 158.0729166667vw
    }
}

.world .world__inner {
    position: relative;
    z-index: 2;
    margin: 0 auto
}

@media print,
screen and (min-width:1025px) {
    .world .world__inner {
        max-width: max(1200px, 62.5vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .world .world__inner {
        width: 86.9791666667vw
    }
}

@media print,
screen and (min-width:1025px) {
    .world .world__content {
        margin: max(92px, 4.7916666667vw) 0 0
    }
}

@media print,
screen and (min-width:1280px) {
    .world .world__content {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: max(28px, 1.4583333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .world .world__content {
        margin: 11.1979166667vw 0 0
    }
}

.world .world__item {
    position: relative
}

@media print,
screen and (min-width:1025px) and (max-width:1279px) {
    .world .world__item {
        width: 800px;
        margin: 0 auto
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1279px) {
    .world .world__item+.world__item {
        margin-top: max(80px, 4.1666666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .world .world__item+.world__item {
        margin-top: 9.8958333333vw
    }
}

.world .world__item::after {
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2081%2044%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cg%20clip-path%3D%22url(%23clip0_888_255)%22%3E%0A%3Cpath%20opacity%3D%220.5%22%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M7.68407%202.17221C7.68407%202.17221%207.66714%201.70316%207.76233%202.18466C7.72372%202.20026%207.4674%202.98241%207.47911%203.0658C7.4405%203.0814%207.39224%203.1009%207.34956%203.10933C7.29941%203.5438%207.23961%203.98216%207.18946%204.41663C7.10362%204.49537%207.02336%204.56305%206.93752%204.6418C6.94365%204.73626%206.95537%204.81966%206.96149%204.91412C6.87158%204.9857%206.78574%205.06445%206.69583%205.13602C6.70196%205.23049%206.71368%205.31388%206.71981%205.40835C6.6299%205.47993%206.54406%205.55867%206.4638%205.62635C6.46993%205.72082%206.48165%205.80421%206.48777%205.89867C6.43951%205.91817%206.4009%205.93377%206.34857%205.9461C6.37152%206.17478%206.3904%206.39629%206.41334%206.62496C6.36508%206.64446%206.32647%206.66006%206.28379%206.66849C6.15296%207.39994%206.56474%208.00029%206.71881%208.33462C6.94458%208.81623%206.79682%209.07863%207.21862%209.27835C7.14917%209.72061%206.57224%2010.5442%206.67702%2010.8543C6.71563%2010.8387%206.7639%2010.8192%206.81216%2010.7997C6.87268%2010.9692%206.9388%2011.1275%206.99933%2011.297C6.77986%2011.4121%206.55481%2011.5382%206.33535%2011.6534C6.27804%2011.9497%206.36334%2011.7654%206.22013%2011.9731C6.3555%2012.5882%206.62784%2012.5663%206.87595%2013.0036C6.91456%2012.988%206.96283%2012.9685%207.00144%2012.9529C6.93447%2013.2532%206.87716%2013.5495%206.8102%2013.8498C6.6827%2013.9806%206.55928%2014.1186%206.43179%2014.2494C6.43792%2014.3439%206.44964%2014.4273%206.45577%2014.5218C6.41716%2014.5374%206.36889%2014.5569%206.32063%2014.5764C6.29987%2014.7698%206.26945%2014.9672%206.23496%2015.1574C6.19635%2015.173%206.14809%2015.1925%206.10542%2015.2009C6.12223%2015.3351%206.12939%2015.4732%206.1462%2015.6074C6.09794%2015.6269%206.05933%2015.6425%206.00701%2015.6549C6.02485%2015.8327%206.0427%2016.0106%206.06054%2016.1884C6.01228%2016.2079%205.97367%2016.2235%205.9254%2016.243C5.94222%2016.3772%205.94939%2016.5154%205.9662%2016.6496C5.79148%2016.8435%205.63048%2017.0408%205.46541%2017.2308C5.47154%2017.3253%205.48325%2017.4087%205.48939%2017.5032C5.45078%2017.5188%205.39845%2017.5311%205.35984%2017.5467C5.23848%2017.772%205.11712%2017.9973%205.00541%2018.2187C4.9155%2018.2902%204.83931%2018.3651%204.7494%2018.4367C4.76725%2018.6145%204.78916%2018.7996%204.80701%2018.9774C4.84562%2018.9618%204.89388%2018.9423%204.93656%2018.9339C5.04188%2019.3496%204.70416%2019.8209%204.48373%2020.0598C4.60781%2020.3622%204.57017%2020.254%204.79328%2020.3754C4.79431%2020.419%204.80499%2020.4588%204.8101%2020.5096C4.89697%2020.4745%204.98791%2020.4466%205.07885%2020.4186C5.18661%2020.5249%205.28065%2020.6279%205.3884%2020.7342C5.47527%2020.6991%205.57028%2020.6784%205.65716%2020.6433L6.13529%2020.6704L76.1576%2028.5651C76.6298%2027.5988%2076.4841%2026.5472%2076.5895%2025.7291C76.5635%2025.3695%2076.5278%2025.0138%2076.488%2024.6509C76.5363%2024.6314%2076.5749%2024.6158%2076.6231%2024.5963C76.6114%2024.5129%2076.6053%2024.4184%2076.5992%2024.324C76.6891%2024.2524%2076.7653%2024.1775%2076.8552%2024.106C76.849%2024.0115%2076.8373%2023.9281%2076.8312%2023.8336C76.9211%2023.7621%2077.0069%2023.6833%2077.0872%2023.6156C77.0811%2023.5212%2077.0694%2023.4378%2077.0632%2023.3433C77.1531%2023.2717%2077.239%2023.193%2077.3152%2023.1181C77.5807%2022.5614%2077.6471%2022.1556%2077.5681%2021.368C77.6976%2021.3244%2077.8368%2021.277%2077.9664%2021.2335C78.0892%2020.8225%2078.2516%2020.1048%2078.5289%2019.7989C78.7341%2019.5749%2078.8362%2019.6923%2079.0465%2019.3518C79.0851%2019.3362%2079.1334%2019.3167%2079.176%2019.3083C79.0601%2019.0202%2078.9345%2018.7361%2078.8226%2018.4552C78.8612%2018.4396%2078.9095%2018.4201%2078.9577%2018.4006C78.9409%2018.2664%2078.9241%2018.1322%2078.9169%2017.9941C79.0529%2017.4809%2079.3643%2017.214%2079.7849%2016.8679C79.762%2016.6392%2079.7431%2016.4177%2079.7242%2016.1962C79.7272%2016.1597%2079.8913%2016.0934%2079.8298%2015.8803C79.7815%2015.8998%2079.7429%2015.9154%2079.7043%2015.931C79.6467%2015.3903%2079.6028%2014.8528%2079.5452%2014.312C79.5096%2014.1237%2079.4151%2014.4175%2079.3988%2014.2214C79.4374%2014.2058%2079.4857%2014.1863%2079.538%2014.1739C79.6496%2013.4503%2080.1742%2012.8065%2080.458%2012.1983C80.4519%2012.1038%2080.4402%2012.0204%2080.434%2011.926C80.4823%2011.9065%2080.5209%2011.8909%2080.5732%2011.8785C80.6433%2011.7092%2080.7311%2011.5504%2080.8012%2011.381C80.8881%2011.3459%2080.9831%2011.3252%2081.074%2011.2973C81.073%2011.2536%2081.2795%2010.5092%2081.2785%2010.4655C81.3654%2010.4304%207.69372%202.16831%207.69372%202.16831L7.68407%202.17221Z%22%20fill%3D%22%23BE9B70%22%2F%3E%0A%3C%2Fg%3E%0A%3Cdefs%3E%0A%3CclipPath%20id%3D%22clip0_888_255%22%3E%0A%3Crect%20width%3D%2280%22%20height%3D%2244%22%20fill%3D%22white%22%20transform%3D%22translate(0.500122)%22%2F%3E%0A%3C%2FclipPath%3E%0A%3C%2Fdefs%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain
}

@media print,
screen and (min-width:1025px) {
    .world .world__item::after {
        width: max(103px, 5.3645833333vw);
        height: max(62px, 3.2291666667vw);
        top: min(-20px, -1.0416666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .world .world__item::after {
        width: 15.234375vw;
        height: 9.1145833333vw;
        top: -2.34375vw
    }
}

.world .world__item .world__item-image {
    position: relative;
    background: url(../../images/common/index/bg_grunge_content.jpg) repeat-y top left/100% 100%;
    will-change: filter
}

@media print,
screen and (min-width:1025px) {
    .world .world__item .world__item-image {
        padding: max(10px, .5208333333vw);
        -webkit-filter: drop-shadow(0 max(20px, 1.0416666667vw) max(30px, 1.5625vw) rgba(105, 89, 77, .14));
        filter: drop-shadow(0 max(20px, 1.0416666667vw) max(30px, 1.5625vw) rgba(105, 89, 77, .14))
    }
}

@media print,
screen and (max-width:1024px) {
    .world .world__item .world__item-image {
        background-size: 197.3958333333vw auto;
        padding: 1.4322916667vw;
        -webkit-filter: drop-shadow(0 2.6041666667vw 3.90625vw rgba(105, 89, 77, .14));
        filter: drop-shadow(0 2.6041666667vw 3.90625vw rgba(105, 89, 77, .14))
    }
}

.world .world__item .world__item-image .world__item-image-content {
    aspect-ratio: 566/310
}

.world .world__item .world__item-catch {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    width: 100%
}

@media print,
screen and (min-width:1025px) {
    .world .world__item .world__item-catch {
        bottom: max(36px, 1.875vw);
        gap: max(4px, .2083333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .world .world__item .world__item-catch {
        bottom: 4.6875vw;
        gap: 1.0416666667vw
    }
}

.world .world__item .world__item-catch .bg {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center
}

.world .world__item .world__item-catch .gr {
    font-family: "Noto Serif JP", serif;
    font-weight: 600;
    letter-spacing: .14em;
    line-height: 1.2;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff4d0), to(#fff));
    background: -webkit-linear-gradient(top, #fff4d0 0, #fff 100%);
    background: linear-gradient(to bottom, #fff4d0 0, #fff 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: rgba(255, 255, 255, 0)
}

@media print,
screen and (min-width:1025px) {
    .world .world__item .world__item-catch .gr {
        font-size: 3rem
    }
}

@media print,
screen and (max-width:1024px) {
    .world .world__item .world__item-catch .gr {
        font-size: 4rem
    }
}

.world .world__item .world__item-text {
    color: #69594d;
    text-align: center;
    left: 2;
    letter-spacing: .06em;
    line-height: 2
}

@media print,
screen and (min-width:1025px) {
    .world .world__item .world__item-text {
        margin: max(24px, 1.25vw) 0 0;
        font-size: 1.6rem
    }
}

@media print,
screen and (max-width:1024px) {
    .world .world__item .world__item-text {
        margin: 3.90625vw 0 0;
        font-size: 2.6rem
    }
}

.world .world__item:nth-of-type(1)::after {
    -webkit-transform: translateX(-50%) scaleX(-1);
    transform: translateX(-50%) scaleX(-1)
}

@media print,
screen and (min-width:1025px) {
    .world .world__item:nth-of-type(1) .world__item-catch .bg {
        background: url(../../images/pc/index/world_bg_scene_1.png) no-repeat top center/contain;
        width: max(271px, 14.1145833333vw);
        height: max(51px, 2.65625vw);
        padding: 0 0 0 max(4px, .2083333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .world .world__item:nth-of-type(1) .world__item-catch .bg {
        background: url(../../images/sp/index/world_bg_scene_1.png) no-repeat top center/contain;
        width: 47.1354166667vw;
        height: 8.59375vw;
        padding: 0 0 0 1.0416666667vw
    }
}

@media print,
screen and (min-width:1025px) {
    .world .world__item:nth-of-type(2) .world__item-catch .bg {
        background: url(../../images/pc/index/world_bg_scene_2.png) no-repeat top center/contain;
        width: max(91px, 4.7395833333vw);
        height: max(51px, 2.65625vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .world .world__item:nth-of-type(2) .world__item-catch .bg {
        background: url(../../images/sp/index/world_bg_scene_2.png) no-repeat top center/contain;
        width: 14.5833333333vw;
        height: 8.59375vw
    }
}

.world .world__item.js-animation .world__item-text {
    -webkit-transition: opacity 1s .4s, -webkit-transform 1s .4s;
    transition: opacity 1s .4s, -webkit-transform 1s .4s;
    transition: opacity 1s .4s, transform 1s .4s;
    transition: opacity 1s .4s, transform 1s .4s, -webkit-transform 1s .4s;
    opacity: 0
}

@media print,
screen and (min-width:1025px) {
    .world .world__item.js-animation .world__item-text {
        -webkit-transform: translateY(max(20px, 1.0416666667vw));
        transform: translateY(max(20px, 1.0416666667vw))
    }
}

@media print,
screen and (max-width:1024px) {
    .world .world__item.js-animation .world__item-text {
        -webkit-transform: translateY(2.6041666667vw);
        transform: translateY(2.6041666667vw)
    }
}

.world .world__item.js-animation.--animated .world__item-text {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

.middle-content {
    position: relative;
    z-index: 2;
    overflow: hidden;
    pointer-events: none
}

@media print,
screen and (min-width:1025px) {
    .middle-content {
        margin: min(-376px, -19.5833333333vw) 0 0;
        padding: max(320px, 16.6666666667vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .middle-content {
        margin: -22.1354166667vw 0 0;
        padding: 15.625vw 0 0
    }
}

.middle-content .middle-content__deco-photo {
    position: absolute;
    z-index: 3;
    left: 0;
    pointer-events: none
}

@media print,
screen and (min-width:1025px) {
    .middle-content .middle-content__deco-photo {
        top: max(100px, 5.2083333333vw);
        width: max(350px, 18.2291666667vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1800px) {
    .middle-content .middle-content__deco-photo {
        left: calc(50vw - 900px)
    }
}

@media print,
screen and (max-width:1024px) {
    .middle-content .middle-content__deco-photo {
        top: 9.1145833333vw;
        width: 29.9479166667vw
    }
}

.character {
    position: relative;
    z-index: 2;
    pointer-events: auto
}

.character .character__deco-cloud {
    position: absolute;
    z-index: 2;
    left: 0;
    pointer-events: none
}

@media print,
screen and (min-width:1025px) {
    .character .character__deco-cloud {
        bottom: min(-220px, -11.4583333333vw);
        width: max(500px, 26.0416666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .character__deco-cloud {
        bottom: -6.5104166667vw;
        width: 38.5416666667vw
    }
}

.character .character__inner {
    position: relative;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #3491e3), to(#0072d5));
    background: -webkit-linear-gradient(top, #3491e3 0, #0072d5 100%);
    background: linear-gradient(to bottom, #3491e3 0, #0072d5 100%)
}

@media print,
screen and (min-width:1025px) {
    .character .character__inner {
        padding: max(140px, 7.2916666667vw) 0 0;
        -webkit-mask: url(../../images/pc/index/character-bg_ptn-top.png) repeat-x top center/auto max(40px, 2.0833333333vw), -webkit-linear-gradient(top, rgba(0, 0, 0, 0) max(39px, 2.03125vw), #000 max(39px, 2.03125vw), #000 calc(100% - max(39px, 2.03125vw)), rgba(0, 0, 0, 0) calc(100% - max(39px, 2.03125vw))), url(../../images/pc/index/character-bg_ptn-bottom.png) repeat-x bottom center/auto max(40px, 2.0833333333vw);
        mask: url(../../images/pc/index/character-bg_ptn-top.png) repeat-x top center/auto max(40px, 2.0833333333vw), linear-gradient(to bottom, rgba(0, 0, 0, 0) max(39px, 2.03125vw), #000 max(39px, 2.03125vw), #000 calc(100% - max(39px, 2.03125vw)), rgba(0, 0, 0, 0) calc(100% - max(39px, 2.03125vw))), url(../../images/pc/index/character-bg_ptn-bottom.png) repeat-x bottom center/auto max(40px, 2.0833333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .character__inner {
        padding: 20.8333333333vw 0 0;
        -webkit-mask: url(../../images/sp/index/character-bg_ptn-top.png) no-repeat top center/100% auto, -webkit-gradient(linear, left top, left bottom, color-stop(5.078125vw, rgba(0, 0, 0, 0)), color-stop(5.078125vw, #000), color-stop(#000), to(rgba(0, 0, 0, 0))), url(../../images/sp/index/character-bg_ptn-bottom.png) no-repeat bottom center/100% auto;
        -webkit-mask: url(../../images/sp/index/character-bg_ptn-top.png) no-repeat top center/100% auto, -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 5.078125vw, #000 5.078125vw, #000 calc(100% - 5.078125vw), rgba(0, 0, 0, 0) calc(100% - 5.078125vw)), url(../../images/sp/index/character-bg_ptn-bottom.png) no-repeat bottom center/100% auto;
        mask: url(../../images/sp/index/character-bg_ptn-top.png) no-repeat top center/100% auto, -webkit-gradient(linear, left top, left bottom, color-stop(5.078125vw, rgba(0, 0, 0, 0)), color-stop(5.078125vw, #000), color-stop(#000), to(rgba(0, 0, 0, 0))), url(../../images/sp/index/character-bg_ptn-bottom.png) no-repeat bottom center/100% auto;
        mask: url(../../images/sp/index/character-bg_ptn-top.png) no-repeat top center/100% auto, linear-gradient(to bottom, rgba(0, 0, 0, 0) 5.078125vw, #000 5.078125vw, #000 calc(100% - 5.078125vw), rgba(0, 0, 0, 0) calc(100% - 5.078125vw)), url(../../images/sp/index/character-bg_ptn-bottom.png) no-repeat bottom center/100% auto
    }
}

.character .character__background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none
}

.character .character__background .character__background-scene {
    position: absolute
}

@media print,
screen and (min-width:1025px) {
    .character .character__background .character__background-scene {
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        top: 0;
        width: max(1920px, 100vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .character__background .character__background-scene {
        width: 100%;
        top: 2.6041666667vw;
        left: 0
    }
}

.character .character__background .character__background-scene-1 {
    position: absolute
}

@media print,
screen and (min-width:1025px) {
    .character .character__background .character__background-scene-1 {
        width: max(580px, 30.2083333333vw);
        top: 0;
        left: max(70px, 3.6458333333vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1600px) {
    .character .character__background .character__background-scene-1 {
        left: calc(50vw - 800px + 70px)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .character__background .character__background-scene-1 {
        width: 53.2552083333vw;
        top: 9.6354166667vw;
        left: 0
    }
}

.character .character__background .character__background-scene-2 {
    position: absolute
}

@media print,
screen and (min-width:1025px) {
    .character .character__background .character__background-scene-2 {
        width: max(578px, 30.1041666667vw);
        top: 0;
        right: max(70px, 3.6458333333vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1600px) {
    .character .character__background .character__background-scene-2 {
        right: calc(50vw - 800px + 70px)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .character__background .character__background-scene-2 {
        width: 49.0885416667vw;
        top: 6.5104166667vw;
        right: 0
    }
}

.character .character__background .character__background-leaf-1 {
    position: absolute
}

@media print,
screen and (min-width:1025px) {
    .character .character__background .character__background-leaf-1 {
        top: max(10px, .5208333333vw);
        left: 0;
        width: max(318px, 16.5625vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .character__background .character__background-leaf-1 {
        width: 6.9010416667vw;
        top: 24.7395833333vw;
        left: 0
    }
}

.character .character__background .character__background-leaf-2 {
    position: absolute
}

@media print,
screen and (min-width:1025px) {
    .character .character__background .character__background-leaf-2 {
        top: 0;
        right: max(50px, 2.6041666667vw);
        width: max(570px, 29.6875vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1600px) {
    .character .character__background .character__background-leaf-2 {
        right: calc(50vw - 800px + 50px)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .character__background .character__background-leaf-2 {
        width: 3.3854166667vw;
        top: 65.1041666667vw;
        right: 0
    }
}

@media print,
screen and (max-width:1024px) {
    .character .character__background .character__background-leaf-3 {
        position: absolute;
        width: 100vw;
        top: 242.1875vw;
        left: 0
    }
}

.character .character__background .character__background-cloud-1 {
    position: absolute;
    right: 0;
    pointer-events: none
}

@media print,
screen and (min-width:1025px) {
    .character .character__background .character__background-cloud-1 {
        top: max(820px, 42.7083333333vw);
        width: max(600px, 31.25vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .character__background .character__background-cloud-1 {
        width: 75.1302083333vw;
        top: 191.40625vw
    }
}

.character .character__background .character__background-cloud-2 {
    position: absolute;
    left: 0;
    pointer-events: none
}

@media print,
screen and (min-width:1025px) {
    .character .character__background .character__background-cloud-2 {
        width: max(520px, 27.0833333333vw);
        top: max(1000px, 52.0833333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .character__background .character__background-cloud-2 {
        width: 51.6927083333vw;
        top: 270.8333333333vw
    }
}

.character .character__background .character__background-cloud-3 {
    position: absolute;
    pointer-events: none
}

@media print,
screen and (min-width:1025px) {
    .character .character__background .character__background-cloud-3 {
        width: max(908px, 47.2916666667vw);
        bottom: min(-1030px, -53.6458333333vw);
        right: min(-360px, -18.75vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .character__background .character__background-cloud-3 {
        width: 35.0260416667vw;
        bottom: 0;
        right: 0
    }
}

.character .people {
    position: relative
}

.character .people .people__inner {
    position: relative;
    z-index: 2;
    margin: 0 auto
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__inner {
        max-width: max(1360px, 70.8333333333vw);
        padding: 0 max(40px, 2.0833333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__inner {
        width: 92.1875vw
    }
}

.character .people .people__heading {
    position: relative;
    z-index: 2
}

.character .people .people__content {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content {
        margin: max(250px, 13.0208333333vw) 0 0
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1360px) {
    .character .people .people__content {
        margin-top: 500px;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        justify-content: center;
        gap: 0 40px
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content {
        margin: 89.3229166667vw 0 0
    }
}

.character .people .people__content .people__visual {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__visual {
        width: max(600px, 31.25vw);
        top: min(-330px, -17.1875vw);
        z-index: 2
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1360px) {
    .character .people .people__content .people__visual {
        z-index: 1;
        top: -580px
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__visual {
        width: 100vw;
        top: -104.296875vw;
        z-index: 1
    }
}

.character .people .people__content .people__visual .people__visual-text-1 {
    position: absolute;
    z-index: 2
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__visual .people__visual-text-1 {
        width: max(88px, 4.5833333333vw);
        top: max(145px, 7.5520833333vw);
        left: max(20px, 1.0416666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__visual .people__visual-text-1 {
        width: 14.7135416667vw;
        top: 23.4375vw;
        left: 3.90625vw
    }
}

.character .people .people__content .people__visual .people__visual-text-1 svg {
    width: 100%;
    height: auto
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__visual .people__visual-text-1.people__visual-text-1--en {
        width: max(84px, 4.375vw);
        top: max(150px, 7.8125vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__visual .people__visual-text-1.people__visual-text-1--en {
        top: 24.7395833333vw
    }
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__visual .people__visual-text-1.people__visual-text-1--tc {
        width: max(120px, 6.25vw);
        top: max(130px, 6.7708333333vw);
        left: max(5px, .2604166667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__visual .people__visual-text-1.people__visual-text-1--tc {
        width: 18.2291666667vw
    }
}

.character .people .people__content .people__visual .people__visual-text-1.js-animation {
    opacity: 0;
    -webkit-transition: opacity 1s .2s;
    transition: opacity 1s .2s
}

.character .people .people__content .people__visual .people__visual-text-1.js-animation svg {
    overflow: visible
}

.character .people .people__content .people__visual .people__visual-text-1.js-animation.--animated {
    opacity: 1
}

.character .people .people__content .people__visual .people__visual-text-1.js-animation.--animated svg .animation {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation: scale-arrow 2s 1s linear infinite;
    animation: scale-arrow 2s 1s linear infinite
}

.character .people .people__content .people__visual .people__visual-text-2 {
    position: absolute;
    z-index: 2
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__visual .people__visual-text-2 {
        width: max(99px, 5.15625vw);
        top: max(154px, 8.0208333333vw);
        right: max(10px, .5208333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__visual .people__visual-text-2 {
        width: 16.40625vw;
        top: 25.390625vw;
        right: 1.6927083333vw
    }
}

.character .people .people__content .people__visual .people__visual-text-2 svg {
    width: 100%;
    height: auto
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__visual .people__visual-text-2.people__visual-text-2--en {
        width: max(87px, 4.53125vw);
        top: max(130px, 6.7708333333vw);
        right: 0
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__visual .people__visual-text-2.people__visual-text-2--en {
        top: 21.484375vw;
        width: 14.453125vw;
        right: 2.34375vw
    }
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__visual .people__visual-text-2.people__visual-text-2--tc {
        width: max(64px, 3.3333333333vw);
        right: max(20px, 1.0416666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__visual .people__visual-text-2.people__visual-text-2--tc {
        width: 11.1979166667vw;
        top: 24.7395833333vw;
        right: 5.2083333333vw
    }
}

.character .people .people__content .people__visual .people__visual-text-2.js-animation {
    opacity: 0;
    -webkit-transition: opacity 1s .2s;
    transition: opacity 1s .2s
}

.character .people .people__content .people__visual .people__visual-text-2.js-animation svg {
    overflow: visible
}

.character .people .people__content .people__visual .people__visual-text-2.js-animation.--animated {
    opacity: 1
}

.character .people .people__content .people__visual .people__visual-text-2.js-animation.--animated svg .animation {
    -webkit-transform-origin: top right;
    transform-origin: top right;
    -webkit-animation: scale-arrow2 1.6s .6s linear infinite;
    animation: scale-arrow2 1.6s .6s linear infinite
}

.character .people .people__content .people__item {
    position: relative
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__item {
        width: max(380px, 19.7916666667vw);
        z-index: 1
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1360px) {
    .character .people .people__content .people__item {
        z-index: 2
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__item {
        width: 44.7916666667vw;
        z-index: 2
    }
}

.character .people .people__content .people__item .people__item-content {
    position: relative;
    background: url(../../images/common/index/bg_grunge.jpg) repeat-y top center/max(1920px, 100vw) auto;
    height: 100%
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__item .people__item-content {
        padding: max(10px, .5208333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__item .people__item-content {
        padding: 1.5625vw;
        background-size: 197.3958333333vw auto
    }
}

.character .people .people__content .people__item .people__item-content::after,
.character .people .people__content .people__item .people__item-content::before {
    content: "";
    display: block;
    position: absolute
}

@media print,
screen and (min-width:1025px) {

    .character .people .people__content .people__item .people__item-content::after,
    .character .people .people__content .people__item .people__item-content::before {
        width: max(12px, .625vw);
        height: max(12px, .625vw);
        border-top: max(1px, .0520833333vw) solid #69594d;
        top: max(10px, .5208333333vw)
    }
}

@media print,
screen and (max-width:1024px) {

    .character .people .people__content .people__item .people__item-content::after,
    .character .people .people__content .people__item .people__item-content::before {
        width: 1.5625vw;
        height: 1.5625vw;
        border-top: max(1px, .1302083333vw) solid #69594d;
        top: 1.5625vw
    }
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__item .people__item-content::before {
        left: max(10px, .5208333333vw);
        border-left: max(1px, .0520833333vw) solid #69594d
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__item .people__item-content::before {
        left: 1.5625vw;
        border-left: max(1px, .1302083333vw) solid #69594d
    }
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__item .people__item-content::after {
        right: max(10px, .5208333333vw);
        border-right: max(1px, .0520833333vw) solid #69594d
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__item .people__item-content::after {
        right: 1.5625vw;
        border-right: max(1px, .1302083333vw) solid #69594d
    }
}

.character .people .people__content .people__item .people__item-content .people__item-inner {
    height: 100%
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__item .people__item-content .people__item-inner {
        background: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(197, 153, 45, .1)), color-stop(45%, rgba(255, 255, 255, .1))), #fff;
        background: -webkit-linear-gradient(top, rgba(197, 153, 45, .1) 0, rgba(255, 255, 255, .1) 45%), #fff;
        background: linear-gradient(to bottom, rgba(197, 153, 45, .1) 0, rgba(255, 255, 255, .1) 45%), #fff;
        padding: max(37px, 1.9270833333vw) max(30px, 1.5625vw) max(39px, 2.03125vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__item .people__item-content .people__item-inner {
        background: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(197, 153, 45, .1)), color-stop(40%, rgba(255, 255, 255, .1))), #fff;
        background: -webkit-linear-gradient(top, rgba(197, 153, 45, .1) 0, rgba(255, 255, 255, .1) 40%), #fff;
        background: linear-gradient(to bottom, rgba(197, 153, 45, .1) 0, rgba(255, 255, 255, .1) 40%), #fff;
        padding: 4.9479166667vw 2.8645833333vw
    }
}

.character .people .people__content .people__item .people__item-content .people__item-inner::after,
.character .people .people__content .people__item .people__item-content .people__item-inner::before {
    content: "";
    display: block;
    position: absolute
}

@media print,
screen and (min-width:1025px) {

    .character .people .people__content .people__item .people__item-content .people__item-inner::after,
    .character .people .people__content .people__item .people__item-content .people__item-inner::before {
        width: max(12px, .625vw);
        height: max(12px, .625vw);
        border-bottom: max(1px, .0520833333vw) solid #69594d;
        bottom: max(10px, .5208333333vw)
    }
}

@media print,
screen and (max-width:1024px) {

    .character .people .people__content .people__item .people__item-content .people__item-inner::after,
    .character .people .people__content .people__item .people__item-content .people__item-inner::before {
        width: 1.5625vw;
        height: 1.5625vw;
        border-bottom: max(1px, .1302083333vw) solid #69594d;
        bottom: 1.5625vw
    }
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__item .people__item-content .people__item-inner::before {
        left: max(10px, .5208333333vw);
        border-left: max(1px, .0520833333vw) solid #69594d
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__item .people__item-content .people__item-inner::before {
        left: 1.5625vw;
        border-left: max(1px, .1302083333vw) solid #69594d
    }
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__item .people__item-content .people__item-inner::after {
        right: max(10px, .5208333333vw);
        border-right: max(1px, .0520833333vw) solid #69594d
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__item .people__item-content .people__item-inner::after {
        right: 1.5625vw;
        border-right: max(1px, .1302083333vw) solid #69594d
    }
}

.character .people .people__content .people__item .people__item-content .people__item-background {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__item .people__item-content .people__item-background {
        background: url(../../images/pc/index/people-bg_grunge.png) no-repeat top center/100% auto
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__item .people__item-content .people__item-background {
        background: url(../../images/sp/index/people-bg_grunge.png) no-repeat top center/100% auto
    }
}

.character .people .people__content .people__item .people__item-content .people__item-background p {
    position: absolute;
    font-family: "Noto Serif JP", serif;
    letter-spacing: .06em;
    background: url(../../images/common/index/mask_grunge_text.png) repeat top center/max(241px, 12.5520833333vw) auto;
    -webkit-background-clip: text;
    background-clip: text;
    color: rgba(255, 255, 255, 0);
    -webkit-transform: translateX(100%) rotate(90deg);
    transform: translateX(100%) rotate(90deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    line-height: 1.6;
    font-size: 11rem;
    opacity: .5
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__item .people__item-content .people__item-background p {
        top: max(30px, 1.5625vw);
        right: min(-34px, -1.7708333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__item .people__item-content .people__item-background p {
        background-size: 31.3802083333vw auto;
        top: 3.90625vw;
        right: -4.4270833333vw
    }
}

.character .people .people__content .people__item .people__item-content .people__item-container {
    position: relative;
    z-index: 2
}

.character .people .people__content .people__item .people__item-content .people__item-name {
    color: #69594d;
    font-family: "Noto Serif JP", serif;
    letter-spacing: .06em
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__item .people__item-content .people__item-name {
        line-height: 1;
        font-size: 4.4rem
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__item .people__item-content .people__item-name {
        font-size: 5rem;
        line-height: 1.2
    }
}

.character .people .people__content .people__item .people__item-content .people__item-cv {
    font-family: "Noto Serif JP", serif;
    letter-spacing: .06em;
    line-height: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    color: #69594d;
    line-height: 1.6
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__item .people__item-content .people__item-cv {
        margin: max(20px, 1.0416666667vw) 0 0;
        font-size: 1.4rem
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__item .people__item-content .people__item-cv {
        margin: 2.6041666667vw 0 0;
        font-size: 2.4rem
    }
}

.character .people .people__content .people__item .people__item-content .people__item-cv .cv {
    font-family: adobe-garamond-pro, serif;
    color: #fff;
    background: #69594d;
    display: inline-block;
    line-height: 1;
    letter-spacing: .08em;
    font-weight: 600
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__item .people__item-content .people__item-cv .cv {
        margin-right: max(12px, .625vw);
        font-size: 1.4rem;
        padding: max(5px, .2604166667vw) max(10px, .5208333333vw) max(2px, .1041666667vw) max(12px, .625vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__item .people__item-content .people__item-cv .cv {
        margin-right: 1.8229166667vw;
        font-size: 2.2rem;
        padding: .9114583333vw 1.6927083333vw .6510416667vw 2.0833333333vw
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__item .people__item-content .people__item-cv .name {
        -webkit-transform: translateY(-.2604166667vw);
        transform: translateY(-.2604166667vw)
    }
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__item .people__item-content .people__item-cv .small {
        font-size: 1rem;
        margin-left: 1rem
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__item .people__item-content .people__item-cv .small {
        font-size: 1.8rem;
        display: block
    }
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__item .people__item-content .people__item-text {
        margin: max(30px, 1.5625vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__item .people__item-content .people__item-text {
        margin: 4.4270833333vw 0 0
    }
}

.character .people .people__content .people__item .people__item-content .people__item-text p {
    letter-spacing: .06em;
    line-height: 2;
    font-weight: 400;
    color: #69594d
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__item .people__item-content .people__item-text p {
        font-size: 1.6rem
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__item .people__item-content .people__item-text p {
        font-size: 2.4rem
    }
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content .people__item .people__item-content .people__item-text p+p {
        margin-top: max(20px, 1.0416666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content .people__item .people__item-content .people__item-text p+p {
        margin-top: 1.3020833333vw
    }
}

.character .people .people__content.js-animation .people__item-content .people__item-background {
    -webkit-transition: opacity 1.6s .2s;
    transition: opacity 1.6s .2s;
    opacity: 0
}

.character .people .people__content.js-animation .people__item-content .people__item-container {
    -webkit-transition: opacity 1s .2s, -webkit-transform 1s .2s;
    transition: opacity 1s .2s, -webkit-transform 1s .2s;
    transition: opacity 1s .2s, transform 1s .2s;
    transition: opacity 1s .2s, transform 1s .2s, -webkit-transform 1s .2s;
    opacity: 0
}

@media print,
screen and (min-width:1025px) {
    .character .people .people__content.js-animation .people__item-content .people__item-container {
        -webkit-transform: translateY(max(20px, 1.0416666667vw));
        transform: translateY(max(20px, 1.0416666667vw))
    }
}

@media print,
screen and (max-width:1024px) {
    .character .people .people__content.js-animation .people__item-content .people__item-container {
        -webkit-transform: translateY(2.6041666667vw);
        transform: translateY(2.6041666667vw)
    }
}

.character .people .people__content.js-animation.--animated .people__item-content .people__item-background {
    opacity: 1
}

.character .people .people__content.js-animation.--animated .people__item-content .people__item-container {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

@media print,
screen and (min-width:1025px) {
    .character .spirit {
        padding: max(210px, 10.9375vw) 0 max(180px, 9.375vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit {
        padding: 19.2708333333vw 0 22.1354166667vw
    }
}

.character .spirit .spirit__top.js-animation .spirit__heading {
    -webkit-transition: opacity 1s .2s, -webkit-transform 1s .2s;
    transition: opacity 1s .2s, -webkit-transform 1s .2s;
    transition: opacity 1s .2s, transform 1s .2s;
    transition: opacity 1s .2s, transform 1s .2s, -webkit-transform 1s .2s;
    opacity: 0
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__top.js-animation .spirit__heading {
        -webkit-transform: translateY(max(20px, 1.0416666667vw));
        transform: translateY(max(20px, 1.0416666667vw))
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__top.js-animation .spirit__heading {
        -webkit-transform: translateY(2.6041666667vw);
        transform: translateY(2.6041666667vw)
    }
}

.character .spirit .spirit__top.js-animation .spirit__text {
    -webkit-transition: opacity 1s .4s, -webkit-transform 1s .4s;
    transition: opacity 1s .4s, -webkit-transform 1s .4s;
    transition: opacity 1s .4s, transform 1s .4s;
    transition: opacity 1s .4s, transform 1s .4s, -webkit-transform 1s .4s;
    opacity: 0
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__top.js-animation .spirit__text {
        -webkit-transform: translateY(max(20px, 1.0416666667vw));
        transform: translateY(max(20px, 1.0416666667vw))
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__top.js-animation .spirit__text {
        -webkit-transform: translateY(2.6041666667vw);
        transform: translateY(2.6041666667vw)
    }
}

.character .spirit .spirit__top.js-animation.--animated .spirit__heading,
.character .spirit .spirit__top.js-animation.--animated .spirit__text {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

.character .spirit .spirit__heading {
    margin: 0 auto;
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__heading {
        width: max(600px, 31.25vw);
        gap: max(20px, 1.0416666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__heading {
        width: 89.5833333333vw;
        gap: 3.90625vw
    }
}

.character .spirit .spirit__heading::after,
.character .spirit .spirit__heading::before {
    content: "";
    position: relative;
    z-index: 2;
    display: block;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%205%2013%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M2.51527%200C3.64504%200%204.5%200.92402%204.5%202.10294C4.5%203.28186%203.64504%204.20588%202.51527%204.20588C1.35496%204.20588%200.5%203.28186%200.5%202.10294C0.5%200.92402%201.35496%200%202.51527%200ZM2.51527%2013C1.35496%2013%200.5%2012.076%200.5%2010.8971C0.5%209.71814%201.35496%208.79412%202.51527%208.79412C3.64504%208.79412%204.5%209.71814%204.5%2010.8971C4.5%2012.076%203.64504%2013%202.51527%2013Z%22%20fill%3D%22url(%23paint0_linear_448_18658)%22%2F%3E%0A%3Cdefs%3E%0A%3ClinearGradient%20id%3D%22paint0_linear_448_18658%22%20x1%3D%222.5%22%20y1%3D%220%22%20x2%3D%222.5%22%20y2%3D%2213%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%0A%3Cstop%20stop-color%3D%22%23008ED4%22%2F%3E%0A%3Cstop%20offset%3D%221%22%20stop-color%3D%22%2300659C%22%2F%3E%0A%3C%2FlinearGradient%3E%0A%3C%2Fdefs%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain
}

@media print,
screen and (min-width:1025px) {

    .character .spirit .spirit__heading::after,
    .character .spirit .spirit__heading::before {
        width: max(5px, .2604166667vw);
        height: max(14px, .7291666667vw);
        -webkit-transform: translateY(max(3px, .15625vw));
        transform: translateY(max(3px, .15625vw))
    }
}

@media print,
screen and (max-width:1024px) {

    .character .spirit .spirit__heading::after,
    .character .spirit .spirit__heading::before {
        width: .9114583333vw;
        height: 2.734375vw;
        -webkit-transform: translateY(.390625vw);
        transform: translateY(.390625vw)
    }
}

.character .spirit .spirit__heading .spirit__heading-background {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 100%
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__heading .spirit__heading-background {
        height: max(54px, 2.8125vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__heading .spirit__heading-background {
        height: 10.6770833333vw
    }
}

.character .spirit .spirit__heading .spirit__heading-background::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    opacity: .4
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__heading .spirit__heading-background::before {
        width: max(475px, 24.7395833333vw);
        height: max(66px, 3.4375vw);
        background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(10.46%, rgba(255, 255, 255, .72)), color-stop(20.47%, rgba(255, 255, 255, .84)), color-stop(49.09%, rgba(255, 255, 255, .9)), color-stop(82.56%, rgba(255, 255, 255, .84)), color-stop(92.81%, rgba(255, 255, 255, .2)), color-stop(98.17%, rgba(255, 255, 255, 0)));
        background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, .72) 10.46%, rgba(255, 255, 255, .84) 20.47%, rgba(255, 255, 255, .9) 49.09%, rgba(255, 255, 255, .84) 82.56%, rgba(255, 255, 255, .2) 92.81%, rgba(255, 255, 255, 0) 98.17%);
        background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, .72) 10.46%, rgba(255, 255, 255, .84) 20.47%, rgba(255, 255, 255, .9) 49.09%, rgba(255, 255, 255, .84) 82.56%, rgba(255, 255, 255, .2) 92.81%, rgba(255, 255, 255, 0) 98.17%)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__heading .spirit__heading-background::before {
        width: 79.1666666667vw;
        height: 12.7604166667vw;
        background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(10.46%, rgba(255, 255, 255, .1)), color-stop(20.47%, rgba(255, 255, 255, .3)), color-stop(49.09%, rgba(255, 255, 255, .5)), color-stop(82.56%, rgba(255, 255, 255, .3)), color-stop(92.81%, rgba(255, 255, 255, .1)), color-stop(98.17%, rgba(255, 255, 255, 0)));
        background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, .1) 10.46%, rgba(255, 255, 255, .3) 20.47%, rgba(255, 255, 255, .5) 49.09%, rgba(255, 255, 255, .3) 82.56%, rgba(255, 255, 255, .1) 92.81%, rgba(255, 255, 255, 0) 98.17%);
        background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, .1) 10.46%, rgba(255, 255, 255, .3) 20.47%, rgba(255, 255, 255, .5) 49.09%, rgba(255, 255, 255, .3) 82.56%, rgba(255, 255, 255, .1) 92.81%, rgba(255, 255, 255, 0) 98.17%)
    }
}

.character .spirit .spirit__heading .spirit__heading-background::after {
    content: "";
    display: block;
    position: absolute;
    background: -webkit-gradient(linear, left top, right top, color-stop(1.51%, rgba(255, 255, 255, 0)), color-stop(11.32%, rgba(255, 255, 255, .6)), color-stop(21.13%, rgba(255, 255, 255, .8)), color-stop(50.55%, rgba(255, 255, 255, .9)), color-stop(79.97%, rgba(255, 255, 255, .8)), color-stop(89.78%, rgba(255, 255, 255, .4)), color-stop(99.58%, rgba(255, 255, 255, 0)));
    background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 1.51%, rgba(255, 255, 255, .6) 11.32%, rgba(255, 255, 255, .8) 21.13%, rgba(255, 255, 255, .9) 50.55%, rgba(255, 255, 255, .8) 79.97%, rgba(255, 255, 255, .4) 89.78%, rgba(255, 255, 255, 0) 99.58%);
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 1.51%, rgba(255, 255, 255, .6) 11.32%, rgba(255, 255, 255, .8) 21.13%, rgba(255, 255, 255, .9) 50.55%, rgba(255, 255, 255, .8) 79.97%, rgba(255, 255, 255, .4) 89.78%, rgba(255, 255, 255, 0) 99.58%);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}

.character .spirit .spirit__heading .spirit__heading-text {
    position: relative;
    z-index: 2;
    display: inline-block;
    font-family: "Noto Serif JP", serif;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .06em;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #00659c), to(#008ed4));
    background: -webkit-linear-gradient(top, #00659c 0, #008ed4 100%);
    background: linear-gradient(to bottom, #00659c 0, #008ed4 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: rgba(255, 255, 255, 0);
    display: inline-block
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__heading .spirit__heading-text {
        font-size: 3.6rem
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__heading .spirit__heading-text {
        font-size: 5.2rem
    }
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__text {
        margin: max(66px, 3.4375vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__text {
        margin: 7.5520833333vw 0 0
    }
}

.character .spirit .spirit__text p {
    font-family: "Noto Serif JP", serif;
    color: #fff;
    letter-spacing: .06em;
    line-height: 1.8;
    text-align: center
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__text p {
        font-size: 2rem
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__text p {
        font-size: 3rem
    }
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content {
        margin: max(50px, 2.6041666667vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content {
        margin: 6.5104166667vw 0 0
    }
}

.character .spirit .spirit__content .swiper {
    overflow: visible
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper {
        width: max(520px, 27.0833333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper {
        width: 79.1666666667vw
    }
}

.character .spirit .spirit__content .swiper .swiper-slide {
    height: auto
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide {
        padding: 0 max(10px, .5208333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide {
        padding: 0 1.3020833333vw
    }
}

.character .spirit .spirit__content .swiper .swiper-slide .spirit__item {
    position: relative;
    background: url(../../images/common/index/bg_grunge.jpg) repeat-y top center/max(1920px, 100vw) auto;
    height: 100%
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item {
        padding: max(10px, .5208333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item {
        background-size: 197.3958333333vw auto;
        padding: 1.5625vw
    }
}

.character .spirit .spirit__content .swiper .swiper-slide .spirit__item::after,
.character .spirit .spirit__content .swiper .swiper-slide .spirit__item::before {
    content: "";
    display: block;
    position: absolute
}

@media print,
screen and (min-width:1025px) {

    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item::after,
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item::before {
        width: max(12px, .625vw);
        height: max(12px, .625vw);
        border-top: max(1px, .0520833333vw) solid #69594d;
        top: max(10px, .5208333333vw)
    }
}

@media print,
screen and (max-width:1024px) {

    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item::after,
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item::before {
        width: 1.5625vw;
        height: 1.5625vw;
        border-top: max(1px, .1302083333vw) solid #69594d;
        top: 1.5625vw
    }
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item::before {
        left: max(10px, .5208333333vw);
        border-left: max(1px, .0520833333vw) solid #69594d
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item::before {
        left: 1.5625vw;
        border-left: max(1px, .1302083333vw) solid #69594d
    }
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item::after {
        right: max(10px, .5208333333vw);
        border-right: max(1px, .0520833333vw) solid #69594d
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item::after {
        right: 1.5625vw;
        border-right: max(1px, .1302083333vw) solid #69594d
    }
}

.character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-inner {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(197, 153, 45, .1)), color-stop(45%, rgba(255, 255, 255, .1))), #fff;
    background: -webkit-linear-gradient(top, rgba(197, 153, 45, .1) 0, rgba(255, 255, 255, .1) 45%), #fff;
    background: linear-gradient(to bottom, rgba(197, 153, 45, .1) 0, rgba(255, 255, 255, .1) 45%), #fff;
    height: 100%
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-inner {
        padding: max(40px, 2.0833333333vw) max(20px, 1.0416666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-inner {
        padding: 4.9479166667vw 3.125vw 5.2083333333vw
    }
}

.character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-inner::after,
.character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-inner::before {
    content: "";
    display: block;
    position: absolute
}

@media print,
screen and (min-width:1025px) {

    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-inner::after,
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-inner::before {
        width: max(12px, .625vw);
        height: max(12px, .625vw);
        border-bottom: max(1px, .0520833333vw) solid #69594d;
        bottom: max(10px, .5208333333vw)
    }
}

@media print,
screen and (max-width:1024px) {

    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-inner::after,
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-inner::before {
        width: 1.5625vw;
        height: 1.5625vw;
        border-bottom: max(1px, .1302083333vw) solid #69594d;
        bottom: 1.5625vw
    }
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-inner::before {
        left: max(10px, .5208333333vw);
        border-left: max(1px, .0520833333vw) solid #69594d
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-inner::before {
        left: 1.5625vw;
        border-left: max(1px, .1302083333vw) solid #69594d
    }
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-inner::after {
        right: max(10px, .5208333333vw);
        border-right: max(1px, .0520833333vw) solid #69594d
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-inner::after {
        right: 1.5625vw;
        border-right: max(1px, .1302083333vw) solid #69594d
    }
}

.character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-background {
        background: url(../../images/pc/index/spirit-bg_grunge.png) no-repeat top center/100% auto
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-background {
        background: url(../../images/sp/index/spirit-bg_grunge.png) no-repeat top center/100% auto
    }
}

.character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-background p {
    position: absolute;
    -webkit-transform: translateX(-50%) rotate(-9.6deg);
    transform: translateX(-50%) rotate(-9.6deg)
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-background p {
        left: 51%;
        top: max(60px, 3.125vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-background p {
        left: 52%;
        top: 9.1145833333vw
    }
}

.character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-background p span {
    display: block;
    font-family: adobe-garamond-pro, serif;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: .06em;
    background: url(../../images/common/index/mask_grunge_text.png) repeat top center/max(241px, 12.5520833333vw) auto;
    -webkit-background-clip: text;
    background-clip: text;
    color: rgba(255, 255, 255, 0);
    text-align: center;
    opacity: .7
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-background p span {
        font-size: 13.435rem
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-background p span {
        font-size: 15.8rem;
        background-size: 31.3802083333vw auto
    }
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-background p span+span {
        margin-top: -6rem
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-background p span+span {
        margin-top: -7rem
    }
}

.character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-container {
    position: relative;
    z-index: 2
}

.character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top {
    position: relative
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top {
        padding-left: max(206px, 10.7291666667vw);
        height: max(330px, 17.1875vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top {
        padding-left: 31.25vw;
        height: 52.0833333333vw
    }
}

.character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-visual {
    position: absolute
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-visual {
        top: min(-40px, -2.0833333333vw);
        left: min(-20px, -1.0416666667vw);
        width: max(230px, 11.9791666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-visual {
        top: -4.9479166667vw;
        left: -2.6041666667vw;
        width: 35.15625vw
    }
}

.character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-name {
    font-family: "Noto Serif JP", serif;
    color: #69594d;
    letter-spacing: .06em;
    line-height: 1.2
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-name {
        font-size: 3.8rem
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-name {
        font-size: 5rem
    }
}

.character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-cv {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: baseline;
    -webkit-align-items: baseline;
    align-items: baseline;
    font-family: "Noto Serif JP", serif;
    letter-spacing: .06em;
    line-height: 1;
    color: #69594d
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-cv {
        font-size: 1.4rem;
        margin: max(20px, 1.0416666667vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-cv {
        font-size: 2.4rem;
        margin: 3.125vw 0 0
    }
}

.character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-cv .cv {
    display: inline-block;
    background: #69594d;
    color: #fff;
    font-family: adobe-garamond-pro, serif;
    font-weight: 600;
    letter-spacing: .08em;
    line-height: 1
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-cv .cv {
        margin-right: max(10px, .5208333333vw);
        padding: max(5px, .2604166667vw) max(10px, .5208333333vw) max(3px, .15625vw) max(12px, .625vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-cv .cv {
        margin-right: 1.8229166667vw;
        padding: .78125vw 1.5625vw .2604166667vw 1.8229166667vw;
        font-size: 2.2rem
    }
}

.character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-scene {
    position: relative;
    background: url(../../images/common/index/bg_grunge_content.jpg) repeat-y top left/100% 100%
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-scene {
        padding: max(4px, .2083333333vw);
        margin: max(74px, 3.8541666667vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-scene {
        padding: .6510416667vw;
        margin: 11.71875vw 0 0;
        background-size: 197.3958333333vw auto
    }
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-scene.spirit__item-scene--narrow {
        margin-top: max(28px, 1.4583333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-scene.spirit__item-scene--narrow {
        margin-top: 3.90625vw
    }
}

.character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-scene::after {
    content: "";
    display: block;
    position: absolute;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2081%2044%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cg%20clip-path%3D%22url(%23clip0_888_255)%22%3E%0A%3Cpath%20opacity%3D%220.5%22%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M7.68407%202.17221C7.68407%202.17221%207.66714%201.70316%207.76233%202.18466C7.72372%202.20026%207.4674%202.98241%207.47911%203.0658C7.4405%203.0814%207.39224%203.1009%207.34956%203.10933C7.29941%203.5438%207.23961%203.98216%207.18946%204.41663C7.10362%204.49537%207.02336%204.56305%206.93752%204.6418C6.94365%204.73626%206.95537%204.81966%206.96149%204.91412C6.87158%204.9857%206.78574%205.06445%206.69583%205.13602C6.70196%205.23049%206.71368%205.31388%206.71981%205.40835C6.6299%205.47993%206.54406%205.55867%206.4638%205.62635C6.46993%205.72082%206.48165%205.80421%206.48777%205.89867C6.43951%205.91817%206.4009%205.93377%206.34857%205.9461C6.37152%206.17478%206.3904%206.39629%206.41334%206.62496C6.36508%206.64446%206.32647%206.66006%206.28379%206.66849C6.15296%207.39994%206.56474%208.00029%206.71881%208.33462C6.94458%208.81623%206.79682%209.07863%207.21862%209.27835C7.14917%209.72061%206.57224%2010.5442%206.67702%2010.8543C6.71563%2010.8387%206.7639%2010.8192%206.81216%2010.7997C6.87268%2010.9692%206.9388%2011.1275%206.99933%2011.297C6.77986%2011.4121%206.55481%2011.5382%206.33535%2011.6534C6.27804%2011.9497%206.36334%2011.7654%206.22013%2011.9731C6.3555%2012.5882%206.62784%2012.5663%206.87595%2013.0036C6.91456%2012.988%206.96283%2012.9685%207.00144%2012.9529C6.93447%2013.2532%206.87716%2013.5495%206.8102%2013.8498C6.6827%2013.9806%206.55928%2014.1186%206.43179%2014.2494C6.43792%2014.3439%206.44964%2014.4273%206.45577%2014.5218C6.41716%2014.5374%206.36889%2014.5569%206.32063%2014.5764C6.29987%2014.7698%206.26945%2014.9672%206.23496%2015.1574C6.19635%2015.173%206.14809%2015.1925%206.10542%2015.2009C6.12223%2015.3351%206.12939%2015.4732%206.1462%2015.6074C6.09794%2015.6269%206.05933%2015.6425%206.00701%2015.6549C6.02485%2015.8327%206.0427%2016.0106%206.06054%2016.1884C6.01228%2016.2079%205.97367%2016.2235%205.9254%2016.243C5.94222%2016.3772%205.94939%2016.5154%205.9662%2016.6496C5.79148%2016.8435%205.63048%2017.0408%205.46541%2017.2308C5.47154%2017.3253%205.48325%2017.4087%205.48939%2017.5032C5.45078%2017.5188%205.39845%2017.5311%205.35984%2017.5467C5.23848%2017.772%205.11712%2017.9973%205.00541%2018.2187C4.9155%2018.2902%204.83931%2018.3651%204.7494%2018.4367C4.76725%2018.6145%204.78916%2018.7996%204.80701%2018.9774C4.84562%2018.9618%204.89388%2018.9423%204.93656%2018.9339C5.04188%2019.3496%204.70416%2019.8209%204.48373%2020.0598C4.60781%2020.3622%204.57017%2020.254%204.79328%2020.3754C4.79431%2020.419%204.80499%2020.4588%204.8101%2020.5096C4.89697%2020.4745%204.98791%2020.4466%205.07885%2020.4186C5.18661%2020.5249%205.28065%2020.6279%205.3884%2020.7342C5.47527%2020.6991%205.57028%2020.6784%205.65716%2020.6433L6.13529%2020.6704L76.1576%2028.5651C76.6298%2027.5988%2076.4841%2026.5472%2076.5895%2025.7291C76.5635%2025.3695%2076.5278%2025.0138%2076.488%2024.6509C76.5363%2024.6314%2076.5749%2024.6158%2076.6231%2024.5963C76.6114%2024.5129%2076.6053%2024.4184%2076.5992%2024.324C76.6891%2024.2524%2076.7653%2024.1775%2076.8552%2024.106C76.849%2024.0115%2076.8373%2023.9281%2076.8312%2023.8336C76.9211%2023.7621%2077.0069%2023.6833%2077.0872%2023.6156C77.0811%2023.5212%2077.0694%2023.4378%2077.0632%2023.3433C77.1531%2023.2717%2077.239%2023.193%2077.3152%2023.1181C77.5807%2022.5614%2077.6471%2022.1556%2077.5681%2021.368C77.6976%2021.3244%2077.8368%2021.277%2077.9664%2021.2335C78.0892%2020.8225%2078.2516%2020.1048%2078.5289%2019.7989C78.7341%2019.5749%2078.8362%2019.6923%2079.0465%2019.3518C79.0851%2019.3362%2079.1334%2019.3167%2079.176%2019.3083C79.0601%2019.0202%2078.9345%2018.7361%2078.8226%2018.4552C78.8612%2018.4396%2078.9095%2018.4201%2078.9577%2018.4006C78.9409%2018.2664%2078.9241%2018.1322%2078.9169%2017.9941C79.0529%2017.4809%2079.3643%2017.214%2079.7849%2016.8679C79.762%2016.6392%2079.7431%2016.4177%2079.7242%2016.1962C79.7272%2016.1597%2079.8913%2016.0934%2079.8298%2015.8803C79.7815%2015.8998%2079.7429%2015.9154%2079.7043%2015.931C79.6467%2015.3903%2079.6028%2014.8528%2079.5452%2014.312C79.5096%2014.1237%2079.4151%2014.4175%2079.3988%2014.2214C79.4374%2014.2058%2079.4857%2014.1863%2079.538%2014.1739C79.6496%2013.4503%2080.1742%2012.8065%2080.458%2012.1983C80.4519%2012.1038%2080.4402%2012.0204%2080.434%2011.926C80.4823%2011.9065%2080.5209%2011.8909%2080.5732%2011.8785C80.6433%2011.7092%2080.7311%2011.5504%2080.8012%2011.381C80.8881%2011.3459%2080.9831%2011.3252%2081.074%2011.2973C81.073%2011.2536%2081.2795%2010.5092%2081.2785%2010.4655C81.3654%2010.4304%207.69372%202.16831%207.69372%202.16831L7.68407%202.17221Z%22%20fill%3D%22%23BE9B70%22%2F%3E%0A%3C%2Fg%3E%0A%3Cdefs%3E%0A%3CclipPath%20id%3D%22clip0_888_255%22%3E%0A%3Crect%20width%3D%2280%22%20height%3D%2244%22%20fill%3D%22white%22%20transform%3D%22translate(0.500122)%22%2F%3E%0A%3C%2FclipPath%3E%0A%3C%2Fdefs%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain;
    left: 50%;
    -webkit-transform: translateX(-50%) scaleX(-1);
    transform: translateX(-50%) scaleX(-1)
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-scene::after {
        top: min(-16px, -.8333333333vw);
        width: max(41px, 2.1354166667vw);
        height: max(25px, 1.3020833333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-scene::after {
        top: -1.3020833333vw;
        width: 6.25vw;
        height: 3.7760416667vw
    }
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-text {
        margin: max(20px, 1.0416666667vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-text {
        margin: 1.3020833333vw 0 0
    }
}

.character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-text p {
    color: #69594d;
    line-height: 2;
    font-weight: 400;
    letter-spacing: .06em
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-text p {
        font-size: 1.6rem
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-text p {
        font-size: 2.4rem
    }
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-text p+p {
        margin-top: max(20px, 1.0416666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-text p+p {
        margin-top: 1.3020833333vw
    }
}

@media (any-hover:hover) {
    .character .spirit .spirit__content .swiper {
        cursor: -webkit-grab;
        cursor: grab
    }
}

@media print,
screen and (min-width:1025px) {
    .character .spirit .spirit__content .spirit__navigation {
        margin: max(50px, 2.6041666667vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .character .spirit .spirit__content .spirit__navigation {
        margin: 7.8125vw 0 0
    }
}

.character .spirit .spirit__content.js-animation .spirit__item-background {
    -webkit-transition: opacity 1.6s .2s;
    transition: opacity 1.6s .2s;
    opacity: 0
}

.character .spirit .spirit__content.js-animation .spirit__item-visual {
    -webkit-transition: opacity 1s .2s;
    transition: opacity 1s .2s;
    opacity: 0
}

.character .spirit .spirit__content.js-animation .spirit__item-cv,
.character .spirit .spirit__content.js-animation .spirit__item-name,
.character .spirit .spirit__content.js-animation .spirit__item-text {
    -webkit-transition: opacity 1s .2s, -webkit-transform 1s .2s;
    transition: opacity 1s .2s, -webkit-transform 1s .2s;
    transition: opacity 1s .2s, transform 1s .2s;
    transition: opacity 1s .2s, transform 1s .2s, -webkit-transform 1s .2s;
    opacity: 0
}

@media print,
screen and (min-width:1025px) {

    .character .spirit .spirit__content.js-animation .spirit__item-cv,
    .character .spirit .spirit__content.js-animation .spirit__item-name,
    .character .spirit .spirit__content.js-animation .spirit__item-text {
        -webkit-transform: translateY(max(20px, 1.0416666667vw));
        transform: translateY(max(20px, 1.0416666667vw))
    }
}

@media print,
screen and (max-width:1024px) {

    .character .spirit .spirit__content.js-animation .spirit__item-cv,
    .character .spirit .spirit__content.js-animation .spirit__item-name,
    .character .spirit .spirit__content.js-animation .spirit__item-text {
        -webkit-transform: translateY(2.6041666667vw);
        transform: translateY(2.6041666667vw)
    }
}

.character .spirit .spirit__content.js-animation.--animated .spirit__item-background,
.character .spirit .spirit__content.js-animation.--animated .spirit__item-visual {
    opacity: 1
}

.character .spirit .spirit__content.js-animation.--animated .spirit__item-cv,
.character .spirit .spirit__content.js-animation.--animated .spirit__item-name,
.character .spirit .spirit__content.js-animation.--animated .spirit__item-text {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

.bottom-content {
    position: relative;
    z-index: 1;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #3491e3), to(#0072d5));
    background: -webkit-linear-gradient(top, #3491e3 0, #0072d5 100%);
    background: linear-gradient(to bottom, #3491e3 0, #0072d5 100%);
    pointer-events: auto
}

@media print,
screen and (min-width:1025px) {
    .bottom-content {
        margin: min(-37px, -1.9270833333vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .bottom-content {
        margin: -2.8645833333vw 0 0
    }
}

.bottom-content .bottom-content__background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none
}

.bottom-content .bottom-content__background .bottom-content__background-blur {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%
}

.bottom-content .bottom-content__background .bottom-content__background-cloud-1 {
    position: absolute;
    right: 0
}

@media print,
screen and (min-width:1025px) {
    .bottom-content .bottom-content__background .bottom-content__background-cloud-1 {
        top: max(212px, 11.0416666667vw);
        width: max(460px, 23.9583333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .bottom-content .bottom-content__background .bottom-content__background-cloud-1 {
        top: 3.6458333333vw;
        width: 54.296875vw
    }
}

.bottom-content .bottom-content__background .bottom-content__background-cloud-2 {
    position: absolute;
    left: 0
}

@media print,
screen and (min-width:1025px) {
    .bottom-content .bottom-content__background .bottom-content__background-cloud-2 {
        top: max(890px, 46.3541666667vw);
        width: max(564px, 29.375vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .bottom-content .bottom-content__background .bottom-content__background-cloud-2 {
        top: 59.765625vw;
        width: 51.6927083333vw
    }
}

.bottom-content .bottom-content__background .bottom-content__background-cloud-3 {
    position: absolute;
    left: 0
}

@media print,
screen and (min-width:1025px) {
    .bottom-content .bottom-content__background .bottom-content__background-cloud-3 {
        bottom: max(77px, 4.0104166667vw);
        width: max(522px, 27.1875vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .bottom-content .bottom-content__background .bottom-content__background-cloud-3 {
        top: 325.5208333333vw;
        width: 100%
    }
}

.bottom-content .bottom-content__background .bottom-content__background-photo {
    position: absolute;
    right: 0
}

@media print,
screen and (min-width:1025px) {
    .bottom-content .bottom-content__background .bottom-content__background-photo {
        top: max(1265px, 65.8854166667vw);
        width: max(343px, 17.8645833333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .bottom-content .bottom-content__background .bottom-content__background-photo {
        top: 361.9791666667vw;
        width: 42.96875vw
    }
}

.bottom-content .bottom-content__background .bottom-content__background-scene {
    position: absolute
}

@media print,
screen and (min-width:1025px) {
    .bottom-content .bottom-content__background .bottom-content__background-scene {
        width: max(1920px, 100vw);
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        bottom: max(120px, 6.25vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .bottom-content .bottom-content__background .bottom-content__background-scene {
        width: 100%;
        left: 0;
        bottom: 39.0625vw
    }
}

.bottom-content .bottom-content__background .bottom-content__background-leaf-1 {
    position: absolute;
    left: 0
}

@media print,
screen and (min-width:1025px) {
    .bottom-content .bottom-content__background .bottom-content__background-leaf-1 {
        top: max(205px, 10.6770833333vw);
        width: max(301px, 15.6770833333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .bottom-content .bottom-content__background .bottom-content__background-leaf-1 {
        top: 15.625vw;
        width: 100%
    }
}

.bottom-content .bottom-content__background .bottom-content__background-leaf-2 {
    position: absolute;
    right: 0
}

@media print,
screen and (min-width:1025px) {
    .bottom-content .bottom-content__background .bottom-content__background-leaf-2 {
        top: max(205px, 10.6770833333vw);
        width: max(576px, 30vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .bottom-content .bottom-content__background .bottom-content__background-leaf-2 {
        top: 215.8854166667vw;
        width: 100%
    }
}

.product {
    position: relative;
    z-index: 2
}

@media print,
screen and (min-width:1025px) {
    .product {
        padding: max(160px, 8.3333333333vw) 0 max(170px, 8.8541666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .product {
        padding: 20.1822916667vw 0 22.1354166667vw
    }
}

.product .product__inner {
    margin: 0 auto
}

@media print,
screen and (min-width:1025px) {
    .product .product__inner {
        max-width: max(1280px, 66.6666666667vw);
        padding: 0 max(40px, 2.0833333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__inner {
        width: 92.1875vw
    }
}

.product .product__content {
    position: relative;
    background: url(../../images/common/index/bg_grunge.jpg) repeat-y top left/max(1920px, 100vw) auto
}

@media print,
screen and (min-width:1025px) {
    .product .product__content {
        padding: max(12px, .625vw) max(10px, .5208333333vw) max(10px, .5208333333vw);
        margin: max(82px, 4.2708333333vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content {
        background-size: 197.3958333333vw auto;
        padding: 1.5625vw;
        margin: 7.8125vw 0 0
    }
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-container {
        background: url(../../images/pc/index/product-bg_grunge.png) no-repeat top center/100% auto, -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(197, 153, 45, .1)), color-stop(45%, rgba(255, 255, 255, .1))), #fff;
        background: url(../../images/pc/index/product-bg_grunge.png) no-repeat top center/100% auto, -webkit-linear-gradient(top, rgba(197, 153, 45, .1) 0, rgba(255, 255, 255, .1) 45%), #fff;
        background: url(../../images/pc/index/product-bg_grunge.png) no-repeat top center/100% auto, linear-gradient(to bottom, rgba(197, 153, 45, .1) 0, rgba(255, 255, 255, .1) 45%), #fff
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-container {
        background: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(197, 153, 45, .1)), color-stop(45%, rgba(255, 255, 255, .1))), #fff;
        background: -webkit-linear-gradient(top, rgba(197, 153, 45, .1) 0, rgba(255, 255, 255, .1) 45%), #fff;
        background: linear-gradient(to bottom, rgba(197, 153, 45, .1) 0, rgba(255, 255, 255, .1) 45%), #fff
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-container::before {
        content: "";
        display: block;
        position: absolute;
        z-index: 1;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: url(../../images/sp/index/product-bg_grunge.png) no-repeat top center/100% auto
    }
}

.product .product__content .product__content-inner {
    position: relative;
    z-index: 2;
    margin: 0 auto
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-inner {
        max-width: max(1040px, 54.1666666667vw);
        padding: max(74px, 3.8541666667vw) max(40px, 2.0833333333vw) max(112px, 5.8333333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-inner {
        padding: 8.8541666667vw 0 10.4166666667vw;
        width: 79.1666666667vw
    }
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-top {
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center;
        gap: max(60px, 3.125vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1280px) {
    .product .product__content .product__content-top {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center
    }
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-top .product__content-image {
        width: max(320px, 16.6666666667vw)
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1280px) {
    .product .product__content .product__content-top .product__content-image {
        width: 480px;
        margin: 0 auto
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-top .product__content-image {
        width: 51.8229166667vw;
        margin: 0 auto
    }
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-top .product__content-announce {
        padding: 0 0 max(4px, .2083333333vw);
        -webkit-box-flex: 1;
        -webkit-flex: 1;
        flex: 1;
        max-width: max(580px, 30.2083333333vw);
        margin: 0 auto
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-top .product__content-announce {
        margin: 10.4166666667vw 0 0
    }
}

.product .product__content .product__content-top .product__content-announce .product__content-catch {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    color: #69594d;
    font-family: "Noto Serif JP", serif;
    font-weight: 600;
    letter-spacing: .06em
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-top .product__content-announce .product__content-catch {
        font-size: 2rem;
        gap: max(16px, .8333333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-top .product__content-announce .product__content-catch {
        font-size: 2.6rem;
        gap: 2.0833333333vw
    }
}

.product .product__content .product__content-top .product__content-announce .product__content-catch::after,
.product .product__content .product__content-top .product__content-announce .product__content-catch::before {
    content: "";
    display: block;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%204%2012%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M2.01527%200C3.14504%200%204%200.852942%204%201.94118C4%203.02941%203.14504%203.88235%202.01527%203.88235C0.854961%203.88235%200%203.02941%200%201.94118C0%200.852942%200.854961%200%202.01527%200ZM2.01527%2012C0.854961%2012%200%2011.1471%200%2010.0588C0%208.97059%200.854961%208.11765%202.01527%208.11765C3.14504%208.11765%204%208.97059%204%2010.0588C4%2011.1471%203.14504%2012%202.01527%2012Z%22%20fill%3D%22%2369594D%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain
}

@media print,
screen and (min-width:1025px) {

    .product .product__content .product__content-top .product__content-announce .product__content-catch::after,
    .product .product__content .product__content-top .product__content-announce .product__content-catch::before {
        width: max(4px, .2083333333vw);
        height: max(12px, .625vw)
    }
}

@media print,
screen and (max-width:1024px) {

    .product .product__content .product__content-top .product__content-announce .product__content-catch::after,
    .product .product__content .product__content-top .product__content-announce .product__content-catch::before {
        width: .5208333333vw;
        height: 1.5625vw
    }
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-top .product__content-announce .product__content-catch .product__content-catch--ls {
        margin: 0 0 0 min(-24px, -1.25vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-top .product__content-announce .product__content-catch .product__content-catch--ls {
        margin: 0 0 0 -3.125vw
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-top .product__content-announce .product__content-release {
        margin: .78125vw 0 0
    }
}

.product .product__content .product__content-top .product__content-announce .product__content-platform {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-top .product__content-announce .product__content-platform {
        gap: max(20px, 1.0416666667vw);
        margin: max(56px, 2.9166666667vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-top .product__content-announce .product__content-platform {
        margin: 6.5104166667vw 0 0;
        gap: 2.0833333333vw
    }
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item {
        width: max(280px, 14.5833333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item {
        width: 38.5416666667vw
    }
}

.product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-text {
    color: #69594d;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    font-weight: 700;
    letter-spacing: .06em;
    line-height: 1.4;
    will-change: filter;
    -webkit-animation: focus 1.4s linear infinite;
    animation: focus 1.4s linear infinite;
    text-align: center
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-text {
        font-size: 1.6rem;
        gap: max(8px, .4166666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-text {
        font-size: 2.2rem;
        gap: 1.0416666667vw
    }
}

.product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-text::after,
.product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-text::before {
    content: "";
    display: block;
    -webkit-mask: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2016%2010%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M8%2010L0.5%201H3.83301L8%206L12.167%201H15.5L8%2010Z%22%20fill%3D%22white%22%2F%3E%0A%3Cpath%20d%3D%22M8%203.42871L5.5%200.571289H10.5L8%203.42871Z%22%20fill%3D%22white%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain;
    mask: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2016%2010%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M8%2010L0.5%201H3.83301L8%206L12.167%201H15.5L8%2010Z%22%20fill%3D%22white%22%2F%3E%0A%3Cpath%20d%3D%22M8%203.42871L5.5%200.571289H10.5L8%203.42871Z%22%20fill%3D%22white%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat top center/contain;
    background: #69594d
}

@media print,
screen and (min-width:1025px) {

    .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-text::after,
    .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-text::before {
        width: max(15px, .78125vw);
        height: max(10px, .5208333333vw);
        -webkit-transform: translateY(max(1px, .0520833333vw));
        transform: translateY(max(1px, .0520833333vw))
    }
}

@media print,
screen and (max-width:1024px) {

    .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-text::after,
    .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-text::before {
        width: 2.6041666667vw;
        height: 1.6927083333vw
    }
}

.product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-image {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-image {
        border-radius: max(10px, .5208333333vw);
        -webkit-box-shadow: 0 max(10px, .5208333333vw) max(20px, 1.0416666667vw) rgba(105, 89, 77, .3);
        box-shadow: 0 max(10px, .5208333333vw) max(20px, 1.0416666667vw) rgba(105, 89, 77, .3);
        height: max(78px, 4.0625vw);
        margin: max(12px, .625vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-image {
        border-radius: 1.8229166667vw;
        -webkit-box-shadow: 0 1.3020833333vw 2.6041666667vw rgba(105, 89, 77, .3);
        box-shadow: 0 1.3020833333vw 2.6041666667vw rgba(105, 89, 77, .3);
        height: 12.2395833333vw;
        margin: 2.34375vw 0 0
    }
}

.product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-image.product__content-platform-image--steam {
    background: -webkit-gradient(linear, left top, right top, color-stop(0, #07264c), to(#0f73a3));
    background: -webkit-linear-gradient(left, #07264c 0, #0f73a3 100%);
    background: linear-gradient(to right, #07264c 0, #0f73a3 100%)
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-image.product__content-platform-image--steam .product__content-platform-logo {
        width: max(164px, 8.5416666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-image.product__content-platform-image--steam .product__content-platform-logo {
        width: 26.0416666667vw
    }
}

.product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-image.product__content-platform-image--switch {
    background: #e60012
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-image.product__content-platform-image--switch .product__content-platform-logo {
        width: max(124px, 6.4583333333vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-image.product__content-platform-image--switch .product__content-platform-logo {
        width: 19.7916666667vw
    }
}

.product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-image[href=""] {
    pointer-events: none !important
}

@media (any-hover:hover) {
    .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-image {
        -webkit-transition: opacity .4s, -webkit-transform .4s;
        transition: opacity .4s, -webkit-transform .4s;
        transition: opacity .4s, transform .4s;
        transition: opacity .4s, transform .4s, -webkit-transform .4s;
        pointer-events: auto
    }

    .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item .product__content-platform-image:hover {
        opacity: 1 !important;
        -webkit-transform: scale(1.05) !important;
        transform: scale(1.05) !important
    }
}

@media (any-hover:hover) {
    .product .product__content .product__content-top .product__content-announce .product__content-platform {
        pointer-events: none
    }

    .product .product__content .product__content-top .product__content-announce .product__content-platform:hover .product__content-platform-item .product__content-platform-image {
        opacity: .6;
        -webkit-transform: scale(.95);
        transform: scale(.95)
    }
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-body {
        margin: max(84px, 4.375vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-body {
        margin: 10.4166666667vw 0 0
    }
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-body .product__content-dl {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 0 max(50px, 2.6041666667vw)
    }
}

.product .product__content .product__content-body .product__content-dl .product__content-item {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-body .product__content-dl .product__content-item {
        gap: max(20px, 1.0416666667vw);
        border-bottom: max(1px, .0520833333vw) solid rgba(105, 89, 77, .06);
        padding: 0 0 max(26px, 1.3541666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-body .product__content-dl .product__content-item {
        gap: 3.90625vw;
        padding: 0 0 5.2083333333vw;
        border-bottom: max(1px, .1302083333vw) solid rgba(105, 89, 77, .06)
    }
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-body .product__content-dl .product__content-item+.product__content-item {
        padding-top: max(20px, 1.0416666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-body .product__content-dl .product__content-item+.product__content-item {
        padding-top: 4.4270833333vw
    }
}

.product .product__content .product__content-body .product__content-dl .product__content-item dd,
.product .product__content .product__content-body .product__content-dl .product__content-item dt {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    color: #69594d;
    letter-spacing: .06em;
    line-height: 1.4;
    font-weight: 500
}

@media print,
screen and (min-width:1025px) {

    .product .product__content .product__content-body .product__content-dl .product__content-item dd,
    .product .product__content .product__content-body .product__content-dl .product__content-item dt {
        font-size: 1.6rem
    }
}

@media print,
screen and (max-width:1024px) {

    .product .product__content .product__content-body .product__content-dl .product__content-item dd,
    .product .product__content .product__content-body .product__content-dl .product__content-item dt {
        font-size: 2.4rem
    }
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-body .product__content-dl .product__content-item dt {
        width: max(110px, 5.7291666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-body .product__content-dl .product__content-item dt {
        width: 23.4375vw
    }
}

.product .product__content .product__content-body .product__content-dl .product__content-item dd {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    flex: 1
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-body .product__content-dl .product__content-item dd {
        gap: max(14px, .7291666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-body .product__content-dl .product__content-item dd {
        gap: 2.8645833333vw
    }
}

.product .product__content .product__content-body .product__content-dl .product__content-item dd .rate {
    display: inline-block
}

@media print,
screen and (min-width:1025px) {
    .product .product__content .product__content-body .product__content-dl .product__content-item dd .rate {
        width: max(30px, 1.5625vw)
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content .product__content-body .product__content-dl .product__content-item dd .rate {
        width: 6.5104166667vw
    }
}

.product .product__content.js-animation .product__content-top {
    -webkit-transition: opacity 1s .2s, -webkit-transform 1s .2s;
    transition: opacity 1s .2s, -webkit-transform 1s .2s;
    transition: opacity 1s .2s, transform 1s .2s;
    transition: opacity 1s .2s, transform 1s .2s, -webkit-transform 1s .2s;
    opacity: 0
}

@media print,
screen and (min-width:1025px) {
    .product .product__content.js-animation .product__content-top {
        -webkit-transform: translateY(max(20px, 1.0416666667vw));
        transform: translateY(max(20px, 1.0416666667vw))
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content.js-animation .product__content-top {
        -webkit-transform: translateY(2.6041666667vw);
        transform: translateY(2.6041666667vw)
    }
}

.product .product__content.js-animation .product__content-body {
    -webkit-transition: opacity 1s .4s, -webkit-transform 1s .4s;
    transition: opacity 1s .4s, -webkit-transform 1s .4s;
    transition: opacity 1s .4s, transform 1s .4s;
    transition: opacity 1s .4s, transform 1s .4s, -webkit-transform 1s .4s;
    opacity: 0
}

@media print,
screen and (min-width:1025px) {
    .product .product__content.js-animation .product__content-body {
        -webkit-transform: translateY(max(20px, 1.0416666667vw));
        transform: translateY(max(20px, 1.0416666667vw))
    }
}

@media print,
screen and (max-width:1024px) {
    .product .product__content.js-animation .product__content-body {
        -webkit-transform: translateY(2.6041666667vw);
        transform: translateY(2.6041666667vw)
    }
}

.product .product__content.js-animation.--animated .product__content-body,
.product .product__content.js-animation.--animated .product__content-top {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1
}

body.tc .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-title {
    font-family: "Noto Serif TC", serif
}

body.tc .announce .announce__heading .announce__heading-text {
    font-family: "Noto Serif TC", serif
}

body.tc .announce .announce__text p.announce__text--large {
    font-family: "Noto Serif TC", serif
}

@media print,
screen and (min-width:1025px) {
    body.tc .announce .announce__text p.announce__text--large>span .ml {
        margin-left: min(-30px, -1.5625vw)
    }
}

@media print,
screen and (max-width:1024px) {
    body.tc .announce .announce__text p.announce__text--large>span .ml {
        margin-left: -3.90625vw
    }
}

body.tc .announce .announce__award .announce__award-text {
    font-family: "Noto Serif TC", serif
}

body.tc .shutter .shutter__text {
    font-family: "Noto Serif TC", serif
}

body.tc .introduction .introduction__story .introduction__story-catch {
    font-family: "Noto Serif TC", serif
}

body.tc .introduction .introduction__gallery .swiper .introduction__features-body .introduction__features-heading p {
    font-family: "Noto Serif TC", serif
}

body.tc .world .world__item .world__item-catch .gr {
    font-family: "Noto Serif TC", serif
}

body.tc .world .world__item:nth-of-type(1) .world__item-catch .bg {
    background-size: 100% 100%
}

@media print,
screen and (min-width:1025px) {
    body.tc .world .world__item:nth-of-type(1) .world__item-catch .bg {
        width: max(120px, 6.25vw)
    }
}

@media print,
screen and (max-width:1024px) {
    body.tc .world .world__item:nth-of-type(1) .world__item-catch .bg {
        width: 21.6145833333vw
    }
}

body.tc .world .world__item:nth-of-type(1) .world__item-catch .gr {
    white-space: nowrap
}

body.tc .character .people .people__content .people__item .people__item-content .people__item-background p {
    font-family: "Noto Serif TC", serif
}

body.tc .character .people .people__content .people__item .people__item-content .people__item-name {
    font-family: "Noto Serif TC", serif
}

body.tc .character .people .people__content .people__item .people__item-content .people__item-cv {
    font-family: "Noto Serif TC", serif
}

body.tc .character .spirit .spirit__heading .spirit__heading-text {
    font-family: "Noto Serif TC", serif
}

body.tc .character .spirit .spirit__text p {
    font-family: "Noto Serif TC", serif
}

body.tc .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-name {
    font-family: "Noto Serif TC", serif
}

body.tc .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-cv {
    font-family: "Noto Serif TC", serif
}

body.tc .product .product__content .product__content-top .product__content-announce .product__content-catch {
    font-family: "Noto Serif TC", serif
}

@media print,
screen and (min-width:1025px) and (max-width:1280px) {
    body.en .hero .hero__catch {
        top: calc(-3.59375vw + 40px - 3.125vw);
        right: calc(50% - 31.640625vw - 80px + 6.25vw);
        width: 63.28125vw
    }
}

body.en .hero .hero__platform .hero__platform-item:not(.coming-soon) .hero__platform-text {
    text-align: center
}

@media print,
screen and (min-width:1025px) {
    body.en .hero .hero__platform .hero__platform-item:not(.coming-soon) .hero__platform-text {
        font-size: 1.4rem
    }
}

@media print,
screen and (max-width:1024px) {
    body.en .hero .hero__platform .hero__platform-item:not(.coming-soon) .hero__platform-text {
        -webkit-box-align: end;
        -webkit-align-items: flex-end;
        align-items: flex-end;
        height: 8.8541666667vw
    }
}

@media print,
screen and (max-width:1024px) {

    body.en .hero .hero__platform .hero__platform-item:not(.coming-soon) .hero__platform-text::after,
    body.en .hero .hero__platform .hero__platform-item:not(.coming-soon) .hero__platform-text::before {
        -webkit-transform: translateY(-1.3020833333vw);
        transform: translateY(-1.3020833333vw)
    }
}

body.en .hero .hero__movie .hero__movie-body .swiper .swiper-slide .hero__movie-title {
    font-family: adobe-garamond-pro, serif
}

body.en .announce .announce__heading .announce__heading-text {
    font-family: adobe-garamond-pro, serif
}

body.en .announce .announce__text p.announce__text--large {
    font-family: adobe-garamond-pro, serif
}

@media print,
screen and (min-width:1025px) {
    body.en .announce .announce__text p.announce__text--large {
        font-size: 6.4rem
    }
}

@media print,
screen and (max-width:1024px) {
    body.en .announce .announce__text p.announce__text--large {
        font-size: 6.4rem
    }
}

@media print,
screen and (min-width:1025px) and (max-width:1280px) {
    body.en .announce .announce__text p.announce__text--large>span {
        display: block;
        width: 100%
    }
}

@media print,
screen and (min-width:1025px) {
    body.en .announce .announce__text p.announce__text--large>span.ml {
        margin-left: 1rem
    }
}

body.en .announce .announce__award .announce__award-text {
    font-family: adobe-garamond-pro, serif
}

body.en .shutter .shutter__text {
    font-family: adobe-garamond-pro, serif
}

@media print,
screen and (min-width:1025px) {
    body.en .shutter .shutter__text .shutter__text--line {
        -webkit-transform: translateY(min(-10px, -.5208333333vw));
        transform: translateY(min(-10px, -.5208333333vw))
    }
}

@media print,
screen and (max-width:1024px) {
    body.en .shutter .shutter__text .shutter__text--line {
        -webkit-transform: translateY(-1.3020833333vw);
        transform: translateY(-1.3020833333vw)
    }
}

body.en .introduction .introduction__story .introduction__story-catch {
    font-family: adobe-garamond-pro, serif
}

body.en .introduction .introduction__gallery .swiper .introduction__features-body .introduction__features-heading p {
    font-family: adobe-garamond-pro, serif
}

@media print,
screen and (max-width:1024px) {
    body.en .world .world__heading .m-title__text {
        font-size: 6rem;
        white-space: nowrap
    }
}

body.en .world .world__item .world__item-catch .bg {
    background-size: 100% 100%
}

body.en .world .world__item .world__item-catch .gr {
    font-family: adobe-garamond-pro, serif;
    line-height: 1.2
}

body.en .world .world__item:nth-of-type(1) .world__item-catch {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    flex-direction: column
}

@media print,
screen and (min-width:1025px) {
    body.en .world .world__item:nth-of-type(1) .world__item-catch .bg {
        width: max(260px, 13.5416666667vw)
    }
}

@media print,
screen and (max-width:1024px) {
    body.en .world .world__item:nth-of-type(1) .world__item-catch .bg {
        width: 44.2708333333vw
    }
}

@media print,
screen and (min-width:1025px) {
    body.en .world .world__item:nth-of-type(2) .world__item-catch .bg {
        width: max(150px, 7.8125vw);
        padding: max(6px, .3125vw) 0 0
    }
}

@media print,
screen and (max-width:1024px) {
    body.en .world .world__item:nth-of-type(2) .world__item-catch .bg {
        width: 24.7395833333vw;
        padding: .78125vw 0 0
    }
}

body.en .character .people .people__content .people__item .people__item-content .people__item-background p {
    font-family: adobe-garamond-pro, serif
}

body.en .character .people .people__content .people__item .people__item-content .people__item-name {
    font-family: adobe-garamond-pro, serif
}

body.en .character .people .people__content .people__item .people__item-content .people__item-cv {
    font-family: adobe-garamond-pro, serif
}

@media print,
screen and (min-width:1025px) {
    body.en .character .people .people__content .people__item .people__item-content .people__item-cv .small {
        font-size: 1.2rem
    }
}

@media print,
screen and (max-width:1024px) {
    body.en .character .people .people__content .people__item .people__item-content .people__item-cv .small {
        white-space: nowrap
    }
}

body.en .character .spirit .spirit__heading .spirit__heading-text {
    font-family: adobe-garamond-pro, serif
}

body.en .character .spirit .spirit__text p {
    font-family: adobe-garamond-pro, serif
}

@media print,
screen and (min-width:1025px) {
    body.en .character .spirit .spirit__text p {
        font-size: 2.2rem
    }
}

body.en .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-name {
    font-family: adobe-garamond-pro, serif
}

body.en .character .spirit .spirit__content .swiper .swiper-slide .spirit__item .spirit__item-top .spirit__item-cv {
    font-family: adobe-garamond-pro, serif
}

body.en .product .product__content .product__content-top .product__content-announce .product__content-catch {
    font-family: adobe-garamond-pro, serif
}

@media print,
screen and (min-width:1025px) {
    body.en .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item:not(.coming-soon) .product__content-platform-text {
        font-size: 1.4rem
    }
}

@media print,
screen and (max-width:1024px) {
    body.en .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item:not(.coming-soon) .product__content-platform-text {
        font-size: 2rem;
        -webkit-box-align: end;
        -webkit-align-items: flex-end;
        align-items: flex-end;
        height: 7.5520833333vw
    }
}

@media print,
screen and (max-width:1024px) {

    body.en .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item:not(.coming-soon) .product__content-platform-text::after,
    body.en .product .product__content .product__content-top .product__content-announce .product__content-platform .product__content-platform-item:not(.coming-soon) .product__content-platform-text::before {
        -webkit-transform: translateY(-1.0416666667vw);
        transform: translateY(-1.0416666667vw)
    }
}