@import"https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700&family=Barlow:wght@700&family=IBM+Plex+Sans+JP:wght@700&display=swap";
@import"https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/css/yakuhanjp.min.css";

html, body, h1, h2, h3, h4, h5, h6, hr, a, p, span, em, small, strong, sub, sup, mark, del, ins, strike, abbr, dfn, blockquote, q, cite, code, pre, ol, ul, li, dl, dt, dd, div, section, article, main, aside, nav, header, hgroup, footer, img, figure, figcaption, address, time, audio, video, canvas, iframe, details, summary, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
    padding: 0;
    margin: 0;
    border: 0
}

html {
    font-size: 62.5%
}

body {
    font-size: 1.6rem;
    line-height: 1.4
}

* {
    font-family: inherit;
    font-size: inherit;
    line-height: 1
}

a {
    color: inherit
}

article, aside, footer, header, nav, section, main {
    display: block
}

* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

*::before, *::after {
    -webkit-box-sizing: inherit;
    box-sizing: inherit
}

input, button, select, textarea {
    font: inherit;
    background: rgba(0, 0, 0, 0);
    border: none;
    border-radius: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    appearance: none;
    appearance: none
}

textarea {
    resize: vertical
}

input[type=checkbox], input[type=radio] {
    display: none
}

input[type=submit], input[type=button], label, button, select {
    cursor: pointer
}

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

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

