@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
}

: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
}

.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.png");
        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
}

#main .hero {
    width: 100%;
    height: calc(100vw * 1320 / 1920);
    overflow: hidden
}

@media(max-width: 768px) {
    #main .hero {
        height: auto;
        overflow: visible
    }
}

#main .hero__logo {
    display: none
}

@media(max-width: 768px) {
    #main .hero__logo {
        position: absolute;
        top: 16rem;
        right: 0;
        left: 0;
        z-index: 3;
        display: block;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        height: 40rem;
        margin: 0 auto;
        -webkit-transform-origin: center 368.75%;
        transform-origin: center 368.75%
    }
}

#main .hero__logo img {
    width: auto;
    height: 100%
}

@media(max-width: 768px) {
    #main .hero__sp-wrap {
        overflow: hidden
    }
}

#main .hero__parallax {
    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%;
    height: calc(100vw * 1160 / 1920);
    pointer-events: none
}

@media(max-width: 768px) {
    #main .hero__parallax {
        height: 594rem
    }
}

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

#main .hero__particle:nth-child(1) {
    top: calc(100vw * 30 / 1920);
    left: calc(100vw * 704 / 1920)
}

@media(max-width: 768px) {
    #main .hero__particle:nth-child(1) {
        top: 100rem;
        left: 87rem
    }
}

#main .hero__particle:nth-child(2) {
    top: calc(100vw * 1054 / 1920);
    left: calc(100vw * 206 / 1920)
}

@media(max-width: 768px) {
    #main .hero__particle:nth-child(2) {
        top: 100rem;
        left: 330rem
    }
}

#main .hero__particle:nth-child(3) {
    top: calc(100vw * 876 / 1920);
    left: calc(100vw * 630 / 1920)
}

@media(max-width: 768px) {
    #main .hero__particle:nth-child(3) {
        top: 367rem;
        left: 400rem
    }
}

#main .hero__particle:nth-child(4) {
    top: calc(100vw * 62 / 1920);
    left: calc(100vw * 1788 / 1920)
}

@media(max-width: 768px) {
    #main .hero__particle:nth-child(4) {
        top: 494rem;
        left: 265rem
    }
}

#main .hero__particle:nth-child(5) {
    top: calc(100vw * 800 / 1920);
    left: calc(100vw * 16 / 1920)
}

@media(max-width: 768px) {
    #main .hero__particle:nth-child(5) {
        top: 13rem;
        left: -24rem
    }
}

#main .hero__particle:nth-child(6) {
    top: calc(100vw * 87 / 1920);
    left: calc(100vw * -59 / 1920)
}

@media(max-width: 768px) {
    #main .hero__particle:nth-child(6) {
        top: 248rem;
        left: 372rem
    }
}

#main .hero__particle:nth-child(7) {
    top: calc(100vw * 1040 / 1920);
    left: calc(100vw * 1064 / 1920)
}

@media(max-width: 768px) {
    #main .hero__particle:nth-child(7) {
        top: 390rem;
        left: 10rem
    }
}

#main .hero__particle:nth-child(8) {
    top: calc(100vw * 842 / 1920);
    left: calc(100vw * 1314 / 1920)
}

@media(max-width: 768px) {
    #main .hero__particle:nth-child(8) {
        top: -17rem;
        left: 172rem
    }
}

#main .hero__particle:nth-child(9) {
    top: calc(100vw * -12 / 1920);
    left: calc(100vw * 1087 / 1920)
}

@media(max-width: 768px) {
    #main .hero__particle:nth-child(9) {
        top: 135rem;
        left: 11rem
    }
}

#main .hero__particle:nth-child(10) {
    top: calc(100vw * 128 / 1920);
    left: calc(100vw * 460 / 1920)
}

@media(max-width: 768px) {
    #main .hero__particle:nth-child(10) {
        top: 41rem;
        left: 380rem
    }
}

#main .hero__particle:nth-child(11) {
    top: calc(100vw * 310 / 1920);
    left: calc(100vw * 1632 / 1920)
}

#main .hero__particle:nth-child(12) {
    top: calc(100vw * 78 / 1920);
    left: calc(100vw * 1363 / 1920)
}

#main .hero__center {
    position: absolute;
    top: calc(100vw * 160 / 1920);
    right: 0;
    left: 0;
    width: calc(100vw * 1440 / 1920);
    height: auto;
    margin: 0 auto;
    pointer-events: all;
    -webkit-transform-origin: center 57.6923076923%;
    transform-origin: center 57.6923076923%
}

@media(max-width: 768px) {
    #main .hero__center {
        top: 72rem;
        width: 328rem;
        -webkit-transform-origin: center 31.6071428571%;
        transform-origin: center 31.6071428571%
    }
}

#main .hero__board {
    width: 100%
}

#main .hero__pager {
    position: absolute;
    top: 0;
    bottom: 0;
    left: -50rem;
    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;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    margin: auto 0
}

@media(max-width: 768px) {
    #main .hero__pager {
        display: none
    }
}

#main .hero__pager__arrow {
    width: 11.4rem;
    height: 11.4rem;
    cursor: pointer;
    border: 3rem solid #ff6ea2;
    border-top: none;
    border-left: none
}

#main .hero__pager__arrow--prev {
    margin-bottom: 8.88rem;
    rotate: -135deg
}

#main .hero__pager__arrow--next {
    margin-top: 8.88rem;
    rotate: 45deg
}

#main .hero__pager__dots {
    z-index: 3;
    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: 10rem
}

#main .hero__pager__dots .swiper-pagination-bullet {
    width: 14rem;
    height: 14rem;
    margin: 0;
    background-color: #fff;
    border: 3rem solid #ff6ea2;
    border-radius: 50%;
    opacity: 1;
    -webkit-transition: .4s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .4s cubic-bezier(0.87, 0, 0.13, 1)
}

#main .hero__pager__dots .swiper-pagination-bullet-active {
    background-color: #ff6ea2
}

#main .hero__slider {
    position: relative;
    z-index: 2;
    width: calc(100vw * 1920 / 1920);
    margin-top: calc(100vw * 80 / 1920);
    pointer-events: none;
    -webkit-transform-origin: center 37%;
    transform-origin: center 37%
}

@media(max-width: 768px) {
    #main .hero__slider {
        width: 624rem;
        margin-top: 120rem;
        -webkit-transform-origin: center 29.797979798%;
        transform-origin: center 29.797979798%
    }
}

#main .hero__slider.--pc {
    display: block
}

@media(max-width: 768px) {
    #main .hero__slider.--pc {
        display: none
    }
}

#main .hero__slider.--sp {
    display: none
}

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

#main .hero__slider__item {
    pointer-events: none
}

#main .hero__slider__item.is-appeared .hero__slider__image {
    opacity: 1;
    -webkit-transition-delay: calc(var(--img-fade-dur)/(var(--slide-img-max) - 1)*var(--slide-img-index));
    transition-delay: calc(var(--img-fade-dur)/(var(--slide-img-max) - 1)*var(--slide-img-index));
    -webkit-transition-duration: 0s;
    transition-duration: 0s
}

#main .hero__slider__item.is-disappeared .hero__slider__image {
    opacity: 0;
    -webkit-transition-delay: calc(var(--img-fade-dur)/(var(--slide-img-max) - 1)*(var(--slide-img-max) - var(--slide-img-index) - 1));
    transition-delay: calc(var(--img-fade-dur)/(var(--slide-img-max) - 1)*(var(--slide-img-max) - var(--slide-img-index) - 1));
    -webkit-transition-duration: 0s;
    transition-duration: 0s
}

#main .hero__slider__item.is-glitch .hero__slider__glitch__item:nth-child(1) {
    -webkit-animation-name: glitch-anim-1;
    animation-name: glitch-anim-1
}

#main .hero__slider__item.is-glitch .hero__slider__glitch__item:nth-child(2) {
    -webkit-animation-name: glitch-anim-2;
    animation-name: glitch-anim-2
}

#main .hero__slider__item.is-glitch .hero__slider__glitch__item:nth-child(3) {
    -webkit-animation-name: glitch-anim-3;
    animation-name: glitch-anim-3
}

#main .hero__slider__item.is-glitch .hero__slider__glitch__item:nth-child(4) {
    -webkit-animation-name: glitch-anim-flash;
    animation-name: glitch-anim-flash
}

#main .hero__slider__image {
    position: relative;
    width: 100%;
    height: auto;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    will-change: opacity
}

#main .hero__slider__image:nth-child(n+2) {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto
}

#main .hero__slider__glitch {
    --gap-horizontal: calc(100vw * 10 / 1920);
    --gap-vertical: calc(100vw * 20 / 1920);
    --time-anim: 1s;
    --delay-anim: 0s;
    --blend-mode-1: none;
    --blend-mode-2: none;
    --blend-mode-3: none;
    --blend-mode-4: none;
    --blend-mode-5: none;
    --blend-color-1: unset;
    --blend-color-2: unset;
    --blend-color-3: unset;
    --blend-color-4: unset;
    --blend-color-5: unset;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

#main .hero__slider__glitch__item {
    position: absolute;
    top: calc(-1*var(--gap-vertical));
    left: calc(-1*var(--gap-horizontal));
    width: calc(100% + var(--gap-horizontal)*2);
    height: calc(100% + var(--gap-vertical)*2);
    background-color: var(--blend-color-1);
    background-image: var(--img-path);
    background-repeat: no-repeat;
    background-position: 50% 0;
    background-size: cover;
    background-blend-mode: var(--blend-mode-1);
    opacity: 0;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-animation-duration: var(--time-anim);
    animation-duration: var(--time-anim);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-delay: var(--delay-anim);
    animation-delay: var(--delay-anim);
    will-change: clip-path, transform, opacity;
    /* display: none !important; */
    /* display: none !important; ここでノイズ削除 */
}

@media(resolution >=2dppx) {
    #main .hero__slider__glitch__item {
        background-image: var(--img-path)
    }
}

@media(max-width: 768px) {
    #main .hero__slider__glitch__item {
        background-image: var(--img-path-sp)
    }
}

#main .hero__slider__glitch__item:nth-child(1) {
    background-color: var(--blend-color-2);
    background-blend-mode: var(--blend-mode-2)
}

#main .hero__slider__glitch__item:nth-child(2) {
    background-color: var(--blend-color-3);
    background-blend-mode: var(--blend-mode-3)
}

#main .hero__slider__glitch__item:nth-child(3) {
    background-color: var(--blend-color-4);
    background-blend-mode: var(--blend-mode-4)
}

#main .hero__slider__glitch__item:nth-child(4) {
    background-color: var(--blend-color-5);
    background-blend-mode: var(--blend-mode-5)
}