button {
    display: block;
    padding: 0;
    text-align: inherit;
    cursor: pointer;
    background-color: rgba(0, 0, 0, 0);
    border: none;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

ol, ul {
    list-style: none
}

img, video {
    max-width: 100%
}

img {
    display: block;
    width: 100%;
    height: auto;
    border-style: none
}

blockquote, q {
    quotes: none
}

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

.clearfix::after {
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
    content: "."
}

.clearfix {
    display: inline-block
}

* html .clearfix {
    height: 1%
}

.clearfix {
    display: block
}

html {
    width: 100%;
    font-size: calc(100vw * 1 / 1920)
}

@media(max-width: 1920px) {
    html {
        font-size: 1px
    }
}

@media(max-width: 1440px) {
    html {
        font-size: .0694444444vw
    }
}

@media(max-width: 768px) {
    html {
        font-size: calc(100vw * 1 / 414)
    }
}

body {
    position: relative;
    width: 100%;
    height: 100%;
    font-family: YakuHanJP, "IBM Plex Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
    font-size: 16px;
    font-weight: 700;
    color: #404040;
    letter-spacing: 0;
    background-color: #fff;
    background-image: url("../images/common/bg-dot.png");
    background-repeat: repeat-y;
    background-position: center top;
    background-size: 100%;
    -webkit-font-smoothing: subpixel-antialiased;
    -moz-osx-font-smoothing: unset
}

@media(resolution >=2dppx) {
    body {
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale
    }
}

@media(max-width: 768px) {
    body {
        width: 100%;
        font-size: 14px;
        background-size: auto 415rem
    }
}

body.is-noscroll {
    overflow: hidden;
    scrollbar-gutter: stable
}

html:has(#trophies.pages),
html:has(#trophies.pages) body {
    scrollbar-width: none
}

html:has(#trophies.pages)::-webkit-scrollbar,
html:has(#trophies.pages) body::-webkit-scrollbar {
    display: none
}

:root {
    --f-min: 14px
}

@media(max-width: 768px) {
    :root {
        --f-min: 10px
    }
}

.before-scroll {
    opacity: 0;
    translate: 0 20px
}

.scroll-trigger {
    -webkit-transition: .8s cubic-bezier(0.45, 0, 0.55, 1);
    transition: .8s cubic-bezier(0.45, 0, 0.55, 1)
}

.rotate {
    -webkit-transform: rotate(0.028deg);
    transform: rotate(0.028deg)
}

.font-bl-b {
    font-family: Barlow, YakuHanJP, "IBM Plex Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, "メイリオ", Meiryo, sans-serif;
    font-weight: 700
}

.font-blc-sb {
    font-family: "Barlow Condensed", YakuHanJP, "IBM Plex Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, "メイリオ", Meiryo, sans-serif;
    font-weight: 600
}

.font-blc-b {
    font-family: "Barlow Condensed", YakuHanJP, "IBM Plex Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, "メイリオ", Meiryo, sans-serif;
    font-weight: 700
}

.parallax {
    will-change: transform, translate, opacity
}

.particle {
    --particle-duration: 0;
    --particle-delay: 0;
    position: absolute;
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
    -webkit-transition: .8s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .8s cubic-bezier(0.87, 0, 0.13, 1);
    -webkit-animation: particleAnime var(--particle-duration) cubic-bezier(0.87, 0, 0.13, 1) infinite both;
    animation: particleAnime var(--particle-duration) cubic-bezier(0.87, 0, 0.13, 1) infinite both;
    -webkit-animation-delay: var(--particle-delay);
    animation-delay: var(--particle-delay)
}

@-webkit-keyframes particleAnime {
    0% {
        -webkit-clip-path: inset(0 0 0 0);
        clip-path: inset(0 0 0 0)
    }

    15% {
        -webkit-clip-path: inset(100% 0 0 0);
        clip-path: inset(100% 0 0 0)
    }

    20% {
        -webkit-clip-path: inset(0 0 100% 0);
        clip-path: inset(0 0 100% 0)
    }

    35% {
        -webkit-clip-path: inset(0 0 0 0);
        clip-path: inset(0 0 0 0)
    }

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

@keyframes particleAnime {
    0% {
        -webkit-clip-path: inset(0 0 0 0);
        clip-path: inset(0 0 0 0)
    }

    15% {
        -webkit-clip-path: inset(100% 0 0 0);
        clip-path: inset(100% 0 0 0)
    }

    20% {
        -webkit-clip-path: inset(0 0 100% 0);
        clip-path: inset(0 0 100% 0)
    }

    35% {
        -webkit-clip-path: inset(0 0 0 0);
        clip-path: inset(0 0 0 0)
    }

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

.particle.--small {
    --radius: calc(100vw * 12 / 1920);
    width: calc(100vw * 24 / 1920);
    height: calc(100vw * 120 / 1920)
}

@media(max-width: 768px) {
    .particle.--small {
        --radius: 3rem;
        width: 7rem;
        height: 33rem
    }
}

@media(max-width: 768px) {
    .particle.--small-2 {
        --radius: 6rem;
        width: 9rem;
        height: 42rem
    }
}

.particle.--thick {
    --radius: calc(100vw * 16 / 1920);
    width: calc(100vw * 56 / 1920);
    height: calc(100vw * 200 / 1920)
}

@media(max-width: 768px) {
    .particle.--thick {
        --radius: 5rem;
        width: 14rem;
        height: 50rem
    }
}

@media(max-width: 768px) {
    .particle.--thick-2 {
        --radius: 6rem;
        width: 17rem;
        height: 62rem
    }
}

.particle.--thin {
    --radius: calc(100vw * 4 / 1920);
    width: calc(100vw * 18 / 1920);
    height: calc(100vw * 140 / 1920)
}

.particle.--big {
    --radius: calc(100vw * 16 / 1920);
    width: calc(100vw * 56 / 1920);
    height: calc(100vw * 270 / 1920)
}

@media(max-width: 768px) {
    .particle.--big {
        --radius: 6rem;
        width: 15rem;
        height: 75rem
    }
}

@media(max-width: 768px) {
    .particle.--big-2 {
        --radius: 5rem;
        width: 17rem;
        height: 84rem
    }
}

.particle.--right {
    border-radius: var(--radius) 0;
    -webkit-transform: skewX(-32deg);
    transform: skewX(-32deg);
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom
}

.particle.--left {
    border-radius: 0 var(--radius);
    -webkit-transform: skewX(32deg);
    transform: skewX(32deg);
    -webkit-transform-origin: left top;
    transform-origin: left top
}

.particle.--black {
    background-color: #404040
}

.particle.--blue {
    background-color: #7264d0
}

.particle.--pink {
    background-color: #ff6ea2
}

.particle.is-member-color {
    background-color: var(--member-color)
}

.tilt-box {
    -webkit-transition: .8s cubic-bezier(0.16, 1, 0.3, 1);
    transition: .8s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: transform, translate, rotate;
    -webkit-perspective: 1000px;
    perspective: 1000px;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d
}

@media(max-width: 768px) {
    .tilt-box.--sp-disabled .tilt-back {
        translate: unset;
        scale: unset
    }
}

@media(max-width: 768px) {
    .tilt-box.--sp-disabled .tilt-mid {
        translate: unset;
        scale: unset
    }
}

@media(max-width: 768px) {
    .tilt-box.--sp-disabled .tilt-front {
        translate: unset;
        scale: unset
    }
}

.tilt-box .tilt-back {
    will-change: transform, translate, rotate, scale;
    translate: 0 0 -800px;
    scale: calc((-800 * 2)/(1000 * -1) + 1)
}

.tilt-box .tilt-mid {
    will-change: transform, translate, rotate, scale;
    translate: 0 0 0;
    scale: calc((0 * 2)/(1000 * -1) + 1)
}

.tilt-box .tilt-front {
    will-change: transform, translate, rotate, scale;
    translate: 0 0 200px;
    scale: calc(400 / (1000 * -1) + 1)
}

.container {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    overflow: hidden
}

section {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%
}

section .top-headline {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column
}

section .top-headline__en {
    width: auto;
    height: 176rem;
    margin-left: -80rem
}

@media(max-width: 768px) {
    section .top-headline__en {
        height: 72rem;
        margin-left: 0
    }
}

section .top-headline__en img {
    width: auto;
    height: 100%
}

section .top-headline__jp {
    margin-top: 16rem;
    font-size: max(var(--f-min), 32 * 1rem);
    color: #ff6ea2
}

@media(max-width: 768px) {
    section .top-headline__jp {
        margin-top: 10rem;
        font-size: max(var(--f-min), 16 * 1rem);
        text-align: center
    }
}

.inner {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 1280rem
}

@media(max-width: 1920px) {
    .inner {
        width: 1280px
    }
}

@media(max-width: 1440px) {
    .inner {
        width: 1280rem
    }
}

@media(max-width: 768px) {
    .inner {
        width: 366rem
    }
}

.common-hover {
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

@media(width >=calc(768px + 1px)) {
    .common-hover:hover {
        opacity: .6
    }
}

.common-button {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    min-width: 234rem;
    height: 64rem;
    padding: 0 24rem;
    overflow: hidden;
    color: #404040;
    text-decoration: none;
    border-radius: 9999px;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

@media(width >=calc(768px + 1px)) {
    .common-button:hover {
        color: #fff;
        opacity: 1
    }

    .common-button:hover::before {
        top: unset;
        bottom: 0;
        height: 100%
    }

    .common-button:hover::after {
        border: 2px solid #7264d0
    }
}

.common-button p, .common-button span {
    position: relative;
    text-align: center;
    line-height: 1.25
}

.common-button p::before, .common-button span::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.25)*.5em);
    content: ""
}

.common-button p::after, .common-button span::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.25)*.5em);
    content: ""
}

.common-button::before {
    position: absolute;
    top: 0;
    width: 100%;
    height: 0;
    content: "";
    background-color: #7264d0;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

.common-button::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    content: "";
    border: 2px solid #404040;
    border-radius: 9999px;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

.common-button.--blue {
    color: #fff;
    background-color: #7264d0;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

@media(width >=calc(768px + 1px)) {
    .common-button.--blue:hover {
        color: #7264d0
    }
}

.common-button.--blue::before {
    background-color: #fff
}

.common-button.--blue::after {
    border: 2px solid #7264d0
}

.arrow-button {
    position: relative;
    width: auto;
    min-width: 234rem;
    height: 64rem;
    border-radius: 9999px;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

@media(width >=calc(768px + 1px)) {
    .arrow-button:hover {
        color: #fff
    }

    .arrow-button:hover::after {
        border: 2px solid #7264d0
    }

    .arrow-button:hover .arrow-button__inner::before {
        top: unset;
        bottom: 0;
        height: 100%
    }

    .arrow-button:hover .arrow-button__inner svg .e {
        stroke: #fff
    }
}

.arrow-button::after {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    content: "";
    border: 2px solid #404040;
    border-radius: 9999px;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

.arrow-button__inner {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding: 0 24rem;
    overflow: hidden;
    border-radius: 9999px
}

.arrow-button__inner::before {
    position: absolute;
    top: 0;
    width: 100%;
    height: 0;
    content: "";
    background-color: #7264d0;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

.arrow-button__inner>p {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: max(var(--f-min), 22 * 1rem)
}

.arrow-button__inner>p>svg {
    width: auto;
    height: .6em;
    aspect-ratio: 20/14;
    margin-left: 10rem
}

.arrow-button__inner>p>svg .e {
    will-change: stroke;
    fill: none;
    stroke: #404040;
    stroke-miterlimit: 10;
    stroke-width: 2px;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

.arrow-button__inner>a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.common-arrow {
    --arrow-width: 32px;
    --arrow-thick: 2px;
    --arrow-angle: 0deg;
    --arrow-color: #404040;
    --arrow-length: calc(var(--arrow-width) / 2 * 1.41421356);
    --arrow-height: calc(var(--arrow-length) / 1.41421356 + var(--arrow-thick) / 1.41421356);
    --arrow-center: calc(var(--arrow-width) / 2 / 3 - var(--arrow-width) / 2 / 2);
    position: relative;
    width: var(--arrow-width);
    height: var(--arrow-width);
    -webkit-transform: rotate(var(--arrow-angle)) translateY(var(--arrow-center));
    transform: rotate(var(--arrow-angle)) translateY(var(--arrow-center))
}

.common-arrow::before, .common-arrow::after {
    position: absolute;
    inset: 0;
    display: block;
    width: var(--arrow-length);
    height: var(--arrow-thick);
    margin: auto;
    content: "";
    background-color: var(--arrow-color);
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

.common-arrow::before {
    left: calc(var(--arrow-width)/-2);
    -webkit-transform: rotate(-45deg) translate(calc(var(--arrow-thick) / 4), calc(var(--arrow-thick) / 4));
    transform: rotate(-45deg) translate(calc(var(--arrow-thick) / 4), calc(var(--arrow-thick) / 4))
}

.common-arrow::after {
    right: calc(var(--arrow-width)/-2);
    -webkit-transform: rotate(45deg) translate(calc(var(--arrow-thick) / -4), calc(var(--arrow-thick) / 4));
    transform: rotate(45deg) translate(calc(var(--arrow-thick) / -4), calc(var(--arrow-thick) / 4))
}

.overlay-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

::-moz-selection {
    color: #fff;
    background: #ff6ea2
}

::selection {
    color: #fff;
    background: #ff6ea2
}

::-moz-selection {
    color: #fff;
    background: #ff6ea2
}

::selection {
    color: #fff;
    background: #ff6ea2
}

.red {
    color: #be2452
}

.blue {
    color: #7264d0
}

.green {
    color: green
}

.yellow {
    color: #ffd56a
}

.pink {
    color: #ff6ea2
}

.is-hidden {
    pointer-events: none;
    opacity: 0;
    -webkit-animation: none;
    animation: none
}

.is-visible {
    pointer-events: all;
    opacity: 1
}

.is-noselect {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -moz-user-select: -moz-none;
    user-select: -moz-none;
    user-select: none;
    user-select: none;
    user-select: none
}

.movie-iframe {
    position: relative;
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    background-color: #000
}

.movie-iframe iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

a {
    text-decoration: none
}

p>a {
    color: #7264d0;
    text-decoration: underline;
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

p>a:hover {
    opacity: .6
}

img {
    pointer-events: none
}

.image-crisp {
    image-rendering: crisp-edges;
    image-rendering: optimize-contrast
}

@media(max-width: 768px) {
    br.only-pc {
        display: none
    }
}

br.only-sp {
    display: none
}

@media(max-width: 768px) {
    br.only-sp {
        display: inline-block
    }
}

@media(max-width: 768px) {
    .only-pc {
        display: none !important
    }
}

.only-sp {
    display: none !important
}

@media(max-width: 768px) {
    .only-sp {
        display: block !important
    }
}

.entrance {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 12;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    color: #ff6ea2;
    background-color: #ff622c;
    background-image: -webkit-repeating-linear-gradient(135deg, #ef7602, #ef7602 22rem, transparent 0, transparent 54rem);
    background-image: repeating-linear-gradient(-45deg, #ef7602, #ef7602 22rem, transparent 0, transparent 54rem);
    -webkit-transition: .6s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .6s cubic-bezier(0.87, 0, 0.13, 1)
}

.entrance::before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    background-color: #fff;
    opacity: .8
}

.entrance.is-hidden {
    display: none
}

.entrance__logo {
    position: relative;
    width: calc(100vw * 510 / 1920)
}

@media(max-width: 768px) {
    .entrance__logo {
        width: calc(100% - calc(100vw * 36 / 414))
    }
}

.entrance__attention {
    margin-top: calc(34rem - (28rem - 16rem) / 2);
    margin-bottom: calc(0px - (28rem - 16rem) / 2);
    font-size: 16rem;
    line-height: 28rem
}

@media(max-width: 768px) {
    .entrance__attention {
        width: calc(100% - calc(100vw * 36 / 414) * 2);
        text-align: center
    }
}

.entrance__question {
    margin-top: 36rem;
    font-size: 20rem
}

.entrance__btns {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 24rem
}

@media(max-width: 768px) {
    .entrance__btns {
        width: 100%
    }
}

.entrance__btn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 210rem;
    height: 48rem
}

@media(max-width: 768px) {
    .entrance__btn {
        width: calc((100% - calc(100vw * 36 / 414) * 2 - 24rem)/2)
    }
}

.entrance__btn:nth-child(n+2) {
    margin-left: 24rem
}

.loading {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 13;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background-color: #fff;
    opacity: 1
}

.loading__logo {
    width: 400rem;
    height: auto;
    animation: loadingLogoAnime 1s infinite alternate-reverse both
}

@media(max-width: 768px) {
    .loading__logo {
        width: 320rem
    }
}

@-webkit-keyframes loadingLogoAnime {
    0% {
        opacity: .6
    }

    100% {
        opacity: 1
    }
}

@keyframes loadingLogoAnime {
    0% {
        opacity: .6
    }

    100% {
        opacity: 1
    }
}

.modal {
    --btn-width: 56px;
    --btn-height: var(--btn-width);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9;
    display: none;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: rgba(64, 64, 64, .8);
    opacity: 0
}

@media(width <=1408px) {
    .modal {
        --btn-width: 48px;
        --btn-height: var(--btn-width)
    }
}

.modal__close-bg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 100%
}

.modal__close-btn {
    position: fixed;
    top: 52rem;
    right: 54rem;
    z-index: 8;
    display: block;
    width: max(49rem, 4.9vh);
    height: max(32rem, 3.2vh)
}

@media(max-width: 768px) {
    .modal__close-btn {
        top: 20rem;
        right: 20rem;
        width: 28rem;
        height: 20rem
    }
}

.modal__close-btn span {
    position: absolute;
    inset: 0;
    width: max(56.6rem, 5.66vh);
    height: 2px;
    margin: auto;
    background-color: #fff;
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform-origin: center;
    transform-origin: center
}

@media(max-width: 768px) {
    .modal__close-btn span {
        width: 33.29rem
    }
}

.modal__close-btn span:first-child {
    -webkit-transform: translateY(0) rotate(-32deg);
    transform: translateY(0) rotate(-32deg)
}

.modal__close-btn span:nth-child(2) {
    opacity: 0
}

.modal__close-btn span:last-child {
    -webkit-transform: translateY(0) rotate(32deg);
    transform: translateY(0) rotate(32deg)
}

.modal--movie {
    position: relative;
    z-index: 1;
    display: none;
    width: 100%;
    max-width: 1200px;
    height: auto
}

.modal--movie__cont {
    position: relative;
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    background-color: #000
}

.modal--movie__cont iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

.modal--image {
    position: relative;
    z-index: 1;
    display: none;
    width: auto;
    height: auto
}

.modal--image img {
    width: auto;
    max-width: min(1200px, 100vw);
    height: auto;
    max-height: calc(100vh - (var(--btn-height) + 20px + 40px)*2);
    pointer-events: all
}

.modal__text {
    z-index: 1;
    font-size: 24px
}

.modal__btn-wrap {
    position: absolute;
    inset: 0 calc(-40px - var(--btn-width)) 0 calc(-40px - var(--btn-width));
    z-index: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: calc(100% + 80px + var(--btn-width)*2);
    max-width: calc(1280px + var(--btn-width)*2);
    margin: auto;
    pointer-events: none
}

@media(width <=1408px) {
    .modal__btn-wrap {
        inset: auto 0 calc(var(--btn-height)*-1 - 20px) 0;
        width: calc(var(--btn-width)*2 + 24px)
    }
}

.modal__btn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: var(--btn-width);
    height: var(--btn-height);
    pointer-events: none;
    border-radius: calc(var(--btn-width)/2);
    opacity: 0
}

.modal__btn .common-arrow {
    --arrow-color: #ff6ea2;
    --arrow-thick: 2px;
    --arrow-width: var(--btn-width)
}

.modal__btn.is-visible {
    pointer-events: all;
    opacity: 1
}

.modal__btn--prev {
    -webkit-transition: -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform .4s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1)
}

@media(width >=calc(768px + 1px)) {
    .modal__btn--prev:hover {
        -webkit-transform: translateX(-10px);
        transform: translateX(-10px)
    }
}

.modal__btn--prev .common-arrow {
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg)
}

.modal__btn--next {
    -webkit-transition: -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform .4s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform .4s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform .4s cubic-bezier(0.215, 0.61, 0.355, 1)
}

@media(width >=calc(768px + 1px)) {
    .modal__btn--next:hover {
        -webkit-transform: translateX(10px);
        transform: translateX(10px)
    }
}

.modal__btn--next .common-arrow {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}

.modal.is-scrollable {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    overflow-y: scroll;
    scrollbar-width: none
}

.modal.is-scrollable::-webkit-scrollbar {
    display: none
}

.modal.is-scrollable .modal__close-bg {
    height: 100%
}

.modal.is-scrollable .modal--image {
    width: auto;
    max-width: 640px;
    height: auto;
    max-height: unset;
    margin-top: 120px;
    margin-bottom: 120px
}

@media(max-width: 768px) {
    .modal.is-scrollable .modal--image {
        margin-top: calc(100vw * 80 / 414)
    }
}

.modal.is-scrollable .modal--image img {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: unset;
    -o-object-fit: unset;
    object-fit: unset
}

.header {
    width: 100%;
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.header__logo {
    position: fixed;
    top: calc(100vw * 44 / 1920);
    left: calc(100vw * 48 / 1920);
    z-index: 6;
    width: auto;
    height: calc(100vw * 64 / 1920)
}

@media(max-width: 768px) {
    .header__logo {
        display: none
    }
}

.header__logo img {
    width: auto;
    height: 100%
}

.header__gnav {
    position: fixed;
    top: calc(100vw * 52 / 1920);
    right: 0;
    left: 0;
    z-index: 6;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: calc(100vw * 8 / 1920) calc(100vw * 40 / 1920);
    margin: 0 auto;
    background-color: #fff;
    border-radius: 9999px;
    -webkit-box-shadow: 0 0 4rem rgba(0, 0, 0, .2);
    box-shadow: 0 0 4rem rgba(0, 0, 0, .2)
}

@media(max-width: 768px) {
    .header__gnav {
        display: none
    }
}

.header__gnav__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-column-gap: calc(100vw * 36 / 1920);
    -moz-column-gap: calc(100vw * 36 / 1920);
    column-gap: calc(100vw * 36 / 1920);
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.header__gnav__item {
    width: auto;
    height: calc(100vw * 32 / 1920);
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

@media(width >=calc(768px + 1px)) {
    .header__gnav__item:hover {
        opacity: .6
    }
}

.header__gnav__item img {
    width: auto;
    height: 100%
}

.header__contact {
    position: fixed;
    top: calc(100vw * 36 / 1920);
    right: calc((100% - (100vw * 1440 / 1920))/2);
    z-index: 6;
    width: calc(100vw * 140 / 1920);
    height: auto;
    overflow: hidden;
    border-radius: 50%;
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

@media(width >=calc(768px + 1px)) {
    .header__contact:hover {
        opacity: .6
    }
}

@media(max-width: 768px) {
    .header__contact {
        display: none
    }
}

.header__lang {
    position: fixed;
    top: calc(100vw * 24 / 1920);
    right: calc(100vw * 24 / 1920);
    z-index: 6;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: calc(100vw * 120 / 1920);
    height: calc(100vw * 48 / 1920);
    padding: 0 calc(100vw * 14 / 1920);
    overflow: hidden;
    background-color: #fff;
    border-radius: 9999px;
    -webkit-box-shadow: 0 0 4rem rgba(0, 0, 0, .2);
    box-shadow: 0 0 4rem rgba(0, 0, 0, .2)
}

@media(max-width: 768px) {
    .header__lang {
        top: 20rem;
        right: unset;
        left: 20rem;
        width: 70rem;
        height: 28rem;
        padding: 0 9rem
    }
}

.header__lang::before {
    position: absolute;
    width: calc(100vw * 64 / 1920);
    height: 100%;
    content: "";
    background-color: #ff6ea2;
    border-radius: 9999px;
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

@media(max-width: 768px) {
    .header__lang::before {
        width: 39rem;
        height: 100%
    }
}

.header__lang::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    content: "";
    border: 2px solid #ff6ea2;
    border-radius: 9999px
}

.header__lang.--ja::before {
    top: 0;
    left: 0;
    translate: 0% 0%
}

.header__lang.--ja .header__lang__text.--ja img:nth-child(1) {
    opacity: 1
}

.header__lang.--ja .header__lang__text.--ja img:nth-child(2) {
    opacity: 0
}

.header__lang.--ja .header__lang__text.--en img:nth-child(1) {
    opacity: 0
}

.header__lang.--ja .header__lang__text.--en img:nth-child(2) {
    opacity: 1
}

.header__lang.--en::before {
    top: 0;
    left: 100%;
    translate: -100% 0%
}

.header__lang.--en .header__lang__text.--ja img:nth-child(1) {
    opacity: 0
}

.header__lang.--en .header__lang__text.--ja img:nth-child(2) {
    opacity: 1
}

.header__lang.--en .header__lang__text.--en img:nth-child(1) {
    opacity: 1
}

.header__lang.--en .header__lang__text.--en img:nth-child(2) {
    opacity: 0
}

.header__lang__text {
    position: relative;
    width: calc(100vw * 36 / 1920)
}

@media(max-width: 768px) {
    .header__lang__text {
        width: 21rem
    }
}

.header__lang__text img {
    opacity: 1;
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.header__lang__text img:nth-child(2) {
    position: absolute;
    top: 0;
    left: 0
}

.header__lang .bogo-language-switcher {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.header__lang .bogo-language-switcher>li {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.header__lang .bogo-language-switcher>li .bogo-language-name {
    display: block;
    width: 100%;
    height: 100%
}

.header__lang .bogo-language-switcher>li .bogo-language-name a {
    display: block;
    width: 100%;
    height: 100%
}

.header__lang .bogo-language-switcher .current {
    display: none
}

.header__menu-body {
    display: none
}

@media(max-width: 768px) {
    .header__menu-body {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 7;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        width: 100%;
        height: 100%;
        min-height: 100dvh;
        overflow-x: hidden;
        overflow-y: auto;
        pointer-events: none;
        background-color: #7264d0;
        opacity: 0;
        -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
        transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
    }

    .header__menu-body::before {
        position: fixed;
        right: -141.5rem;
        bottom: -64rem;
        width: 427rem;
        height: 427rem;
        pointer-events: none;
        content: "";
        background-image: url("../images/common/spmenu_bg.svg");
        background-repeat: no-repeat;
        background-size: contain;
        -webkit-animation: spmenuAnime 10s linear infinite;
        animation: spmenuAnime 10s linear infinite;
        -webkit-animation-play-state: paused;
        animation-play-state: paused
    }

    @-webkit-keyframes spmenuAnime {
        0% {
            rotate: 0deg
        }

        100% {
            rotate: 360deg
        }
    }

    @keyframes spmenuAnime {
        0% {
            rotate: 0deg
        }

        100% {
            rotate: 360deg
        }
    }

    .header__menu-body.is-opened {
        pointer-events: all;
        opacity: 1
    }

    .header__menu-body.is-opened::before {
        -webkit-animation-play-state: running;
        animation-play-state: running
    }

    .header__menu-body__nav {
        min-height: 504rem;
        margin-top: 109rem;
        margin-left: 40rem
    }

    .header__menu-body__nav ul {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        row-gap: 24rem
    }

    .header__menu-body__nav ul li {
        width: auto;
        height: 32rem;
        color: #fff
    }

    .header__menu-body__nav ul li a {
        position: relative;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        height: 100%
    }

    .header__menu-body__nav ul li a img {
        width: auto;
        height: 100%
    }

    .header__menu-body__nav ul li.is-closed {
        pointer-events: none;
        opacity: .4
    }

    .header__menu-body__contact {
        position: fixed;
        right: 24rem;
        bottom: 24rem;
        width: 96rem
    }
}

.header__menu-btn {
    display: none
}

@media(max-width: 768px) {
    .header__menu-btn {
        position: fixed;
        top: 24rem;
        right: 24rem;
        z-index: 8;
        display: block;
        width: 36rem;
        height: 20rem
    }
}

.header__menu-btn span {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 2px;
    margin: auto;
    background-color: #404040;
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform-origin: center;
    transform-origin: center
}

.header__menu-btn span:first-child {
    -webkit-transform: translateY(-9rem) rotate(0deg);
    transform: translateY(-9rem) rotate(0deg)
}

.header__menu-btn span:last-child {
    -webkit-transform: translateY(9rem) rotate(0deg);
    transform: translateY(9rem) rotate(0deg)
}

.header__menu-btn.is-cross span {
    width: 40rem;
    background-color: #fff
}

.header__menu-btn.is-cross span:first-child {
    -webkit-transform: translateY(0) rotate(-32deg);
    transform: translateY(0) rotate(-32deg)
}

.header__menu-btn.is-cross span:nth-child(2) {
    opacity: 0
}

.header__menu-btn.is-cross span:last-child {
    -webkit-transform: translateY(0) rotate(32deg);
    transform: translateY(0) rotate(32deg)
}

.galleria-banner {
    width: 468rem;
    margin: 80rem auto 0
}

.galleria-banner img {
    width: 100%
}

@media(max-width: 768px) {
    .galleria-banner {
        width: 100%;
        padding: 0 16rem
    }
}

.galleria-link {
    width: 240rem;
    padding-bottom: 120rem;
    margin: 40rem auto 0
}

@media(max-width: 768px) {
    .galleria-link {
        width: 200rem;
        padding-bottom: 40rem;
        margin: 40rem auto 0
    }
}

.go-top {
    position: -webkit-sticky;
    position: sticky;
    bottom: 40rem;
    left: calc(100% - 102rem);
    z-index: 6;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 62rem;
    margin-top: -164rem;
    margin-bottom: 40rem;
    font-size: 22rem;
    color: #ff6ea2
}

@media(max-width: 768px) {
    .go-top {
        display: none
    }
}

.go-top__link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.sp-contact {
    position: -webkit-sticky;
    position: sticky;
    right: 24rem;
    bottom: 24rem;
    left: calc(100% - 96rem);
    z-index: 6;
    display: none;
    width: 72rem;
    margin-top: -96rem;
    margin-bottom: 24rem
}

@media(max-width: 768px) {
    .sp-contact {
        display: block
    }
}

.sp-contact__link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.footer {
    position: relative;
    z-index: 4;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    padding: 67rem 0;
    color: #fff;
    background-color: #404040;
    border-top: 12px solid #ff6ea2
}

@media(max-width: 768px) {
    .footer {
        padding: 41rem 44rem;
        border-top: 4px solid #ff6ea2
    }
}

.footer__logo {
    width: auto;
    height: 50rem
}

@media(max-width: 768px) {
    .footer__logo {
        position: absolute;
        top: 41rem;
        right: 36rem;
        height: 36rem
    }
}

.footer__logo img {
    width: auto;
    height: 100%
}

.footer__nav {
    margin-top: 32rem
}

@media(max-width: 768px) {
    .footer__nav {
        width: 100%;
        margin-top: 0
    }
}

.footer__nav__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-column-gap: 40rem;
    -moz-column-gap: 40rem;
    column-gap: 40rem;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: max(var(--f-min), 16 * 1rem)
}

@media(max-width: 768px) {
    .footer__nav__list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        row-gap: 12rem;
        -webkit-column-gap: unset;
        -moz-column-gap: unset;
        column-gap: unset;
        -webkit-box-pack: unset;
        -webkit-justify-content: unset;
        -ms-flex-pack: unset;
        justify-content: unset
    }
}

.footer__nav__item {
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

@media(width >=calc(768px + 1px)) {
    .footer__nav__item:hover {
        opacity: .6
    }
}

.footer__bottom {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: max(var(--f-min), 12 * 1rem)
}

@media(max-width: 768px) {
    .footer__bottom {
        -webkit-box-align: start;
        -webkit-align-items: flex-start;
        -ms-flex-align: start;
        align-items: flex-start
    }
}

.footer__bottom a {
    color: #fff
}

.footer__copyright {
    margin-top: 42rem;
    line-height: 1.25
}

.footer__copyright::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.25)*.5em);
    content: ""
}

.footer__copyright::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.25)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .footer__copyright {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

@media(max-width: 768px) {
    .footer__copyright small {
        margin-top: 10rem
    }
}

.footer__privacy {
    margin-top: 16rem
}

@media(max-width: 768px) {
    .footer__privacy {
        margin-top: 24rem
    }
}

.footer__security {
    margin-top: .2em
}

.pages__particles {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    pointer-events: none
}

.pages__particle-block {
    position: relative;
    width: 100%;
    height: calc(100vw * 2667 / 1920)
}

@media(max-width: 768px) {
    .pages__particle-block {
        height: 1440rem
    }
}

.pages__particle:nth-child(1) {
    top: calc(100vw * 1380 / 1920);
    left: calc(100vw * 64 / 1920)
}

@media(max-width: 768px) {
    .pages__particle:nth-child(1) {
        top: 272rem;
        left: 28rem
    }
}

.pages__particle:nth-child(2) {
    top: calc(100vw * 1954 / 1920);
    left: calc(100vw * 236 / 1920)
}

@media(max-width: 768px) {
    .pages__particle:nth-child(2) {
        top: 950rem;
        left: 14rem
    }
}

.pages__particle:nth-child(3) {
    top: calc(100vw * 238 / 1920);
    left: calc(100vw * 1676 / 1920)
}

@media(max-width: 768px) {
    .pages__particle:nth-child(3) {
        top: 1408rem;
        left: -13rem
    }
}

.pages__particle:nth-child(4) {
    top: calc(100vw * 1460 / 1920);
    left: calc(100vw * 1844 / 1920)
}

@media(max-width: 768px) {
    .pages__particle:nth-child(4) {
        top: 326rem;
        left: 382rem
    }
}

.pages__particle:nth-child(5) {
    top: calc(100vw * 2388 / 1920);
    left: calc(100vw * 1770 / 1920)
}

@media(max-width: 768px) {
    .pages__particle:nth-child(5) {
        top: 756rem;
        left: 376rem
    }
}

.pages__particle:nth-child(6) {
    top: calc(100vw * 172 / 1920);
    left: calc(100vw * -60 / 1920)
}

@media(max-width: 768px) {
    .pages__particle:nth-child(6) {
        top: 1270rem;
        left: 376rem
    }
}

.pages__particle:nth-child(7) {
    top: calc(100vw * 617 / 1920);
    left: calc(100vw * 80 / 1920)
}

@media(max-width: 768px) {
    .pages__particle:nth-child(7) {
        top: 9rem;
        left: -38rem
    }
}

.pages__particle:nth-child(8) {
    top: calc(100vw * 2360 / 1920);
    left: calc(100vw * 154 / 1920)
}

@media(max-width: 768px) {
    .pages__particle:nth-child(8) {
        top: 400rem;
        left: -32rem
    }
}

.pages__particle:nth-child(9) {
    top: calc(100vw * 902 / 1920);
    left: calc(100vw * 1750 / 1920)
}

@media(max-width: 768px) {
    .pages__particle:nth-child(9) {
        top: 746rem;
        left: -14rem
    }
}

.pages__particle:nth-child(10) {
    top: calc(100vw * 1810 / 1920);
    left: calc(100vw * 1714 / 1920)
}

@media(max-width: 768px) {
    .pages__particle:nth-child(10) {
        top: 1198rem;
        left: -32rem
    }
}

.pages__particle:nth-child(11) {
    top: calc(100vw * 100 / 1920);
    left: calc(100vw * 208 / 1920)
}

@media(max-width: 768px) {
    .pages__particle:nth-child(11) {
        top: 496rem;
        left: 382rem
    }
}

.pages__particle:nth-child(12) {
    top: calc(100vw * 1040 / 1920);
    left: calc(100vw * -40 / 1920)
}

@media(max-width: 768px) {
    .pages__particle:nth-child(12) {
        top: 1110rem;
        left: 372rem
    }
}

.pages__particle:nth-child(13) {
    top: calc(100vw * 2158 / 1920);
    left: calc(100vw * 80 / 1920)
}

@media(max-width: 768px) {
    .pages__particle:nth-child(13) {
        top: 180rem;
        left: -13rem
    }
}

.pages__particle:nth-child(14) {
    top: 0;
    left: calc(100vw * 1882 / 1920)
}

@media(max-width: 768px) {
    .pages__particle:nth-child(14) {
        top: 652rem;
        left: 14rem
    }
}

.pages__particle:nth-child(15) {
    top: calc(100vw * 424 / 1920);
    left: calc(100vw * 1784 / 1920)
}

@media(max-width: 768px) {
    .pages__particle:nth-child(15) {
        top: 1076rem;
        left: -18rem
    }
}

.pages__particle:nth-child(16) {
    top: calc(100vw * 1138 / 1920);
    left: calc(100vw * 1658 / 1920)
}

@media(max-width: 768px) {
    .pages__particle:nth-child(16) {
        top: 10rem;
        left: 346rem
    }
}

.pages__particle:nth-child(17) {
    top: calc(100vw * 2070 / 1920);
    left: calc(100vw * 1560 / 1920)
}

@media(max-width: 768px) {
    .pages__particle:nth-child(17) {
        top: 60rem;
        left: 380rem
    }
}

@media(max-width: 768px) {
    .pages__particle:nth-child(18) {
        top: 892rem;
        left: 368rem
    }
}

@media(max-width: 768px) {
    .pages__particle:nth-child(19) {
        top: 1368rem;
        left: 374rem
    }
}

.pages__header {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.pages__header__title {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 216rem
}

@media(max-width: 768px) {
    .pages__header__title {
        margin-top: 102rem
    }
}

.pages__header__title__en {
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.pages__header__title__en img {
    width: auto;
    height: 180rem
}

@media(max-width: 768px) {
    .pages__header__title__en img {
        width: auto;
        height: 62rem
    }
}

.pages__header__title__jp {
    margin-top: 16rem;
    font-size: max(var(--f-min), 32 * 1rem);
    color: #ff6ea2;
    text-align: center
}

@media(max-width: 768px) {
    .pages__header__title__jp {
        margin-top: 8rem;
        font-size: max(var(--f-min), 18 * 1rem)
    }
}

.pages__content {
    width: 100%;
    margin-top: 80rem
}

#about .pages__content {
    margin-top: 216rem
}

@media(max-width: 768px) {
    #about .pages__content {
        margin-top: 102rem
    }
}

.pages__footer {
    margin-top: 80rem;
    margin-bottom: 160rem
}

@media(max-width: 768px) {
    .pages__footer {
        margin-top: 40rem;
        margin-bottom: 80rem
    }
}

.about__project {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%
}

.about__project__headline {
    width: 100%
}

.about__project__text {
    width: 858rem;
    margin-top: 40rem;
    font-size: max(var(--f-min), 20 * 1rem);
    text-align: center;
    line-height: 1.8
}

.about__project__text::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.8)*.5em);
    content: ""
}

.about__project__text::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.8)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .about__project__text {
        width: 318rem;
        margin-top: 28rem;
        font-size: max(var(--f-min), 14 * 1rem);
        text-align: left;
        line-height: 1.5
    }

    .about__project__text::before {
        display: block;
        width: 0;
        height: 0;
        margin-top: calc((1 - 1.5)*.5em);
        content: ""
    }

    .about__project__text::after {
        display: block;
        width: 0;
        height: 0;
        margin-bottom: calc((1 - 1.5)*.5em);
        content: ""
    }
}

.about__project__image {
    width: 998rem;
    margin-top: 20rem
}

@media(max-width: 768px) {
    .about__project__image {
        width: 100%;
        margin-top: 40rem
    }
}

.about__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 216rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    margin-top: 216rem
}

@media(max-width: 768px) {
    .about__list {
        row-gap: 72rem;
        margin-top: 72rem
    }
}

.about__item {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    padding: 100rem 0 64rem;
    border: 2px solid #7264d0;
    border-top: none;
    border-radius: 20rem
}

@media(max-width: 768px) {
    .about__item {
        padding: 40rem 0 32rem;
        border: 1px solid #7264d0;
        border-top: none;
        border-radius: 8rem
    }
}

.about__item::before, .about__item::after {
    position: absolute;
    top: -1px;
    width: calc((100% - 440rem)/2);
    height: 20rem;
    content: "";
    border-top: 2px solid #7264d0
}

@media(max-width: 768px) {
    .about__item::before, .about__item::after {
        top: -0.5px;
        width: calc((100% - 166rem)/2);
        height: 8rem;
        border-top: 1px solid #7264d0
    }
}

.about__item::before {
    left: -2px;
    border-radius: 20rem 0 0
}

@media(max-width: 768px) {
    .about__item::before {
        left: -1px;
        border-radius: 8rem 0 0
    }
}

.about__item::after {
    right: -2px;
    border-radius: 0 20rem 0 0
}

@media(max-width: 768px) {
    .about__item::after {
        right: -1px;
        border-radius: 0 8rem 0 0
    }
}

.about__item__headline {
    position: absolute;
    top: -136rem;
    right: 0;
    left: 0;
    width: 440rem;
    margin: 0 auto
}

@media(max-width: 768px) {
    .about__item__headline {
        top: -32rem;
        width: 132rem
    }
}

.about__item__image {
    width: 892rem;
    -webkit-box-shadow: 0 0 16rem rgba(0, 0, 0, .2);
    box-shadow: 0 0 16rem rgba(0, 0, 0, .2)
}

@media(max-width: 768px) {
    .about__item__image {
        width: 260rem;
        -webkit-box-shadow: 0 0 8rem rgba(0, 0, 0, .2);
        box-shadow: 0 0 8rem rgba(0, 0, 0, .2)
    }
}

.about__item__text {
    width: 994rem;
    margin-top: 40rem;
    font-size: max(var(--f-min), 24 * 1rem);
    text-align: center;
    line-height: 1.7
}

.about__item__text::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.7)*.5em);
    content: ""
}