@-webkit-keyframes glitch-anim-1 {
    0% {
        -webkit-clip-path: polygon(0 2%, 100% 2%, 100% 5%, 0 5%);
        clip-path: polygon(0 2%, 100% 2%, 100% 5%, 0 5%);
        opacity: 1;
        -webkit-transform: translate3d(var(--gap-horizontal), 0, 0);
        transform: translate3d(var(--gap-horizontal), 0, 0)
    }

    2% {
        -webkit-clip-path: polygon(0 15%, 100% 15%, 100% 15%, 0 15%);
        clip-path: polygon(0 15%, 100% 15%, 100% 15%, 0 15%)
    }

    4% {
        -webkit-clip-path: polygon(0 10%, 100% 10%, 100% 20%, 0 20%);
        clip-path: polygon(0 10%, 100% 10%, 100% 20%, 0 20%)
    }

    6% {
        -webkit-clip-path: polygon(0 1%, 100% 1%, 100% 2%, 0 2%);
        clip-path: polygon(0 1%, 100% 1%, 100% 2%, 0 2%)
    }

    8% {
        -webkit-clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);
        clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%)
    }

    10% {
        -webkit-clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);
        clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%)
    }

    12% {
        -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);
        clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%)
    }

    14% {
        -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);
        clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%)
    }

    16% {
        -webkit-clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);
        clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%)
    }

    18% {
        -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);
        clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%)
    }

    20% {
        -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);
        clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%)
    }

    21.9% {
        opacity: 1;
        -webkit-transform: translate3d(var(--gap-horizontal), 0, 0);
        transform: translate3d(var(--gap-horizontal), 0, 0)
    }

    22%, 100% {
        -webkit-clip-path: polygon(0 0, 0 0, 0 0, 0 0);
        clip-path: polygon(0 0, 0 0, 0 0, 0 0);
        opacity: 0;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes glitch-anim-1 {
    0% {
        -webkit-clip-path: polygon(0 2%, 100% 2%, 100% 5%, 0 5%);
        clip-path: polygon(0 2%, 100% 2%, 100% 5%, 0 5%);
        opacity: 1;
        -webkit-transform: translate3d(var(--gap-horizontal), 0, 0);
        transform: translate3d(var(--gap-horizontal), 0, 0)
    }

    2% {
        -webkit-clip-path: polygon(0 15%, 100% 15%, 100% 15%, 0 15%);
        clip-path: polygon(0 15%, 100% 15%, 100% 15%, 0 15%)
    }

    4% {
        -webkit-clip-path: polygon(0 10%, 100% 10%, 100% 20%, 0 20%);
        clip-path: polygon(0 10%, 100% 10%, 100% 20%, 0 20%)
    }

    6% {
        -webkit-clip-path: polygon(0 1%, 100% 1%, 100% 2%, 0 2%);
        clip-path: polygon(0 1%, 100% 1%, 100% 2%, 0 2%)
    }

    8% {
        -webkit-clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);
        clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%)
    }

    10% {
        -webkit-clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);
        clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%)
    }

    12% {
        -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);
        clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%)
    }

    14% {
        -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);
        clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%)
    }

    16% {
        -webkit-clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);
        clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%)
    }

    18% {
        -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);
        clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%)
    }

    20% {
        -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);
        clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%)
    }

    21.9% {
        opacity: 1;
        -webkit-transform: translate3d(var(--gap-horizontal), 0, 0);
        transform: translate3d(var(--gap-horizontal), 0, 0)
    }

    22%, 100% {
        -webkit-clip-path: polygon(0 0, 0 0, 0 0, 0 0);
        clip-path: polygon(0 0, 0 0, 0 0, 0 0);
        opacity: 0;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@-webkit-keyframes glitch-anim-2 {
    0% {
        -webkit-clip-path: polygon(0 25%, 100% 25%, 100% 30%, 0 30%);
        clip-path: polygon(0 25%, 100% 25%, 100% 30%, 0 30%);
        opacity: 1;
        -webkit-transform: translate3d(calc(-1 * var(--gap-horizontal)), 0, 0);
        transform: translate3d(calc(-1 * var(--gap-horizontal)), 0, 0)
    }

    3% {
        -webkit-clip-path: polygon(0 3%, 100% 3%, 100% 3%, 0 3%);
        clip-path: polygon(0 3%, 100% 3%, 100% 3%, 0 3%)
    }

    5% {
        -webkit-clip-path: polygon(0 5%, 100% 5%, 100% 20%, 0 20%);
        clip-path: polygon(0 5%, 100% 5%, 100% 20%, 0 20%)
    }

    7% {
        -webkit-clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%);
        clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%)
    }

    9% {
        -webkit-clip-path: polygon(0 40%, 100% 40%, 100% 40%, 0 40%);
        clip-path: polygon(0 40%, 100% 40%, 100% 40%, 0 40%)
    }

    11% {
        -webkit-clip-path: polygon(0 52%, 100% 52%, 100% 59%, 0 59%);
        clip-path: polygon(0 52%, 100% 52%, 100% 59%, 0 59%)
    }

    13% {
        -webkit-clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%);
        clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%)
    }

    15% {
        -webkit-clip-path: polygon(0 75%, 100% 75%, 100% 75%, 0 75%);
        clip-path: polygon(0 75%, 100% 75%, 100% 75%, 0 75%)
    }

    17% {
        -webkit-clip-path: polygon(0 65%, 100% 65%, 100% 40%, 0 40%);
        clip-path: polygon(0 65%, 100% 65%, 100% 40%, 0 40%)
    }

    19% {
        -webkit-clip-path: polygon(0 45%, 100% 45%, 100% 50%, 0 50%);
        clip-path: polygon(0 45%, 100% 45%, 100% 50%, 0 50%)
    }

    20% {
        -webkit-clip-path: polygon(0 14%, 100% 14%, 100% 33%, 0 33%);
        clip-path: polygon(0 14%, 100% 14%, 100% 33%, 0 33%)
    }

    21.9% {
        opacity: 1;
        -webkit-transform: translate3d(calc(-1 * var(--gap-horizontal)), 0, 0);
        transform: translate3d(calc(-1 * var(--gap-horizontal)), 0, 0)
    }

    22%, 100% {
        -webkit-clip-path: polygon(0 0, 0 0, 0 0, 0 0);
        clip-path: polygon(0 0, 0 0, 0 0, 0 0);
        opacity: 0;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes glitch-anim-2 {
    0% {
        -webkit-clip-path: polygon(0 25%, 100% 25%, 100% 30%, 0 30%);
        clip-path: polygon(0 25%, 100% 25%, 100% 30%, 0 30%);
        opacity: 1;
        -webkit-transform: translate3d(calc(-1 * var(--gap-horizontal)), 0, 0);
        transform: translate3d(calc(-1 * var(--gap-horizontal)), 0, 0)
    }

    3% {
        -webkit-clip-path: polygon(0 3%, 100% 3%, 100% 3%, 0 3%);
        clip-path: polygon(0 3%, 100% 3%, 100% 3%, 0 3%)
    }

    5% {
        -webkit-clip-path: polygon(0 5%, 100% 5%, 100% 20%, 0 20%);
        clip-path: polygon(0 5%, 100% 5%, 100% 20%, 0 20%)
    }

    7% {
        -webkit-clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%);
        clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%)
    }

    9% {
        -webkit-clip-path: polygon(0 40%, 100% 40%, 100% 40%, 0 40%);
        clip-path: polygon(0 40%, 100% 40%, 100% 40%, 0 40%)
    }

    11% {
        -webkit-clip-path: polygon(0 52%, 100% 52%, 100% 59%, 0 59%);
        clip-path: polygon(0 52%, 100% 52%, 100% 59%, 0 59%)
    }

    13% {
        -webkit-clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%);
        clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%)
    }

    15% {
        -webkit-clip-path: polygon(0 75%, 100% 75%, 100% 75%, 0 75%);
        clip-path: polygon(0 75%, 100% 75%, 100% 75%, 0 75%)
    }

    17% {
        -webkit-clip-path: polygon(0 65%, 100% 65%, 100% 40%, 0 40%);
        clip-path: polygon(0 65%, 100% 65%, 100% 40%, 0 40%)
    }

    19% {
        -webkit-clip-path: polygon(0 45%, 100% 45%, 100% 50%, 0 50%);
        clip-path: polygon(0 45%, 100% 45%, 100% 50%, 0 50%)
    }

    20% {
        -webkit-clip-path: polygon(0 14%, 100% 14%, 100% 33%, 0 33%);
        clip-path: polygon(0 14%, 100% 14%, 100% 33%, 0 33%)
    }

    21.9% {
        opacity: 1;
        -webkit-transform: translate3d(calc(-1 * var(--gap-horizontal)), 0, 0);
        transform: translate3d(calc(-1 * var(--gap-horizontal)), 0, 0)
    }

    22%, 100% {
        -webkit-clip-path: polygon(0 0, 0 0, 0 0, 0 0);
        clip-path: polygon(0 0, 0 0, 0 0, 0 0);
        opacity: 0;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@-webkit-keyframes glitch-anim-3 {
    0% {
        -webkit-clip-path: polygon(0 1%, 100% 1%, 100% 3%, 0 3%);
        clip-path: polygon(0 1%, 100% 1%, 100% 3%, 0 3%);
        opacity: 1;
        -webkit-transform: translate3d(0, calc(-1 * var(--gap-vertical)), 0) scale3d(-1, -1, 1);
        transform: translate3d(0, calc(-1 * var(--gap-vertical)), 0) scale3d(-1, -1, 1)
    }

    1.5% {
        -webkit-clip-path: polygon(0 10%, 100% 10%, 100% 9%, 0 9%);
        clip-path: polygon(0 10%, 100% 10%, 100% 9%, 0 9%)
    }

    2% {
        -webkit-clip-path: polygon(0 5%, 100% 5%, 100% 6%, 0 6%);
        clip-path: polygon(0 5%, 100% 5%, 100% 6%, 0 6%)
    }

    2.5% {
        -webkit-clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%);
        clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%)
    }

    3% {
        -webkit-clip-path: polygon(0 10%, 100% 10%, 100% 10%, 0 10%);
        clip-path: polygon(0 10%, 100% 10%, 100% 10%, 0 10%)
    }

    5% {
        -webkit-clip-path: polygon(0 30%, 100% 30%, 100% 25%, 0 25%);
        clip-path: polygon(0 30%, 100% 30%, 100% 25%, 0 25%)
    }

    5.5% {
        -webkit-clip-path: polygon(0 15%, 100% 15%, 100% 16%, 0 16%);
        clip-path: polygon(0 15%, 100% 15%, 100% 16%, 0 16%)
    }

    7% {
        -webkit-clip-path: polygon(0 40%, 100% 40%, 100% 39%, 0 39%);
        clip-path: polygon(0 40%, 100% 40%, 100% 39%, 0 39%)
    }

    8% {
        -webkit-clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);
        clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%)
    }

    9% {
        -webkit-clip-path: polygon(0 60%, 100% 60%, 100% 55%, 0 55%);
        clip-path: polygon(0 60%, 100% 60%, 100% 55%, 0 55%)
    }

    10.5% {
        -webkit-clip-path: polygon(0 30%, 100% 30%, 100% 31%, 0 31%);
        clip-path: polygon(0 30%, 100% 30%, 100% 31%, 0 31%)
    }

    11% {
        -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 69%, 0 69%);
        clip-path: polygon(0 70%, 100% 70%, 100% 69%, 0 69%)
    }

    13% {
        -webkit-clip-path: polygon(0 40%, 100% 40%, 100% 41%, 0 41%);
        clip-path: polygon(0 40%, 100% 40%, 100% 41%, 0 41%)
    }

    14% {
        -webkit-clip-path: polygon(0 80%, 100% 80%, 100% 75%, 0 75%);
        clip-path: polygon(0 80%, 100% 80%, 100% 75%, 0 75%)
    }

    14.5% {
        -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 51%, 0 51%);
        clip-path: polygon(0 50%, 100% 50%, 100% 51%, 0 51%)
    }

    15% {
        -webkit-clip-path: polygon(0 90%, 100% 90%, 100% 90%, 0 90%);
        clip-path: polygon(0 90%, 100% 90%, 100% 90%, 0 90%)
    }

    16% {
        -webkit-clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%);
        clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%)
    }

    18% {
        -webkit-clip-path: polygon(0 100%, 100% 100%, 100% 99%, 0 99%);
        clip-path: polygon(0 100%, 100% 100%, 100% 99%, 0 99%)
    }

    20% {
        -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 71%, 0 71%);
        clip-path: polygon(0 70%, 100% 70%, 100% 71%, 0 71%)
    }

    21.9% {
        opacity: 1;
        -webkit-transform: translate3d(0, calc(-1 * var(--gap-vertical)), 0) scale3d(-1, -1, 1);
        transform: translate3d(0, calc(-1 * var(--gap-vertical)), 0) scale3d(-1, -1, 1)
    }

    22%, 100% {
        -webkit-clip-path: polygon(0 0, 0 0, 0 0, 0 0);
        clip-path: polygon(0 0, 0 0, 0 0, 0 0);
        opacity: 0;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes glitch-anim-3 {
    0% {
        -webkit-clip-path: polygon(0 1%, 100% 1%, 100% 3%, 0 3%);
        clip-path: polygon(0 1%, 100% 1%, 100% 3%, 0 3%);
        opacity: 1;
        -webkit-transform: translate3d(0, calc(-1 * var(--gap-vertical)), 0) scale3d(-1, -1, 1);
        transform: translate3d(0, calc(-1 * var(--gap-vertical)), 0) scale3d(-1, -1, 1)
    }

    1.5% {
        -webkit-clip-path: polygon(0 10%, 100% 10%, 100% 9%, 0 9%);
        clip-path: polygon(0 10%, 100% 10%, 100% 9%, 0 9%)
    }

    2% {
        -webkit-clip-path: polygon(0 5%, 100% 5%, 100% 6%, 0 6%);
        clip-path: polygon(0 5%, 100% 5%, 100% 6%, 0 6%)
    }

    2.5% {
        -webkit-clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%);
        clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%)
    }

    3% {
        -webkit-clip-path: polygon(0 10%, 100% 10%, 100% 10%, 0 10%);
        clip-path: polygon(0 10%, 100% 10%, 100% 10%, 0 10%)
    }

    5% {
        -webkit-clip-path: polygon(0 30%, 100% 30%, 100% 25%, 0 25%);
        clip-path: polygon(0 30%, 100% 30%, 100% 25%, 0 25%)
    }

    5.5% {
        -webkit-clip-path: polygon(0 15%, 100% 15%, 100% 16%, 0 16%);
        clip-path: polygon(0 15%, 100% 15%, 100% 16%, 0 16%)
    }

    7% {
        -webkit-clip-path: polygon(0 40%, 100% 40%, 100% 39%, 0 39%);
        clip-path: polygon(0 40%, 100% 40%, 100% 39%, 0 39%)
    }

    8% {
        -webkit-clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);
        clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%)
    }

    9% {
        -webkit-clip-path: polygon(0 60%, 100% 60%, 100% 55%, 0 55%);
        clip-path: polygon(0 60%, 100% 60%, 100% 55%, 0 55%)
    }

    10.5% {
        -webkit-clip-path: polygon(0 30%, 100% 30%, 100% 31%, 0 31%);
        clip-path: polygon(0 30%, 100% 30%, 100% 31%, 0 31%)
    }

    11% {
        -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 69%, 0 69%);
        clip-path: polygon(0 70%, 100% 70%, 100% 69%, 0 69%)
    }

    13% {
        -webkit-clip-path: polygon(0 40%, 100% 40%, 100% 41%, 0 41%);
        clip-path: polygon(0 40%, 100% 40%, 100% 41%, 0 41%)
    }

    14% {
        -webkit-clip-path: polygon(0 80%, 100% 80%, 100% 75%, 0 75%);
        clip-path: polygon(0 80%, 100% 80%, 100% 75%, 0 75%)
    }

    14.5% {
        -webkit-clip-path: polygon(0 50%, 100% 50%, 100% 51%, 0 51%);
        clip-path: polygon(0 50%, 100% 50%, 100% 51%, 0 51%)
    }

    15% {
        -webkit-clip-path: polygon(0 90%, 100% 90%, 100% 90%, 0 90%);
        clip-path: polygon(0 90%, 100% 90%, 100% 90%, 0 90%)
    }

    16% {
        -webkit-clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%);
        clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%)
    }

    18% {
        -webkit-clip-path: polygon(0 100%, 100% 100%, 100% 99%, 0 99%);
        clip-path: polygon(0 100%, 100% 100%, 100% 99%, 0 99%)
    }

    20% {
        -webkit-clip-path: polygon(0 70%, 100% 70%, 100% 71%, 0 71%);
        clip-path: polygon(0 70%, 100% 70%, 100% 71%, 0 71%)
    }

    21.9% {
        opacity: 1;
        -webkit-transform: translate3d(0, calc(-1 * var(--gap-vertical)), 0) scale3d(-1, -1, 1);
        transform: translate3d(0, calc(-1 * var(--gap-vertical)), 0) scale3d(-1, -1, 1)
    }

    22%, 100% {
        -webkit-clip-path: polygon(0 0, 0 0, 0 0, 0 0);
        clip-path: polygon(0 0, 0 0, 0 0, 0 0);
        opacity: 0;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@-webkit-keyframes glitch-anim-flash {
    0%, 5% {
        opacity: .2;
        -webkit-transform: translate3d(var(--gap-horizontal), var(--gap-vertical), 0);
        transform: translate3d(var(--gap-horizontal), var(--gap-vertical), 0)
    }

    5.5%, 100% {
        opacity: 0;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes glitch-anim-flash {
    0%, 5% {
        opacity: .2;
        -webkit-transform: translate3d(var(--gap-horizontal), var(--gap-vertical), 0);
        transform: translate3d(var(--gap-horizontal), var(--gap-vertical), 0)
    }

    5.5%, 100% {
        opacity: 0;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

#main .hero__anime {
    position: absolute;
    bottom: calc(100vw * 260 / 1920);
    left: calc(100vw * 84 / 1920);
    z-index: 3;
    width: calc(100vw * 360 / 1920);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -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)) {
    #main .hero__anime:hover {
        -webkit-animation: animeHover .4s cubic-bezier(0.87, 0, 0.13, 1);
        animation: animeHover .4s cubic-bezier(0.87, 0, 0.13, 1)
    }
}

@media(max-width: 768px) {
    #main .hero__anime {
        top: 444rem;
        bottom: unset;
        left: 17rem;
        width: 132rem
    }
}

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

    20% {
        rotate: -5deg
    }

    40% {
        rotate: 5deg
    }

    50% {
        rotate: -4deg
    }

    60% {
        rotate: 3deg
    }

    80% {
        rotate: -2deg
    }

    100% {
        rotate: 0deg
    }
}

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

    20% {
        rotate: -5deg
    }

    40% {
        rotate: 5deg
    }

    50% {
        rotate: -4deg
    }

    60% {
        rotate: 3deg
    }

    80% {
        rotate: -2deg
    }

    100% {
        rotate: 0deg
    }
}