.about__item__text::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.7)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .about__item__text {
        width: 318rem;
        margin-top: 24rem;
        font-size: max(var(--f-min), 14 * 1rem)
    }
}

.about__item__view {
    margin-top: 40rem
}

@media(max-width: 768px) {
    .about__item__view {
        margin-top: 24rem
    }
}

.about__esports__trophies {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    margin-top: 80rem
}

@media(max-width: 768px) {
    .about__esports__trophies {
        margin-top: 24rem
    }
}

.about__esports__trophies__image {
    width: auto;
    height: 490rem;
    margin-left: 32rem
}

@media(max-width: 768px) {
    .about__esports__trophies__image {
        height: 130rem;
        margin-left: 12rem
    }
}

.about__esports__trophies__image img {
    width: auto;
    height: 100%
}

.about__esports__trophies__content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 524rem;
    margin-top: 79rem
}

@media(max-width: 768px) {
    .about__esports__trophies__content {
        width: 158rem;
        margin-top: 14rem;
        margin-left: -14rem
    }
}

.about__esports__trophies__headline {
    width: auto;
    height: 146rem
}

@media(max-width: 768px) {
    .about__esports__trophies__headline {
        height: 40rem
    }
}

.about__esports__trophies__headline img {
    width: auto;
    height: 100%
}

.about__esports__trophies__text {
    width: 507rem;
    margin-top: 35rem;
    font-size: max(var(--f-min), 24 * 1rem);
    text-align: center;
    line-height: 1.7
}

.about__esports__trophies__text::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.7)*.5em);
    content: ""
}

.about__esports__trophies__text::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.7)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .about__esports__trophies__text {
        width: 100%;
        margin-top: 14rem;
        font-size: max(var(--f-min), 14 * 1rem)
    }
}

.about__esports__trophies__view {
    margin-top: 42rem
}

@media(max-width: 768px) {
    .about__esports__trophies__view {
        display: none
    }
}

.about__esports__trophies__view--sp {
    display: none
}

@media(max-width: 768px) {
    .about__esports__trophies__view--sp {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        margin-top: 24rem
    }
}

.news__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 24rem;
    width: 100%
}

@media(max-width: 768px) {
    .news__list {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
        row-gap: 16rem;
        -webkit-column-gap: 10rem;
        -moz-column-gap: 10rem;
        column-gap: 10rem
    }
}

.news__item {
    position: relative;
    z-index: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    padding: 44rem 76rem 44rem 72rem;
    overflow: hidden;
    background-color: #fff;
    border: 2px solid #404040;
    border-radius: 20rem;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

@media(width >=calc(768px + 1px)) {
    .news__item:hover {
        color: #fff
    }

    .news__item:hover::before {
        top: unset;
        bottom: 0;
        height: 100%
    }

    .news__item:hover .news__thumb img {
        scale: 1.1
    }

    .news__item:hover .news__category {
        background-color: #7264d0
    }

    .news__item:hover .news__title {
        border-color: #fff
    }
}

@media(max-width: 768px) {
    .news__item {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        width: calc((100% - 10rem)/2);
        padding: 10rem 0 16rem;
        border: 1px solid #404040;
        border-radius: 10rem
    }
}

.news__item::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    content: "";
    background-color: #ff6ea2;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

.news__thumb {
    position: relative;
    width: 304rem;
    height: auto;
    aspect-ratio: 16/9;
    overflow: hidden;
    background-color: #fff
}

@media(max-width: 768px) {
    .news__thumb {
        width: 158rem;
        height: 94rem
    }
}

.news__thumb img {
    width: 100%;
    height: 100%;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.news__texts {
    position: relative;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-left: 40rem
}

@media(max-width: 768px) {
    .news__texts {
        width: 148rem;
        margin-top: 10rem;
        margin-left: 0
    }
}

.news__info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-column-gap: 24rem;
    -moz-column-gap: 24rem;
    column-gap: 24rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

@media(max-width: 768px) {
    .news__info {
        -webkit-column-gap: 7rem;
        -moz-column-gap: 7rem;
        column-gap: 7rem
    }
}

.news__category {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-width: 168rem;
    padding: 8rem 16rem;
    font-size: max(var(--f-min), 24 * 1rem);
    color: #fff;
    background-color: #ff6ea2;
    border-radius: 9999px;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

@media(max-width: 768px) {
    .news__category {
        min-width: 72rem;
        padding: 3rem 6rem;
        font-size: max(var(--f-min), 10 * 1rem)
    }
}

.news__date {
    font-size: max(var(--f-min), 32 * 1rem)
}

@media(max-width: 768px) {
    .news__date {
        font-size: max(var(--f-min), 14 * 1rem)
    }
}

.news__title {
    width: 100%;
    padding-top: 24rem;
    margin-top: 24rem;
    font-size: max(var(--f-min), 20 * 1rem);
    border-top: 2px solid #404040;
    -webkit-transition: border-color .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: border-color .4s cubic-bezier(0.87, 0, 0.13, 1);
    line-height: 1.5
}

.news__title::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.5)*.5em);
    content: ""
}

.news__title::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.5)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .news__title {
        display: -webkit-box;
        padding-top: 12rem;
        margin-top: 12rem;
        overflow: hidden;
        font-size: max(var(--f-min), 14 * 1rem);
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3
    }
}

.news__pager {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-column-gap: 38rem;
    -moz-column-gap: 38rem;
    column-gap: 38rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 80rem
}

@media(max-width: 768px) {
    .news__pager {
        -webkit-column-gap: 20rem;
        -moz-column-gap: 20rem;
        column-gap: 20rem;
        margin-top: 40rem
    }
}

.news__pager__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-column-gap: 24rem;
    -moz-column-gap: 24rem;
    column-gap: 24rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

@media(max-width: 768px) {
    .news__pager__list {
        -webkit-column-gap: 16rem;
        -moz-column-gap: 16rem;
        column-gap: 16rem
    }
}

.news__pager__item {
    position: relative;
    z-index: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 44rem;
    height: 44rem;
    overflow: hidden;
    font-size: max(var(--f-min), 32 * 1rem);
    border-radius: 50%;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

@media(width >=calc(768px + 1px)) {
    .news__pager__item:hover::before {
        top: unset;
        bottom: 0;
        height: 100%
    }

    .news__pager__item:hover a {
        color: #fff
    }
}

@media(max-width: 768px) {
    .news__pager__item {
        width: 30rem;
        height: 30rem;
        font-size: max(var(--f-min), 20 * 1rem)
    }
}

.news__pager__item::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    content: "";
    background-color: #404040;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

.news__pager__item::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    content: "";
    border: 1px solid #404040;
    border-radius: 50%
}

.news__pager__item a {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

.news__pager__item.--current {
    color: #fff;
    pointer-events: none;
    background-color: #404040
}

.news__pager__move {
    position: relative;
    width: 25rem
}

@media(max-width: 768px) {
    .news__pager__move {
        width: 14rem
    }
}

.news__pager__move.--prev {
    rotate: 180deg
}

.news__pager__move.--invalid {
    pointer-events: none;
    opacity: 0
}

.news-single__content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.news-single__back {
    position: relative;
    z-index: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 268rem;
    height: 64rem;
    overflow: hidden;
    font-size: max(var(--f-min), 28 * 1rem);
    color: #fff;
    background-color: #ff6ea2;
    border-radius: 9999px;
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

@media(max-width: 768px) {
    .news-single__back {
        width: 168rem;
        height: 40rem;
        font-size: max(var(--f-min), 17.5 * 1rem)
    }
}

@media(width >=calc(768px + 1px)) {
    .news-single__back:hover::before {
        top: unset;
        bottom: 0;
        height: 100%
    }
}

.news-single__back::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    content: "";
    background-color: #7264d0;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

.news-single__back span {
    position: relative
}

.news-single__article {
    z-index: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    padding: 80rem 0 119rem;
    margin-top: 80rem;
    margin-bottom: 64rem;
    overflow: hidden;
    background-color: #fff;
    border: 2px solid #404040;
    border-radius: 20rem
}

@media(max-width: 768px) {
    .news-single__article {
        padding: 20rem 20rem 24rem;
        margin-top: 24rem;
        margin-bottom: 40rem;
        border: 1px solid #404040;
        border-radius: 10rem
    }
}

.news-single__thumb {
    width: 1132rem;
    height: auto;
    background-color: #fff
}

@media(max-width: 768px) {
    .news-single__thumb {
        width: 100%;
        height: auto;
        aspect-ratio: 326/200
    }
}

.news-single__thumb img {
    width: 100%;
    height: 100%;
    -o-object-position: center;
    object-position: center;
    -o-object-fit: cover;
    object-fit: cover;
    pointer-events: all
}

.news-single__texts {
    width: 1052rem;
    margin-top: 76rem
}

@media(max-width: 768px) {
    .news-single__texts {
        width: 100%;
        margin-top: 24rem
    }
}

.news-single__info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-column-gap: 24rem;
    -moz-column-gap: 24rem;
    column-gap: 24rem;
    width: 100%
}

@media(max-width: 768px) {
    .news-single__info {
        -webkit-column-gap: 10rem;
        -moz-column-gap: 10rem;
        column-gap: 10rem
    }
}

.news-single__category {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-width: 168rem;
    padding: 8rem 16rem;
    font-size: max(var(--f-min), 24 * 1rem);
    color: #fff;
    background-color: #ff6ea2;
    border-radius: 9999px;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

@media(max-width: 768px) {
    .news-single__category {
        min-width: 90rem;
        padding: 3.75rem 7.5rem;
        font-size: max(var(--f-min), 12.5 * 1rem)
    }
}

.news-single__date {
    font-size: max(var(--f-min), 32 * 1rem)
}

@media(max-width: 768px) {
    .news-single__date {
        font-size: max(var(--f-min), 16 * 1rem)
    }
}

.news-single__title {
    width: 100%;
    margin-top: 29rem;
    font-size: max(var(--f-min), 28 * 1rem);
    line-height: 1.5
}

.news-single__title::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.5)*.5em);
    content: ""
}

.news-single__title::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.5)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .news-single__title {
        margin-top: 24rem;
        font-size: max(var(--f-min), 16 * 1rem);
        line-height: 1.25
    }

    .news-single__title::before {
        display: block;
        width: 0;
        height: 0;
        margin-top: calc((1 - 1.25)*.5em);
        content: ""
    }

    .news-single__title::after {
        display: block;
        width: 0;
        height: 0;
        margin-bottom: calc((1 - 1.25)*.5em);
        content: ""
    }
}

.news-single__text {
    width: 100%;
    padding-top: 40rem;
    margin-top: 40rem;
    font-size: max(var(--f-min), 18 * 1rem);
    line-height: 1.7;
    border-top: 2px solid #404040
}

@media(max-width: 768px) {
    .news-single__text {
        padding-top: 24rem;
        margin-top: 24rem;
        font-size: max(var(--f-min), 14 * 1rem);
        border-top: 1px solid #404040
    }
}

.news-single__text>*:first-child {
    margin-top: 0
}

.news-single__text section {
    display: block;
    margin-top: 40rem
}

.news-single__text p {
    margin: 16rem 0
}

.news-single__text strong {
    font-weight: bold
}

.news-single__text em {
    font-style: italic
}

.news-single__text h1 {
    font-size: 2em
}

.news-single__text h2 {
    font-size: 1.5em
}

.news-single__text h3 {
    font-size: 1.25em
}

.news-single__text h4 {
    font-size: 1em
}

.news-single__text h5 {
    font-size: .8em
}

.news-single__text h6 {
    font-size: .6em
}

.news-single__text ul, .news-single__text ol {
    padding-left: 30rem;
    list-style: auto
}

.news-single__text blockquote {
    display: block;
    -webkit-margin-before: 1em;
    -webkit-margin-after: 1em;
    -webkit-margin-start: 40rem;
    -webkit-margin-end: 40rem
}

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

.news-single__text h1, .news-single__text h2, .news-single__text h3, .news-single__text h4, .news-single__text h5, .news-single__text h6, .news-single__text li, .news-single__text p {
    line-height: 1.7
}

@media(max-width: 768px) {
    .news-single__text h1, .news-single__text h2, .news-single__text h3, .news-single__text h4, .news-single__text h5, .news-single__text h6, .news-single__text li, .news-single__text p {
        line-height: 1.5
    }
}

.news-single__text h1, .news-single__text h2, .news-single__text h3, .news-single__text h4, .news-single__text h5, .news-single__text h6 {
    font-weight: bolder
}

.news-single__text a {
    color: #7264d0;
    text-decoration: underline
}

.media__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 280rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    margin-top: 136rem
}

@media(max-width: 768px) {
    .media__list {
        row-gap: 72rem;
        margin-top: 32rem
    }
}

.media__item {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%
}

.media__item::before, .media__item::after {
    position: absolute;
    top: -1px;
    width: calc((100% - 440rem)/2);
    height: 2px;
    content: "";
    background-color: #7264d0
}

@media(max-width: 768px) {
    .media__item::before, .media__item::after {
        top: -0.5px;
        width: calc((100% - 166rem)/2);
        height: 1px
    }
}

.media__item::before {
    left: 0
}

@media(max-width: 768px) {
    .media__item::before {
        left: 0
    }
}

.media__item::after {
    right: 0
}

@media(max-width: 768px) {
    .media__item::after {
        right: 0
    }
}

.media__item__headline {
    position: absolute;
    top: -136rem;
    right: 0;
    left: 0;
    width: 440rem;
    margin: 0 auto
}

@media(max-width: 768px) {
    .media__item__headline {
        top: -32rem;
        width: 132rem;
        margin: 0 auto
    }
}

.media__item__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    row-gap: 8rem;
    -webkit-column-gap: 8rem;
    -moz-column-gap: 8rem;
    column-gap: 8rem;
    width: 100%;
    margin-top: 100rem
}

@media(max-width: 768px) {
    .media__item__list {
        margin-top: 40rem
    }
}

.media__item__list__item {
    position: relative;
    z-index: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    width: calc((100% - 16rem)/3);
    overflow: hidden;
    background-color: #fff;
    border-radius: 8rem;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

@media(width >=calc(768px + 1px)) {
    .media__item__list__item:hover .media__item__list__item__img img {
        scale: 1.1
    }

    .media__item__list__item:hover .media__item__list__item__text::before {
        top: unset;
        bottom: 0;
        height: 100%
    }

    .media__item__list__item:hover .media__item__list__item__info {
        color: #fff
    }

    .media__item__list__item:hover .media__item__list__item__title {
        color: #fff
    }
}

@media(max-width: 768px) {
    .media__item__list__item {
        width: calc((100% - 8rem)/2);
        border: 1px solid #404040;
        border-radius: 10rem
    }
}

.media__item__list__item::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    border: 1px solid #404040;
    border-radius: 8rem
}