#main .hero__anime__tv {
    position: relative;
    width: 100%
}

#main .hero__anime__tv__thumb {
    position: absolute;
    right: 11.5%;
    bottom: 13.3333333333%;
    width: 67%;
    height: auto;
    aspect-ratio: 268/180
}

#main .hero__anime__tv__thumb img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

#main .hero__anime__tv__frame {
    position: relative;
    width: 100%
}

#main .hero__anime__bubble {
    position: absolute;
    top: -29.696969697%;
    left: 0;
    width: 61%
}

#main .hero__anime__link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

#main .hero__footer {
    position: absolute;
    bottom: 0;
    z-index: 3;
    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: 160rem;
    background-color: #404040
}

@media(max-width: 768px) {
    #main .hero__footer {
        position: relative;
        height: 86rem
    }
}

#main .hero__footer picture {
    width: auto;
    height: 100%
}

#main .hero__footer img {
    width: auto;
    height: 100%
}

#main .hero__scroll {
    position: absolute;
    top: min(100dvh - calc(100vw * 130 / 1920), calc(100vw * 980 / 1920));
    right: 0;
    left: 0;
    z-index: 3;
    width: calc(100vw * 90 / 1920);
    margin: 0 auto;
    overflow: hidden;
    -webkit-filter: drop-shadow(0 0 8rem rgba(0, 0, 0, 0.15));
    filter: drop-shadow(0 0 8rem rgba(0, 0, 0, 0.15));
    border-radius: 50%;
    transform: translateZ(0);
    will-change: filter;
}

@media(max-width: 768px) {
    #main .hero__scroll {
        display: none
    }
}

#main .news {
    padding-top: 164rem
}

@media(max-width: 768px) {
    #main .news {
        padding-top: 80rem
    }
}

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

#main .news__particle:nth-child(1) {
    top: calc(100vw * 596 / 1920);
    left: calc(100vw * 146 / 1920)
}

@media(max-width: 768px) {
    #main .news__particle:nth-child(1) {
        top: -105rem;
        left: 17rem
    }
}

#main .news__particle:nth-child(2) {
    top: calc(100vw * 130 / 1920);
    left: calc(100vw * 1660 / 1920)
}

@media(max-width: 768px) {
    #main .news__particle:nth-child(2) {
        top: 107rem;
        left: 375rem
    }
}

#main .news__particle:nth-child(3) {
    top: calc(100vw * -49 / 1920);
    left: calc(100vw * 1006 / 1920)
}

@media(max-width: 768px) {
    #main .news__particle:nth-child(3) {
        top: 448rem;
        left: -13rem
    }
}

#main .news__particle:nth-child(4) {
    top: calc(100vw * 1004 / 1920);
    left: calc(100vw * 55 / 1920)
}

@media(max-width: 768px) {
    #main .news__particle:nth-child(4) {
        top: -87rem;
        left: 382rem
    }
}

#main .news__particle:nth-child(5) {
    top: calc(100vw * 700 / 1920);
    left: calc(100vw * 1646 / 1920)
}

@media(max-width: 768px) {
    #main .news__particle:nth-child(5) {
        top: -1rem;
        left: 286rem
    }
}

#main .news__particle:nth-child(6) {
    top: calc(100vw * 318 / 1920);
    left: calc(100vw * -10 / 1920)
}

@media(max-width: 768px) {
    #main .news__particle:nth-child(6) {
        top: 398rem;
        left: 368rem
    }
}

@media(max-width: 768px) {
    #main .news__particle:nth-child(7) {
        top: 817rem;
        left: -17rem
    }
}

@media(max-width: 768px) {
    #main .news__particle:nth-child(8) {
        top: 1089rem;
        left: 66rem
    }
}

@media(max-width: 768px) {
    #main .news__particle:nth-child(9) {
        top: -63rem;
        left: 77rem
    }
}

@media(max-width: 768px) {
    #main .news__particle:nth-child(10) {
        top: 135rem;
        left: 40rem
    }
}

@media(max-width: 768px) {
    #main .news__particle:nth-child(11) {
        top: 706rem;
        left: 240rem
    }
}

@media(max-width: 768px) {
    #main .news__particle:nth-child(12) {
        top: 1185rem;
        left: 372rem
    }
}

#main .news__headline {
    -webkit-align-self: flex-start;
    -ms-flex-item-align: start;
    align-self: flex-start
}

@media(max-width: 768px) {
    #main .news__headline {
        -webkit-align-self: center;
        -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center
    }
}

#main .news__pickup {
    width: 100%;
    margin-top: 64rem
}

@media(max-width: 768px) {
    #main .news__pickup {
        margin-top: 32rem
    }
}

#main .news__pickup__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: 15rem;
    -moz-column-gap: 15rem;
    column-gap: 15rem;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%
}

@media(max-width: 768px) {
    #main .news__pickup__list {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        row-gap: 10rem;
        -webkit-column-gap: 10rem;
        -moz-column-gap: 10rem;
        column-gap: 10rem
    }
}

#main .news__pickup__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;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 244rem;
    padding-bottom: 75rem;
    overflow: hidden;
    background-color: #fff;
    border-radius: 20rem;
    -webkit-box-shadow: 0 0 8rem rgba(0, 0, 0, .15);
    box-shadow: 0 0 8rem rgba(0, 0, 0, .15);
    -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)) {
    #main .news__pickup__item:hover {
        color: #fff
    }

    #main .news__pickup__item:hover::before {
        top: unset;
        bottom: 48rem;
        height: calc(100% - 48rem)
    }

    #main .news__pickup__item:hover .news__pickup__category {
        background-color: #7264d0
    }

    #main .news__pickup__item:hover .news__pickup__thumb img {
        scale: 1.1
    }
}

@media(max-width: 768px) {
    #main .news__pickup__item {
        width: 178rem;
        padding-bottom: 46rem;
        border-radius: 10rem;
        -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) {
    #main .news__pickup__item:nth-child(n+5) {
        display: none
    }
}

#main .news__pickup__item.--plain {
    pointer-events: none;
    background-color: #f6f6f6;
    -webkit-box-shadow: none;
    box-shadow: none
}

#main .news__pickup__item::before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    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)
}

#main .news__pickup__category {
    min-width: 126rem;
    padding: 6rem 12rem;
    margin-top: 16rem;
    font-size: max(var(--f-min), 18 * 1rem);
    color: #fff;
    text-align: center;
    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)
}

#main .news__pickup__category::before {
    display: inline-block;
    height: max(var(--f-min), 18 * 1rem);
    vertical-align: middle;
    content: ""
}

@media(max-width: 768px) {
    #main .news__pickup__category {
        min-width: 96rem;
        padding: 5rem 24rem;
        font-size: max(var(--f-min), 12 * 1rem)
    }

    #main .news__pickup__category::before {
        display: inline-block;
        height: max(var(--f-min), 12 * 1rem);
        vertical-align: middle;
        content: ""
    }
}

#main .news__pickup__thumb {
    width: 216rem;
    height: auto;
    aspect-ratio: 16/9;
    margin-top: 17rem;
    overflow: hidden;
    background-color: #e6e6e6
}

@media(max-width: 768px) {
    #main .news__pickup__thumb {
        width: 158rem;
        height: 94rem;
        margin-top: 12rem
    }
}

#main .news__pickup__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
}

#main .news__pickup__date {
    width: 200rem;
    margin-top: 16rem;
    font-size: max(var(--f-min), 16 * 1rem)
}

@media(max-width: 768px) {
    #main .news__pickup__date {
        width: 148rem;
        margin-top: 12rem;
        font-size: max(var(--f-min), 14 * 1rem)
    }
}

#main .news__pickup__title {
    display: -webkit-box;
    width: 200rem;
    margin-top: 10rem;
    overflow: hidden;
    font-size: max(var(--f-min), 16 * 1rem);
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-height: 1.5
}

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

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

@media(max-width: 768px) {
    #main .news__pickup__title {
        width: 148rem;
        margin-top: 6rem;
        font-size: max(var(--f-min), 14 * 1rem);
        line-height: 1.25
    }

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

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