@media(max-width: 768px) {
    .media__item__list__item::after {
        border: none;
        border-radius: 10rem
    }
}

.media__item__list__item__img {
    position: relative;
    overflow: hidden;
    background-color: #fff
}

.media__item__list__item__img img {
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

.media__item__list__item__text {
    position: relative;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding: 24rem 24rem 40rem;
    border-top: 1px solid #404040
}

@media(max-width: 768px) {
    .media__item__list__item__text {
        padding: 14rem
    }
}

.media__item__list__item__text::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    content: "";
    background-color: #ff6ea2;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

.media__item__list__item__info {
    position: relative;
    font-size: max(var(--f-min), 14 * 1rem);
    color: #ff6ea2;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    line-height: 1.5
}

.media__item__list__item__info::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.5)*.5em);
    content: ""
}

.media__item__list__item__info::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.5)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .media__item__list__item__info {
        line-height: 1.25
    }

    .media__item__list__item__info::before {
        display: block;
        width: 0;
        height: 0;
        margin-top: calc((1 - 1.25)*.5em);
        content: ""
    }

    .media__item__list__item__info::after {
        display: block;
        width: 0;
        height: 0;
        margin-bottom: calc((1 - 1.25)*.5em);
        content: ""
    }
}

.media__item__list__item__title {
    position: relative;
    margin-top: 8rem;
    font-size: max(var(--f-min), 16 * 1rem);
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    line-height: 1.5
}

.media__item__list__item__title::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.5)*.5em);
    content: ""
}

.media__item__list__item__title::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.5)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .media__item__list__item__title {
        font-size: max(var(--f-min), 14 * 1rem);
        line-height: 1.25
    }

    .media__item__list__item__title::before {
        display: block;
        width: 0;
        height: 0;
        margin-top: calc((1 - 1.25)*.5em);
        content: ""
    }

    .media__item__list__item__title::after {
        display: block;
        width: 0;
        height: 0;
        margin-bottom: calc((1 - 1.25)*.5em);
        content: ""
    }
}

.media__item__list__item .overlay-link {
    z-index: 1
}

.media__item__view {
    margin-top: 40rem
}

@media(max-width: 768px) {
    .media__item__view {
        margin-top: 24rem
    }
}

.media .anime__item {
    cursor: pointer
}

.media .anime__img {
    width: 100%;
    height: auto;
    aspect-ratio: 16/8.9
}

.media .anime__img::after {
    position: absolute;
    inset: 0;
    width: 62rem;
    height: 62rem;
    margin: auto;
    content: "";
    background-image: url("../images/common/play.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain
}

@media(max-width: 768px) {
    .media .anime__img::after {
        width: 56rem;
        height: 56rem
    }
}

.media .anime__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.media .music__img {
    width: 100%;
    height: auto;
    aspect-ratio: 1/1
}

.media .music__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.member .particle.--black {
    background-color: var(--member-color)
}

.member .particle.--blue {
    background-color: var(--member-color)
}

.member .particle.--pink {
    background-color: var(--member-color)
}

.member__select {
    z-index: 1;
    width: 100%;
    overflow: hidden;
    border: 2px solid #ff6ea2;
    border-radius: 40rem;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

@media(max-width: 768px) {
    .member__select {
        border: none;
        border-radius: 0
    }
}

.member__select__tab {
    width: 100%
}

@media(max-width: 768px) {
    .member__select__tab {
        margin-bottom: 21rem
    }
}

.member__select__tab__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    width: 100%;
    height: 98rem
}

@media(max-width: 768px) {
    .member__select__tab__list {
        -webkit-column-gap: 6rem;
        -moz-column-gap: 6rem;
        column-gap: 6rem;
        height: 48rem
    }
}

.member__select__tab__item {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
    cursor: pointer;
    background-color: #fff;
    border: 2px solid #ff6ea2;
    border-top: none;
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

@media(width >=calc(768px + 1px)) {
    .member__select__tab__item:hover::before {
        top: unset;
        bottom: 0;
        height: 100%
    }

    .member__select__tab__item:hover .member__select__tab__item__text svg .f {
        fill: #fff
    }
}

@media(max-width: 768px) {
    .member__select__tab__item {
        z-index: 1;
        overflow: hidden;
        border: none;
        border-radius: 9999px
    }
}

.member__select__tab__item::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    content: "";
    background-color: #ff6ea2;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

@media(max-width: 768px) {
    .member__select__tab__item::after {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        pointer-events: none;
        content: "";
        border: 1px solid #ff6ea2;
        border-radius: 9999px
    }
}

.member__select__tab__item:first-child {
    border-left: none
}

.member__select__tab__item:last-child {
    border-right: none
}

.member__select__tab__item.--active {
    pointer-events: none
}

.member__select__tab__item.--active::before {
    top: unset;
    bottom: 0;
    height: 100%
}

.member__select__tab__item__text {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: auto;
    height: 64rem
}

@media(max-width: 768px) {
    .member__select__tab__item__text {
        height: 28rem
    }
}

.member__select__tab__item__text::before {
    display: block;
    width: 0;
    height: 48rem;
    margin-right: 10rem;
    content: "";
    background-image: url("../images/common/reticle.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    scale: 0;
    rotate: -180deg
}

@media(max-width: 768px) {
    .member__select__tab__item__text::before {
        height: 21rem;
        margin-right: 4rem
    }
}

.member__select__tab__item__text svg {
    width: auto;
    height: 100%
}

.member__select__tab__item__text svg .f {
    fill: #ff6ea2;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

.member__select__tab__item__text svg .g {
    -webkit-clip-path: url("#e");
    clip-path: url("#e")
}

.member__select__tab__item__text svg .h {
    fill: none
}

.member__select__tab__item.--active .member__select__tab__item__text::before {
    scale: 1;
    rotate: 0deg;
    width: 48rem
}

@media(max-width: 768px) {
    .member__select__tab__item.--active .member__select__tab__item__text::before {
        width: 21rem
    }
}

.member__select__tab__item.--active .member__select__tab__item__text svg .f {
    fill: #fff
}

.member__select__area {
    width: 100%
}

.member__select__area__list {
    position: relative;
    width: 100%
}

.member__select__area__item {
    position: absolute;
    width: 100%;
    padding: 24rem 85rem 74rem;
    pointer-events: none;
    opacity: 0
}

@media(max-width: 768px) {
    .member__select__area__item {
        padding: 0
    }
}

.member__select__area__item.--active {
    position: relative;
    pointer-events: all;
    opacity: 1
}

.member__select__member-list {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    width: 100%
}

.member__select__member-item {
    position: relative;
    display: block;
    width: 174rem;
    height: auto;
    margin: 0 !important;
    margin-left: calc((100% - 1218rem)/6 - .1px) !important;
    cursor: pointer;
    background: none;
    border-radius: 0;
    opacity: 1;
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

@media(width >=calc(768px + 1px)) {
    .member__select__member-item:hover img {
        -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
        transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
    }

    .member__select__member-item:hover img:nth-child(2) {
        position: absolute;
        top: 0;
        left: 0;
        opacity: 1
    }
}

@media(max-width: 768px) {
    .member__select__member-item {
        width: 100rem;
        margin-left: calc((100% - 400rem)/3 - .1px) !important
    }
}

.member__select__member-item.swiper-pagination-bullet-active {
    pointer-events: none
}

.member__select__member-item.swiper-pagination-bullet-active img:nth-child(2) {
    opacity: 1
}

.member__select__member-item:nth-child(7n+1) {
    margin-left: 0 !important
}

@media(max-width: 768px) {
    .member__select__member-item:nth-child(7n+1) {
        margin-left: calc((100% - 400rem)/3 - .1px) !important
    }
}

@media(max-width: 768px) {
    .member__select__member-item:nth-child(4n+1) {
        margin-left: 0 !important
    }
}

.member__select__member-item img {
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.member__select__member-item img:nth-child(2) {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0
}

.member__single {
    position: relative;
    z-index: 2;
    width: 100%;
    margin-top: 80rem;
    margin-bottom: 80rem
}

@media(max-width: 768px) {
    .member__single {
        padding-top: 62rem;
        margin-top: 0;
        margin-bottom: 0
    }
}

.member__single__list {
    -webkit-transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
    transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1)
}


.member__single__item.swiper-slide-active .member__visual__bg {
    -webkit-animation: memberBgOpen .4s cubic-bezier(0.87, 0, 0.13, 1) both;
    animation: memberBgOpen .4s cubic-bezier(0.87, 0, 0.13, 1) both;
    -webkit-animation-delay: calc(0.4s - 0.2s);
    animation-delay: calc(0.4s - 0.2s)
}

.member__single__item.swiper-slide-active .member__visual__en {
    -webkit-animation: memberEnOpen .4s cubic-bezier(0.87, 0, 0.13, 1) both;
    animation: memberEnOpen .4s cubic-bezier(0.87, 0, 0.13, 1) both;
    -webkit-animation-delay: calc(0.4s - 0.2s);
    animation-delay: calc(0.4s - 0.2s)
}

.member__single__item.swiper-slide-active .member__visual__list, .member__single__item.swiper-slide-active .member__info, .member__single__item.swiper-slide-active .member__visual__sd {
    opacity: 1
}

@media(max-width: 768px) {
    .member__single__item.swiper-slide-active .member__info__inner {
        opacity: 1
    }
}

.member__profile {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row
}

@media(max-width: 768px) {
    .member__profile {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center
    }
}

.member__info {
    width: 426rem;
    margin-top: 210rem;
    will-change: opacity, transform, translate;
    opacity: 0;
    -webkit-transition: opacity .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: opacity .4s cubic-bezier(0.87, 0, 0.13, 1)
}

@media(max-width: 768px) {
    .member__info {
        display: contents;
        width: 100%;
        margin-top: 0
    }
}

@media(max-width: 768px) {
    .member__info__inner {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-ordinal-group: 0;
        -webkit-order: -1;
        -ms-flex-order: -1;
        order: -1
    }
}

.member__name {
    width: auto;
    height: 72rem
}

@media(max-width: 768px) {
    .member__name {
        height: 40rem
    }
}

.member__name img {
    width: auto;
    height: 100%
}

.member__name-en {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: 7rem 40rem;
    margin-top: 16rem;
    font-size: max(var(--f-min), 22 * 1rem);
    color: #fff;
    background-color: var(--member-color);
    border-radius: 0 20rem
}

.member__name-en::before {
    display: inline-block;
    height: max(var(--f-min), 22 * 1rem);
    vertical-align: middle;
    content: ""
}

@media(max-width: 768px) {
    .member__name-en {
        padding: 4rem 26rem;
        margin-top: 10rem;
        font-size: max(var(--f-min), 14 * 1rem);
        border-radius: 0 14rem
    }

    .member__name-en::before {
        display: inline-block;
        height: max(var(--f-min), 14 * 1rem);
        vertical-align: middle;
        content: ""
    }
}

.member__sns {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-column-gap: 16rem;
    -moz-column-gap: 16rem;
    column-gap: 16rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 16rem
}

@media(max-width: 768px) {
    .member__sns {
        -webkit-column-gap: 10rem;
        -moz-column-gap: 10rem;
        column-gap: 10rem
    }
}

.member__sns__item {
    width: 32rem;
    height: auto;
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

@media(width >=calc(768px + 1px)) {
    .member__sns__item:hover {
        opacity: .6
    }
}

@media(max-width: 768px) {
    .member__sns__item {
        width: 24rem
    }
}

.member__sns__item svg {
    width: 100%;
    height: auto;
    fill: var(--member-color)
}

.member__status {
    margin-top: 40rem;
    font-family: "IBM Plex Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, "メイリオ", Meiryo, sans-serif;
    font-size: max(var(--f-min), 18 * 1rem);
    line-height: 1.7
}

.member__status::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.7)*.5em);
    content: ""
}

.member__status::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.7)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .member__status {
        margin-top: 20rem;
        font-size: max(var(--f-min), 14 * 1rem);
        line-height: 1.5
    }

    .member__status::before {
        display: block;
        width: 0;
        height: 0;
        margin-top: calc((1 - 1.5)*.5em);
        content: ""
    }

    .member__status::after {
        display: block;
        width: 0;
        height: 0;
        margin-bottom: calc((1 - 1.5)*.5em);
        content: ""
    }
}

.member__text {
    width: 346rem;
    margin-top: 32rem;
    font-size: max(var(--f-min), 18 * 1rem);
    line-height: 1.7
}

.member__text::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.7)*.5em);
    content: ""
}

.member__text::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.7)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .member__text {
        width: 317rem;
        margin-top: 16rem;
        font-size: max(var(--f-min), 14 * 1rem);
        text-align: center;
        word-break: break-all;
        line-height: 1.4
    }

    .member__text::before {
        display: block;
        width: 0;
        height: 0;
        margin-top: calc((1 - 1.4)*.5em);
        content: ""
    }

    .member__text::after {
        display: block;
        width: 0;
        height: 0;
        margin-bottom: calc((1 - 1.4)*.5em);
        content: ""
    }
}