#main .news__pickup__check {
    position: absolute;
    bottom: 0;
    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: 48rem;
    font-size: max(var(--f-min), 22 * 1rem);
    color: #fff;
    background-color: #ff6ea2
}

@media(max-width: 768px) {
    #main .news__pickup__check {
        height: 32rem;
        font-size: max(var(--f-min), 16 * 1rem)
    }
}

#main .news__pickup__link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

#main .news__latest {
    width: 980rem;
    padding: 28rem 50rem;
    margin-top: 40rem;
    background-color: #fff;
    border-radius: 20rem;
    -webkit-box-shadow: 0 0 8rem rgba(0, 0, 0, .15);
    box-shadow: 0 0 8rem rgba(0, 0, 0, .15)
}

@media(max-width: 768px) {
    #main .news__latest {
        width: 100%;
        padding: 26rem 20rem;
        margin-top: 24rem;
        border-radius: 10rem;
        -webkit-box-shadow: 0 0 4rem rgba(0, 0, 0, .2);
        box-shadow: 0 0 4rem rgba(0, 0, 0, .2)
    }
}

#main .news__latest__item {
    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
}

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

#main .news__latest__item:nth-child(n+2) {
    padding-top: 16rem;
    margin-top: 16rem;
    border-top: 1px solid #ffc8dc
}

#main .news__latest__date {
    width: 80rem;
    margin-right: 40rem;
    font-size: max(var(--f-min), 16 * 1rem)
}

@media(max-width: 768px) {
    #main .news__latest__date {
        width: 100%;
        margin-right: 0;
        font-size: max(var(--f-min), 14 * 1rem)
    }
}

#main .news__latest__title {
    position: relative;
    overflow: hidden;
    font-size: max(var(--f-min), 16 * 1rem);
    text-overflow: ellipsis;
    white-space: nowrap
}

@media(max-width: 768px) {
    #main .news__latest__title {
        display: -webkit-box;
        width: 100%;
        margin-top: 8rem;
        overflow: hidden;
        font-size: max(var(--f-min), 14 * 1rem);
        text-overflow: unset;
        white-space: unset;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        line-height: 1.25
    }

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

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

#main .news__latest__link {
    color: #404040;
    text-decoration: none
}

#main .news__all {
    margin-top: 64rem
}

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

#main .about {
    padding-top: 166rem
}

@media(max-width: 768px) {
    #main .about {
        padding-top: 96rem
    }
}

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

#main .about__particle:nth-child(1) {
    top: calc(100vw * -60 / 1920);
    left: calc(100vw * 1706 / 1920)
}

@media(max-width: 768px) {
    #main .about__particle:nth-child(1) {
        top: 40rem;
        left: 15rem
    }
}

#main .about__particle:nth-child(2) {
    top: calc(100vw * 396 / 1920);
    left: calc(100vw * -108 / 1920)
}

@media(max-width: 768px) {
    #main .about__particle:nth-child(2) {
        top: 46rem;
        left: 298rem
    }
}

#main .about__particle:nth-child(3) {
    top: calc(100vw * 750 / 1920);
    left: calc(100vw * 1706 / 1920)
}

@media(max-width: 768px) {
    #main .about__particle:nth-child(3) {
        top: 664rem;
        left: 381rem
    }
}

@media(max-width: 768px) {
    #main .about__particle:nth-child(4) {
        top: 760rem;
        left: 45rem
    }
}

@media(max-width: 768px) {
    #main .about__particle:nth-child(5) {
        top: 160rem;
        left: 358rem
    }
}

@media(max-width: 768px) {
    #main .about__particle:nth-child(6) {
        top: 775rem;
        left: 333rem
    }
}

@media(max-width: 768px) {
    #main .about__particle:nth-child(7) {
        top: 464rem;
        left: 13rem
    }
}

#main .about__image {
    position: absolute;
    bottom: 0;
    left: -80rem;
    width: 998rem
}

@media(max-width: 768px) {
    #main .about__image {
        position: relative;
        bottom: unset;
        left: unset;
        width: 350rem;
        margin-top: 32rem
    }
}

#main .about__right {
    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: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-align-self: flex-end;
    -ms-flex-item-align: end;
    align-self: flex-end
}

@media(max-width: 768px) {
    #main .about__right {
        display: contents;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-align-self: center;
        -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center
    }
}

#main .about__headline {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end
}

@media(max-width: 768px) {
    #main .about__headline {
        -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
    }
}

#main .about__headline__en {
    margin-left: 0
}

#main .about__cursive {
    width: 402rem;
    margin-top: 48rem;
    margin-right: -36rem
}

@media(max-width: 768px) {
    #main .about__cursive {
        width: 350rem;
        margin-top: 26rem;
        margin-right: 0
    }
}

#main .about__text {
    width: 322rem;
    margin-top: 48rem;
    font-size: max(var(--f-min), 18 * 1rem);
    line-height: 1.7
}

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

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

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

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

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

#main .about__all {
    margin-top: 64rem
}

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

#main .member {
    padding-top: 262rem
}

@media(max-width: 768px) {
    #main .member {
        padding-top: 96rem
    }
}

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

#main .member__particle:nth-child(1) {
    top: calc(100vw * 114 / 1920);
    left: calc(100vw * 1122 / 1920)
}

@media(max-width: 768px) {
    #main .member__particle:nth-child(1) {
        top: 531rem;
        left: -14rem
    }
}

#main .member__particle:nth-child(2) {
    top: calc(100vw * 950 / 1920);
    left: calc(100vw * 1538 / 1920)
}

@media(max-width: 768px) {
    #main .member__particle:nth-child(2) {
        top: 576rem;
        left: 64rem
    }
}

#main .member__particle:nth-child(3) {
    top: calc(100vw * 384 / 1920);
    left: calc(100vw * 158 / 1920);
    display: none
}

@media(max-width: 768px) {
    #main .member__particle:nth-child(3) {
        top: 1081rem;
        left: 15rem
    }
}

#main .member__particle:nth-child(4) {
    top: calc(100vw * 208 / 1920);
    left: calc(100vw * 1408 / 1920)
}

@media(max-width: 768px) {
    #main .member__particle:nth-child(4) {
        top: 172rem;
        left: 332rem
    }
}

#main .member__particle:nth-child(5) {
    top: calc(100vw * 1192 / 1920);
    left: calc(100vw * 260 / 1920)
}

@media(max-width: 768px) {
    #main .member__particle:nth-child(5) {
        top: 284rem;
        left: 211rem
    }
}

#main .member__particle:nth-child(6) {
    top: calc(100vw * 54 / 1920);
    left: calc(100vw * 108 / 1920)
}

@media(max-width: 768px) {
    #main .member__particle:nth-child(6) {
        top: 991rem;
        left: 337rem
    }
}

#main .member__particle:nth-child(7) {
    top: calc(100vw * 769 / 1920);
    left: calc(100vw * -62 / 1920)
}

@media(max-width: 768px) {
    #main .member__particle:nth-child(7) {
        top: 50rem;
        left: 19rem
    }
}

@media(max-width: 768px) {
    #main .member__particle:nth-child(8) {
        top: 592rem;
        left: 359rem
    }
}

#main .member__inner {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start
}

@media(max-width: 768px) {
    #main .member__inner {
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center
    }
}

#main .member__headline {
    -webkit-align-self: flex-start;
    -ms-flex-item-align: start;
    align-self: flex-start
}

@media(max-width: 768px) {
    #main .member__headline {
        -webkit-align-self: center;
        -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center
    }
}

#main .member__headline.is-member-color .member__headline__en svg .f {
    fill: var(--member-color)
}

#main .member__headline.is-member-color .member__headline__jp {
    color: var(--member-color)
}

#main .member__headline__en svg {
    width: auto;
    height: 100%
}

#main .member__headline__en svg .f {
    fill: #7264d0;
    -webkit-transition: .8s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .8s cubic-bezier(0.87, 0, 0.13, 1)
}

#main .member__headline__jp {
    color: #7264d0;
    -webkit-transition: .8s cubic-bezier(0.87, 0, 0.13, 1);
    transition: .8s cubic-bezier(0.87, 0, 0.13, 1)
}

#main .member__single {
    position: relative;
    z-index: 2;
    width: 100%
}

@media(max-width: 768px) {
    #main .member__single {
        height: 1px;
        min-height: 450rem;
        margin-top: 12rem
    }
}

#main .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)
}

#main .member__single__item.swiper-slide-active .member__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)
}

#main .member__single__item.swiper-slide-active .member__visual, #main .member__single__item.swiper-slide-active .member__info {
    opacity: 1
}

#main .member__bg {
    will-change: clip-path;
    position: absolute;
    top: -26rem;
    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
}

@media(max-width: 768px) {
    #main .member__bg {
        top: unset;
        right: -81rem;
        bottom: 0;
        width: 366rem
    }
}

@-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)
    }
}

#main .member__visual {
    will-change: opacity, transform, translate;
    position: relative;
    width: 650rem;
    margin-top: -190rem;
    margin-left: 416rem;
    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) {
    #main .member__visual {
        position: absolute;
        top: 0;
        right: 0;
        width: 260rem;
        margin-top: 40rem;
        margin-left: 0
    }
}

#main .member__info {
    will-change: opacity, transform, translate;
    position: absolute;
    top: 104rem;
    left: 0;
    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) {
    #main .member__info {
        position: relative;
        top: unset;
        left: unset;
        margin-top: 40rem
    }
}

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

@media(max-width: 768px) {
    #main .member__name {
        top: 0;
        left: 0;
        height: 26rem
    }
}

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

#main .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
}

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

@media(max-width: 768px) {
    #main .member__name-en {
        padding: 3rem 17rem;
        margin-top: 10rem;
        font-size: max(var(--f-min), 10 * 1rem)
    }

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

#main .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) {
    #main .member__sns {
        -webkit-column-gap: 10rem;
        -moz-column-gap: 10rem;
        column-gap: 10rem;
        margin-top: 10rem
    }
}

#main .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)) {
    #main .member__sns__item:hover {
        opacity: .6
    }
}

@media(max-width: 768px) {
    #main .member__sns__item {
        width: 20rem
    }
}

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

#main .member__status {
    margin-top: 48rem;
    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
}

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

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

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

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

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

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

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

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

@media(max-width: 768px) {
    #main .member__text {
        width: 160rem;
        margin-top: 24rem;
        font-size: max(var(--f-min), 14 * 1rem);
        word-break: break-all;
        line-height: 1.4
    }

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

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

#main .member__change {
    position: absolute;
    top: -76rem;
    right: 0;
    z-index: 3;
    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) {
    #main .member__change {
        top: unset;
        right: unset;
        bottom: 0;
        left: 0
    }
}

#main .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)
}

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

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

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

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

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

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

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

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

#main .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)
}

#main .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)
}

#main .member__change__button span {
    position: relative
}

#main .member__bottom {
    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: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    margin-top: 0
}

@media(max-width: 768px) {
    #main .member__bottom {
        -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: unset;
        -webkit-justify-content: unset;
        -ms-flex-pack: unset;
        justify-content: unset;
        margin-top: 25rem
    }
}

#main .member__all {
    z-index: 3
}

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

#main .member__select {
    position: relative;
    z-index: 3;
    margin-right: -20rem
}

@media(max-width: 768px) {
    #main .member__select {
        -webkit-box-ordinal-group: 0;
        -webkit-order: -1;
        -ms-flex-order: -1;
        order: -1;
        width: 100%;
        margin-right: 0
    }
}

#main .member__select__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;
    width: 924rem
}

@media(max-width: 768px) {
    #main .member__select__list {
        width: 100%
    }
}

#main .member__select__item {
    position: relative;
    display: block;
    width: 174rem;
    height: auto;
    margin: 0;
    margin-left: calc((100% - 1044rem)/5 - .1px);
    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)) {
    #main .member__select__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)
    }

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

@media(max-width: 768px) {
    #main .member__select__item {
        width: 100rem;
        margin-left: calc((100% - 400rem)/3 - .1px)
    }
}

#main .member__select__item.swiper-pagination-bullet-active img:nth-child(2) {
    opacity: 1
}

#main .member__select__item:nth-child(6n+1) {
    margin-left: 0
}

@media(max-width: 768px) {
    #main .member__select__item:nth-child(6n+1) {
        margin-left: calc((100% - 400rem)/3 - .1px)
    }
}

@media(max-width: 768px) {
    #main .member__select__item:nth-child(4n+1) {
        margin-left: 0
    }
}

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

#main .member__select__item img:nth-child(2) {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0
}

#main .trophies {
    padding-top: 362rem
}

@media(max-width: 768px) {
    #main .trophies {
        padding-top: 96rem
    }
}

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

#main .trophies__particle:nth-child(1) {
    top: calc(100vw * 145 / 1920);
    left: calc(100vw * 64 / 1920)
}

@media(max-width: 768px) {
    #main .trophies__particle:nth-child(1) {
        top: 48rem;
        left: 58rem
    }
}

#main .trophies__particle:nth-child(2) {
    top: calc(100vw * 911 / 1920);
    left: calc(100vw * 146 / 1920)
}

@media(max-width: 768px) {
    #main .trophies__particle:nth-child(2) {
        top: 663rem;
        left: -21rem
    }
}

#main .trophies__particle:nth-child(3) {
    top: calc(100vw * 851 / 1920);
    left: calc(100vw * 1064 / 1920)
}

@media(max-width: 768px) {
    #main .trophies__particle:nth-child(3) {
        top: 78rem;
        left: 374rem
    }
}

#main .trophies__particle:nth-child(4) {
    top: calc(100vw * 527 / 1920);
    left: calc(100vw * 1694 / 1920)
}

@media(max-width: 768px) {
    #main .trophies__particle:nth-child(4) {
        top: 517rem;
        left: 341rem
    }
}

#main .trophies__particle:nth-child(5) {
    top: calc(100vw * 377 / 1920);
    left: calc(100vw * -84 / 1920)
}

#main .trophies__particle:nth-child(6) {
    top: calc(100vw * 85 / 1920);
    left: calc(100vw * 1408 / 1920)
}

#main .trophies__particle:nth-child(7) {
    top: calc(100vw * 145 / 1920);
    left: calc(100vw * 1743 / 1920)
}

#main .trophies__particle:nth-child(8) {
    top: calc(100vw * 926 / 1920);
    left: calc(100vw * 1460 / 1920)
}

#main .trophies__particle:nth-child(9) {
    top: calc(100vw * 176 / 1920);
    left: calc(100vw * 496 / 1920)
}

#main .trophies__inner {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end
}

@media(max-width: 768px) {
    #main .trophies__inner {
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center
    }
}

#main .trophies__headline {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end
}

@media(max-width: 768px) {
    #main .trophies__headline {
        -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
    }
}

#main .trophies__headline__en {
    margin-left: 0
}

#main .trophies__image {
    position: absolute;
    top: 0;
    left: 0;
    width: 766rem
}

@media(max-width: 768px) {
    #main .trophies__image {
        position: relative;
        top: unset;
        left: unset;
        width: 100%;
        margin-top: 32rem
    }
}

#main .trophies__text {
    width: 406rem;
    margin-top: 48rem;
    font-size: max(var(--f-min), 18 * 1rem);
    line-height: 1.7
}

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

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