.member__illust-change {
    position: relative;
    z-index: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 234rem;
    height: 64rem;
    margin-top: 80rem;
    overflow: hidden;
    font-size: max(var(--f-min), 28 * 1rem);
    color: #fff;
    letter-spacing: .05em;
    cursor: pointer;
    background-color: var(--member-color);
    border: 2px solid var(--member-color);
    border-radius: 9999px;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

@media(width >=calc(768px + 1px)) {
    .member__illust-change:hover {
        color: var(--member-color)
    }

    .member__illust-change:hover::before {
        top: unset;
        bottom: 0;
        height: 100%
    }

    .member__illust-change:hover span::before, .member__illust-change:hover span::after {
        background-color: var(--member-color)
    }
}

@media(max-width: 768px) {
    .member__illust-change {
        position: absolute;
        bottom: 40rem;
        left: 16rem;
        width: 120rem;
        height: 120rem;
        margin-top: 0;
        font-size: max(var(--f-min), 20 * 1rem);
        border: 1px solid var(--member-color);
        border-radius: 50%
    }
}

.member__illust-change::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    content: "";
    background-color: #fff;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

@media(max-width: 768px) {
    .member__illust-change::before {
        border-radius: 0
    }
}

.member__illust-change span {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 174rem
}

@media(max-width: 768px) {
    .member__illust-change span {
        width: 100rem
    }
}

.member__illust-change span::before, .member__illust-change span::after {
    width: 14rem;
    height: 12rem;
    -webkit-clip-path: polygon(50% 0, 100% 100%, 0 100%);
    clip-path: polygon(50% 0, 100% 100%, 0 100%);
    content: "";
    background-color: #fff;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

@media(max-width: 768px) {
    .member__illust-change span::before, .member__illust-change span::after {
        width: 10rem;
        height: 8rem
    }
}

.member__illust-change span::before {
    rotate: -90deg
}

.member__illust-change span::after {
    rotate: 90deg
}

.member__visual {
    position: relative;
    width: calc(100% - 426rem)
}

@media(max-width: 768px) {
    .member__visual {
        width: 100%;
        margin-top: 10rem
    }
}

.member__visual__bg {
    position: absolute;
    top: 210rem;
    right: -16rem;
    z-index: -1;
    width: 792rem;
    -webkit-animation: memberBgClose .4s cubic-bezier(0.87, 0, 0.13, 1) both;
    animation: memberBgClose .4s cubic-bezier(0.87, 0, 0.13, 1) both;
    will-change: clip-path
}

@media(max-width: 768px) {
    .member__visual__bg {
        top: 30rem;
        right: unset;
        left: -142rem;
        width: 400rem
    }
}

@-webkit-keyframes memberBgOpen {
    0% {
        -webkit-clip-path: inset(0 0 100% 0);
        clip-path: inset(0 0 100% 0)
    }

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

@keyframes memberBgOpen {
    0% {
        -webkit-clip-path: inset(0 0 100% 0);
        clip-path: inset(0 0 100% 0)
    }

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

@-webkit-keyframes memberBgClose {
    0% {
        -webkit-clip-path: inset(0 0 0 0);
        clip-path: inset(0 0 0 0)
    }

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

@keyframes memberBgClose {
    0% {
        -webkit-clip-path: inset(0 0 0 0);
        clip-path: inset(0 0 0 0)
    }

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

.member__visual__en {
    position: absolute;
    top: 60rem;
    left: 0;
    width: auto;
    height: 200rem;
    font-size: 200rem;
    color: rgba(0, 0, 0, 0);
    white-space: nowrap;
    rotate: 90deg;
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    translate: 0 -100%;
    -webkit-text-stroke: 2px var(--member-color);
    -webkit-animation: memberEnClose .4s cubic-bezier(0.87, 0, 0.13, 1) both;
    animation: memberEnClose .4s cubic-bezier(0.87, 0, 0.13, 1) both;
    will-change: clip-path
}

@media(max-width: 768px) {
    .member__visual__en {
        top: 25rem;
        right: -40rem;
        left: unset;
        height: 104rem;
        font-size: 104rem;
        translate: 0;
        -webkit-transform-origin: top right;
        transform-origin: top right
    }

    .member__visual__en span {
        display: block;
        translate: 100% 0
    }
}

@-webkit-keyframes memberEnOpen {
    0% {
        -webkit-clip-path: inset(0 100% 0 0);
        clip-path: inset(0 100% 0 0)
    }

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

@keyframes memberEnOpen {
    0% {
        -webkit-clip-path: inset(0 100% 0 0);
        clip-path: inset(0 100% 0 0)
    }

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

@-webkit-keyframes memberEnClose {
    0% {
        -webkit-clip-path: inset(0 0 0 0);
        clip-path: inset(0 0 0 0)
    }

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

@keyframes memberEnClose {
    0% {
        -webkit-clip-path: inset(0 0 0 0);
        clip-path: inset(0 0 0 0)
    }

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

.member__visual__list {
    will-change: opacity, transform, translate;
    position: relative;
    width: 788rem;
    height: 1130rem;
    opacity: 0;
    -webkit-transition: opacity .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: opacity .4s cubic-bezier(0.87, 0, 0.13, 1)
}

@media(max-width: 768px) {
    .member__visual__list {
        width: 425rem;
        height: 610rem;
        margin-left: 42rem
    }
}

.member__visual__item {
    position: relative;
    width: 100%;
    height: 100%;
    will-change: clip-path
}

.member__visual__item img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: bottom;
    object-position: bottom
}

.member__visual__item:nth-child(1) {
    -webkit-clip-path: inset(0);
    clip-path: inset(0)
}

.member__visual__item:nth-child(2) {
    position: absolute;
    top: 0;
    left: 0;
    -webkit-clip-path: inset(0 0 100% 0);
    clip-path: inset(0 0 100% 0)
}

.member__visual__item.--hidden {
    -webkit-animation: illustChangeHide .8s cubic-bezier(0.87, 0, 0.13, 1) both;
    animation: illustChangeHide .8s cubic-bezier(0.87, 0, 0.13, 1) both
}

.member__visual__item.--active {
    -webkit-animation: illustChangeShow .8s cubic-bezier(0.87, 0, 0.13, 1) both;
    animation: illustChangeShow .8s cubic-bezier(0.87, 0, 0.13, 1) both
}

@-webkit-keyframes illustChangeShow {
    0% {
        -webkit-clip-path: inset(0 0 100% 0);
        clip-path: inset(0 0 100% 0)
    }

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

@keyframes illustChangeShow {
    0% {
        -webkit-clip-path: inset(0 0 100% 0);
        clip-path: inset(0 0 100% 0)
    }

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

@-webkit-keyframes illustChangeHide {
    0% {
        -webkit-clip-path: inset(0);
        clip-path: inset(0)
    }

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

@keyframes illustChangeHide {
    0% {
        -webkit-clip-path: inset(0);
        clip-path: inset(0)
    }

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

.member__visual__sd {
    position: absolute;
    top: 630rem;
    right: 92rem;
    width: 360rem;
    height: auto;
    will-change: opacity, transform, translate;
    opacity: 0;
    -webkit-transition: opacity .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: opacity .4s cubic-bezier(0.87, 0, 0.13, 1)
}

@media(max-width: 768px) {
    .member__visual__sd {
        top: 210rem;
        right: unset;
        left: -8rem;
        width: 212rem
    }
}

.member__change {
    position: absolute;
    top: 160rem;
    right: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row
}

@media(max-width: 768px) {
    .member__change {
        position: relative;
        top: unset;
        right: unset;
        -webkit-box-ordinal-group: -1;
        -webkit-order: -2;
        -ms-flex-order: -2;
        order: -2;
        margin-bottom: 24rem
    }
}

.member__change__button {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 148rem;
    padding: 7rem 0;
    overflow: hidden;
    font-size: max(var(--f-min), 22 * 1rem);
    cursor: pointer;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

@media(width >=calc(768px + 1px)) {
    .member__change__button:hover {
        color: #fff
    }

    .member__change__button:hover::before {
        top: unset;
        bottom: 0;
        height: 100%
    }

    .member__change__button:hover::after {
        border: 2px solid var(--member-color)
    }
}

@media(max-width: 768px) {
    .member__change__button {
        width: 98rem;
        padding: 4rem 0;
        font-size: max(var(--f-min), 14 * 1rem)
    }
}

.member__change__button--prev {
    color: #fff;
    background-color: #404040;
    border-radius: 0 20rem
}

.member__change__button--prev::after {
    border-radius: 0 20rem
}

.member__change__button--next {
    color: #404040;
    background-color: #fff;
    border-radius: 20rem 0
}

.member__change__button--next::after {
    border-radius: 20rem 0
}

.member__change__button::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    content: "";
    background-color: var(--member-color);
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

.member__change__button::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    content: "";
    border: 2px solid #404040;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

.member__change__button span {
    position: relative
}

.member__movie {
    position: relative;
    width: 100%;
    margin-top: 40rem
}

.member__movie__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-column-gap: 40rem;
    -moz-column-gap: 40rem;
    column-gap: 40rem;
    width: 100%
}

@media(max-width: 768px) {
    .member__movie__list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        row-gap: 24rem;
        -webkit-column-gap: 0;
        -moz-column-gap: 0;
        column-gap: 0
    }
}

.member__movie__item {
    position: relative;
    z-index: 1;
    width: calc((100% - 40rem)/2);
    height: auto;
    aspect-ratio: 16/9;
    overflow: hidden;
    cursor: pointer;
    border-radius: 16rem;
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

@media(width >=calc(768px + 1px)) {
    .member__movie__item:hover img {
        scale: 1.1
    }
}

@media(max-width: 768px) {
    .member__movie__item {
        width: 100%;
        border-radius: 10rem
    }
}

.member__movie__item::before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    content: "";
    background-color: #404040;
    opacity: .4
}

.member__movie__item::after {
    position: absolute;
    inset: 0;
    z-index: 2;
    width: 88rem;
    height: 88rem;
    margin: auto;
    content: "";
    background-image: url("../images/common/play.svg");
    background-position: center;
    background-size: contain
}

@media(max-width: 768px) {
    .member__movie__item::after {
        width: 64rem;
        height: 64rem
    }
}

.member__movie__item.--plain {
    cursor: unset;
    background-color: #f6f6f6
}

@media(max-width: 768px) {
    .member__movie__item.--plain {
        display: none
    }
}

.member__movie__item.--plain::before, .member__movie__item.--plain::after {
    display: none
}

.member__movie__item img {
    width: 100%;
    height: 100%;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    -o-object-position: center;
    object-position: center;
    -o-object-fit: cover;
    object-fit: cover
}

@media(max-width: 768px) {
    .member__bottom {
        display: none
    }
}

@media(max-width: 768px) {
    .trophies__inner {
        width: 326rem
    }
}

.trophies__top {
    position: relative;
    width: 100%
}

.trophies__top__bg {
    width: 100%
}

.trophies__top__text {
    position: absolute;
    top: 378rem;
    right: 80rem;
    width: 516rem;
    font-size: max(var(--f-min), 20 * 1rem);
    color: #fff;
    text-align: center;
    line-height: 1.5
}

.trophies__top__text::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.5)*.5em);
    content: ""
}

.trophies__top__text::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.5)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .trophies__top__text {
        top: 310rem;
        right: 0;
        left: 0;
        width: 300rem;
        margin: 0 auto;
        font-size: max(var(--f-min), 12 * 1rem)
    }
}

.trophies__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    row-gap: 78rem;
    -webkit-column-gap: calc((100% - 1068rem)/2);
    -moz-column-gap: calc((100% - 1068rem)/2);
    column-gap: calc((100% - 1068rem)/2);
    margin-top: 78rem
}

@media(max-width: 768px) {
    .trophies__list {
        row-gap: 40rem;
        -webkit-column-gap: 30rem;
        -moz-column-gap: 30rem;
        column-gap: 30rem;
        margin-top: 42rem
    }
}

.trophies__item {
    --hover-dur: 0.4s;
    position: relative;
    width: 356rem;
    cursor: pointer
}

.trophies__item:hover .trophies__item__image__list {
    scale: 1.1545454545
}

.trophies__item:hover .trophies__item__image__item {
    -webkit-animation-name: trophyDisappear;
    animation-name: trophyDisappear;
    -webkit-animation-delay: calc(var(--hover-dur)/(var(--trophy-max) - 1)*var(--trophy-index));
    animation-delay: calc(var(--hover-dur)/(var(--trophy-max) - 1)*var(--trophy-index))
}

.trophies__item:hover .trophies__item__image__item:last-child {
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

@-webkit-keyframes trophyAppear {
    0% {
        opacity: 1
    }

    100% {
        opacity: 1
    }
}

@keyframes trophyAppear {
    0% {
        opacity: 1
    }

    100% {
        opacity: 1
    }
}

@-webkit-keyframes trophyDisappear {
    0% {
        opacity: 1
    }

    100% {
        opacity: 1
    }
}

@keyframes trophyDisappear {
    0% {
        opacity: 1
    }

    100% {
        opacity: 1
    }
}

@media(max-width: 768px) {
    .trophies__item {
        width: calc((100% - 30rem)/2)
    }
}

.trophies__item__image {
    position: relative;
    z-index: 2;
    width: 100%;
    height: auto;
    aspect-ratio: 1/1;
    pointer-events: none
}

.trophies__item__image::before {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 384rem;
    height: 384rem;
    content: "";
    background-image: url("../images/trophies/trophy_bg.webp");
    background-position: center;
    background-size: contain;
    translate: -50% -50%
}

@media(max-width: 768px) {
    .trophies__item__image::before {
        width: 160rem;
        height: 160rem
    }
}

.trophies__item__image__list {
    position: relative;
    width: 100%;
    height: 100%;
    -webkit-transition: var(--hover-dur) cubic-bezier(0.16, 1, 0.3, 1);
    transition: var(--hover-dur) cubic-bezier(0.16, 1, 0.3, 1)
}

.trophies__item__image__item {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 440rem;
    height: auto;
    -webkit-animation-name: trophyAppear;
    animation-name: trophyAppear;
    -webkit-animation-duration: calc(var(--hover-dur)/(var(--trophy-max) - 1));
    animation-duration: calc(var(--hover-dur)/(var(--trophy-max) - 1));
    -webkit-animation-timing-function: cubic-bezier(0.87, 0, 0.13, 1);
    animation-timing-function: cubic-bezier(0.87, 0, 0.13, 1);
    -webkit-animation-delay: calc(var(--hover-dur)/(var(--trophy-max) - 1)*(var(--trophy-max) - 1 - var(--trophy-index)));
    animation-delay: calc(var(--hover-dur)/(var(--trophy-max) - 1)*(var(--trophy-max) - 1 - var(--trophy-index)));
    translate: -50% -50%
}

@media(max-width: 768px) {
    .trophies__item__image__item {
        width: 180rem
    }
}

.trophies__item__image__item:nth-of-type(n + 2) {
    opacity: 0
}

.trophies__item__title {
    position: relative;
    z-index: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    min-height: 80rem;
    padding: 16rem 30rem;
    font-size: max(var(--f-min), 20 * 1rem);
    color: #fff;
    text-align: center;
    background-color: #946b30;
    line-height: 1.25
}

.trophies__item__title::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.25)*.5em);
    content: ""
}

.trophies__item__title::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.25)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .trophies__item__title {
        min-height: 0;
        padding: 12rem 11rem;
        font-size: max(var(--f-min), 14 * 1rem)
    }
}

.trophies__modal {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9;
    display: none;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(64, 64, 64, .8);
    opacity: 0
}

.trophies__modal__close-bg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 100%
}

.trophies__modal__close-btn {
    position: absolute;
    top: 30rem;
    right: 30rem;
    z-index: 8;
    display: block;
    width: 38rem
}

@media(max-width: 768px) {
    .trophies__modal__close-btn {
        top: 15rem;
        right: 15rem;
        width: 18rem
    }
}

.trophies__modal__content-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: auto;
    min-height: calc(100% - 160rem);
    margin: 80rem auto
}