@media(max-width: 768px) {
    #main .trophies__text {
        -webkit-box-ordinal-group: 0;
        -webkit-order: -1;
        -ms-flex-order: -1;
        order: -1;
        width: 318rem;
        margin-top: 32rem;
        font-size: max(var(--f-min), 14 * 1rem);
        line-height: 1.5
    }

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

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

#main .trophies__all {
    margin-top: 64rem
}

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

#main .media {
    padding-top: 300rem
}

@media(max-width: 768px) {
    #main .media {
        padding-top: 96rem
    }
}

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

#main .media__particle:nth-child(1) {
    top: calc(100vw * 1044 / 1920);
    left: calc(100vw * 297 / 1920)
}

@media(max-width: 768px) {
    #main .media__particle:nth-child(1) {
        top: 49rem;
        left: 307rem
    }
}

#main .media__particle:nth-child(2) {
    top: calc(100vw * 442 / 1920);
    left: calc(100vw * 1735 / 1920)
}

@media(max-width: 768px) {
    #main .media__particle:nth-child(2) {
        top: 405rem;
        left: -3rem
    }
}

#main .media__particle:nth-child(3) {
    top: calc(100vw * 603 / 1920);
    left: calc(100vw * 96 / 1920)
}

@media(max-width: 768px) {
    #main .media__particle:nth-child(3) {
        top: 1098rem;
        left: 335rem
    }
}

@media(max-width: 768px) {
    #main .media__particle:nth-child(4) {
        top: 761rem;
        left: 348rem
    }
}

@media(max-width: 768px) {
    #main .media__particle:nth-child(5) {
        top: 1228rem;
        left: 24rem
    }
}

@media(max-width: 768px) {
    #main .media__particle:nth-child(6) {
        top: 196rem;
        left: 373rem
    }
}

@media(max-width: 768px) {
    #main .media__particle:nth-child(7) {
        top: 569rem;
        left: 301rem
    }
}

@media(max-width: 768px) {
    #main .media__particle:nth-child(8) {
        top: 968rem;
        left: -12rem
    }
}

#main .media__headline {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

#main .media__headline__en {
    margin-left: 0
}

#main .media__text {
    margin-top: 40rem;
    font-size: max(var(--f-min), 18 * 1rem);
    line-height: 1.7
}

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

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

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

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

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

#main .media__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: 28rem;
    -moz-column-gap: 28rem;
    column-gap: 28rem;
    margin-top: 48rem
}

@media(max-width: 768px) {
    #main .media__list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        row-gap: 40rem;
        -webkit-column-gap: 0;
        -moz-column-gap: 0;
        column-gap: 0;
        width: 100%;
        margin-top: 32rem
    }
}

#main .media__item {
    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: 408rem;
    cursor: pointer;
    -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)) {
    #main .media__item:hover .media__thumb img {
        scale: 1.1
    }
}

@media(max-width: 768px) {
    #main .media__item {
        width: 100%
    }
}

#main .media__thumb {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 240rem;
    overflow: hidden;
    background-color: #e6e6e6;
    -webkit-filter: drop-shadow(0 0 8rem rgba(0, 0, 0, 0.15));
    filter: drop-shadow(0 0 8rem rgba(0, 0, 0, 0.15));
    border-radius: 16rem;
    transform: translateZ(0);
    will-change: filter;
}

@media(max-width: 768px) {
    #main .media__thumb {
        height: 214rem;
        border-radius: 10rem
    }
}

#main .media__thumb::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) {
    #main .media__thumb::after {
        width: 56rem;
        height: 56rem
    }
}

#main .media__thumb img {
    width: 100%;
    height: 100%;
    -webkit-transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: .3s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

#main .media__title {
    margin-top: 36rem;
    font-size: max(var(--f-min), 24 * 1rem);
    text-align: center;
    line-height: 1.25
}

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

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

@media(max-width: 768px) {
    #main .media__title {
        margin-top: 20rem;
        font-size: max(var(--f-min), 16 * 1rem)
    }
}

#main .media__all {
    margin-top: 64rem
}

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

#main .goods {
    padding-top: 202rem
}

@media(max-width: 768px) {
    #main .goods {
        padding-top: 96rem
    }
}

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

#main .goods__particle:nth-child(1) {
    top: calc(100vw * 414 / 1920);
    left: calc(100vw * 1716 / 1920)
}

@media(max-width: 768px) {
    #main .goods__particle:nth-child(1) {
        top: 88rem;
        left: 34rem
    }
}

#main .goods__particle:nth-child(2) {
    top: calc(100vw * 956 / 1920);
    left: calc(100vw * 122 / 1920)
}

@media(max-width: 768px) {
    #main .goods__particle:nth-child(2) {
        top: 214rem;
        left: 276rem
    }
}

#main .goods__particle:nth-child(3) {
    top: calc(100vw * 1168 / 1920);
    left: calc(100vw * 444 / 1920)
}

@media(max-width: 768px) {
    #main .goods__particle:nth-child(3) {
        top: 594rem;
        left: 139rem
    }
}

#main .goods__particle:nth-child(4) {
    top: calc(100vw * 879 / 1920);
    left: calc(100vw * 1774 / 1920)
}

@media(max-width: 768px) {
    #main .goods__particle:nth-child(4) {
        top: 609rem;
        left: 287rem
    }
}

#main .goods__particle:nth-child(5) {
    top: calc(100vw * 102 / 1920);
    left: calc(100vw * 1517 / 1920)
}

@media(max-width: 768px) {
    #main .goods__particle:nth-child(5) {
        top: 520rem;
        left: 358rem
    }
}

#main .goods__particle:nth-child(6) {
    top: calc(100vw * 532 / 1920);
    left: calc(100vw * 192 / 1920)
}

@media(max-width: 768px) {
    #main .goods__particle:nth-child(6) {
        top: 80rem;
        left: 359rem
    }
}

#main .goods__particle:nth-child(7) {
    top: calc(100vw * 938 / 1920);
    left: calc(100vw * 1260 / 1920)
}

@media(max-width: 768px) {
    #main .goods__particle:nth-child(7) {
        top: 536rem;
        left: 58rem
    }
}

#main .goods__headline {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

#main .goods__headline__en {
    margin-left: 0
}

#main .goods__banner {
    z-index: 1;
    width: 100%;
    margin-top: 80rem;
    overflow: hidden;
    border-radius: 36rem;
    -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)) {
    #main .goods__banner:hover {
        scale: 1.02
    }
}

@media(max-width: 768px) {
    #main .goods__banner {
        margin-top: 32rem;
        border-radius: 10rem
    }
}

#main .goods__all {
    margin-top: 64rem
}

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


/* =====================
   TOP Hero About Button
   ===================== */
#main .hero__about {
    position: absolute;
    bottom: calc(100vw * 260 / 1920);
    left: calc(100vw * 84 / 1920);
    z-index: 3;
    width: calc(100vw * 360 / 1920);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -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)) {
    #main .hero__about:hover {
        -webkit-animation: animeHover .4s cubic-bezier(0.87, 0, 0.13, 1);
        animation: animeHover .4s cubic-bezier(0.87, 0, 0.13, 1)
    }
}

#main .hero__about__link {
    display: block;
    position: relative;
    text-decoration: none
}

#main .hero__about__book {
    width: 100%
}

#main .hero__about__book img {
    width: 100%;
    height: auto;
    display: block
}

#main .hero__about__bubble {
    position: absolute;
    top: -29.696969697%;
    left: 0;
    width: 61%
}

#main .hero__about__bubble img {
    width: 100%;
    height: auto;
    display: block
}

@media(max-width: 768px) {
    #main .hero__about {
        top: 444rem;
        bottom: unset;
        left: 17rem;
        width: 132rem
    }
}