.trophies__modal__content {
    position: relative;
    z-index: 1;
    scale: .8;
    width: 1440rem;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    overflow: hidden;
    background-image: -webkit-linear-gradient(45deg, #f8c65e, #57450e 25%, #99763e 40%, #f8c75e 55%, #99763e 65%, #553904 75%, #f8c65e);
    background-image: linear-gradient(45deg, #f8c65e, #57450e 25%, #99763e 40%, #f8c75e 55%, #99763e 65%, #553904 75%, #f8c65e);
    border-radius: 16rem;
    opacity: 0
}

@media(max-width: 1520px) {
    .trophies__modal__content {
        width: 1280rem
    }
}

@media(max-width: 768px) {
    .trophies__modal__content {
        width: min(360rem, calc(100vw - 32rem));
        border-radius: 8rem
    }
}

.trophies__modal__content::before {
    position: absolute;
    inset: 0;
    width: calc(100% - 4px);
    height: calc(100% - 4px);
    margin: auto;
    content: "";
    background-color: #212121;
    background-image: url("../images/trophies/trophy_modal_bg.webp");
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 100%;
    border-radius: calc(16rem - 2px)
}

@media(max-width: 768px) {
    .trophies__modal__content::before {
        width: calc(100% - 1px);
        height: calc(100% - 1px);
        background-image: url("../images/trophies/trophy_modal_bg-sp.webp");
        border-radius: calc(8rem - 1px)
    }
}

.trophies__modal__content__inner {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    padding: 80rem 84rem 100rem 80rem
}

@media(max-width: 768px) {
    .trophies__modal__content__inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 30rem 34rem 42rem
    }
}

.trophies__modal__img {
    width: 40.4388714734%;
    height: auto
}

@media(max-width: 768px) {
    .trophies__modal__img {
        width: 258rem
    }
}

.trophies__modal__texts {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 32rem;
    margin-left: 80rem
}

@media(max-width: 768px) {
    .trophies__modal__texts {
        row-gap: 24rem;
        margin-top: 40rem;
        margin-left: 0
    }
}

.trophies__modal__dl dt {
    font-size: max(var(--f-min), 20 * 1rem);
    color: #525252
}

@media(max-width: 768px) {
    .trophies__modal__dl dt {
        font-size: max(var(--f-min), 14 * 1rem)
    }
}

.trophies__modal__dl dd {
    margin-top: 14rem;
    font-size: max(var(--f-min), 28 * 1rem);
    color: #fff;
    line-height: 1.5
}

.trophies__modal__dl dd::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.5)*.5em);
    content: ""
}

.trophies__modal__dl dd::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.5)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .trophies__modal__dl dd {
        margin-top: 12rem;
        font-size: max(var(--f-min), 18 * 1rem)
    }
}

.trophies__modal__member dd {
    margin-top: 0
}

.trophies__modal__member__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap
}

.trophies__modal__member__item {
    position: relative;
    width: 35.2941176471%;
    margin-left: calc(-2.9411764706% - .1px);
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

@media(width >=calc(768px + 1px)) {
    .trophies__modal__member__item:hover {
        opacity: .6
    }
}

@media(max-width: 768px) {
    .trophies__modal__member__item {
        width: 50%;
        margin-left: 0
    }
}

.trophies__modal__member__item:nth-child(3n+1) {
    margin-left: 0
}

.guide__content {
    padding: 80rem 114rem 154rem;
    background-color: #fff;
    border: 2px solid #404040;
    border-radius: 20rem
}

@media(max-width: 768px) {
    .guide__content {
        padding: 24rem 20rem;
        border: 1px solid #404040;
        border-radius: 10rem
    }
}

.guide__title {
    font-size: max(var(--f-min), 48 * 1rem);
    text-align: center
}

@media(max-width: 768px) {
    .guide__title {
        font-size: max(var(--f-min), 28 * 1rem);
        line-height: 1.25
    }

    .guide__title::before {
        display: block;
        width: 0;
        height: 0;
        margin-top: calc((1 - 1.25)*.5em);
        content: ""
    }

    .guide__title::after {
        display: block;
        width: 0;
        height: 0;
        margin-bottom: calc((1 - 1.25)*.5em);
        content: ""
    }
}

.guide__text {
    width: 100%;
    padding-top: 40rem;
    margin-top: 40rem;
    font-size: max(var(--f-min), 18 * 1rem);
    border-top: 2px solid #404040
}

@media(max-width: 768px) {
    .guide__text {
        padding-top: 24rem;
        margin-top: 24rem;
        font-size: max(var(--f-min), 14 * 1rem)
    }
}

.guide__text>*:first-child {
    margin-top: 0
}

.guide__text section {
    display: block;
    margin-top: 40rem
}

.guide__text p {
    margin: 16rem 0
}

.guide__text strong {
    font-weight: bold
}

.guide__text em {
    font-style: italic
}

.guide__text h1 {
    font-size: 2em
}

.guide__text h2 {
    font-size: 1.5em
}

.guide__text h3 {
    font-size: 1.25em
}

.guide__text h4 {
    font-size: 1em
}

.guide__text h5 {
    font-size: .8em
}

.guide__text h6 {
    font-size: .6em
}

.guide__text ul, .guide__text ol {
    padding-left: 30rem;
    list-style: auto
}

.guide__text blockquote {
    display: block;
    -webkit-margin-before: 1em;
    -webkit-margin-after: 1em;
    -webkit-margin-start: 40rem;
    -webkit-margin-end: 40rem
}

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

.guide__text h1, .guide__text h2, .guide__text h3, .guide__text h4, .guide__text h5, .guide__text h6, .guide__text li, .guide__text p {
    line-height: 1.7
}

@media(max-width: 768px) {
    .guide__text h1, .guide__text h2, .guide__text h3, .guide__text h4, .guide__text h5, .guide__text h6, .guide__text li, .guide__text p {
        line-height: 1.5
    }
}

.guide__text h1, .guide__text h2, .guide__text h3, .guide__text h4, .guide__text h5, .guide__text h6 {
    font-weight: bolder
}

.guide__text a {
    color: #7264d0;
    text-decoration: underline
}

.privacy-policy__content {
    padding: 80rem 114rem 154rem;
    margin-top: 160rem;
    background-color: #fff;
    border: 2px solid #404040;
    border-radius: 20rem
}

@media(max-width: 768px) {
    .privacy-policy__content {
        padding: 24rem 20rem;
        margin-top: 80rem;
        border: 1px solid #404040;
        border-radius: 10rem
    }
}

.privacy-policy__title {
    font-size: max(var(--f-min), 48 * 1rem);
    text-align: center
}

@media(max-width: 768px) {
    .privacy-policy__title {
        font-size: max(var(--f-min), 28 * 1rem);
        line-height: 1.25
    }

    .privacy-policy__title::before {
        display: block;
        width: 0;
        height: 0;
        margin-top: calc((1 - 1.25)*.5em);
        content: ""
    }

    .privacy-policy__title::after {
        display: block;
        width: 0;
        height: 0;
        margin-bottom: calc((1 - 1.25)*.5em);
        content: ""
    }
}

.privacy-policy__text {
    width: 100%;
    padding-top: 40rem;
    margin-top: 40rem;
    font-size: max(var(--f-min), 18 * 1rem);
    border-top: 2px solid #404040
}

@media(max-width: 768px) {
    .privacy-policy__text {
        padding-top: 24rem;
        margin-top: 24rem;
        font-size: max(var(--f-min), 14 * 1rem)
    }
}

.privacy-policy__text>*:first-child {
    margin-top: 0
}

.privacy-policy__text section {
    display: block;
    margin-top: 40rem
}

.privacy-policy__text p {
    margin: 16rem 0
}

.privacy-policy__text strong {
    font-weight: bold
}

.privacy-policy__text em {
    font-style: italic
}

.privacy-policy__text h1 {
    font-size: 2em
}

.privacy-policy__text h2 {
    font-size: 1.5em
}

.privacy-policy__text h3 {
    font-size: 1.25em
}

.privacy-policy__text h4 {
    font-size: 1em
}

.privacy-policy__text h5 {
    font-size: .8em
}

.privacy-policy__text h6 {
    font-size: .6em
}

.privacy-policy__text ul, .privacy-policy__text ol {
    padding-left: 30rem;
    list-style: auto
}

.privacy-policy__text blockquote {
    display: block;
    -webkit-margin-before: 1em;
    -webkit-margin-after: 1em;
    -webkit-margin-start: 40rem;
    -webkit-margin-end: 40rem
}

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

.privacy-policy__text h1, .privacy-policy__text h2, .privacy-policy__text h3, .privacy-policy__text h4, .privacy-policy__text h5, .privacy-policy__text h6, .privacy-policy__text li, .privacy-policy__text p {
    line-height: 1.7
}

@media(max-width: 768px) {
    .privacy-policy__text h1, .privacy-policy__text h2, .privacy-policy__text h3, .privacy-policy__text h4, .privacy-policy__text h5, .privacy-policy__text h6, .privacy-policy__text li, .privacy-policy__text p {
        line-height: 1.5
    }
}

.privacy-policy__text h1, .privacy-policy__text h2, .privacy-policy__text h3, .privacy-policy__text h4, .privacy-policy__text h5, .privacy-policy__text h6 {
    font-weight: bolder
}

.privacy-policy__text a {
    color: #7264d0;
    text-decoration: underline
}

.faq__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 24rem;
    width: 100%
}

@media(max-width: 768px) {
    .faq__list {
        row-gap: 16rem
    }
}

.faq__item {
    z-index: 1;
    width: 100%;
    overflow: hidden;
    background-color: #fff;
    border: 2px solid #404040;
    border-radius: 20rem
}

@media(max-width: 768px) {
    .faq__item {
        border: 1px solid #404040;
        border-radius: 10rem
    }
}

.faq__item dt {
    width: 100%
}

.faq__item__question {
    --plus-color: #404040;
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    padding: 48rem 148rem 48rem 80rem;
    margin-bottom: -2px;
    cursor: pointer;
    border-bottom: 2px solid #404040;
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

@media(width >=calc(768px + 1px)) {
    .faq__item__question:hover {
        --plus-color: #fff;
        color: #fff;
        background-color: #ff6ea2
    }
}

@media(max-width: 768px) {
    .faq__item__question {
        padding: 20rem 66rem 20rem 20rem;
        margin-bottom: -1px;
        border-bottom: 1px solid #404040
    }
}

.faq__item__question__plus {
    position: absolute;
    top: 0;
    right: 40rem;
    bottom: 0;
    width: 40rem;
    height: 40rem;
    margin: auto 0
}

@media(max-width: 768px) {
    .faq__item__question__plus {
        right: 20rem;
        width: 16rem;
        height: 16rem
    }
}

.faq__item__question__plus::before {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 2px;
    margin: auto;
    content: "";
    background-color: var(--plus-color);
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

@media(max-width: 768px) {
    .faq__item__question__plus::before {
        height: 1px
    }
}

.faq__item__question__plus::after {
    position: absolute;
    inset: 0;
    width: 2px;
    height: 100%;
    margin: auto;
    content: "";
    background-color: var(--plus-color);
    -webkit-transition: rotate .4s cubic-bezier(0.87, 0, 0.13, 1), .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: rotate .4s cubic-bezier(0.87, 0, 0.13, 1), .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

@media(max-width: 768px) {
    .faq__item__question__plus::after {
        width: 1px
    }
}

.faq__item__question__text {
    width: 100%;
    font-size: max(var(--f-min), 32 * 1rem);
    line-height: 1.25
}

.faq__item__question__text::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.25)*.5em);
    content: ""
}

.faq__item__question__text::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.25)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .faq__item__question__text {
        font-size: max(var(--f-min), 16 * 1rem)
    }
}

.faq__item__answer {
    width: 100%;
    max-height: 0;
    padding: 0 80rem;
    margin-bottom: 0;
    overflow: hidden;
    font-size: max(var(--f-min), 18 * 1rem);
    line-height: 0;
    opacity: 0;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

@media(max-width: 768px) {
    .faq__item__answer {
        padding: 0 20rem;
        font-size: max(var(--f-min), 14 * 1rem)
    }
}

.faq__item__answer a {
    color: #7264d0;
    text-decoration: underline
}

.faq__item.--opened .faq__item__question {
    --plus-color: #fff;
    padding: 48rem 148rem 48rem 80rem;
    color: #fff;
    background-color: #ff6ea2
}

@media(max-width: 768px) {
    .faq__item.--opened .faq__item__question {
        padding: 20rem 66rem 20rem 20rem
    }
}

.faq__item.--opened .faq__item__question__plus::after {
    rotate: 90deg
}

.faq__item.--opened .faq__item__answer {
    max-height: 100%;
    padding: 40rem 80rem 58rem;
    opacity: 1;
    line-height: 1.7
}

.faq__item.--opened .faq__item__answer::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.7)*.5em);
    content: ""
}

.faq__item.--opened .faq__item__answer::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.7)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .faq__item.--opened .faq__item__answer {
        padding: 20rem 20rem 24rem
    }
}

.contact__content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.contact__text {
    width: 1080rem;
    font-size: max(var(--f-min), 20 * 1rem);
    text-align: center;
    line-height: 1.8
}

.contact__text::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.8)*.5em);
    content: ""
}

.contact__text::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.8)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .contact__text {
        width: 318rem;
        font-size: max(var(--f-min), 14 * 1rem);
        text-align: left;
        line-height: 1.5
    }

    .contact__text::before {
        display: block;
        width: 0;
        height: 0;
        margin-top: calc((1 - 1.5)*.5em);
        content: ""
    }

    .contact__text::after {
        display: block;
        width: 0;
        height: 0;
        margin-bottom: calc((1 - 1.5)*.5em);
        content: ""
    }
}

.contact__text__button {
    margin: 0 auto;
    margin-top: 24rem
}

@media(max-width: 768px) {
    .contact__text__button {
        width: 100%;
        padding: 0 16rem
    }
}

.contact__form {
    z-index: 1;
    width: 100%;
    padding: 80rem 100rem;
    margin-top: 80rem;
    overflow: hidden;
    background-color: #fff;
    border: 2px solid #404040;
    border-radius: 20rem
}

@media(max-width: 768px) {
    .contact__form {
        padding: 24rem 20rem 40rem;
        margin-top: 40rem;
        border: 1px solid #404040;
        border-radius: 10rem
    }
}

.contact__form__title {
    padding-bottom: 40rem;
    margin-bottom: 40rem;
    font-size: max(var(--f-min), 40 * 1rem);
    text-align: center;
    border-bottom: 2px solid #404040;
    line-height: 1.25
}

.contact__form__title::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.25)*.5em);
    content: ""
}

.contact__form__title::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.25)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .contact__form__title {
        padding-bottom: 24rem;
        margin-bottom: 40rem;
        font-size: max(var(--f-min), 24 * 1rem);
        border-bottom: 1px solid #404040
    }
}

.contact__form .form__confirm {
    display: none
}

.contact__form .mw_wp_form_confirm .form__confirm {
    display: block;
    padding: 19rem 38rem;
    margin-bottom: 64rem;
    overflow: hidden;
    color: #fff;
    background-color: #ff6ea2;
    border-radius: 16rem
}

@media(max-width: 768px) {
    .contact__form .mw_wp_form_confirm .form__confirm {
        padding: 12rem 9rem;
        margin-bottom: 40rem;
        border-radius: 4rem
    }
}

.contact__form .mw_wp_form_confirm .form__confirm p {
    font-size: max(var(--f-min), 20 * 1rem);
    line-height: 1.5
}

.contact__form .mw_wp_form_confirm .form__confirm p::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.5)*.5em);
    content: ""
}

.contact__form .mw_wp_form_confirm .form__confirm p::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.5)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .contact__form .mw_wp_form_confirm .form__confirm p {
        font-size: max(var(--f-min), 14 * 1rem)
    }
}

.contact__form .mw_wp_form_confirm .form__confirm p span {
    font-size: #ff6ea2
}

.contact__form .mw_wp_form_confirm .form__radio {
    padding: 19rem 38rem;
    margin-top: 16rem;
    font-size: max(var(--f-min), 20 * 1rem);
    background-color: #e6e6e6;
    border-radius: 16rem
}

@media(max-width: 768px) {
    .contact__form .mw_wp_form_confirm .form__radio {
        padding: 12rem 9rem;
        font-size: max(var(--f-min), 14 * 1rem);
        border-radius: 4rem
    }
}

.contact__form .mw_wp_form_confirm .form__text {
    background-color: #e6e6e6;
    border: none
}

.contact__form .mw_wp_form_confirm .form__text:has(input[value=""])::before {
    position: relative;
    display: inline-block;
    height: 1em
}

.contact__form .form {
    width: 100%
}

.contact__form .form__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 64rem;
    width: 100%
}

@media(max-width: 768px) {
    .contact__form .form__list {
        row-gap: 40rem
    }
}

.contact__form .form__item {
    width: 100%
}

.contact__form .form__label {
    display: block;
    font-size: max(var(--f-min), 20 * 1rem)
}

@media(max-width: 768px) {
    .contact__form .form__label {
        font-size: max(var(--f-min), 16 * 1rem)
    }
}

.contact__form .form__label.--required::after {
    color: #be2452;
    content: "*"
}

.contact__form .form__radio {
    margin-top: 20rem
}

@media(max-width: 768px) {
    .contact__form .form__radio {
        margin-top: 14rem
    }
}

.contact__form .form__radio__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.contact__form .form__radio__list.--row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-column-gap: 32rem;
    -moz-column-gap: 32rem;
    column-gap: 32rem
}

@media(max-width: 768px) {
    .contact__form .form__radio__list.--row {
        -webkit-column-gap: 30rem;
        -moz-column-gap: 30rem;
        column-gap: 30rem
    }
}

.contact__form .form__radio__list.--column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 16rem
}

@media(max-width: 768px) {
    .contact__form .form__radio__list.--column {
        row-gap: 10rem
    }
}

.contact__form .form__radio__list label {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    font-size: max(var(--f-min), 18 * 1rem)
}

@media(max-width: 768px) {
    .contact__form .form__radio__list label {
        font-size: max(var(--f-min), 14 * 1rem)
    }
}

.contact__form .form__radio__list label span {
    margin-top: calc(((1em * 1.25) - max(var(--f-min), 18 * 1rem))/-2);
    margin-bottom: calc(((1em * 1.25) - max(var(--f-min), 18 * 1rem))/-2);
    line-height: 1.25
}

@media(max-width: 768px) {
    .contact__form .form__radio__list label span {
        margin-top: calc(((1em * 1.25) - max(var(--f-min), 14 * 1rem))/-2);
        margin-bottom: calc(((1em * 1.25) - max(var(--f-min), 14 * 1rem))/-2)
    }
}

.contact__form .form__radio input[type=radio] {
    position: relative;
    display: block;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: max(20rem, 16px);
    height: max(20rem, 16px);
    margin: 0;
    margin-top: calc(((1em * 1.25) - max(20rem, 16px))/-2);
    margin-right: max(10rem, 8px);
    margin-bottom: calc(((1em * 1.25) - max(20rem, 16px))/-2);
    line-height: 1.25;
    border: 2px solid #787878;
    border-radius: 50%
}

@media(max-width: 768px) {
    .contact__form .form__radio input[type=radio] {
        width: max(16rem, 16px);
        height: max(16rem, 16px);
        margin-top: calc(((1em * 1.25) - max(16rem, 16px))/-2);
        margin-right: max(6rem, 6px);
        margin-bottom: calc(((1em * 1.25) - max(16rem, 16px))/-2);
        border: 1px solid #787878
    }
}

.contact__form .form__radio input[type=radio]::before {
    position: absolute;
    inset: 0;
    width: 70%;
    height: 70%;
    margin: auto;
    content: "";
    background-color: #787878;
    border-radius: 50%;
    opacity: 0
}

.contact__form .form__radio input[type=radio]:checked::before {
    opacity: 1;
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.contact__form .form__text {
    width: 100%;
    padding: 19rem 38rem;
    margin-top: 16rem;
    font-size: max(var(--f-min), 20 * 1rem);
    border: 2px solid #787878;
    border-radius: 16rem;
    line-height: 1.25
}

.contact__form .form__text::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.25)*.5em);
    content: ""
}

.contact__form .form__text::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.25)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .contact__form .form__text {
        padding: 12rem 9rem;
        font-size: max(var(--f-min), 14 * 1rem);
        border: 1px solid #787878;
        border-radius: 4rem
    }
}

.contact__form .form__text ::-webkit-input-placeholder {
    color: #e6e6e6
}

.contact__form .form__text ::-moz-placeholder {
    color: #e6e6e6
}

.contact__form .form__text :-ms-input-placeholder {
    color: #e6e6e6
}

.contact__form .form__text ::-ms-input-placeholder {
    color: #e6e6e6
}

.contact__form .form__text ::placeholder {
    color: #e6e6e6
}

.contact__form .form__text input {
    width: 100%
}

.contact__form .form__text select {
    width: 100%;
    -webkit-appearance: auto;
    -moz-appearance: auto;
    appearance: auto
}

.contact__form .form__text select option:first-child {
    display: none
}

.contact__form .form__text textarea {
    width: 100%;
    height: 342rem
}

@media(max-width: 768px) {
    .contact__form .form__text textarea {
        height: 240rem
    }
}

.contact__form .form__attention {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 24rem;
    font-size: max(var(--f-min), 12 * 1rem);
    line-height: 1.5
}

.contact__form .form__attention::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.5)*.5em);
    content: ""
}

.contact__form .form__attention::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.5)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .contact__form .form__attention {
        margin-top: 16rem
    }
}

.contact__form .form__bottom {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    margin-top: 40rem
}

.contact__form .form__agreement {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

.contact__form .form__agreement__text {
    width: 100%;
    font-size: max(var(--f-min), 18 * 1rem);
    text-align: center;
    line-height: 1.5
}

.contact__form .form__agreement__text::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.5)*.5em);
    content: ""
}

.contact__form .form__agreement__text::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.5)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .contact__form .form__agreement__text {
        font-size: max(var(--f-min), 14 * 1rem);
        text-align: left
    }
}

.contact__form .form__agreement__check {
    margin-top: 48rem
}

.contact__form .form input[type=checkbox]+span {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    width: 100%;
    margin-top: calc(((1em * 1.25) - max(var(--f-min), 18 * 1rem))/-2);
    margin-bottom: calc(((1em * 1.25) - max(var(--f-min), 18 * 1rem))/-2);
    font-size: max(var(--f-min), 18 * 1rem);
    line-height: 1.25
}

@media(max-width: 768px) {
    .contact__form .form input[type=checkbox]+span {
        margin-top: calc(((1em * 1.25) - max(var(--f-min), 14 * 1rem))/-2);
        margin-bottom: calc(((1em * 1.25) - max(var(--f-min), 14 * 1rem))/-2);
        font-size: max(var(--f-min), 14 * 1rem)
    }
}

.contact__form .form input[type=checkbox]+span::before {
    position: relative;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: max(20rem, 16px);
    height: max(20rem, 16px);
    margin-top: calc(((1em * 1.25) - max(20rem, 16px))/2);
    margin-right: max(10rem, 8px);
    margin-bottom: calc(((1em * 1.25) - max(20rem, 16px))/2);
    content: "";
    border: 2px solid #787878;
    border-radius: max(4rem, 3.2px);
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1)
}

@media(max-width: 768px) {
    .contact__form .form input[type=checkbox]+span::before {
        width: max(16rem, 16px);
        height: max(16rem, 16px);
        margin-top: calc(((1em * 1.25) - max(16rem, 16px))/2);
        margin-right: max(6rem, 6px);
        margin-bottom: calc(((1em * 1.25) - max(16rem, 16px))/2);
        border: 1px solid #787878
    }
}

.contact__form .form input[type=checkbox]+span::after {
    position: absolute;
    top: max(5rem, 4.6px);
    left: max(5rem, 4px);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: max(10rem, 8px);
    height: max(6rem, 4.8px);
    margin: auto 0;
    content: "";
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
    opacity: 0;
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

@media(max-width: 768px) {
    .contact__form .form input[type=checkbox]+span::after {
        top: max(5rem, 4.6px);
        left: max(4rem, 4px);
        width: max(8rem, 8px);
        height: max(4.8rem, 4.8px);
        border-bottom: 2px solid #fff;
        border-left: 2px solid #fff
    }
}

.contact__form .form input[type=checkbox]+span a {
    text-decoration: underline
}

.contact__form .form input[type=checkbox]:checked+span::before {
    background-color: #787878
}

.contact__form .form input[type=checkbox]:checked+span::after {
    opacity: 1
}

.contact__form .form__buttons {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-column-gap: 24rem;
    -moz-column-gap: 24rem;
    column-gap: 24rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 32rem
}

@media(max-width: 768px) {
    .contact__form .form__buttons {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        row-gap: 10rem;
        -webkit-column-gap: 0;
        -moz-column-gap: 0;
        column-gap: 0;
        margin-top: 32rem
    }
}

.contact__form .form__button:has(input) {
    position: relative;
    z-index: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 268rem;
    height: 64rem;
    overflow: hidden;
    font-size: max(var(--f-min), 24 * 1rem);
    border-radius: 9999px;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

@media(width >=calc(768px + 1px)) {
    .contact__form .form__button:has(input):hover::before {
        top: unset;
        bottom: 0;
        height: 100%
    }

    .contact__form .form__button:has(input):hover::after {
        border-color: #7264d0
    }

    .contact__form .form__button:has(input):hover input {
        color: #fff
    }
}

@media(max-width: 768px) {
    .contact__form .form__button:has(input) {
        width: 234rem;
        margin-top: 0;
        font-size: max(var(--f-min), 17.5 * 1rem)
    }
}

.contact__form .form__button:has(input)::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    content: "";
    background-color: #7264d0;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

.contact__form .form__button:has(input)::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    content: "";
    border: 2px solid #404040;
    border-radius: 9999px;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

.contact__form .form__button:has(input) input {
    position: relative;
    width: 100%;
    height: 100%;
    color: #404040;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

.contact__form .form__thanks {
    font-size: max(var(--f-min), 20 * 1rem);
    text-align: center;
    line-height: 1.7
}

.contact__form .form__thanks::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.7)*.5em);
    content: ""
}

.contact__form .form__thanks::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.7)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .contact__form .form__thanks {
        font-size: max(var(--f-min), 14 * 1rem)
    }
}

.error__content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    margin-top: 320rem
}

@media(max-width: 768px) {
    .error__content {
        margin-top: 240rem
    }
}

.error__content h2 {
    font-size: max(var(--f-min), 64 * 1rem);
    text-align: center
}

@media(max-width: 768px) {
    .error__content h2 {
        font-size: max(var(--f-min), 40 * 1rem)
    }
}

.error__content p {
    margin-top: 64rem;
    font-size: max(var(--f-min), 20 * 1rem);
    text-align: center;
    line-height: 1.25
}

.error__content p::before {
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.25)*.5em);
    content: ""
}

.error__content p::after {
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc((1 - 1.25)*.5em);
    content: ""
}

@media(max-width: 768px) {
    .error__content p {
        margin-top: 40rem;
        font-size: max(var(--f-min), 16 * 1rem)
    }
}

/* =====================
   About Gallery
   ===================== */
.about__gallery {
    display: flex;
    flex-direction: column;
    gap: 20rem;
    width: 100%
}

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

.about__gallery__desc {
    margin-top: 24rem;
    text-align: center;
    font-size: max(var(--f-min), 24 * 1rem);
    line-height: 1.8;
    color: #333
}

@media(max-width: 768px) {
    .about__gallery__desc {
        font-size: max(var(--f-min), 14 * 1rem)
    }
}

.ex-mark {
    display: inline-block;
    transform: skewX(-15deg)
}

/* =====================
   About Recruit Buttons
   ===================== */
.about__recruit {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    gap: 24rem;
    margin-top: 40rem
}

.about__recruit__btn {
    display: block;
    text-decoration: none;
    transition: opacity .3s
}

.about__recruit__btn:hover {
    opacity: .8
}

.about__recruit__btn img {
    display: block;
    max-width: 100%;
    height: auto
}

@media(max-width: 768px) {
    .about__gallery {
        gap: 16rem
    }

    .about__recruit {
        flex-direction: column;
        gap: 16rem;
        margin-top: 32rem
    }

    .about__recruit__btn img {
        width: 280rem
    }
}
