@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Ubuntu:wght@400;700&display=swap);

html {
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    font-family: sans-serif
}

body {
    margin: 0
}

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

audio, canvas, progress, video {
    display: inline-block;
    vertical-align: baseline
}

audio:not([controls]) {
    display: none;
    height: 0
}

[hidden], template {
    display: none
}

a {
    background-color: transparent
}

abbr[title] {
    border-bottom: 1px dotted
}

b, strong {
    font-weight: 700
}

dfn {
    font-style: italic
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

mark {
    background: #ff0;
    color: #000
}

small {
    font-size: 80%
}

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

sup {
    top: -.5em
}

sub {
    bottom: -.25em
}

img {
    border: 0
}

svg:not(:root) {
    overflow: hidden
}

figure {
    margin: 1em 40px
}

hr {
    box-sizing: content-box;
    height: 0
}

code, kbd, pre, samp {
    font-family: monospace, monospace;
    font-size: 1em
}

button, input, optgroup, select, textarea {
    color: inherit;
    font: inherit;
    margin: 0
}

button {
    overflow: visible
}

button, select {
    text-transform: none
}

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

button[disabled], html input[disabled] {
    cursor: default
}

button::-moz-focus-inner, input::-moz-focus-inner {
    border: 0;
    padding: 0
}

input {
    line-height: normal
}

input[type=checkbox], input[type=radio] {
    box-sizing: border-box;
    padding: 0
}

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

input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    padding: .35em .625em .75em
}

legend {
    border: 0;
    padding: 0
}

textarea {
    overflow: auto
}

optgroup {
    font-weight: 700
}

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

td, th {
    padding: 0
}

/*! Yaku Han JP v3.3.1 (OFL-1.1 AND MIT) by Qrac */
/*! Type: YakuHanJP - Based on Noto Sans CJK JP */
@font-face {
    font-display: swap;
    font-family: YakuHanJP;
    font-style: normal;
    font-weight: 400;
    src: url(fonts/YakuHanJP/YakuHanJP-Regular.eot);
    src: url(fonts/YakuHanJP/YakuHanJP-Regular.woff2) format("woff2"), url(fonts/YakuHanJP/YakuHanJP-Regular.woff) format("woff");
    unicode-range: U+3001-3002, U+3008-3011, U+3014-3015, U+ff08-ff09, U+ff3b, U+ff3d, U+ff5b, U+ff5d
}

@font-face {
    font-display: swap;
    font-family: YakuHanJP;
    font-style: normal;
    font-weight: 700;
    src: url(fonts/YakuHanJP/YakuHanJP-Bold.eot);
    src: url(fonts/YakuHanJP/YakuHanJP-Bold.woff2) format("woff2"), url(fonts/YakuHanJP/YakuHanJP-Bold.woff) format("woff");
    unicode-range: U+3001-3002, U+3008-3011, U+3014-3015, U+30fb, U+ff01, U+ff08-ff09, U+ff1a-ff1b, U+ff1f, U+ff3b, U+ff3d, U+ff5b, U+ff5d
}

@font-face {
    font-display: swap;
    font-family: YakuHanJP;
    font-style: normal;
    font-weight: 900;
    src: url(fonts/YakuHanJP/YakuHanJP-Black.eot);
    src: url(fonts/YakuHanJP/YakuHanJP-Black.woff2) format("woff2"), url(fonts/YakuHanJP/YakuHanJP-Black.woff) format("woff");
    unicode-range: U+3001-3002, U+3008-3011, U+3014-3015, U+30fb, U+ff01, U+ff08-ff09, U+ff1a-ff1b, U+ff1f, U+ff3b, U+ff3d, U+ff5b, U+ff5d
}

@-webkit-keyframes scaleX-in-out {
    0% {
        transform: scaleX(0);
        transform-origin: 0 0
    }

    50% {
        transform: scaleX(1);
        transform-origin: 0 0
    }

    51% {
        transform: scaleX(1);
        transform-origin: 100% 0
    }

    to {
        transform: scaleX(0);
        transform-origin: 100% 0
    }
}

@keyframes scaleX-in-out {
    0% {
        transform: scaleX(0);
        transform-origin: 0 0
    }

    50% {
        transform: scaleX(1);
        transform-origin: 0 0
    }

    51% {
        transform: scaleX(1);
        transform-origin: 100% 0
    }

    to {
        transform: scaleX(0);
        transform-origin: 100% 0
    }
}

@-webkit-keyframes scaleX-out-in {
    0% {
        transform: scaleX(1);
        transform-origin: 100% 0
    }

    50% {
        transform: scaleX(0);
        transform-origin: 100% 0
    }

    51% {
        transform: scaleX(0);
        transform-origin: 0 0
    }

    to {
        transform: scaleX(1);
        transform-origin: 0 0
    }
}

@keyframes scaleX-out-in {
    0% {
        transform: scaleX(1);
        transform-origin: 100% 0
    }

    50% {
        transform: scaleX(0);
        transform-origin: 100% 0
    }

    51% {
        transform: scaleX(0);
        transform-origin: 0 0
    }

    to {
        transform: scaleX(1);
        transform-origin: 0 0
    }
}

@-webkit-keyframes scaleX-in {
    0% {
        transform: scaleX(0);
        transform-origin: 0 0
    }

    to {
        transform: scaleX(1);
        transform-origin: 0 0
    }
}

@keyframes scaleX-in {
    0% {
        transform: scaleX(0);
        transform-origin: 0 0
    }

    to {
        transform: scaleX(1);
        transform-origin: 0 0
    }
}

@-webkit-keyframes scaleX-out {
    0% {
        transform: scaleX(1);
        transform-origin: 100% 0
    }

    to {
        transform: scaleX(0);
        transform-origin: 100% 0
    }
}

@keyframes scaleX-out {
    0% {
        transform: scaleX(1);
        transform-origin: 100% 0
    }

    to {
        transform: scaleX(0);
        transform-origin: 100% 0
    }
}

@-webkit-keyframes translateX-in {
    0% {
        transform: translateX(-100%)
    }

    to {
        transform: translateX(0)
    }
}

@keyframes translateX-in {
    0% {
        transform: translateX(-100%)
    }

    to {
        transform: translateX(0)
    }
}

@-webkit-keyframes translateY-in {
    0% {
        transform: translateY(-100%)
    }

    to {
        transform: translateY(0)
    }
}

@keyframes translateY-in {
    0% {
        transform: translateY(-100%)
    }

    to {
        transform: translateY(0)
    }
}

@-webkit-keyframes scale-up {
    0% {
        transform: scale(0)
    }

    to {
        transform: scale(1)
    }
}

@keyframes scale-up {
    0% {
        transform: scale(0)
    }

    to {
        transform: scale(1)
    }
}

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

    37.5% {
        transform: scale(1.005)
    }

    75% {
        transform: scale(.998)
    }

    to {
        transform: scale(1)
    }
}

@keyframes bounce {
    0% {
        transform: scale(1)
    }

    37.5% {
        transform: scale(1.005)
    }

    75% {
        transform: scale(.998)
    }

    to {
        transform: scale(1)
    }
}

@-webkit-keyframes slideX-in {
    0% {
        opacity: 0;
        transform: translateX(-100%)
    }

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

@keyframes slideX-in {
    0% {
        opacity: 0;
        transform: translateX(-100%)
    }

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

@-webkit-keyframes slideX-out {
    0% {
        opacity: 1;
        transform: translateX(0)
    }

    to {
        opacity: 0;
        transform: translateX(100%)
    }
}

@keyframes slideX-out {
    0% {
        opacity: 1;
        transform: translateX(0)
    }

    to {
        opacity: 0;
        transform: translateX(100%)
    }
}

@-webkit-keyframes slideX {
    0% {
        transform: translateX(0)
    }

    to {
        transform: translateX(25%)
    }
}

@keyframes slideX {
    0% {
        transform: translateX(0)
    }

    to {
        transform: translateX(25%)
    }
}

@-webkit-keyframes zoom-in {
    0% {
        transform: scale(1)
    }

    to {
        transform: scale(1.1)
    }
}

@keyframes zoom-in {
    0% {
        transform: scale(1)
    }

    to {
        transform: scale(1.1)
    }
}

@-webkit-keyframes zoom-in-slight {
    0% {
        transform: scale(1)
    }

    to {
        transform: scale(1.02)
    }
}

@keyframes zoom-in-slight {
    0% {
        transform: scale(1)
    }

    to {
        transform: scale(1.02)
    }
}

@-webkit-keyframes zoom-in-out {
    0% {
        transform: scale(1)
    }

    50% {
        transform: scale(.95)
    }

    to {
        transform: scale(1)
    }
}

@keyframes zoom-in-out {
    0% {
        transform: scale(1)
    }

    50% {
        transform: scale(.95)
    }

    to {
        transform: scale(1)
    }
}

html {
    box-sizing: border-box
}

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

body {
    background: #000
}

body.color-inverse {
    background: #fff
}

body.color-normal {
    background: #000
}

body, html {
    height: 100%
}

blockquote, q {
    quotes: """"
}

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

hr {
    background-color: #ccc;
    border: 0;
    height: 1px;
    margin-bottom: 1.5em
}

img {
    display: block;
    max-width: 100%
}

img:not([height]) {
    height: auto
}

img:not([width]) {
    width: 100%
}

figure {
    margin: 1em 0
}

a {
    color: #fff;
    text-decoration: none
}

a:focus {
    outline: none
}

a:active, a:hover {
    outline: 0
}

.color-inverse a {
    color: #000
}

.color-normal a {
    color: #fff
}

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

li>ol, li>ul {
    margin-left: 0
}

dl {
    display: flex;
    flex-wrap: wrap;
    margin: 0
}

dt {
    font-weight: 400;
    width: 100px
}

dd {
    margin: 0;
    width: calc(100% - 100px)
}

table {
    margin: 0 0 1em;
    table-layout: fixed;
    text-align: center;
    vertical-align: middle;
    width: 100%
}

th {
    font-weight: 400
}

button, input[type=button], input[type=reset], input[type=submit] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #e6e6e6;
    border: 1px solid;
    border-color: #ccc #ccc #bbb;
    border-radius: 3px;
    color: rgba(0, 0, 0, .8);
    font-size: 16px;
    font-size: 1rem;
    line-height: 1;
    padding: .6em 1em .4em
}

input[type=color], input[type=date], input[type=datetime-local], input[type=datetime], input[type=email], input[type=month], input[type=number], input[type=password], input[type=range], input[type=search], input[type=tel], input[type=text], input[type=time], input[type=url], input[type=week], textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #eeeff2;
    border: none;
    border-radius: 10px;
    color: #666;
    padding: 1em
}

input[type=color]:focus, input[type=date]:focus, input[type=datetime-local]:focus, input[type=datetime]:focus, input[type=email]:focus, input[type=month]:focus, input[type=number]:focus, input[type=password]:focus, input[type=range]:focus, input[type=search]:focus, input[type=tel]:focus, input[type=text]:focus, input[type=time]:focus, input[type=url]:focus, input[type=week]:focus, textarea:focus {
    color: #111
}

input[type=color]:-moz-placeholder-shown, input[type=date]:-moz-placeholder-shown, input[type=datetime-local]:-moz-placeholder-shown, input[type=datetime]:-moz-placeholder-shown, input[type=email]:-moz-placeholder-shown, input[type=month]:-moz-placeholder-shown, input[type=number]:-moz-placeholder-shown, input[type=password]:-moz-placeholder-shown, input[type=range]:-moz-placeholder-shown, input[type=search]:-moz-placeholder-shown, input[type=tel]:-moz-placeholder-shown, input[type=text]:-moz-placeholder-shown, input[type=time]:-moz-placeholder-shown, input[type=url]:-moz-placeholder-shown, input[type=week]:-moz-placeholder-shown, textarea:-moz-placeholder-shown {
    color: #d0d5db
}

input[type=color]:placeholder-shown, input[type=date]:placeholder-shown, input[type=datetime-local]:placeholder-shown, input[type=datetime]:placeholder-shown, input[type=email]:placeholder-shown, input[type=month]:placeholder-shown, input[type=number]:placeholder-shown, input[type=password]:placeholder-shown, input[type=range]:placeholder-shown, input[type=search]:placeholder-shown, input[type=tel]:placeholder-shown, input[type=text]:placeholder-shown, input[type=time]:placeholder-shown, input[type=url]:placeholder-shown, input[type=week]:placeholder-shown, textarea:placeholder-shown {
    color: #d0d5db
}

input[type=color]::-webkit-input-placeholder, input[type=date]::-webkit-input-placeholder, input[type=datetime-local]::-webkit-input-placeholder, input[type=datetime]::-webkit-input-placeholder, input[type=email]::-webkit-input-placeholder, input[type=month]::-webkit-input-placeholder, input[type=number]::-webkit-input-placeholder, input[type=password]::-webkit-input-placeholder, input[type=range]::-webkit-input-placeholder, input[type=search]::-webkit-input-placeholder, input[type=tel]::-webkit-input-placeholder, input[type=text]::-webkit-input-placeholder, input[type=time]::-webkit-input-placeholder, input[type=url]::-webkit-input-placeholder, input[type=week]::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
    color: #d0d5db
}

input[type=color]:-moz-placeholder, input[type=color]::-moz-placeholder, input[type=date]:-moz-placeholder, input[type=date]::-moz-placeholder, input[type=datetime-local]:-moz-placeholder, input[type=datetime-local]::-moz-placeholder, input[type=datetime]:-moz-placeholder, input[type=datetime]::-moz-placeholder, input[type=email]:-moz-placeholder, input[type=email]::-moz-placeholder, input[type=month]:-moz-placeholder, input[type=month]::-moz-placeholder, input[type=number]:-moz-placeholder, input[type=number]::-moz-placeholder, input[type=password]:-moz-placeholder, input[type=password]::-moz-placeholder, input[type=range]:-moz-placeholder, input[type=range]::-moz-placeholder, input[type=search]:-moz-placeholder, input[type=search]::-moz-placeholder, input[type=tel]:-moz-placeholder, input[type=tel]::-moz-placeholder, input[type=text]:-moz-placeholder, input[type=text]::-moz-placeholder, input[type=time]:-moz-placeholder, input[type=time]::-moz-placeholder, input[type=url]:-moz-placeholder, input[type=url]::-moz-placeholder, input[type=week]:-moz-placeholder, input[type=week]::-moz-placeholder, textarea:-moz-placeholder, textarea::-moz-placeholder {
    color: #d0d5db;
    opacity: 1
}

input[type=color]:-ms-input-placeholder, input[type=date]:-ms-input-placeholder, input[type=datetime-local]:-ms-input-placeholder, input[type=datetime]:-ms-input-placeholder, input[type=email]:-ms-input-placeholder, input[type=month]:-ms-input-placeholder, input[type=number]:-ms-input-placeholder, input[type=password]:-ms-input-placeholder, input[type=range]:-ms-input-placeholder, input[type=search]:-ms-input-placeholder, input[type=tel]:-ms-input-placeholder, input[type=text]:-ms-input-placeholder, input[type=time]:-ms-input-placeholder, input[type=url]:-ms-input-placeholder, input[type=week]:-ms-input-placeholder, textarea:-ms-input-placeholder {
    color: #d0d5db
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #eeeff2;
    border: none;
    border-radius: .625em;
    padding: .625em
}

textarea {
    display: block;
    width: 100%
}

body, button, input, select, textarea {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: #fff;
    font-family: YakuHanJP, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5
}

@media(max-width:768px) {
    body, button, input, select, textarea {
        font-size: 4.1025641026vw
    }
}

.color-inverse, .color-inverse button, .color-inverse input, .color-inverse select, .color-inverse textarea {
    color: #000
}

.color-normal, .color-normal button, .color-normal input, .color-normal select, .color-normal textarea {
    color: #fff
}

@media(min-width:769px) {
    body.p-top {
        font-size: 1.7467248908vh
    }
}

@media(max-width:768px)and (orientation:landscape) {
    body.p-top {
        font-size: 1.8957345972vh
    }
}

@media(max-width:768px)and (min-aspect-ratio:13/22) {
    body.p-top {
        font-size: 2.4242424242vh
    }
}

body.is-en {
    font-family: Ubuntu, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif
}

h1, h2, h3, h4, h5, h6 {
    clear: both;
    font-weight: 700;
    margin: 0
}

p {
    margin: 0
}

cite, dfn, em, i {
    font-style: italic
}

blockquote {
    margin: 0 1.5em
}

address {
    margin: 0 0 1.5em
}

pre {
    background: #eee;
    font-family: Courier\ 10 Pitch, Courier, monospace;
    line-height: 1.6;
    margin-bottom: 1.6em;
    max-width: 100%;
    overflow: auto;
    padding: 1.6em
}

code, kbd, pre, tt, var {
    font-size: 15px;
    font-size: .9375rem
}

code, kbd, tt, var {
    font-family: Monaco, Consolas, Andale Mono, DejaVu Sans Mono, monospace
}

abbr, acronym {
    border-bottom: 1px dotted #666;
    cursor: help
}

ins, mark {
    background: #fff9c0;
    text-decoration: none
}

big {
    font-size: 125%
}

.c-accordion {
    margin-bottom: 2.9375em
}

@media(max-width:768px) {
    .c-accordion {
        margin-bottom: 2.8125em
    }
}

.c-accordion__toggle a {
    display: block;
    font-size: 2.8125em;
    font-weight: 900;
    line-height: 1.1111111111;
    padding-bottom: .4444444444em;
    padding-right: .8888888889em;
    padding-top: .4444444444em;
    position: relative
}

@media(max-width:768px) {
    .c-accordion__toggle a {
        font-size: 1.75em;
        line-height: 1.1428571429;
        padding-bottom: .3571428571em;
        padding-right: 1em;
        padding-top: .2142857143em
    }
}

[lang=ja] .c-accordion__toggle a {
    font-feature-settings: "palt";
    letter-spacing: .08em
}

.c-accordion__toggle a:after, .c-accordion__toggle a:before {
    background: #000;
    background-repeat: no-repeat;
    background-size: contain;
    bottom: 0;
    content: " ";
    display: block;
    height: 1px;
    position: absolute;
    right: 0;
    width: 3.7777777778em
}

@media(max-width:768px) {
    .c-accordion__toggle a:after, .c-accordion__toggle a:before {
        width: 2.8571428571em
    }
}

.c-accordion__toggle a:after {
    background-color: #e5eaf0;
    transform: scaleX(0)
}

body:not(.is-touch) .c-accordion__toggle a:hover:after {
    -webkit-animation: scaleX-in-out .7s cubic-bezier(.645, .045, .355, 1) 0s 1 forwards;
    animation: scaleX-in-out .7s cubic-bezier(.645, .045, .355, 1) 0s 1 forwards
}

.c-accordion__toggle a .arrow:before {
    background: none;
    background-repeat: no-repeat;
    background-size: contain;
    border-bottom: 3px solid #000;
    border-right: 3px solid #000;
    content: " ";
    display: block;
    height: .2666666667em;
    position: absolute;
    right: .6em;
    top: calc(50% - .15556em);
    transform: rotate(45deg);
    width: .2666666667em
}

.is-open .c-accordion__toggle a .arrow:before {
    top: calc(50% - .06667em);
    transform: rotate(225deg)
}

@media(max-width:768px) {
    .c-accordion__toggle a .arrow:before {
        border-width: 2px;
        height: .3214285714em;
        right: .5357142857em;
        top: calc(50% - .25em);
        width: .3214285714em
    }

    .is-open .c-accordion__toggle a .arrow:before {
        top: calc(50% - .10714em)
    }
}

.c-accordion__content {
    height: 0;
    visibility: hidden
}

.is-open .c-accordion__content {
    height: auto;
    padding-bottom: .75em;
    padding-top: .9375em;
    visibility: visible
}

@media(max-width:768px) {
    .is-open .c-accordion__content {
        padding-bottom: 0;
        padding-top: .5em
    }
}

.c-accordion__content p {
    font-size: 1em;
    font-weight: 900;
    line-height: 2.1875
}

@media(max-width:768px) {
    .c-accordion__content p {
        font-size: .8125em;
        line-height: 1.7692307692
    }
}

[lang=ja] .c-accordion__content p {
    font-feature-settings: "palt";
    letter-spacing: .08em
}

.c-arrowLink {
    align-items: center;
    display: flex;
    margin-top: 3.4375em
}

@media(max-width:768px) {
    .c-arrowLink {
        height: 3.5em;
        margin-top: 1.3125em
    }
}

body:not(.is-touch) .c-arrowLink:hover .c-arrowLink__icon:before {
    transform: scale(.98)
}

body:not(.is-touch) .c-arrowLink:hover .c-arrowLink__arrow:before {
    opacity: 1;
    transform: translateX(0)
}

body:not(.is-touch) .c-arrowLink:hover .c-arrowLink__arrow:after {
    opacity: 0;
    transform: translateX(150%)
}

body:not(.is-touch) .c-arrowLink:hover .c-arrowLink__text:after {
    -webkit-animation: scaleX-out-in .5s cubic-bezier(.86, 0, .07, 1) 0s 1;
    animation: scaleX-out-in .5s cubic-bezier(.86, 0, .07, 1) 0s 1
}

.c-arrowLink__icon {
    height: 4.5em;
    margin-left: 1.0625em;
    position: relative;
    width: 4.5em
}

@media(max-width:768px) {
    .c-arrowLink__icon {
        height: 3.5em;
        margin-left: .8125em;
        width: 3.5em
    }
}

.c-arrowLink__icon:before {
    background: url(img/circle_grd.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: 100%;
    transition: transform .5s cubic-bezier(.86, 0, .07, 1);
    width: 100%
}

.c-arrowLink__arrow:after, .c-arrowLink__arrow:before {
    background: url(img/arrow_grd.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: .625em;
    left: calc(50% - .4375em);
    position: absolute;
    top: calc(50% - .3125em);
    transition: opacity .5s cubic-bezier(.86, 0, .07, 1), transform .5s cubic-bezier(.86, 0, .07, 1);
    width: .875em
}

@media(max-width:768px) {
    .c-arrowLink__arrow:after, .c-arrowLink__arrow:before {
        height: .5em;
        left: calc(50% - .34375em);
        top: calc(50% - .25em);
        width: .6875em
    }
}

.c-arrowLink__arrow:before {
    opacity: 0;
    transform: translateX(-150%)
}

.c-arrowLink__text {
    font-size: .8125em;
    font-weight: 700;
    line-height: 2 !important;
    position: relative
}

@media(max-width:768px) {
    .c-arrowLink__text {
        font-size: .625em
    }
}

[lang=ja] .c-arrowLink__text {
    letter-spacing: .08em
}

.c-arrowLink__text:after {
    background: #fff;
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: 1px;
    left: 0;
    position: absolute;
    top: 1.8461538462em;
    width: 100%
}

.color-inverse .c-arrowLink__text:after {
    background-color: #000
}

.c-arrowLink--white {
    margin-top: 0;
    position: absolute;
    right: 0;
    top: calc(50% - 3.25em)
}

@media(max-width:768px) {
    .c-arrowLink--white {
        height: 4.375em;
        top: calc(50% - 2.1875em)
    }
}

.c-arrowLink--white .c-arrowLink__icon {
    height: 7.25em;
    margin-left: 0;
    width: 7.25em
}

@media(max-width:768px) {
    .c-arrowLink--white .c-arrowLink__icon {
        height: 4.375em;
        width: 4.375em
    }
}

.c-arrowLink--white .c-arrowLink__icon:before {
    background-image: url(img/circle_wht.svg)
}

.c-arrowLink--white .c-arrowLink__arrow:after, .c-arrowLink--white .c-arrowLink__arrow:before {
    background-image: url(img/arrow_wht.svg);
    height: 1em;
    left: calc(50% - .6875em);
    top: calc(50% - .5em);
    width: 1.375em
}

@media(max-width:768px) {
    .c-arrowLink--white .c-arrowLink__arrow:after, .c-arrowLink--white .c-arrowLink__arrow:before {
        height: .625em;
        left: calc(50% - .4375em);
        top: calc(50% - .3125em);
        width: .875em
    }
}

.c-arrowLink--large {
    margin-left: auto;
    margin-right: 3.125em;
    margin-top: 7.125em;
    position: relative
}

@media(max-width:768px)and (orientation:portrait) {
    .c-arrowLink--large {
        bottom: 7.2274881517vh;
        bottom: calc(var(--vh)*7.22749);
        height: 11.5em;
        left: calc(50% - 5.75em);
        margin-right: auto;
        margin-top: 0;
        position: absolute
    }
}

.c-arrowLink--large .c-arrowLink__icon {
    height: 14.8125em;
    margin-left: 0;
    width: 14.8125em
}

@media(max-width:768px)and (orientation:portrait) {
    .c-arrowLink--large .c-arrowLink__icon {
        height: 11.5em;
        width: 11.5em
    }
}

.c-arrowLink--large .c-arrowLink__icon:before {
    background-image: url(img/circle_wht_large.svg)
}

.c-arrowLink--large .c-arrowLink__arrow:after, .c-arrowLink--large .c-arrowLink__arrow:before {
    background-image: url(img/arrow_wht_large.svg);
    height: 2em;
    left: calc(50% - 1.46875em);
    top: calc(50% - 1em);
    width: 2.9375em
}

@media(max-width:768px)and (orientation:portrait) {
    .c-arrowLink--large .c-arrowLink__arrow:after, .c-arrowLink--large .c-arrowLink__arrow:before {
        height: 1.5em;
        left: calc(50% - 1.0625em);
        top: calc(50% - .75em);
        width: 2.125em
    }
}

.c-arrowLink--large .c-arrowLink__text {
    font-size: 1em;
    left: 50%;
    position: absolute;
    top: calc(50% + 1.875em);
    transform: translateX(-50%);
    white-space: nowrap
}

@media(max-width:768px)and (orientation:portrait) {
    .c-arrowLink--large .c-arrowLink__text {
        font-size: .75em
    }
}

.c-arrowLink--large .c-arrowLink__text:after {
    display: none
}

.c-article__header {
    align-items: center;
    display: flex;
    flex-wrap: wrap
}

.c-article__title_shoulder {
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 1.625em;
    width: 100%
}

@media(max-width:768px) {
    .c-article__title_shoulder {
        font-size: 1em
    }
}

.c-article__title {
    font-size: 2.8125em;
    font-weight: 900;
    line-height: 1.5111111111;
    margin-top: 1.0444444444em;
    width: 100%
}

@media(max-width:768px) {
    .c-article__title {
        font-size: 1.5625em;
        line-height: 1.44;
        margin-top: .96em
    }
}

[lang=ja] .c-article__title {
    font-feature-settings: "palt";
    letter-spacing: .036em
}

.c-article__date {
    align-items: center;
    display: flex;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: .8125em;
    justify-content: space-between;
    margin-top: 3.9230769231em
}

@media(max-width:768px) {
    .c-article__date {
        margin-top: 1.1538461538em
    }
}

.c-article__date:after {
    background: url(img/logo_color.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    font-size: 1.2307692308em;
    height: 2.25em;
    margin-left: 1em;
    width: 4.75em
}

@media(max-width:768px) {
    .c-article__date:after {
        height: 1.75em;
        margin-left: .6875em;
        width: 3.625em
    }
}

.c-article__category {
    align-items: center;
    display: flex;
    margin-top: 3.0625em
}

@media(max-width:768px) {
    .c-article__category {
        margin-left: auto;
        margin-top: 1.1875em
    }
}

.c-article__category span {
    align-items: center;
    border-radius: 1em;
    border-style: solid;
    border-width: 1px;
    display: flex;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: .6875em;
    font-size: .75em;
    font-weight: 700;
    height: 2em;
    justify-content: center;
    margin-left: 1.1666666667em;
    transform: scale(1);
    width: 7em
}

@media(max-width:768px) {
    .c-article__category span {
        transform: scale(.85);
        transform-origin: 0 0;
        transform-origin: 100% 0
    }
}

.c-article__share {
    margin-left: auto;
    margin-top: 3.0625em
}

@media(max-width:768px) {
    .c-article__share {
        margin-left: 0;
        margin-top: 1.125em
    }
}

.c-article__share .addtoany_list {
    margin-right: -9px
}

.c-article__share .addtoany_list a:not(.addtoany_special_service)>span {
    display: block
}

.c-article__image {
    margin-top: 3.75em
}

@media(max-width:768px) {
    .c-article__image {
        margin-left: -1.875em;
        margin-right: -1.875em;
        margin-top: 1.875em
    }
}

.c-article__image img {
    height: auto
}

.c-article__content, .p-page__content {
    font-size: 1.125em;
    font-weight: 500;
    line-height: 2.1666666667;
    margin-top: 3.1666666667em
}

@media(max-width:768px) {
    .c-article__content, .p-page__content {
        font-size: .8125em;
        margin-top: 1.75em
    }
}

[lang=ja] .c-article__content, [lang=ja] .p-page__content {
    font-feature-settings: "palt";
    letter-spacing: .046em
}

.c-article__content h1, .c-article__content h2, .c-article__content h3, .c-article__content h4, .c-article__content h5, .c-article__content h6, .p-page__content h1, .p-page__content h2, .p-page__content h3, .p-page__content h4, .p-page__content h5, .p-page__content h6 {
    font-weight: 700
}

.c-article__content h1, .p-page__content h1 {
    font-size: 1.4444444444em;
    line-height: 1.6153846154;
    margin-top: 1.6153846154em
}

.c-article__content h2, .p-page__content h2 {
    font-size: 1.2777777778em;
    line-height: 1.6153846154;
    margin-top: 1.6153846154em
}

.c-article__content h3, .c-article__content h4, .c-article__content h5, .c-article__content h6, .p-page__content h3, .p-page__content h4, .p-page__content h5, .p-page__content h6 {
    font-size: 1.1111111111em;
    line-height: 1.85;
    margin-top: 1.85em
}

.c-article__content ol, .c-article__content p, .c-article__content ul, .p-page__content ol, .p-page__content p, .p-page__content ul {
    margin-top: 2.1666666667em
}

.c-article__content strong, .p-page__content strong {
    font-weight: 700
}

.c-article__content img, .p-page__content img {
    height: auto
}

.c-article__content ol li, .c-article__content ul li, .p-page__content ol li, .p-page__content ul li {
    margin-top: .3333333333em;
    padding-left: 1.6666666667em;
    position: relative
}

.c-article__content blockquote, .p-page__content blockquote {
    border-left: 2px solid #ccc;
    padding-left: 1em
}

.c-article__content ul>li:before, .p-page__content ul>li:before {
    background: #000;
    background-repeat: no-repeat;
    background-size: contain;
    border-radius: 50%;
    content: " ";
    display: block;
    height: .5555555556em;
    left: 0;
    position: absolute;
    top: .8333333333em;
    width: .5555555556em
}

.c-article__content li>ol, .c-article__content li>ul, .p-page__content li>ol, .p-page__content li>ul {
    margin-top: 0
}

.c-article__content ol, .p-page__content ol {
    counter-reset: item
}

.c-article__content ol>li:before, .p-page__content ol>li:before {
    content: counter(item) ".";
    counter-increment: item;
    display: block;
    left: 0;
    position: absolute;
    top: 0
}

.c-article__content a, .p-page__content a {
    border-bottom: 1px solid #000;
    transition: color .3s ease, border-color .3s ease;
    word-break: break-all
}

body:not(.is-touch) .c-article__content a:hover, body:not(.is-touch) .p-page__content a:hover {
    border-bottom-color: #7f7f7f;
    color: #7f7f7f
}

.c-article__content iframe, .p-page__content iframe {
    max-width: 100%
}

.c-article__content .iframe-wrap, .p-page__content .iframe-wrap {
    background: #fff;
    margin-top: 2.1666666667em;
    padding-top: 56.25%;
    position: relative;
    width: 100%
}

.c-article__content .iframe-wrap iframe, .p-page__content .iframe-wrap iframe {
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.c-article__content .rich-text, .p-page__content .rich-text {
    margin-top: 2.1666666667em
}

.c-article__content hr, .p-page__content hr {
    margin: 2.1666666667em 0
}

.c-article__content .aligncenter, .p-page__content .aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}

.c-article__content .alignleft, .p-page__content .alignleft {
    float: left;
    margin-right: 1em
}

.c-article__content .alignright, .p-page__content .alignright {
    float: right;
    margin-left: 1em
}

.c-article__related {
    margin-top: 8em
}

@media(max-width:768px) {
    .c-article__related {
        margin-top: 4em
    }
}

.c-article__related_title {
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 1.625em
}

@media(max-width:768px) {
    .c-article__related_title {
        font-size: 1em
    }
}

.c-article__related_list {
    display: flex;
    flex-wrap: wrap;
    margin-left: -2.5em;
    margin-top: 3.5em
}

@media(max-width:939px) {
    .c-article__related_list {
        margin-top: -.75em
    }
}

.c-article__related_list>div {
    margin-left: 2.5em;
    width: calc(33.3333% - 2.5em)
}

@media(max-width:939px) {
    .c-article__related_list>div {
        margin-top: 2.625em;
        width: calc(50% - 2.5em)
    }
}

@media(max-width:768px) {
    .c-article__related_list>div {
        width: calc(100% - 2.5em)
    }
}

.c-article__back, .c-member__link, .p-404__back, .p-thanks__back {
    margin-bottom: 7.5em;
    margin-top: 4.375em;
    text-align: right
}

@media(max-width:768px) {
    .c-article__back, .c-member__link, .p-404__back, .p-thanks__back {
        margin-bottom: 4.25em;
        margin-top: 3em
    }
}

.c-article__back a, .c-member__link a, .p-404__back a, .p-thanks__back a {
    align-items: center;
    display: inline-flex
}

body:not(.is-touch) .c-article__back a:hover .text:after, body:not(.is-touch) .c-member__link a:hover .text:after, body:not(.is-touch) .p-404__back a:hover .text:after, body:not(.is-touch) .p-thanks__back a:hover .text:after {
    transform: scaleX(1)
}

body:not(.is-touch) .c-article__back a:hover .arrow:before, body:not(.is-touch) .c-member__link a:hover .arrow:before, body:not(.is-touch) .p-404__back a:hover .arrow:before, body:not(.is-touch) .p-thanks__back a:hover .arrow:before {
    opacity: 1;
    transform: translateX(0)
}

body:not(.is-touch) .c-article__back a:hover .arrow:after, body:not(.is-touch) .c-member__link a:hover .arrow:after, body:not(.is-touch) .p-404__back a:hover .arrow:after, body:not(.is-touch) .p-thanks__back a:hover .arrow:after {
    opacity: 0;
    transform: translateX(150%)
}

.c-article__back .text, .c-member__link .text, .p-404__back .text, .p-thanks__back .text {
    position: relative
}

@media(max-width:768px) {
    .c-article__back .text, .c-member__link .text, .p-404__back .text, .p-thanks__back .text {
        font-size: .8125em
    }
}

[lang=ja] .c-article__back .text, [lang=ja] .c-member__link .text, [lang=ja] .p-404__back .text, [lang=ja] .p-thanks__back .text {
    letter-spacing: .08em
}

.c-article__back .text:after, .c-member__link .text:after, .p-404__back .text:after, .p-thanks__back .text:after {
    background: #000;
    background-repeat: no-repeat;
    background-size: contain;
    bottom: 0;
    content: " ";
    display: block;
    height: 1px;
    left: 0;
    position: absolute;
    transform: scaleX(0);
    transform-origin: 0 0;
    transition: transform .3s cubic-bezier(.23, 1, .32, 1);
    width: 100%
}

.c-article__back .arrow, .c-member__link .arrow, .p-404__back .arrow, .p-thanks__back .arrow {
    background: #d6dce2;
    border-radius: 50%;
    height: 2.875em;
    margin-left: .875em;
    overflow: hidden;
    position: relative;
    width: 2.875em
}

@media(max-width:768px) {
    .c-article__back .arrow, .c-member__link .arrow, .p-404__back .arrow, .p-thanks__back .arrow {
        height: 2.0625em;
        width: 2.0625em
    }
}

.c-article__back .arrow:after, .c-article__back .arrow:before, .c-member__link .arrow:after, .c-member__link .arrow:before, .p-404__back .arrow:after, .p-404__back .arrow:before, .p-thanks__back .arrow:after, .p-thanks__back .arrow:before {
    background: url(img/arrow_grd.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: .625em;
    left: calc(50% - .4375em);
    position: absolute;
    top: calc(50% - .3125em);
    transition: opacity .5s cubic-bezier(.86, 0, .07, 1), transform .5s cubic-bezier(.86, 0, .07, 1);
    width: .875em
}

@media(max-width:768px) {
    .c-article__back .arrow:after, .c-article__back .arrow:before, .c-member__link .arrow:after, .c-member__link .arrow:before, .p-404__back .arrow:after, .p-404__back .arrow:before, .p-thanks__back .arrow:after, .p-thanks__back .arrow:before {
        height: .5em;
        left: calc(50% - .34375em);
        top: calc(50% - .25em);
        width: .6875em
    }
}

.c-article__back .arrow:before, .c-member__link .arrow:before, .p-404__back .arrow:before, .p-thanks__back .arrow:before {
    opacity: 0;
    transform: translateX(-150%)
}

.c-article__back .arrow:after, .c-article__back .arrow:before, .c-member__link .arrow:after, .c-member__link .arrow:before, .p-404__back .arrow:after, .p-404__back .arrow:before, .p-thanks__back .arrow:after, .p-thanks__back .arrow:before {
    background-image: url(img/arrow_black.svg)
}

.c-articleList {
    margin-top: 2.5625em
}

@media(max-width:768px)and (orientation:portrait) {
    .c-articleList {
        margin-top: 1.625em;
        margin-top: calc(var(--vh)*3.08057)
    }
}

.c-articleList__item {
    height: 5.5em;
    padding: 1.4375em 0
}

@media(max-width:768px)and (orientation:portrait) {
    .c-articleList__item {
        height: auto;
        padding: .5625em 0 .875em
    }
}

@media(max-width:768px)and (orientation:portrait)and (min-aspect-ratio:1/2) {
    .c-articleList__item:nth-child(5) {
        display: none
    }
}

.c-articleList__item>a {
    align-items: center;
    display: flex;
    padding: .3125em 0;
    position: relative
}

@media(max-width:768px)and (orientation:portrait) {
    .c-articleList__item>a {
        -ms-grid-columns: 5.9375em 1fr;
        -ms-grid-rows: 1fr 2fr;
        display: -ms-grid;
        display: grid;
        grid-template-areas: "date title""cat title";
        grid-template-columns: 5.9375em 1fr;
        grid-template-rows: 1fr 2fr;
        padding: 0
    }
}

.c-articleList__item>a:after, .c-articleList__item>a:before {
    background: #000;
    background-repeat: no-repeat;
    background-size: contain;
    bottom: -1.4375em;
    content: " ";
    display: block;
    height: 1px;
    left: 0;
    position: absolute;
    transform: scaleX(0);
    transform-origin: 0 0;
    transition: transform .5s cubic-bezier(.645, .045, .355, 1);
    width: 100%
}

@media(max-width:768px)and (orientation:portrait) {
    .c-articleList__item>a:after, .c-articleList__item>a:before {
        bottom: -.875em
    }
}

.transitionEnd .c-articleList__item>a:before {
    transform: scaleX(1)
}

.c-articleList__item>a:after {
    background-color: #e5eaf0
}

.c-articleList__item>a.delay-0:before {
    transition-delay: 0s
}

.c-articleList__item>a.delay-1:before {
    transition-delay: .15s
}

.c-articleList__item>a.delay-2:before {
    transition-delay: .3s
}

.c-articleList__item>a.delay-3:before {
    transition-delay: .45s
}

.c-articleList__item>a.delay-4:before {
    transition-delay: .6s
}

.c-articleList__item>a.delay-5:before {
    transition-delay: .75s
}

body:not(.is-touch) .c-articleList__item>a:hover:after {
    -webkit-animation: scaleX-in-out .7s cubic-bezier(.645, .045, .355, 1) 0s 1 forwards;
    animation: scaleX-in-out .7s cubic-bezier(.645, .045, .355, 1) 0s 1 forwards
}

body:not(.is-touch) .c-articleList__item>a:hover .c-articleList__title:before {
    -webkit-animation: slideX-in .5s cubic-bezier(.215, .61, .355, 1) 0s 1 forwards;
    animation: slideX-in .5s cubic-bezier(.215, .61, .355, 1) 0s 1 forwards
}

body:not(.is-touch) .c-articleList__item>a:hover .c-articleList__title:after {
    -webkit-animation: slideX-out .5s cubic-bezier(.215, .61, .355, 1) 0s 1 forwards;
    animation: slideX-out .5s cubic-bezier(.215, .61, .355, 1) 0s 1 forwards
}

.c-articleList__date {
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: .8125em;
    font-weight: 700;
    width: 6.6153846154em
}

@media(max-width:768px)and (orientation:portrait) {
    .c-articleList__date {
        -ms-grid-row-align: start;
        align-self: start;
        font-size: .75em;
        grid-area: date;
        margin-top: .3333333333em;
        width: auto
    }
}

.c-articleList__category {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-right: 1.125em;
    width: 10.375em
}

@media(max-width:768px)and (orientation:portrait) {
    .c-articleList__category {
        -ms-grid-row-align: start;
        align-items: flex-start;
        align-self: start;
        flex-direction: column;
        grid-area: cat;
        margin-right: 0;
        margin-top: .0625em;
        width: auto
    }
}

.c-articleList__category:before {
    background: url(img/logo_color.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: 2em;
    width: 4.3125em
}

@media(max-width:768px)and (orientation:portrait) {
    .c-articleList__category:before {
        height: 1.375em;
        margin-bottom: .375em;
        margin-left: .5625em;
        width: 2.9375em
    }
}

.c-articleList__category span {
    align-items: center;
    border-radius: 1em;
    border-style: solid;
    border-width: 1px;
    display: flex;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: .6875em;
    font-weight: 700;
    height: 2em;
    justify-content: center;
    width: 7em
}

@media(max-width:768px) {
    .c-articleList__category span {
        transform: scale(.85);
        transform-origin: 0 0
    }
}

.c-articleList__title {
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    display: -webkit-box;
    font-size: .9375em;
    font-weight: 700;
    letter-spacing: .045em;
    line-height: 1.4666666667;
    overflow: hidden;
    padding-right: 2.1333333333em;
    position: relative;
    width: calc(100% - 18em)
}

@media(max-width:768px)and (orientation:portrait) {
    .c-articleList__title {
        -ms-grid-row-align: start;
        -webkit-line-clamp: 3;
        align-self: start;
        font-size: .75em;
        grid-area: title;
        line-height: 2;
        padding-right: 0;
        width: auto
    }

    .c-articleList__date {
        -ms-grid-column: 1;
        -ms-grid-row: 1
    }

    .c-articleList__category {
        -ms-grid-column: 1;
        -ms-grid-row: 2
    }

    .c-articleList__title {
        -ms-grid-row-span: 2;
        -ms-grid-column: 2;
        -ms-grid-row: 1
    }
}

.c-articleList__title:after, .c-articleList__title:before {
    background: url(img/arrow.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: .7333333333em;
    position: absolute;
    right: 0;
    top: .3333333333em;
    width: 1.0666666667em
}

@media(max-width:768px)and (orientation:portrait) {
    .c-articleList__title:after, .c-articleList__title:before {
        display: none
    }
}

.c-articleList__title:before {
    opacity: 0;
    right: 0;
    transform: translateX(-100%)
}

.delay-0 .c-articleList__title:after {
    -webkit-animation-delay: .3s;
    animation-delay: .3s
}

.delay-1 .c-articleList__title:after {
    -webkit-animation-delay: .5s;
    animation-delay: .5s
}

.delay-2 .c-articleList__title:after {
    -webkit-animation-delay: .7s;
    animation-delay: .7s
}

.delay-3 .c-articleList__title:after {
    -webkit-animation-delay: .9s;
    animation-delay: .9s
}

.delay-4 .c-articleList__title:after {
    -webkit-animation-delay: 1.1s;
    animation-delay: 1.1s
}

.delay-5 .c-articleList__title:after {
    -webkit-animation-delay: 1.3s;
    animation-delay: 1.3s
}

.c-articleList__more {
    display: inline-flex;
    font-size: .9375em;
    font-weight: 700;
    letter-spacing: .04em;
    margin-left: auto;
    margin-top: 3.2em;
    overflow: hidden;
    padding-right: 2.1333333333em
}

@media(max-width:768px)and (orientation:portrait) {
    .c-articleList__more {
        font-size: .75em;
        margin-top: 3em;
        margin-top: calc(var(--vh)*4.2654)
    }
}

.c-articleList__more:after, .c-articleList__more:before {
    background: url(img/arrow.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: .7333333333em;
    position: absolute;
    right: 0;
    top: .3333333333em;
    transition: opacity .5s cubic-bezier(.86, 0, .07, 1), transform .5s cubic-bezier(.86, 0, .07, 1);
    width: 1.0666666667em
}

.c-articleList__more:before {
    opacity: 0;
    transform: translateX(-150%)
}

body:not(.is-touch) .c-articleList__more:hover:before {
    opacity: 1;
    transform: translateX(0)
}

body:not(.is-touch) .c-articleList__more:hover:after {
    opacity: 0;
    transform: translateX(150%)
}

.bogo-language-switcher {
    display: flex;
    flex-direction: column;
    font-weight: 700
}

.bogo-language-switcher .en {
    order: 1
}

.bogo-language-switcher .ja {
    order: 0
}

.bogo-language-switcher li {
    margin-top: 1.375em
}

@media(max-width:768px) {
    .bogo-language-switcher li {
        margin-top: 1em
    }
}

.bogo-language-name {
    border: 2px solid #fff;
    border-radius: 1.1111111111em;
    cursor: pointer;
    display: block;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 1.125em;
    line-height: calc(2.22222em - 4px);
    margin-left: auto;
    overflow: hidden;
    position: relative;
    text-align: center;
    transition: all .3s cubic-bezier(.23, 1, .32, 1);
    width: 12.6666666667em
}

@media(max-width:768px) {
    .bogo-language-name {
        border-radius: 1.1333333333em;
        font-size: .9375em;
        line-height: calc(2.26667em - 4px);
        width: 8.5333333333em
    }
}

body:not(.is-touch) .bogo-language-name a:after, .bogo-language-name a:before {
    color: #fff;
    left: 0;
    opacity: 1;
    position: absolute;
    top: 0;
    transform: translateY(0);
    transition: all .3s cubic-bezier(.23, 1, .32, 1);
    width: 100%
}

li.en .bogo-language-name a:after, li.en .bogo-language-name a:before {
    content: "English"
}

li.ja .bogo-language-name a:after, li.ja .bogo-language-name a:before {
    content: "Japanese"
}

.bogo-language-name a:before {
    color: #000;
    opacity: 0;
    transform: translateY(1em)
}

.current .bogo-language-name, .current .bogo-language-name a:after {
    background: #fff;
    color: #000;
    pointer-events: none
}

.c-button a {
    display: block;
    height: 2.5em;
    margin-left: auto;
    margin-right: auto;
    padding: .5625em 0 .625em;
    text-align: center;
    width: 8.5em
}

.c-button span {
    display: block;
    font-size: .875em;
    font-weight: 900;
    letter-spacing: .02em
}

.c-dropdown {
    position: relative
}

.c-dropdown.is-open .c-dropdown__list {
    opacity: 1;
    transition: opacity 1.5s cubic-bezier(.25, .46, .45, .94), visibility 0s linear;
    transition: opacity .5s cubic-bezier(.25, .46, .45, .94), visibility 0s linear;
    visibility: visible
}

.c-dropdown__button {
    background: none;
    border: none;
    border-radius: 0;
    font-size: 1em;
    letter-spacing: .08em;
    padding: 0;
    text-align: left;
    width: 6.25em
}

@media(max-width:768px) {
    .c-dropdown__button {
        font-size: .625em;
        letter-spacing: .05em;
        width: 6em
    }
}

.c-dropdown__button:after {
    background: none;
    background-repeat: no-repeat;
    background-size: contain;
    border-bottom: 2px solid #000;
    border-right: 2px solid #000;
    content: " ";
    display: block;
    height: .625em;
    position: absolute;
    right: 0;
    top: calc(50% - .5em);
    transform: rotate(45deg);
    width: .625em
}

@media(max-width:768px) {
    .c-dropdown__button:after {
        right: .0625em;
        top: calc(50% - .1em)
    }
}

.c-dropdown__list {
    background: #fff;
    border: 1px solid #e5eaf0;
    left: -1em;
    letter-spacing: .08em;
    min-width: calc(100% + 1em);
    opacity: 0;
    padding: .25em 1em;
    position: absolute;
    top: calc(100% + .5em);
    transition: opacity .75s cubic-bezier(.25, .46, .45, .94), visibility 0s linear .75s;
    transition: opacity .5s cubic-bezier(.25, .46, .45, .94), visibility 0s linear .5s;
    visibility: hidden;
    z-index: 1
}

@media(max-width:768px) {
    .c-dropdown__list {
        letter-spacing: .05em
    }
}

.c-dropdown__list li {
    margin: .625em 0
}

@media(max-width:768px) {
    .c-dropdown__list li {
        font-size: .625em
    }
}

.c-dropdown__list a[aria-current=page] {
    color: #999
}

.fadein {
    opacity: 0;
    transform: translateY(2.1834061135vh);
    transition: opacity .5s ease, transform .5s cubic-bezier(.23, 1, .32, 1)
}

.transitionEnd .fadein, .visible .fadein {
    opacity: 1;
    transform: translateY(0)
}

.fadein.delay-0 {
    transition-delay: 0s
}

.fadein.delay-1 {
    transition-delay: .15s
}

.fadein.delay-2 {
    transition-delay: .3s
}

.fadein.delay-3 {
    transition-delay: .45s
}

.fadein.delay-4 {
    transition-delay: .6s
}

.fadein.delay-5 {
    transition-delay: .75s
}

.fadein.delay-6 {
    transition-delay: .9s
}

.fadein.delay-7 {
    transition-delay: 1.05s
}

.fadein.delay-8 {
    transition-delay: 1.2s
}

.c-form {
    font-size: 1em
}

@media(max-width:768px) {
    .c-form {
        font-size: 1.2307692308em
    }
}

.c-form .red {
    color: #dc3232
}

.c-form .wpcf7-not-valid-tip {
    font-size: .8125em;
    font-weight: 700
}

.c-form .tab-content {
    display: none
}

.c-form .tab-content.is-visible {
    display: block
}

.c-form .tab-content.is-disabled {
    opacity: .5;
    pointer-events: none
}

.c-form__field {
    display: flex;
    flex-wrap: wrap;
    margin-top: 2.625em
}

@media(max-width:768px) {
    .c-form__field {
        margin-top: 2.25em;
        row-gap: .9375em
    }
}

.c-form__field .label, .c-form__field label {
    font-size: .8125em;
    font-weight: 700;
    letter-spacing: .08em;
    margin-bottom: .7692307692em;
    width: 100%
}

@media(max-width:768px) {
    .c-form__field .label, .c-form__field label {
        font-size: .625em;
        margin-bottom: -.4em
    }
}

.c-form__field input, .c-form__field select, .c-form__field textarea {
    border-radius: .625em !important;
    font-size: 1.125em;
    font-weight: 700;
    letter-spacing: .08em;
    padding: 1.3888888889em 2em !important;
    width: 100%
}

@media(max-width:768px) {
    .c-form__field input, .c-form__field select, .c-form__field textarea {
        font-size: .8125em
    }

    .c-form__field input, .c-form__field textarea {
        font-size: 1.125em;
        margin-bottom: -1.1666666667em;
        transform: scale(.7222222222);
        transform-origin: 0 0;
        width: 138.4615384615%
    }

    .c-form__field textarea {
        margin-bottom: -4.8888888889em
    }
}

.c-form__field .wpcf7-form-control-wrap {
    display: block;
    width: 100%
}

.c-form__field .form-family-name, .c-form__field .form-family-yomi, .c-form__field .form-first-name, .c-form__field .form-first-yomi {
    width: 22.875em
}

@media(max-width:768px) {
    .c-form__field .form-family-name, .c-form__field .form-family-yomi, .c-form__field .form-first-name, .c-form__field .form-first-yomi {
        width: 100%
    }
}

.c-form__field .form-country:after, .c-form__field .form-subject:after {
    background: none;
    background-repeat: no-repeat;
    background-size: contain;
    border-bottom: 2px solid #000;
    border-right: 2px solid #000;
    content: " ";
    display: block;
    height: .6875em;
    position: absolute;
    right: 2.375em;
    top: calc(50% - .4375em);
    transform: rotate(45deg);
    width: .6875em
}

@media(max-width:768px) {
    .c-form__field .form-country:after, .c-form__field .form-subject:after {
        height: .5em;
        right: 1.6875em;
        top: calc(50% - .3125em);
        width: .5em
    }
}

.c-form__field #file-upload-button {
    background: #000;
    color: #fff
}

.c-form__file {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    position: relative;
    width: 100%
}

.c-form__file .form-file {
    display: none
}

.c-form__file label {
    background: #000;
    border-radius: .4375em;
    color: #fff;
    cursor: pointer;
    display: block;
    font-size: 1em;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 0;
    padding: 1.125em;
    position: relative;
    text-align: center;
    width: 16.125em
}

@media(max-width:768px) {
    .c-form__file label {
        font-size: .8125em;
        width: 14.6153846154em
    }
}

body:not(.is-touch) .c-form__file label:hover {
    opacity: .7;
    transition: .3s ease-out
}

.c-form__file label:after {
    color: #000;
    content: "選択されていません";
    display: block;
    font-size: .8125em;
    left: calc(100% + .76923em);
    line-height: 2;
    position: absolute;
    text-align: left;
    top: 1em;
    width: 100%
}

[lang=en-US] .c-form__file label:after {
    content: "No file selected."
}

.c-form__file .filename {
    font-size: .8125em;
    font-weight: 700;
    margin-left: .7692307692em
}

@media(max-width:768px) {
    .c-form__file .filename {
        margin-left: 0;
        width: calc(100% - 5.92308em)
    }
}

.c-form__file button {
    display: none;
    font-size: .8125em;
    font-weight: 700;
    margin-left: .7692307692em
}

@media(max-width:768px) {
    .c-form__file button {
        margin-left: auto
    }
}

.c-form__file.changed label:after {
    display: none
}

.c-form__file.changed button {
    display: block
}

.c-form__accept {
    margin-top: 6.125em
}

@media(max-width:768px) {
    .c-form__accept {
        margin-top: 2.5em
    }
}

.c-form__accept .wpcf7-list-item {
    margin: 0
}

.c-form__accept label {
    display: inline-block;
    font-size: 1.25em;
    font-weight: 700;
    line-height: 1.5
}

@media(max-width:768px) {
    .c-form__accept label {
        font-size: .8125em
    }
}

.c-form__accept input[type=checkbox] {
    position: absolute;
    visibility: hidden
}

.c-form__accept .wpcf7-list-item-label {
    display: block;
    padding-left: 2.75em;
    position: relative
}

.c-form__accept .wpcf7-list-item-label:before {
    background: none;
    background-repeat: no-repeat;
    background-size: contain;
    border: 1px solid #000;
    content: " ";
    display: block;
    height: 1.75em;
    left: 0;
    position: absolute;
    top: 0;
    width: 1.75em
}

.c-form__accept input[type=checkbox]:checked+.wpcf7-list-item-label:before {
    background-image: url(img/checked.svg)
}

.c-form__accept a {
    padding-bottom: .2em
}

[lang=en-US] .c-form__accept a {
    padding-bottom: 0
}

.c-form__submit {
    margin-top: 4.875em;
    position: relative
}

@media(max-width:768px) {
    .c-form__submit {
        margin-top: 4.625em
    }

    .c-form__submit .wpcf7-spinner {
        left: calc(50% - 12px);
        margin: 0;
        position: absolute;
        top: calc(100% + 12px)
    }
}

.c-form__submit:before {
    background: url(img/arrow_rec_wht.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: .6875em;
    left: 21.125em;
    position: absolute;
    top: calc(50% - .3125em);
    width: 1.0625em
}

@media(max-width:768px) {
    .c-form__submit:before {
        left: auto;
        right: 5.1875em
    }
}

.c-form__submit input[type=submit] {
    background: linear-gradient(90deg, #ce307d 3%, #cf802c 62%, #d09a78 84%);
    border: none;
    border-radius: .35em;
    color: #fff;
    font-size: 1.25em;
    letter-spacing: .08em;
    max-width: 100%;
    padding: 1.35em 2.7em 1.35em 1.35em;
    width: 28em
}

@media(max-width:768px) {
    .c-form__submit input[type=submit] {
        font-size: 1em;
        width: 100%
    }
}

.c-form__submit .wpcf7-submit:disabled {
    opacity: .5
}

.c-member {
    margin-top: -1.875em
}

@media(max-width:768px) {
    .c-member {
        margin-top: -.8125em
    }
}

.c-member__card {
    align-items: center;
    background: #d6dce2;
    border-radius: .875em;
    display: flex;
    margin-top: 7.8125em;
    min-height: 12.3125em;
    padding: 0 2.75em 0 3.625em
}

@media(max-width:1080px) {
    .c-member__card {
        flex-wrap: wrap;
        justify-content: center;
        padding-bottom: 2.125em;
        padding-left: 7.375em;
        padding-right: 7.375em
    }
}

@media(max-width:768px) {
    .c-member__card {
        flex-wrap: wrap;
        margin-top: 5.125em;
        padding-bottom: 2.125em;
        padding-left: 2.125em;
        padding-right: 2.125em
    }
}

.c-member__head {
    margin-top: auto;
    padding-bottom: 1.875em;
    width: 7.5625em
}

@media(max-width:1080px) {
    .c-member__head {
        margin-left: auto;
        margin-top: 0;
        padding-top: 1.875em
    }
}

@media(max-width:768px) {
    .c-member__head {
        padding-bottom: 0;
        padding-top: 1.75em;
        width: 8.0625em
    }
}

[lang=en-US] .c-member__head {
    display: flex;
    flex-direction: column
}

.c-member__name, .c-member__position {
    font-feature-settings: "palt";
    white-space: nowrap
}

[lang=en-US] .c-member__name, [lang=en-US] .c-member__position {
    white-space: normal
}

.c-member__name .en, .c-member__position .en {
    display: block;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif
}

[lang=ja] .c-member__name .en, [lang=ja] .c-member__position .en {
    letter-spacing: .04em
}

.c-member__name .ja, .c-member__position .ja {
    display: block;
    letter-spacing: .1em
}

.c-member__position {
    font-size: .8125em
}

@media(max-width:768px) {
    .c-member__position .en {
        font-size: .8461538462em
    }

    .c-member__position .ja {
        font-size: .9230769231em
    }
}

.c-member__name {
    order: -1
}

.c-member__name .en {
    font-size: .6875em;
    margin-top: .3636363636em
}

@media(max-width:768px) {
    .c-member__name .en {
        margin-top: -.0909090909em
    }
}

[lang=en-US] .c-member__name .en {
    font-size: 1.5625em;
    line-height: 1.2;
    margin-bottom: .28em
}

@media(max-width:768px) {
    [lang=en-US] .c-member__name .en {
        font-size: 1.4375em
    }
}

.c-member__name .ja {
    font-size: 1.625em;
    margin-top: .5em
}

@media(max-width:768px) {
    .c-member__name .ja {
        font-size: 1.4375em
    }
}

.c-member__img {
    margin-top: auto;
    width: 14.1875em
}

@media(max-width:1080px) {
    .c-member__img {
        margin-right: auto;
        margin-top: 0
    }
}

@media(max-width:768px) {
    .c-member__img {
        margin-left: -.3125em;
        margin-right: -.625em;
        width: 9.0625em
    }
}

.c-member__img img {
    height: auto;
    margin-top: -5.9375em;
    width: 13.375em
}

@media(max-width:768px) {
    .c-member__img img {
        margin-top: -3.5625em;
        width: 100%
    }
}

.c-member__prof {
    padding: 1.375em 0;
    width: 33.125em
}

@media(max-width:768px) {
    .c-member__prof {
        margin-top: .9375em;
        padding: 0;
        width: 100%
    }
}

.c-member__prof p {
    font-size: .8125em;
    font-weight: 500;
    line-height: 1.7692307692
}

@media(max-width:768px) {
    .c-member__prof p {
        font-size: .75em;
        line-height: 1.8333333333
    }
}

[lang=ja] .c-member__prof p {
    font-feature-settings: "palt";
    letter-spacing: .11em
}

.c-member__link {
    margin-bottom: 0;
    margin-top: 0
}

@media(max-width:768px) {
    .c-member__link {
        margin-bottom: 0;
        margin-top: 1.625em;
        text-align: left
    }
}

[lang=en-US] .c-member__link {
    margin-top: .625em
}

.c-member__link a {
    font-size: .75em
}

@media(max-width:768px) {
    .c-member__link .text {
        font-size: 1em
    }
}

.c-member__link .arrow {
    background: #95a0af
}

@media(max-width:768px) {
    .c-member__link .arrow {
        height: 2.75em;
        width: 2.75em
    }
}

.c-member__link .arrow:after, .c-member__link .arrow:before {
    background-image: url(img/arrow_rec_wht.svg)
}

.c-member__modal {
    background: #fff;
    display: flex;
    height: calc(100vh - 17.1875em);
    max-height: 47.125em
}

@media(max-width:1080px)and (orientation:portrait) {
    .c-member__modal {
        display: block;
        overflow-x: hidden;
        overflow-y: scroll
    }
}

@media(max-width:768px) {
    .c-member__modal {
        height: calc(100vh - 8.125em);
        height: calc(var(--vh)*100 - 8.125em)
    }
}

@media(max-width:1080px)and (orientation:portrait) {
    .c-modal__content.president {
        max-width: 26.75em
    }
}

.c-member__modal_img {
    width: 26.125em
}

@media(max-width:1080px)and (orientation:portrait) {
    .c-member__modal_img {
        height: 20.625em;
        width: 100%
    }
}

@media(max-width:768px) {
    .c-member__modal_img {
        height: 15.9375em
    }
}

.c-member__modal_img img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 30%;
    object-position: 50% 30%
}

.c-member__modal_cnt {
    overflow-x: hidden;
    overflow-y: scroll;
    padding: 2.75em 2.875em;
    width: calc(100% - 26.125em)
}

@media(max-width:1080px) {
    .c-member__modal_cnt {
        overflow: auto;
        padding: 1.5em 2.1875em;
        width: 100%
    }
}

.c-member__modal_cnt h3 .en {
    display: block;
    font-size: .35em
}

.c-member__modal_cnt h3 .ja {
    display: block;
    font-size: .625em;
    font-weight: 900;
    letter-spacing: .125em;
    margin-top: .56em
}

.c-member__modal_cnt h4 {
    font-size: 1.75em;
    line-height: 1.5;
    margin-bottom: -.3928571429em;
    margin-top: 2.8928571429em
}

@media(max-width:768px) {
    .c-member__modal_cnt h4 {
        font-size: 1.25em;
        margin-top: 1.9em
    }
}

[lang=ja] .c-member__modal_cnt h4 {
    font-feature-settings: "palt";
    letter-spacing: .1em
}

.c-member__modal_cnt p {
    font-size: .9375em;
    font-weight: 500;
    line-height: 1.6666666667;
    margin-top: 1.6666666667em
}

@media(max-width:768px) {
    .c-member__modal_cnt p {
        font-size: .6875em;
        line-height: 1.7272727273;
        margin-top: 1.7272727273em
    }
}

[lang=ja] .c-member__modal_cnt p {
    font-feature-settings: "palt";
    letter-spacing: .08em
}

.c-modal {
    background: rgba(0, 0, 0, .65);
    height: 100%;
    left: 0;
    opacity: 0;
    overflow-x: hidden;
    overflow-y: scroll;
    padding-top: 24.5633187773vh;
    position: fixed;
    top: 0;
    transition: opacity .75s cubic-bezier(.25, .46, .45, .94), visibility 0s linear .75s;
    visibility: hidden;
    width: 100%;
    z-index: 200
}

@media(max-width:768px) {
    .c-modal {
        padding-top: 6.25em
    }
}

.c-modal.is-open {
    opacity: 1;
    transition: opacity 1.5s cubic-bezier(.25, .46, .45, .94), visibility 0s linear;
    transition: opacity .75s cubic-bezier(.25, .46, .45, .94), visibility 0s linear;
    visibility: visible
}

.c-modal--center {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-top: 0
}

.c-modal__content {
    margin-left: auto;
    margin-right: auto;
    max-width: 61.25em;
    position: relative;
    z-index: 1
}

@media(max-width:1160px) {
    .c-modal__content {
        max-width: calc(100% - 11.25em)
    }
}

@media(max-width:768px) {
    .c-modal__content {
        max-width: 20.625em
    }
}

.c-modal--center .c-modal__content {
    max-width: 49.125em
}

@media(max-width:846px) {
    .c-modal--center .c-modal__content {
        max-width: calc(100% - 3.75em)
    }
}

@media(max-width:768px) {
    .c-modal--center .c-modal__content {
        max-width: 20.625em
    }
}

.c-modal--virtualip .c-modal__content {
    max-width: 53.75em
}

@media(max-width:1080px) {
    .c-modal--virtualip .c-modal__content {
        max-width: 30em
    }
}

@media(max-width:768px) {
    .c-modal--virtualip .c-modal__content {
        max-width: 20.625em
    }
}

.c-modal__close {
    color: transparent !important;
    height: 3.5em;
    overflow: hidden;
    position: fixed;
    right: 9.6875em;
    top: 5.3125em;
    width: 3.5em;
    z-index: 1
}

@media(max-width:768px)and (orientation:portrait) {
    .c-modal__close {
        height: 1.875em;
        right: 1.875em;
        top: 2.1875em;
        width: 1.875em
    }
}

.c-modal__close:after, .c-modal__close:before {
    background: #fff;
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: 2px;
    left: -.625em;
    position: absolute;
    top: calc(50% - 1px);
    transform: rotate(45deg);
    width: 4.75em
}

@media(max-width:768px)and (orientation:portrait) {
    .c-modal__close:after, .c-modal__close:before {
        left: -.3125em;
        width: 2.5em
    }
}

.c-modal__close:after {
    transform: rotate(135deg)
}

.c-modal__overlay {
    color: transparent !important;
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%
}

.c-nav {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: flex-end
}

@media(orientation:landscape) {
    .c-nav.c-nav--menu {
        min-width: 140.8296943231vh
    }
}

@media(orientation:portrait) {
    .c-nav {
        display: block;
        overflow-x: hidden;
        overflow-y: scroll
    }

    .c-nav.c-nav--menu {
        height: calc(var(--vh)*100)
    }
}

@media(max-width:768px)and (orientation:landscape) {
    .c-nav {
        font-size: 1.8957345972vh
    }
}

.c-nav--footer {
    overflow: hidden
}

.c-nav__inner {
    align-items: flex-start;
    display: flex;
    justify-content: space-between;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 7.125em;
    padding-left: 9.6875em;
    padding-right: 9.6875em;
    width: 100%
}

@media(orientation:portrait) {
    .c-nav__inner {
        flex-wrap: wrap;
        height: 100%;
        padding: 4.3125em 7.6923076923vw 0;
        position: relative
    }
}

.c-nav--menu .c-nav__inner {
    max-width: 140.8296943231vh
}

@media(orientation:portrait) {
    .c-nav--menu .c-nav__inner {
        flex-direction: column;
        justify-content: flex-start
    }
}

@media(max-width:768px)and (orientation:landscape) {
    .c-nav--menu .c-nav__inner {
        padding-bottom: 6vh
    }
}

.c-nav--footer .c-nav__inner {
    justify-content: flex-start;
    max-width: 80.625em;
    padding-bottom: 2.25em
}

@media(orientation:portrait) {
    .c-nav--footer .c-nav__inner {
        height: 100%;
        padding-bottom: 4.2654028436vh;
        padding-bottom: calc(var(--vh)*4.2654);
        padding-top: 4.5023696682vh;
        padding-top: calc(var(--vh)*4.50237)
    }
}

@media(orientation:portrait)and (min-aspect-ratio:1/2) {
    .c-nav--footer .c-nav__inner {
        padding-bottom: 2.2511848341vh;
        padding-bottom: calc(var(--vh)*2.25118);
        padding-top: 2.2511848341vh;
        padding-top: calc(var(--vh)*2.25118)
    }
}

@media(max-width:768px)and (orientation:landscape) {
    .c-nav--footer .c-nav__inner {
        transform: scale(.8);
        transform-origin: 50% 100%
    }
}

.c-nav__list {
    width: 17.3125em
}

@media(orientation:portrait) {
    .c-nav__list {
        width: 50%
    }
}

.c-nav--footer .c-nav__list {
    margin-right: 5.75em;
    width: 13.875em
}

@media(orientation:portrait) {
    .c-nav--footer .c-nav__list {
        margin-right: 8.7179487179vw;
        width: 31.2820512821vw
    }

    .c-nav--footer .c-nav__list:first-child {
        margin-right: auto;
        width: 37.6923076923vw
    }
}

.c-nav__list a {
    color: #fff;
    display: inline-block;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-weight: 700;
    letter-spacing: .03em;
    overflow: hidden
}

.c-nav__list span {
    display: block;
    transform: translateY(100%);
    transition: transform 0s cubic-bezier(.23, 1, .32, 1) .5s
}

.is-menu-open .c-nav__list span, .transitionEnd .c-nav__list span, .visible .c-nav__list span {
    transform: translateY(0);
    transition: transform .5s cubic-bezier(.23, 1, .32, 1) .25s
}

@media(orientation:portrait) {
    .c-nav__item {
        margin-top: .3125em
    }

    .c-nav--menu .c-nav__item.privacy {
        display: none
    }
}

.c-nav__item:not(:first-child) {
    margin-top: 2.125em;
    padding-top: 1.75em;
    position: relative
}

@media(orientation:portrait) {
    .c-nav__item:not(:first-child) {
        margin-top: .3125em;
        padding-top: 0
    }
}

.c-nav--footer .c-nav__item:not(:first-child) {
    margin-top: 1.375em;
    padding-top: 1.5em
}

@media(orientation:portrait) {
    .c-nav--footer .c-nav__item:not(:first-child) {
        margin-top: .6875em;
        padding-top: .875em
    }
}

.c-nav__item:not(:first-child):before {
    background: #fff;
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: 1px;
    left: 0;
    position: absolute;
    top: 0;
    transform: scaleX(0);
    transform-origin: 0 0;
    transition: transform 0s cubic-bezier(.23, 1, .32, 1) .5s;
    width: 100%
}

.is-menu-open .c-nav__item:not(:first-child):before, .transitionEnd .c-nav__item:not(:first-child):before, .visible .c-nav__item:not(:first-child):before {
    transform: scaleX(1);
    transition: transform .5s cubic-bezier(.23, 1, .32, 1) .25s
}

@media(orientation:portrait) {
    .c-nav--menu .c-nav__item:not(:first-child):before {
        display: none
    }
}

.c-nav__item>a {
    font-size: 3em;
    margin-left: -.0625em;
    transition: padding .3s cubic-bezier(.23, 1, .32, 1)
}

@media(orientation:portrait) {
    .c-nav__item>a {
        font-size: 1.9375em
    }
}

body:not(.is-touch) .c-nav__item>a:hover {
    padding-left: .3125em
}

.c-nav--footer .c-nav__item>a {
    font-size: 2.4375em
}

@media(orientation:portrait) {
    .c-nav--footer .c-nav__item>a {
        font-size: 1.75em
    }

    .c-nav__item--small {
        margin-top: 0
    }
}

.c-nav__item--small a {
    font-size: 1em
}

@media(orientation:portrait) {
    .c-nav__item--small a {
        font-size: .625em
    }
}

.c-nav--footer .c-nav__item--small a {
    font-size: .8125em
}

@media(orientation:portrait) {
    .c-nav--footer .c-nav__item--small a {
        font-size: .625em
    }
}

.c-nav__sublist {
    margin-left: 0;
    padding-bottom: .875em
}

@media(orientation:portrait) {
    .c-nav--menu .c-nav__sublist {
        margin-top: -.375em;
        padding-bottom: .5625em
    }

    .c-nav--footer .c-nav__sublist {
        padding-bottom: .5625em
    }
}

.c-nav__sublist li {
    margin-top: .5em
}

@media(orientation:portrait) {
    .c-nav__sublist li {
        margin-top: 0
    }
}

@media(orientation:landscape) {
    .c-nav--footer .c-nav__sublist li {
        margin-top: .375em
    }
}

.c-nav__sublist a {
    font-size: 1em;
    letter-spacing: .1em;
    transition: padding .3s cubic-bezier(.23, 1, .32, 1)
}

@media(orientation:portrait) {
    .c-nav__sublist a {
        font-size: .625em
    }
}

body:not(.is-touch) .c-nav__sublist a:hover {
    padding-left: .9375em
}

@media(orientation:landscape) {
    .c-nav--footer .c-nav__sublist a {
        font-size: .8125em
    }
}

.c-nav__sublist .indent a span {
    padding-left: 1.375em;
    position: relative
}

.c-nav__sublist .indent a span:before {
    background: #fff;
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: 1px;
    left: 0;
    position: absolute;
    top: 50%;
    width: .875em
}

.c-nav__bottom {
    display: flex;
    flex-direction: column;
    height: 100%;
    opacity: 0;
    transition: opacity 0s cubic-bezier(.23, 1, .32, 1) .5s;
    width: 15em
}

@media(orientation:portrait) {
    .c-nav--menu .c-nav__bottom {
        height: auto;
        margin-top: auto;
        max-width: 10.5em;
        padding-bottom: 3.375em;
        width: 50%
    }
}

.c-nav--footer .c-nav__bottom {
    margin-left: auto
}

@media(orientation:portrait) {
    .c-nav--footer .c-nav__bottom {
        height: auto;
        margin-top: auto;
        position: relative;
        width: 100%
    }
}

.is-menu-open .c-nav__bottom, .transitionEnd .c-nav__bottom, .visible .c-nav__bottom {
    opacity: 1;
    transition: opacity .5s cubic-bezier(.23, 1, .32, 1) .25s
}

.c-nav__lang {
    margin-top: 5.5625em
}

@media(orientation:portrait) {
    .c-nav__lang {
        margin-top: 0
    }

    .c-nav__lang .bogo-language-switcher {
        align-items: center
    }
}

.c-nav--footer .c-nav__lang {
    align-items: center;
    display: flex;
    justify-content: flex-end;
    margin-top: 2.5625em
}

@media(orientation:portrait) {
    .c-nav--footer .c-nav__lang {
        margin-top: 0
    }

    .c-nav--footer .c-nav__lang .bogo-language-switcher {
        display: none
    }
}

@media(orientation:landscape) {
    .c-nav--footer .c-nav__lang .current {
        display: none
    }

    .c-nav--footer .c-nav__lang .bogo-language-name {
        border-radius: 1.3333333333em;
        font-size: .9375em;
        line-height: calc(2.66667em - 4px);
        width: 10.3333333333em
    }

    .c-nav--footer .c-nav__lang li {
        margin-top: 0
    }
}

.c-nav__twitter {
    display: none
}

.c-nav--footer .c-nav__twitter {
    display: block;
    margin-left: 1.375em;
    transition: all .2s cubic-bezier(.23, 1, .32, 1);
    width: 2.8125em
}

@media(orientation:portrait) {
    .c-nav--footer .c-nav__twitter {
        bottom: 1.75em;
        margin-left: 0;
        position: absolute;
        right: 1.875em;
        width: 2.375em
    }
}

body:not(.is-touch) .c-nav__twitter:hover {
    transform: scale(.95)
}

.c-nav__logo {
    margin-top: auto;
    width: 100%
}

@media(orientation:portrait) {
    .c-nav__logo {
        margin-top: 2.3125em
    }
}

.c-nav--footer .c-nav__logo {
    order: -1
}

@media(orientation:portrait) {
    .c-nav--footer .c-nav__logo {
        margin-left: auto;
        margin-right: auto;
        margin-top: 0;
        width: 9.3125em
    }
}

.c-nav__copyright {
    font-size: .625em;
    font-weight: 900;
    letter-spacing: .08em;
    margin: 1.9em 0;
    text-align: center
}

.c-nav--footer .c-nav__copyright {
    margin-bottom: 2.3em
}

@media(orientation:portrait) {
    .c-nav__copyright {
        margin-bottom: 0;
        margin-top: .4em
    }

    .c-nav--footer .c-nav__copyright {
        margin-bottom: 0;
        margin-top: .9em
    }
}

.c-nav__copyright span {
    display: block;
    transform: scale(.9);
    transform-origin: 50% 100%
}

@media(orientation:portrait) {
    .c-nav__copyright span {
        transform: scale(.7)
    }

    .c-nav--footer .c-nav__copyright span {
        transform: scale(.8)
    }
}

.c-nav__privacy {
    display: none
}

@media(orientation:portrait) {
    .c-nav--menu .c-nav__privacy {
        display: block;
        margin-top: 1.5625em;
        text-align: center
    }

    .c-nav--menu .c-nav__privacy a {
        font-size: .6875em;
        letter-spacing: .16em
    }
}

.c-pagination {
    align-items: center;
    display: flex;
    justify-content: center;
    margin-bottom: 7.125em;
    margin-top: 7.125em
}

.c-pagination .page-numbers {
    border: 1px solid #000;
    border-radius: 50%;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 1.125em;
    height: 2.5em;
    line-height: calc(2.5em - 2px);
    margin: 0 .3333333333em;
    text-align: center;
    transition: transform .3s cubic-bezier(.23, 1, .32, 1);
    width: 2.5em
}

@media(max-width:768px) {
    .c-pagination .page-numbers {
        font-size: .75em;
        height: 2.3333333333em;
        line-height: calc(2.33333em - 2px);
        width: 2.3333333333em
    }
}

body:not(.is-touch) .c-pagination a.page-numbers:hover {
    transform: scale(.95)
}

.c-pagination .dots {
    border: none;
    width: auto
}

.c-pagination .current {
    border-color: #999;
    color: #999
}

.c-pagination .next, .c-pagination .prev {
    color: transparent;
    overflow: hidden;
    position: relative
}

.c-pagination .next:before, .c-pagination .prev:before {
    background: url(img/arrow_black.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: .5em;
    position: absolute;
    right: calc(50% - .44444em);
    top: calc(50% - .27778em);
    width: .7222222222em
}

.c-pagination .prev:before {
    transform: rotate(180deg)
}

.c-postsNav {
    align-items: center;
    display: flex
}

.c-postsNav__next, .c-postsNav__prev {
    width: 3.3125em
}

.c-postsNav__next a, .c-postsNav__prev a {
    display: block;
    font-family: "Noto Serif JP", ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, Yu Mincho, 游明朝体, YuMincho, HG明朝E, serif;
    font-size: .75em;
    font-weight: 700;
    letter-spacing: .045em;
    position: relative
}

.c-postsNav__next a:after, .c-postsNav__prev a:after {
    background: url(img/chevron.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: 1em;
    position: absolute;
    top: .3333333333em;
    width: 1em
}

.c-postsNav__prev {
    margin-right: auto
}

.c-postsNav__prev a {
    padding-left: 1.5833333333em
}

.c-postsNav__prev a:after {
    left: 0;
    transform: rotate(180deg)
}

.c-postsNav__next {
    margin-left: auto
}

.c-postsNav__next a {
    padding-right: 1.5833333333em
}

.c-postsNav__next a:after {
    right: 0
}

.reveal {
    perspective: 200px;
    perspective-origin: 25% 25%
}

.reveal>span {
    display: inline-flex;
    line-height: 1.11;
    overflow: hidden;
    transform: translate3d(0, 2.1834061135vh, 1.0917030568vh) rotate(.0001deg);
    transform-origin: 0 0
}

[lang=en-US] .reveal>span {
    line-height: 1.31
}

.transitionEnd .reveal>span, .visible .reveal>span {
    -webkit-animation: zoom-out .75s cubic-bezier(.39, .575, .565, 1) 0s 1 forwards;
    animation: zoom-out .75s cubic-bezier(.39, .575, .565, 1) 0s 1 forwards
}

.reveal>span>span {
    display: inline-flex;
    transform: translateY(100%)
}

.transitionEnd .reveal>span>span, .visible .reveal>span>span {
    -webkit-animation: reveal .75s cubic-bezier(.39, .575, .565, 1) 0s 1 forwards;
    animation: reveal .75s cubic-bezier(.39, .575, .565, 1) 0s 1 forwards
}

.reveal.delay-0>span:first-child, .reveal.delay-0>span:first-child>span {
    -webkit-animation-delay: .1s;
    animation-delay: .1s
}

.reveal.delay-0>span:nth-child(2), .reveal.delay-0>span:nth-child(2)>span {
    -webkit-animation-delay: .2s;
    animation-delay: .2s
}

.reveal.delay-0>span:nth-child(3), .reveal.delay-0>span:nth-child(3)>span {
    -webkit-animation-delay: .3s;
    animation-delay: .3s
}

.reveal.delay-0>span:nth-child(4), .reveal.delay-0>span:nth-child(4)>span {
    -webkit-animation-delay: .4s;
    animation-delay: .4s
}

.reveal.delay-0>span:nth-child(5), .reveal.delay-0>span:nth-child(5)>span {
    -webkit-animation-delay: .5s;
    animation-delay: .5s
}

.reveal.delay-0>span:nth-child(6), .reveal.delay-0>span:nth-child(6)>span {
    -webkit-animation-delay: .6s;
    animation-delay: .6s
}

.reveal.delay-0>span:nth-child(7), .reveal.delay-0>span:nth-child(7)>span {
    -webkit-animation-delay: .7s;
    animation-delay: .7s
}

.reveal.delay-0>span:nth-child(8), .reveal.delay-0>span:nth-child(8)>span {
    -webkit-animation-delay: .8s;
    animation-delay: .8s
}

.reveal.delay-0>span:nth-child(9), .reveal.delay-0>span:nth-child(9)>span {
    -webkit-animation-delay: .9s;
    animation-delay: .9s
}

.reveal.delay-0>span:nth-child(10), .reveal.delay-0>span:nth-child(10)>span {
    -webkit-animation-delay: 1s;
    animation-delay: 1s
}

.reveal.delay-1>span:first-child, .reveal.delay-1>span:first-child>span {
    -webkit-animation-delay: .3s;
    animation-delay: .3s
}

.reveal.delay-1>span:nth-child(2), .reveal.delay-1>span:nth-child(2)>span {
    -webkit-animation-delay: .4s;
    animation-delay: .4s
}

.reveal.delay-1>span:nth-child(3), .reveal.delay-1>span:nth-child(3)>span {
    -webkit-animation-delay: .5s;
    animation-delay: .5s
}

.reveal.delay-1>span:nth-child(4), .reveal.delay-1>span:nth-child(4)>span {
    -webkit-animation-delay: .6s;
    animation-delay: .6s
}

.reveal.delay-1>span:nth-child(5), .reveal.delay-1>span:nth-child(5)>span {
    -webkit-animation-delay: .7s;
    animation-delay: .7s
}

.reveal.delay-1>span:nth-child(6), .reveal.delay-1>span:nth-child(6)>span {
    -webkit-animation-delay: .8s;
    animation-delay: .8s
}

.reveal.delay-1>span:nth-child(7), .reveal.delay-1>span:nth-child(7)>span {
    -webkit-animation-delay: .9s;
    animation-delay: .9s
}

.reveal.delay-1>span:nth-child(8), .reveal.delay-1>span:nth-child(8)>span {
    -webkit-animation-delay: 1s;
    animation-delay: 1s
}

.reveal.delay-1>span:nth-child(9), .reveal.delay-1>span:nth-child(9)>span {
    -webkit-animation-delay: 1.1s;
    animation-delay: 1.1s
}

.reveal.delay-1>span:nth-child(10), .reveal.delay-1>span:nth-child(10)>span {
    -webkit-animation-delay: 1.2s;
    animation-delay: 1.2s
}

.reveal.delay-2>span:first-child, .reveal.delay-2>span:first-child>span {
    -webkit-animation-delay: .5s;
    animation-delay: .5s
}

.reveal.delay-2>span:nth-child(2), .reveal.delay-2>span:nth-child(2)>span {
    -webkit-animation-delay: .6s;
    animation-delay: .6s
}

.reveal.delay-2>span:nth-child(3), .reveal.delay-2>span:nth-child(3)>span {
    -webkit-animation-delay: .7s;
    animation-delay: .7s
}

.reveal.delay-2>span:nth-child(4), .reveal.delay-2>span:nth-child(4)>span {
    -webkit-animation-delay: .8s;
    animation-delay: .8s
}

.reveal.delay-2>span:nth-child(5), .reveal.delay-2>span:nth-child(5)>span {
    -webkit-animation-delay: .9s;
    animation-delay: .9s
}

.reveal.delay-2>span:nth-child(6), .reveal.delay-2>span:nth-child(6)>span {
    -webkit-animation-delay: 1s;
    animation-delay: 1s
}

.reveal.delay-2>span:nth-child(7), .reveal.delay-2>span:nth-child(7)>span {
    -webkit-animation-delay: 1.1s;
    animation-delay: 1.1s
}

.reveal.delay-2>span:nth-child(8), .reveal.delay-2>span:nth-child(8)>span {
    -webkit-animation-delay: 1.2s;
    animation-delay: 1.2s
}

.reveal.delay-2>span:nth-child(9), .reveal.delay-2>span:nth-child(9)>span {
    -webkit-animation-delay: 1.3s;
    animation-delay: 1.3s
}

.reveal.delay-2>span:nth-child(10), .reveal.delay-2>span:nth-child(10)>span {
    -webkit-animation-delay: 1.4s;
    animation-delay: 1.4s
}

.reveal.delay-3>span:first-child, .reveal.delay-3>span:first-child>span {
    -webkit-animation-delay: .7s;
    animation-delay: .7s
}

.reveal.delay-3>span:nth-child(2), .reveal.delay-3>span:nth-child(2)>span {
    -webkit-animation-delay: .8s;
    animation-delay: .8s
}

.reveal.delay-3>span:nth-child(3), .reveal.delay-3>span:nth-child(3)>span {
    -webkit-animation-delay: .9s;
    animation-delay: .9s
}

.reveal.delay-3>span:nth-child(4), .reveal.delay-3>span:nth-child(4)>span {
    -webkit-animation-delay: 1s;
    animation-delay: 1s
}

.reveal.delay-3>span:nth-child(5), .reveal.delay-3>span:nth-child(5)>span {
    -webkit-animation-delay: 1.1s;
    animation-delay: 1.1s
}

.reveal.delay-3>span:nth-child(6), .reveal.delay-3>span:nth-child(6)>span {
    -webkit-animation-delay: 1.2s;
    animation-delay: 1.2s
}

.reveal.delay-3>span:nth-child(7), .reveal.delay-3>span:nth-child(7)>span {
    -webkit-animation-delay: 1.3s;
    animation-delay: 1.3s
}

.reveal.delay-3>span:nth-child(8), .reveal.delay-3>span:nth-child(8)>span {
    -webkit-animation-delay: 1.4s;
    animation-delay: 1.4s
}

.reveal.delay-3>span:nth-child(9), .reveal.delay-3>span:nth-child(9)>span {
    -webkit-animation-delay: 1.5s;
    animation-delay: 1.5s
}

.reveal.delay-3>span:nth-child(10), .reveal.delay-3>span:nth-child(10)>span {
    -webkit-animation-delay: 1.6s;
    animation-delay: 1.6s
}

.reveal.delay-4>span:first-child, .reveal.delay-4>span:first-child>span {
    -webkit-animation-delay: .9s;
    animation-delay: .9s
}

.reveal.delay-4>span:nth-child(2), .reveal.delay-4>span:nth-child(2)>span {
    -webkit-animation-delay: 1s;
    animation-delay: 1s
}

.reveal.delay-4>span:nth-child(3), .reveal.delay-4>span:nth-child(3)>span {
    -webkit-animation-delay: 1.1s;
    animation-delay: 1.1s
}

.reveal.delay-4>span:nth-child(4), .reveal.delay-4>span:nth-child(4)>span {
    -webkit-animation-delay: 1.2s;
    animation-delay: 1.2s
}

.reveal.delay-4>span:nth-child(5), .reveal.delay-4>span:nth-child(5)>span {
    -webkit-animation-delay: 1.3s;
    animation-delay: 1.3s
}

.reveal.delay-4>span:nth-child(6), .reveal.delay-4>span:nth-child(6)>span {
    -webkit-animation-delay: 1.4s;
    animation-delay: 1.4s
}

.reveal.delay-4>span:nth-child(7), .reveal.delay-4>span:nth-child(7)>span {
    -webkit-animation-delay: 1.5s;
    animation-delay: 1.5s
}

.reveal.delay-4>span:nth-child(8), .reveal.delay-4>span:nth-child(8)>span {
    -webkit-animation-delay: 1.6s;
    animation-delay: 1.6s
}

.reveal.delay-4>span:nth-child(9), .reveal.delay-4>span:nth-child(9)>span {
    -webkit-animation-delay: 1.7s;
    animation-delay: 1.7s
}

.reveal.delay-4>span:nth-child(10), .reveal.delay-4>span:nth-child(10)>span {
    -webkit-animation-delay: 1.8s;
    animation-delay: 1.8s
}

.reveal.delay-5>span:first-child, .reveal.delay-5>span:first-child>span {
    -webkit-animation-delay: 1.1s;
    animation-delay: 1.1s
}

.reveal.delay-5>span:nth-child(2), .reveal.delay-5>span:nth-child(2)>span {
    -webkit-animation-delay: 1.2s;
    animation-delay: 1.2s
}

.reveal.delay-5>span:nth-child(3), .reveal.delay-5>span:nth-child(3)>span {
    -webkit-animation-delay: 1.3s;
    animation-delay: 1.3s
}

.reveal.delay-5>span:nth-child(4), .reveal.delay-5>span:nth-child(4)>span {
    -webkit-animation-delay: 1.4s;
    animation-delay: 1.4s
}

.reveal.delay-5>span:nth-child(5), .reveal.delay-5>span:nth-child(5)>span {
    -webkit-animation-delay: 1.5s;
    animation-delay: 1.5s
}

.reveal.delay-5>span:nth-child(6), .reveal.delay-5>span:nth-child(6)>span {
    -webkit-animation-delay: 1.6s;
    animation-delay: 1.6s
}

.reveal.delay-5>span:nth-child(7), .reveal.delay-5>span:nth-child(7)>span {
    -webkit-animation-delay: 1.7s;
    animation-delay: 1.7s
}

.reveal.delay-5>span:nth-child(8), .reveal.delay-5>span:nth-child(8)>span {
    -webkit-animation-delay: 1.8s;
    animation-delay: 1.8s
}

.reveal.delay-5>span:nth-child(9), .reveal.delay-5>span:nth-child(9)>span {
    -webkit-animation-delay: 1.9s;
    animation-delay: 1.9s
}

.reveal.delay-5>span:nth-child(10), .reveal.delay-5>span:nth-child(10)>span {
    -webkit-animation-delay: 2s;
    animation-delay: 2s
}

.reveal.delay-6>span:first-child, .reveal.delay-6>span:first-child>span {
    -webkit-animation-delay: 1.3s;
    animation-delay: 1.3s
}

.reveal.delay-6>span:nth-child(2), .reveal.delay-6>span:nth-child(2)>span {
    -webkit-animation-delay: 1.4s;
    animation-delay: 1.4s
}

.reveal.delay-6>span:nth-child(3), .reveal.delay-6>span:nth-child(3)>span {
    -webkit-animation-delay: 1.5s;
    animation-delay: 1.5s
}

.reveal.delay-6>span:nth-child(4), .reveal.delay-6>span:nth-child(4)>span {
    -webkit-animation-delay: 1.6s;
    animation-delay: 1.6s
}

.reveal.delay-6>span:nth-child(5), .reveal.delay-6>span:nth-child(5)>span {
    -webkit-animation-delay: 1.7s;
    animation-delay: 1.7s
}

.reveal.delay-6>span:nth-child(6), .reveal.delay-6>span:nth-child(6)>span {
    -webkit-animation-delay: 1.8s;
    animation-delay: 1.8s
}

.reveal.delay-6>span:nth-child(7), .reveal.delay-6>span:nth-child(7)>span {
    -webkit-animation-delay: 1.9s;
    animation-delay: 1.9s
}

.reveal.delay-6>span:nth-child(8), .reveal.delay-6>span:nth-child(8)>span {
    -webkit-animation-delay: 2s;
    animation-delay: 2s
}

.reveal.delay-6>span:nth-child(9), .reveal.delay-6>span:nth-child(9)>span {
    -webkit-animation-delay: 2.1s;
    animation-delay: 2.1s
}

.reveal.delay-6>span:nth-child(10), .reveal.delay-6>span:nth-child(10)>span {
    -webkit-animation-delay: 2.2s;
    animation-delay: 2.2s
}

.reveal.delay-7>span:first-child, .reveal.delay-7>span:first-child>span {
    -webkit-animation-delay: 1.5s;
    animation-delay: 1.5s
}

.reveal.delay-7>span:nth-child(2), .reveal.delay-7>span:nth-child(2)>span {
    -webkit-animation-delay: 1.6s;
    animation-delay: 1.6s
}

.reveal.delay-7>span:nth-child(3), .reveal.delay-7>span:nth-child(3)>span {
    -webkit-animation-delay: 1.7s;
    animation-delay: 1.7s
}

.reveal.delay-7>span:nth-child(4), .reveal.delay-7>span:nth-child(4)>span {
    -webkit-animation-delay: 1.8s;
    animation-delay: 1.8s
}

.reveal.delay-7>span:nth-child(5), .reveal.delay-7>span:nth-child(5)>span {
    -webkit-animation-delay: 1.9s;
    animation-delay: 1.9s
}

.reveal.delay-7>span:nth-child(6), .reveal.delay-7>span:nth-child(6)>span {
    -webkit-animation-delay: 2s;
    animation-delay: 2s
}

.reveal.delay-7>span:nth-child(7), .reveal.delay-7>span:nth-child(7)>span {
    -webkit-animation-delay: 2.1s;
    animation-delay: 2.1s
}

.reveal.delay-7>span:nth-child(8), .reveal.delay-7>span:nth-child(8)>span {
    -webkit-animation-delay: 2.2s;
    animation-delay: 2.2s
}

.reveal.delay-7>span:nth-child(9), .reveal.delay-7>span:nth-child(9)>span {
    -webkit-animation-delay: 2.3s;
    animation-delay: 2.3s
}

.reveal.delay-7>span:nth-child(10), .reveal.delay-7>span:nth-child(10)>span {
    -webkit-animation-delay: 2.4s;
    animation-delay: 2.4s
}

.reveal.delay-8>span:first-child, .reveal.delay-8>span:first-child>span {
    -webkit-animation-delay: 1.7s;
    animation-delay: 1.7s
}

.reveal.delay-8>span:nth-child(2), .reveal.delay-8>span:nth-child(2)>span {
    -webkit-animation-delay: 1.8s;
    animation-delay: 1.8s
}

.reveal.delay-8>span:nth-child(3), .reveal.delay-8>span:nth-child(3)>span {
    -webkit-animation-delay: 1.9s;
    animation-delay: 1.9s
}

.reveal.delay-8>span:nth-child(4), .reveal.delay-8>span:nth-child(4)>span {
    -webkit-animation-delay: 2s;
    animation-delay: 2s
}

.reveal.delay-8>span:nth-child(5), .reveal.delay-8>span:nth-child(5)>span {
    -webkit-animation-delay: 2.1s;
    animation-delay: 2.1s
}

.reveal.delay-8>span:nth-child(6), .reveal.delay-8>span:nth-child(6)>span {
    -webkit-animation-delay: 2.2s;
    animation-delay: 2.2s
}

.reveal.delay-8>span:nth-child(7), .reveal.delay-8>span:nth-child(7)>span {
    -webkit-animation-delay: 2.3s;
    animation-delay: 2.3s
}

.reveal.delay-8>span:nth-child(8), .reveal.delay-8>span:nth-child(8)>span {
    -webkit-animation-delay: 2.4s;
    animation-delay: 2.4s
}

.reveal.delay-8>span:nth-child(9), .reveal.delay-8>span:nth-child(9)>span {
    -webkit-animation-delay: 2.5s;
    animation-delay: 2.5s
}

.reveal.delay-8>span:nth-child(10), .reveal.delay-8>span:nth-child(10)>span {
    -webkit-animation-delay: 2.6s;
    animation-delay: 2.6s
}

@-webkit-keyframes zoom-out {
    0% {
        transform: translate3d(0, 2.1834061135vh, 1.0917030568vh) rotate(.0001deg)
    }

    to {
        transform: translateZ(0) rotate(.0001deg)
    }
}

@keyframes zoom-out {
    0% {
        transform: translate3d(0, 2.1834061135vh, 1.0917030568vh) rotate(.0001deg)
    }

    to {
        transform: translateZ(0) rotate(.0001deg)
    }
}

@-webkit-keyframes reveal {
    0% {
        transform: translateY(100%)
    }

    to {
        transform: translateY(0)
    }
}

@keyframes reveal {
    0% {
        transform: translateY(100%)
    }

    to {
        transform: translateY(0)
    }
}

.c-slider {
    --swiper-navigation-size: 32px
}

@media(max-width:768px) {
    .c-slider {
        --swiper-navigation-size: 16px
    }
}

.c-slider .swiper-button-prev {
    left: .75em
}

.c-slider .swiper-button-next {
    right: .75em
}

.c-supporter {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    margin-top: 2.1875em
}

@media(max-width:768px) {
    .c-supporter {
        margin-left: -1.875em;
        margin-right: -1.875em;
        margin-top: 1.3125em
    }
}

.c-supporter .swiper {
    padding-bottom: 3.125em;
    padding-left: 4.375em;
    padding-right: 4.375em
}

@media(min-width:1161px) {
    .c-supporter .swiper {
        padding-left: calc(50% - 31.875em);
        padding-right: calc(50% - 31.875em)
    }
}

@media(max-width:768px) {
    .c-supporter .swiper {
        padding-bottom: 0;
        padding-left: .625em;
        padding-right: .625em
    }
}

.c-supporter .swiper-wrapper * {
    box-sizing: border-box
}

.c-supporter .swiper-slide {
    padding-left: 1.25em;
    padding-right: 1.25em;
    width: 22.875em
}

@media(max-width:768px) {
    .c-supporter .swiper-slide {
        width: 19.125em
    }
}

.c-supporter .swiper-horizontal>.swiper-scrollbar {
    left: 5.625em;
    width: calc(100% - 11.25em)
}

@media(min-width:1161px) {
    .c-supporter .swiper-horizontal>.swiper-scrollbar {
        left: calc(50% - 30.625em);
        width: 61.25em
    }
}

@media(max-width:768px) {
    .c-supporter .swiper-horizontal>.swiper-scrollbar {
        bottom: 1.25em;
        left: 1.875em;
        width: calc(100% - 3.75em)
    }
}

.c-supporter__card {
    margin-top: 2.8125em
}

@media(max-width:768px) {
    .c-supporter__card {
        transform: scale(.8159509202);
        transform-origin: 0 0;
        width: 20.375em
    }
}

.c-supporter__card_top {
    align-items: center;
    border-top-left-radius: .875em;
    border-top-right-radius: .875em;
    display: flex;
    height: 11.6875em
}

.c-supporter__comment {
    background: url(img/company/comment.svg) no-repeat 50%;
    background-size: contain;
    font-size: .9375em;
    height: 6.6em;
    line-height: 1.3333333333;
    margin-left: 1.2666666667em;
    padding-right: 1em;
    padding-top: 1.4em;
    text-align: center;
    width: 8.0666666667em
}

.c-supporter__img {
    -ms-grid-row-align: end;
    align-self: end;
    margin-left: -1.125em;
    width: 12.25em
}

.c-supporter__img img {
    height: auto;
    margin-top: -2.8125em;
    width: 100%
}

.c-supporter__card_bottom {
    background: #fff;
    border-bottom-left-radius: .875em;
    border-bottom-right-radius: .875em;
    display: flex;
    flex-direction: column;
    height: 7.5em;
    padding: .9375em 1.125em 1.1875em;
    position: relative
}

.c-supporter__company {
    font-size: .75em;
    line-height: 1.4166666667;
    position: relative;
    z-index: 1
}

.c-supporter__company span {
    display: block
}

.c-supporter__company span:empty {
    display: none
}

.c-supporter__name {
    font-size: 1.6875em;
    line-height: 1.1111111111;
    margin-top: auto;
    position: relative;
    z-index: 1
}

[lang=ja] .c-supporter__name {
    letter-spacing: .05em
}

[lang=en-US] .c-supporter__name {
    margin-bottom: auto;
    margin-top: 0
}

.c-supporter__logo {
    bottom: 1.1875em;
    position: absolute;
    right: 1.1875em
}

.c-supporter__logo img {
    height: auto;
    width: 100%
}

.c-supporter__modal {
    margin-left: auto;
    margin-right: auto;
    max-width: 49.125em;
    opacity: 0;
    transform: translateY(-6.25em);
    transition: opacity .75s cubic-bezier(.23, 1, .32, 1), transform .75s cubic-bezier(.23, 1, .32, 1)
}

.is-open .c-supporter__modal {
    opacity: 1;
    transform: translateY(0)
}

.c-supporter__modal_top {
    background: #fff;
    border-top-left-radius: 1.375em;
    border-top-right-radius: 1.375em;
    display: flex;
    min-height: 23.625em;
    padding-left: 3.6875em;
    padding-top: 3.25em
}

@media(max-width:768px) {
    .c-supporter__modal_top {
        min-height: 0;
        padding: 1.5625em
    }
}

.c-supporter__modal_comment {
    padding-bottom: 3.25em;
    width: 26.625em
}

@media(max-width:768px) {
    .c-supporter__modal_comment {
        padding-bottom: 0;
        width: 100%
    }
}

.c-supporter__modal_comment p {
    font-size: 1.25em;
    font-weight: 500;
    line-height: 1.65
}

@media(max-width:768px) {
    .c-supporter__modal_comment p {
        font-size: .75em;
        line-height: 1.5833333333
    }
}

[lang=ja] .c-supporter__modal_comment p {
    font-feature-settings: "palt";
    letter-spacing: .04em
}

.c-supporter__modal_img {
    -ms-grid-row-align: end;
    align-self: end;
    margin-left: auto;
    width: 18.4375em
}

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

.c-supporter__modal_img img {
    height: auto;
    width: 100%
}

.c-supporter__modal_bottom {
    background: #fff;
    border-bottom-left-radius: 1.375em;
    border-bottom-right-radius: 1.375em;
    color: #fff;
    height: 6.25em;
    padding-right: 1.75em;
    padding-top: 1.1875em;
    position: relative;
    text-align: right
}

@media(max-width:768px) {
    .c-supporter__modal_bottom {
        height: auto;
        padding-bottom: 1.375em;
        padding-right: 1.5625em;
        padding-top: 1.4375em
    }
}

.c-supporter__modal_company br, .c-supporter__modal_name br {
    content: ""
}

.c-supporter__modal_company br:after, .c-supporter__modal_name br:after {
    content: " "
}

.c-supporter__modal_company {
    font-size: .875em
}

@media(max-width:768px) {
    .c-supporter__modal_company {
        font-size: .6875em;
        line-height: 1.7272727273
    }

    [lang=en-US] .c-supporter__modal_company {
        padding-left: 7.7272727273em
    }
}

.c-supporter__modal_company span {
    display: inline-block
}

.c-supporter__modal_name {
    font-size: 1.75em
}

@media(max-width:768px) {
    .c-supporter__modal_name {
        font-size: 1.5625em;
        padding-left: 3.4em
    }

    [lang=en-US] .c-supporter__modal_name {
        padding-left: 0
    }
}

[lang=ja] .c-supporter__modal_name {
    letter-spacing: .05em
}

.c-supporter__modal_close {
    color: #fff !important;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: .875em;
    left: 2.2857142857em;
    letter-spacing: .1em;
    line-height: 2.2857142857;
    padding-left: 3.7142857143em;
    position: absolute;
    top: 2.4285714286em;
    z-index: 1
}

@media(max-width:768px) {
    .c-supporter__modal_close {
        bottom: 1.8em;
        font-size: .625em;
        left: 1.7em;
        padding-left: 3em;
        top: auto
    }
}

.c-supporter__modal_close:after, .c-supporter__modal_close:before {
    background: #fff;
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: 2px;
    left: -.4285714286em;
    position: absolute;
    top: calc(50% - 1px);
    transform: rotate(45deg);
    width: 3.1428571429em
}

@media(max-width:768px) {
    .c-supporter__modal_close:after, .c-supporter__modal_close:before {
        left: -.3125em;
        width: 2.5em
    }
}

.c-supporter__modal_close:after {
    transform: rotate(135deg)
}

@font-face {
    font-family: swiper-icons;
    font-style: normal;
    font-weight: 400;
    src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA")
}

:root {
    --swiper-theme-color: #fff
}

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

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

.swiper-wrapper {
    box-sizing: content-box;
    display: flex;
    height: 100%;
    position: relative;
    transition-property: transform;
    width: 100%;
    z-index: 1
}

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

.swiper-pointer-events {
    touch-action: pan-y
}

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

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

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

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

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

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

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

.swiper-3d .swiper-cube-shadow, .swiper-3d .swiper-slide, .swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top, .swiper-3d .swiper-wrapper {
    transform-style: preserve-3d
}

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

.swiper-3d .swiper-slide-shadow {
    background: rgba(0, 0, 0, .15)
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.swiper-centered>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: center center
}

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

.swiper-virtual.swiper-css-mode .swiper-wrapper:after {
    content: "";
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper:after {
    height: 1px;
    width: var(--swiper-virtual-size)
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper:after {
    height: var(--swiper-virtual-size);
    width: 1px
}

:root {
    --swiper-navigation-size: 44px
}

.swiper-button-next, .swiper-button-prev {
    align-items: center;
    color: var(--swiper-navigation-color, var(--swiper-theme-color));
    cursor: pointer;
    display: flex;
    height: var(--swiper-navigation-size);
    justify-content: center;
    margin-top: calc(0px - var(--swiper-navigation-size)/2);
    position: absolute;
    top: 50%;
    width: calc(var(--swiper-navigation-size)/44*27);
    z-index: 10
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
    cursor: auto;
    opacity: .35;
    pointer-events: none
}

.swiper-button-next:after, .swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: var(--swiper-navigation-size);
    font-variant: normal;
    letter-spacing: 0;
    line-height: 1;
    text-transform: none !important;
    text-transform: none
}

.swiper-button-prev, .swiper-rtl .swiper-button-next {
    left: 10px;
    right: auto
}

.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
    content: "prev"
}

.swiper-button-next, .swiper-rtl .swiper-button-prev {
    left: auto;
    right: 10px
}

.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
    content: "next"
}

.swiper-button-lock {
    display: none
}

:root {
    --swiper-pagination-color: var(--swiper-theme-color);
    --swiper-pagination-bullet-size: 8px;
    --swiper-pagination-bullet-width: 8px;
    --swiper-pagination-bullet-height: 8px;
    --swiper-pagination-bullet-inactive-color: var(--swiper-theme-color);
    --swiper-pagination-bullet-inactive-opacity: 0.2;
    --swiper-pagination-bullet-opacity: 1;
    --swiper-pagination-bullet-horizontal-gap: 4px;
    --swiper-pagination-bullet-vertical-gap: 6px
}

.swiper-pagination {
    position: absolute;
    text-align: center;
    transform: translateZ(0);
    transition: opacity .3s;
    z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0
}

.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: 10px;
    left: 0;
    width: 100%
}

.swiper-pagination-bullets-dynamic {
    font-size: 0;
    overflow: hidden
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    position: relative;
    transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active, .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(.33)
}

.swiper-pagination-bullet {
    background: var(--swiper-pagination-bullet-inactive-color, #000);
    border-radius: 50%;
    display: inline-block;
    height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
    opacity: var(--swiper-pagination-bullet-inactive-opacity, .2);
    width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px))
}

button.swiper-pagination-bullet {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    box-shadow: none;
    margin: 0;
    padding: 0
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet:only-child {
    display: none !important
}

.swiper-pagination-bullet-active {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    opacity: var(--swiper-pagination-bullet-opacity, 1)
}

.swiper-pagination-vertical.swiper-pagination-bullets, .swiper-vertical>.swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    transform: translate3d(0, -50%, 0)
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
    display: block;
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: transform .2s, top .2s
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px)
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform .2s, left .2s
}

.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform .2s, right .2s
}

.swiper-pagination-progressbar {
    background: rgba(0, 0, 0, .25);
    position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transform: scale(0);
    transform-origin: left top;
    width: 100%
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top
}

.swiper-horizontal>.swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite, .swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    height: 4px;
    left: 0;
    top: 0;
    width: 100%
}

.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical, .swiper-vertical>.swiper-pagination-progressbar {
    height: 100%;
    left: 0;
    top: 0;
    width: 4px
}

.swiper-pagination-lock {
    display: none
}

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

.swiper-horizontal>.swiper-scrollbar {
    bottom: 3px;
    height: 5px;
    left: 1%;
    position: absolute;
    width: 98%;
    z-index: 50
}

.swiper-vertical>.swiper-scrollbar {
    height: 98%;
    position: absolute;
    right: 3px;
    top: 1%;
    width: 5px;
    z-index: 50
}

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

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

.swiper-scrollbar-lock {
    display: none
}

.swiper-zoom-container {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;
    text-align: center;
    width: 100%
}

.swiper-zoom-container>canvas, .swiper-zoom-container>img, .swiper-zoom-container>svg {
    max-height: 100%;
    max-width: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

.swiper-slide-zoomed {
    cursor: move
}

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

.swiper-slide-visible .swiper-lazy-preloader {
    -webkit-animation: swiper-preloader-spin 1s linear infinite;
    animation: swiper-preloader-spin 1s linear infinite
}

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

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

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

    to {
        transform: rotate(1turn)
    }
}

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

    to {
        transform: rotate(1turn)
    }
}

.swiper .swiper-notification {
    left: 0;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    z-index: -1000
}

.swiper-free-mode>.swiper-wrapper {
    margin: 0 auto;
    transition-timing-function: ease-out
}

.swiper-grid>.swiper-wrapper {
    flex-wrap: wrap
}

.swiper-grid-column>.swiper-wrapper {
    flex-direction: column;
    flex-wrap: wrap
}

.swiper-fade.swiper-free-mode .swiper-slide {
    transition-timing-function: ease-out
}

.swiper-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}

.swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-fade .swiper-slide-active, .swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-cube {
    overflow: visible
}

.swiper-cube .swiper-slide {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    height: 100%;
    pointer-events: none;
    transform-origin: 0 0;
    visibility: hidden;
    width: 100%;
    z-index: 1
}

.swiper-cube .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-cube.swiper-rtl .swiper-slide {
    transform-origin: 100% 0
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-next, .swiper-cube .swiper-slide-next+.swiper-slide, .swiper-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible
}

.swiper-cube .swiper-slide-shadow-bottom, .swiper-cube .swiper-slide-shadow-left, .swiper-cube .swiper-slide-shadow-right, .swiper-cube .swiper-slide-shadow-top {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 0
}

.swiper-cube .swiper-cube-shadow {
    bottom: 0;
    height: 100%;
    left: 0;
    opacity: .6;
    position: absolute;
    width: 100%;
    z-index: 0
}

.swiper-cube .swiper-cube-shadow:before {
    background: #000;
    bottom: 0;
    content: "";
    filter: blur(50px);
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    translateZ(0);
    will-change: filter;
}

.swiper-flip {
    overflow: visible
}

.swiper-flip .swiper-slide {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    pointer-events: none;
    z-index: 1
}

.swiper-flip .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-flip .swiper-slide-active, .swiper-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-flip .swiper-slide-shadow-bottom, .swiper-flip .swiper-slide-shadow-left, .swiper-flip .swiper-slide-shadow-right, .swiper-flip .swiper-slide-shadow-top {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 0
}

.swiper-creative .swiper-slide {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
    transition-property: transform, opacity, height
}

.swiper-cards {
    overflow: visible
}

.swiper-cards .swiper-slide {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
    transform-origin: center bottom
}

.c-thumbnail__link {
    display: flex;
    flex-wrap: wrap
}

body:not(.is-touch) .c-thumbnail__link:hover .c-thumbnail__title {
    color: #7f7f7f
}

body:not(.is-touch) .c-thumbnail__link:hover .c-thumbnail__img img {
    transform: scale(1.05)
}

.c-thumbnail__img {
    overflow: hidden;
    padding-top: 68.3333333333%;
    position: relative;
    width: 100%
}

@media(max-width:768px) {
    .c-thumbnail__img {
        padding-top: 54.5454545455%
    }
}

.c-thumbnail__img img {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 0;
    transition: transform .3s cubic-bezier(.23, 1, .32, 1);
    width: 100%
}

.c-thumbnail__date {
    align-items: center;
    display: flex;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: .8125em;
    justify-content: space-between;
    margin-top: .7692307692em;
    width: 10.0769230769em
}

@media(max-width:768px) {
    .c-thumbnail__date {
        margin-top: .6153846154em;
        width: 10.4615384615em
    }
}

.c-thumbnail__date:after {
    background: url(img/logo_color.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    font-size: 1.2307692308em;
    height: 1.875em;
    width: 3.875em
}

@media(max-width:768px) {
    .c-thumbnail__date:after {
        height: 1.75em;
        width: 3.625em
    }
}

.c-thumbnail__category {
    align-items: center;
    display: flex;
    justify-content: flex-end;
    margin-top: .625em;
    width: calc(100% - 8.1875em)
}

@media(max-width:768px) {
    .c-thumbnail__category {
        margin-top: .8em;
        width: calc(100% - 8.5em)
    }
}

.c-thumbnail__category span {
    align-items: center;
    border-radius: 1em;
    border-style: solid;
    border-width: 1px;
    display: flex;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: .6875em;
    font-size: .75em;
    font-weight: 700;
    height: 2em;
    justify-content: center;
    margin-left: .4166666667em;
    transform: scale(1);
    width: 7em
}

@media(max-width:768px) {
    .c-thumbnail__category span {
        transform: scale(.85);
        transform-origin: 0 0;
        transform-origin: 100% 0
    }
}

.c-thumbnail__title {
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    display: -webkit-box;
    font-size: .9375em;
    font-weight: 900;
    line-height: 1.5333333333;
    margin-top: .4375em;
    overflow: hidden;
    transition: color .3s ease;
    width: 100%
}

@media(max-width:768px) {
    .c-thumbnail__title {
        font-size: .75em;
        line-height: 1.5833333333
    }
}

[lang=ja] .c-thumbnail__title {
    font-feature-settings: "palt";
    letter-spacing: .09em
}

.c-ulineLink {
    align-items: center;
    display: flex;
    margin-top: 2.5em
}

@media(max-width:768px) {
    .c-ulineLink {
        margin-top: 1.3125em
    }
}

.c-ulineLink:after {
    background: #fff;
    background-repeat: no-repeat;
    background-size: contain;
    bottom: 0;
    content: " ";
    display: block;
    height: 1px;
    left: 0;
    position: absolute;
    width: 100%
}

.color-inverse .c-ulineLink:after {
    background-color: #000
}

body:not(.is-touch) .c-ulineLink:hover:after {
    -webkit-animation: scaleX-out-in .5s cubic-bezier(.86, 0, .07, 1) 0s 1;
    animation: scaleX-out-in .5s cubic-bezier(.86, 0, .07, 1) 0s 1
}

body:not(.is-touch) .c-ulineLink:hover .c-ulineLink__arrow:before {
    opacity: 1;
    transform: translateX(0)
}

body:not(.is-touch) .c-ulineLink:hover .c-ulineLink__arrow:after {
    opacity: 0;
    transform: translateX(150%)
}

.c-ulineLink__arrow {
    display: inline-block;
    height: .75em;
    margin-bottom: .3125em;
    margin-left: 1em;
    overflow: hidden;
    position: relative;
    width: 1.0625em
}

@media(max-width:768px) {
    .c-ulineLink__arrow {
        margin-left: .3125em;
        width: .75em
    }
}

.c-ulineLink__arrow:after, .c-ulineLink__arrow:before {
    background: url(img/arrow_grd.svg);
    height: .625em;
    left: calc(50% - .4375em);
    position: absolute;
    top: calc(50% - .3125em);
    transition: opacity .5s cubic-bezier(.86, 0, .07, 1), transform .5s cubic-bezier(.86, 0, .07, 1);
    width: .875em
}

@media(max-width:768px) {
    .c-ulineLink__arrow:after, .c-ulineLink__arrow:before {
        height: .5em;
        left: calc(50% - .34375em);
        top: calc(50% - .25em);
        width: .6875em
    }
}

.c-ulineLink__arrow:before {
    opacity: 0;
    transform: translateX(-150%)
}

.c-ulineLink__arrow:after, .c-ulineLink__arrow:before {
    background: url(img/arrow_wline_wht.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: .75em;
    width: 1.0625em
}

@media(max-width:768px) {
    .c-ulineLink__arrow:after, .c-ulineLink__arrow:before {
        height: .5em;
        width: .75em
    }
}

.color-inverse .c-ulineLink__arrow:after, .color-inverse .c-ulineLink__arrow:before {
    background-image: url(img/arrow_wline_blk.svg)
}

.c-ulineLink__text {
    font-size: 1.125em;
    font-weight: 900;
    padding-bottom: .5em;
    position: relative
}

[lang=ja] .c-ulineLink__text {
    letter-spacing: .1em
}

@media(max-width:768px) {
    .c-ulineLink__text {
        font-size: .75em
    }
}

.l-footer {
    background: #000;
    bottom: 0;
    height: 39.5em;
    left: 0;
    position: absolute;
    width: 100%
}

@media(orientation:portrait) {
    .l-footer {
        height: 35em
    }
}

@media(orientation:portrait)and (min-aspect-ratio:1/2) {
    .l-footer {
        height: 32.1125em;
    }
}

.l-header {
    font-size: 16px;
    left: 0;
    position: fixed;
    top: 0;
    transition: .5s cubic-bezier(.23, 1, .32, 1);
    width: 100%;
    z-index: 100
}

@media(max-width:768px) {
    body:not(.is-menu-open) .l-header.is-hidden {
        opacity: 0;
        pointer-events: none;
        transform: translateY(-40px)
    }
}

.l-header__logo {
    position: absolute;
    right: 3.375em;
    top: 2.25em;
    width: 7.6875em
}

@media(max-width:768px) {
    .l-header__logo {
        right: 5.8974358974vw;
        top: .625em;
        width: 5.728125em
    }
}

.l-header__logo a {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    display: block;
    transition: transform .3s cubic-bezier(.23, 1, .32, 1)
}

.color-inverse .l-header__logo a {
    background: url(img/logo_blk.svg) no-repeat;
    background-size: contain
}

body:not(.is-touch) .l-header__logo a:hover {
    transform: scale(.95)
}

.color-inverse .l-header__logo_img {
    visibility: hidden
}

.l-header__menu_btn, .l-header__menu_close {
    left: 3.375em;
    position: absolute;
    top: 2.4375em;
    z-index: 1
}

@media(max-width:768px) {
    .l-header__menu_btn, .l-header__menu_close {
        left: 9.4871794872vw;
        top: 1.3125em
    }
}

.l-header__menu_btn a, .l-header__menu_close a {
    color: transparent;
    display: block;
    height: 37px;
    overflow: hidden;
    width: 37px
}

@media(max-width:768px) {
    .l-header__menu_btn a, .l-header__menu_close a {
        height: 27px;
        width: 27px
    }
}

.l-header__menu_btn a:hover span:after, .l-header__menu_close a:hover span:after {
    width: 100%
}

.l-header__menu_btn span, .l-header__menu_close span {
    background: #fff;
    display: block;
    height: 3px;
    left: 0;
    position: absolute;
    top: calc(50% - 1.5px);
    width: 100%
}

.l-header__menu_btn span:after, .l-header__menu_btn span:before, .l-header__menu_close span:after, .l-header__menu_close span:before {
    background: #fff;
    content: " ";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: -13px;
    width: 100%
}

.l-header__menu_btn span:after, .l-header__menu_close span:after {
    top: 13px;
    transition: width .2s cubic-bezier(.23, 1, .32, 1);
    width: 20px
}

@media(max-width:768px) {
    .l-header__menu_btn span:before, .l-header__menu_close span:before {
        top: -11px
    }

    .l-header__menu_btn span:after, .l-header__menu_close span:after {
        top: 11px;
        width: 15px
    }
}

.color-inverse .l-header__menu_btn span, .color-inverse .l-header__menu_btn span:after, .color-inverse .l-header__menu_btn span:before, .color-inverse .l-header__menu_close span, .color-inverse .l-header__menu_close span:after, .color-inverse .l-header__menu_close span:before {
    background: #000
}

.l-header__menu {
    background: #000;
    bottom: 0;
    color: #fff;
    height: 75%;
    left: 0;
    opacity: 0;
    overflow: scroll;
    position: fixed;
    transition: opacity .75s cubic-bezier(.25, .46, .45, .94), visibility 0s linear .75s;
    transition: opacity .5s cubic-bezier(.215, .61, .355, 1), height 0s cubic-bezier(.215, .61, .355, 1) .5s, visibility 0s linear .5s;
    visibility: hidden;
    width: 100%;
    z-index: 11
}

.is-menu-open .l-header__menu {
    height: 100%;
    opacity: 1;
    transition: opacity 1.5s cubic-bezier(.25, .46, .45, .94), visibility 0s linear;
    transition: opacity 1s cubic-bezier(.215, .61, .355, 1), height 1s cubic-bezier(.215, .61, .355, 1), visibility 0s linear;
    visibility: visible
}

@media(min-width:769px)and (orientation:landscape) {
    .l-header__menu {
        font-size: 1.7467248908vh
    }
}

@media(min-width:769px)and (orientation:portrait) {
    .l-header__menu {
        font-size: 3.125vw
    }
}

.l-header__menu_close {
    bottom: calc(54.8125em - 37px);
    top: auto
}

@media(orientation:portrait) {
    .l-header__menu_close {
        bottom: auto;
        position: fixed
    }
}

@media(min-width:769px)and (orientation:portrait) {
    .l-header__menu_close {
        font-size: 16px;
        top: 2.4375em
    }
}

@media(max-width:768px)and (orientation:portrait) {
    .l-header__menu_close {
        top: 1.3125em
    }
}

.l-header__menu_close span {
    background: transparent
}

.l-header__menu_close span:after, .l-header__menu_close span:before {
    background: #fff !important;
    left: -12%;
    top: 0;
    transform: rotate(45deg);
    width: 124% !important
}

.l-header__menu_close span:after {
    transform: rotate(-45deg)
}

.l-header__lang {
    position: absolute;
    right: 12.125em;
    top: 3.1875em
}

@media(max-width:768px) {
    .l-header__lang {
        right: calc(6.4375em + 5.89744vw);
        top: 1.375em
    }
}

.l-header__lang .current {
    display: none
}

.l-header__lang .bogo-language-switcher li {
    margin-top: 0
}

.l-header__lang .bogo-language-name {
    font-size: 1em;
    width: 7.5em
}

@media(max-width:768px) {
    .l-header__lang .bogo-language-name {
        font-size: .625em;
        line-height: calc(2.3em - 4px);
        width: 7.4em
    }
}

.color-inverse .l-header__lang .bogo-language-name {
    border-color: #000
}

.color-inverse .l-header__lang .bogo-language-name a:before {
    color: #fff
}

.color-inverse .l-header__lang .bogo-language-name a:after {
    color: #000
}

body:not(.is-touch).color-inverse .l-header__lang .bogo-language-name:hover {
    background-color: #000
}

body.p-top {
    height: 100%
}

.l-wrapper, body.is-modal-open {
    overflow: hidden
}

.l-wrapper {
    min-height: 100%;
    position: relative
}

.p-top .l-wrapper {
    height: 100%
}

.l-main {
    padding-bottom: 39.5em;
    padding-top: 11.875em
}

@media(orientation:portrait) {
    .l-main {
        padding-bottom: 35em
    }
}

@media(orientation:portrait)and (min-aspect-ratio:1/2) {
    .l-main {
        padding-bottom: 30.3125em
    }
}

@media(max-width:768px) {
    .l-main {
        padding-top: 6.125em
    }
}

.p-top .l-main {
    height: 100%;
    padding-bottom: 0;
    padding-top: 0
}

.error404 .l-main, .p-recruit .l-main {
    padding-top: 0
}

.p-thanks .l-main {
    padding-top: 4.1875em
}

@media(max-width:768px) {
    .p-thanks .l-main {
        padding-top: 7.3125em
    }
}

.l-container {
    margin-left: auto;
    margin-right: auto;
    max-width: 72.5em;
    padding-left: 5.625em;
    padding-right: 5.625em
}

@media(max-width:768px) {
    .l-container {
        padding-left: 1.875em;
        padding-right: 1.875em
    }
}

.p-404 {
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: contain;
    display: flex;
    flex-direction: column;
    height: 45.3125em;
    justify-content: center
}

@media(max-width:768px) {
    .p-404 {
        background-size: cover;
        height: 50.9375em;
        justify-content: flex-start;
        padding-top: 7.75em
    }
}

.p-404.img1 {
    background-color: #76b8ff
}

.p-404.img2 {
    background-color: #ff837f
}

.p-404.img3 {
    background-color: #b3b3b3
}

.p-404.img4 {
    background-color: #9adaaa
}

.p-404.img5 {
    background-color: #ffba6d
}

.p-404.img6 {
    background-color: #9adbff
}

.p-404.img1 {
    background-image: url(img/404/img_1.jpg)
}

@media(max-width:768px) {
    .p-404.img1 {
        background-image: url(img/404/img_1_sp.jpg)
    }
}

.p-404.img2 {
    background-image: url(img/404/img_2.jpg)
}

@media(max-width:768px) {
    .p-404.img2 {
        background-image: url(img/404/img_2_sp.jpg)
    }
}

.p-404.img3 {
    background-image: url(img/404/img_3.jpg)
}

@media(max-width:768px) {
    .p-404.img3 {
        background-image: url(img/404/img_3_sp.jpg)
    }
}

.p-404.img4 {
    background-image: url(img/404/img_4.jpg)
}

@media(max-width:768px) {
    .p-404.img4 {
        background-image: url(img/404/img_4_sp.jpg)
    }
}

.p-404.img5 {
    background-image: url(img/404/img_5.jpg)
}

@media(max-width:768px) {
    .p-404.img5 {
        background-image: url(img/404/img_5_sp.jpg)
    }
}

.p-404.img6 {
    background-image: url(img/404/img_6.jpg)
}

@media(max-width:768px) {
    .p-404.img6 {
        background-image: url(img/404/img_6_sp.jpg)
    }
}

.p-404>div {
    width: 100%
}

.p-404__title {
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 2.625em;
    line-height: 1;
    margin-top: 1.2857142857em;
    padding-left: 4.3095238095em;
    position: relative
}

@media(max-width:768px) {
    .p-404__title {
        font-size: 2.125em;
        margin-top: 0;
        padding-left: 0
    }
}

.p-404__title span {
    font-size: 2.1428571429em;
    left: -.0222222222em;
    letter-spacing: .03em;
    position: absolute;
    top: -.1em
}

@media(max-width:768px) {
    .p-404__title span {
        display: block;
        font-size: 2.0588235294em;
        position: static
    }
}

.p-404__subtitle {
    font-size: 1.25em;
    font-weight: 900;
    margin-top: .15em;
    padding-left: 9.05em
}

@media(max-width:768px) {
    .p-404__subtitle {
        font-size: 1em;
        margin-top: .1875em;
        padding-left: 0
    }
}

[lang=ja] .p-404__subtitle {
    letter-spacing: .09em
}

.p-404__message {
    font-size: .8125em;
    line-height: 2.1538461538;
    margin-top: 1.0769230769em
}

@media(max-width:768px) {
    .p-404__message {
        font-size: .75em;
        line-height: 1.8333333333;
        margin-top: 1.75em
    }
}

[lang=ja] .p-404__message {
    letter-spacing: .04em
}

.p-404__back {
    font-size: .875em;
    margin-bottom: 0;
    margin-top: 1.9285714286em;
    text-align: left
}

@media(max-width:768px) {
    .p-404__back {
        margin-top: 2em
    }
}

.p-404__back .arrow {
    background-color: #fff
}

.p-archive__title {
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 2.5em
}

@media(max-width:768px) {
    .p-archive__title {
        font-size: 2em
    }
}

.p-archive__nav {
    display: flex;
    flex-wrap: wrap;
    margin-top: 1.5em
}

@media(max-width:768px) {
    .p-archive__nav {
        justify-content: space-between;
        margin-top: .1875em
    }
}

.p-archive__nav_item {
    align-items: baseline;
    display: flex;
    margin-right: 2.875em
}

@media(max-width:768px) {
    .p-archive__nav_item {
        margin-right: 0
    }
}

.p-archive__nav_label {
    font-size: .8125em;
    letter-spacing: .08em;
    margin-right: 1.2307692308em
}

@media(max-width:768px) {
    .p-archive__nav_label {
        font-size: .625em;
        letter-spacing: .05em;
        margin-right: .8em
    }
}

.p-archive__articles {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 7.125em;
    margin-left: -2.5em;
    margin-top: .375em
}

@media(max-width:768px) {
    .p-archive__articles {
        margin-top: 0;
        row-gap: 2.625em
    }
}

.p-archive__articles>div {
    margin-left: 2.5em;
    margin-top: 3.75em;
    width: calc(33.3333% - 2.5em)
}

@media(max-width:939px) {
    .p-archive__articles>div {
        margin-top: 2.625em;
        width: calc(50% - 2.5em)
    }
}

@media(max-width:768px) {
    .p-archive__articles>div {
        width: calc(100% - 2.5em)
    }
}

.p-business__domain {
    margin-top: 8.125em
}

@media(max-width:768px) {
    .p-business__domain {
        margin-top: 4em
    }
}

.p-business__domain_title {
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 2.5em
}

@media(max-width:768px) {
    .p-business__domain_title {
        font-size: 2em
    }
}

.p-business__domain_text {
    font-size: 1em;
    font-weight: 900;
    line-height: 2.1875;
    margin-top: .8125em;
    position: relative;
    z-index: 1
}

@media(max-width:768px) {
    .p-business__domain_text {
        font-size: .75em;
        line-height: 2;
        margin-top: .3125em
    }
}

[lang=ja] .p-business__domain_text {
    letter-spacing: .08em
}

.p-business__domain_map {
    margin-left: auto;
    margin-right: auto;
    margin-top: 9.1875em;
    padding-top: 99.875em;
    position: relative;
    transform-origin: 0 0;
    width: 80.625em
}

@media(max-width:768px) {
    .p-business__domain_map {
        margin-left: -5.6875em;
        margin-top: -2.5625em;
        padding-top: 51.125em;
        width: 51.125em
    }
}

.p-business__domain_map:before {
    background: url(img/business/domain.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: 99.875em;
    left: -9.625em;
    position: absolute;
    top: 0;
    width: 99.875em;
    z-index: -1
}

@media(max-width:768px) {
    .p-business__domain_map:before {
        background-image: url(img/business/domain_sp.svg);
        height: 100%;
        left: 0;
        width: 100%
    }
}

.p-business__domain_point {
    -webkit-animation: zoom-in-out 5s cubic-bezier(.445, .05, .55, .95) 0s infinite;
    animation: zoom-in-out 5s cubic-bezier(.445, .05, .55, .95) 0s infinite;
    background-color: #000;
    background-position: top;
    background-repeat: no-repeat;
    background-size: contain;
    border-radius: 50%;
    color: #fff;
    height: 29.375em;
    overflow: hidden;
    padding-top: 14.75em;
    position: absolute;
    text-align: center;
    width: 29.375em
}

@media(max-width:768px) {
    .p-business__domain_point {
        height: 11.25em;
        padding-top: 5.75em;
        width: 11.25em
    }
}

.p-business__domain_point.virtualip {
    background-image: url(img/business/virtualip.jpg);
    height: 37.3125em;
    left: 15.5813953488%;
    padding-top: 18.75em;
    top: -4.5056320401%;
    width: 37.3125em
}

@media(max-width:768px) {
    .p-business__domain_point.virtualip {
        height: 13.4375em;
        left: 13.125em;
        padding-top: 6.8125em;
        top: 5.125em;
        width: 13.4375em
    }
}

body:not(.is-touch) .p-business__domain_point.virtualip:hover {
    -webkit-animation: zoom-in-slight .3s cubic-bezier(.39, .575, .565, 1) 0s 1 forwards;
    animation: zoom-in-slight .3s cubic-bezier(.39, .575, .565, 1) 0s 1 forwards
}

.p-business__domain_point.metaverse {
    -webkit-animation-delay: .3s;
    animation-delay: .3s;
    background-image: url(img/business/metaverse.jpg);
    left: 12.4031007752%;
    padding-top: 11.375em;
    top: 58.9486858573%
}

@media(max-width:768px) {
    .p-business__domain_point.metaverse {
        left: 6.3125em;
        padding-top: 4.375em;
        top: 22em
    }
}

body:not(.is-touch) .p-business__domain_point.metaverse:hover {
    -webkit-animation: zoom-in-slight .3s cubic-bezier(.39, .575, .565, 1) 0s 1 forwards;
    animation: zoom-in-slight .3s cubic-bezier(.39, .575, .565, 1) 0s 1 forwards
}

.p-business__domain_point.esports {
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
    background-image: url(img/business/esports.jpg);
    left: 51.5503875969%;
    top: 69.6495619524%
}

@media(max-width:768px) {
    .p-business__domain_point.esports {
        left: 14.375em;
        top: 41.5625em
    }
}

.p-business__domain_point h3 {
    font-size: 1em
}

.p-business__domain_point .en {
    display: block;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 3.3125em;
    font-weight: 900;
    letter-spacing: .03em;
    line-height: 1
}

@media(max-width:768px) {
    .p-business__domain_point .en {
        font-size: 1.4375em
    }
}

.p-business__domain_point .ja {
    display: block;
    font-size: 1em;
    letter-spacing: .04em;
    margin-top: .75em
}

@media(max-width:768px) {
    .p-business__domain_point .ja {
        font-size: .625em;
        margin-top: .3em;
        transform: scale(.8)
    }
}

.p-business__domain_point p {
    font-size: .875em;
    line-height: 1.9285714286;
    margin-top: 1.2857142857em
}

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

[lang=ja] .p-business__domain_point p {
    letter-spacing: .04em
}

.p-business__domain_point a {
    border-radius: 50%;
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.p-business__domain_point a:after {
    background: url(img/arrow_wht.svg);
    background-repeat: no-repeat;
    background-size: contain;
    bottom: 2.875em;
    content: " ";
    display: block;
    height: 1.75em;
    left: calc(50% - 1.125em);
    position: absolute;
    width: 2.5625em
}

@media(max-width:768px) {
    .p-business__domain_point a:after {
        bottom: 13%;
        height: .875em;
        left: calc(50% - .6875em);
        width: 1.3125em
    }
}

.p-business__domain_point.virtualip .en {
    font-size: 5em
}

@media(max-width:768px) {
    .p-business__domain_point.virtualip .en {
        font-size: 1.875em
    }
}

.p-business__domain_point.virtualip .ja {
    font-size: 1.125em
}

@media(max-width:768px) {
    .p-business__domain_point.virtualip .ja {
        font-size: .625em;
        margin-top: .5em;
        transform: scale(1)
    }
}

.p-business__domain_point.virtualip p {
    font-size: 1em
}

[lang=en-US] .p-business__domain_point.virtualip p {
    margin-top: 2.25em
}

@media(min-width:769px) {
    [lang=ja] .p-business__domain_point.metaverse a:after {
        bottom: 1.8125em
    }
}

.p-business__domain_more {
    -webkit-animation: zoom-in-out 5s cubic-bezier(.445, .05, .55, .95) 0s infinite;
    animation: zoom-in-out 5s cubic-bezier(.445, .05, .55, .95) 0s infinite;
    height: 8.125em;
    left: 22.6356589147%;
    position: absolute;
    top: 42.6157697121%;
    width: 8.125em
}

@media(max-width:768px) {
    .p-business__domain_more {
        height: 4.8125em;
        left: 9.9375em;
        top: 15.3125em;
        width: 4.8125em
    }
}

.p-business__domain_more span {
    align-items: center;
    background-color: #bec6d0;
    border-radius: 50%;
    display: flex;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: .9375em;
    height: 100%;
    justify-content: center;
    transform: translate(-50%, -50%);
    width: 100%
}

@media(max-width:768px) {
    .p-business__domain_more span {
        font-size: .75em
    }
}

.p-business__domain_more.p1 {
    -webkit-animation-delay: .7s;
    animation-delay: .7s
}

.p-business__domain_more.p2 {
    -webkit-animation-delay: 1.4s;
    animation-delay: 1.4s;
    left: 75.8139534884%;
    top: 53.7546933667%
}

@media(max-width:768px) {
    .p-business__domain_more.p2 {
        left: 18.5em;
        top: 35.125em
    }
}

.p-business__domain_more.p3 {
    -webkit-animation-delay: 2.1s;
    animation-delay: 2.1s;
    left: 58.8372093023%;
    top: 35.1689612015%
}

@media(max-width:768px) {
    .p-business__domain_more.p3 {
        display: none
    }
}

.p-business__domain_more.p3 span {
    transform: translate(-50%, -50%) scale(.8076923077)
}

.p-business__domain_more.p4 {
    -webkit-animation-delay: 2.8s;
    animation-delay: 2.8s;
    left: 71.007751938%;
    top: 38.6107634543%
}

@media(max-width:768px) {
    .p-business__domain_more.p4 {
        display: none
    }
}

.p-business__domain_more.p4 span {
    transform: translate(-50%, -50%) scale(.6692307692)
}

.p-business__future {
    margin-bottom: 6.25em;
    margin-top: 9em
}

@media(max-width:768px) {
    .p-business__future {
        margin-bottom: 3.875em;
        margin-top: 6em
    }
}

.p-business__future p {
    font-size: 1.125em;
    font-weight: 900;
    line-height: 2.5;
    margin-top: 2.5em
}

@media(max-width:768px) {
    .p-business__future p {
        font-size: .75em;
        line-height: 1.9166666667;
        margin-top: 1.9166666667em
    }
}

[lang=ja] .p-business__future p {
    letter-spacing: .08em
}

.p-business__future strong {
    display: block;
    font-size: 3.2222222222em;
    font-weight: 900;
    line-height: 1.5517241379;
    margin-bottom: 1.4655172414em;
    margin-top: 1.6206896552em
}

@media(max-width:1080px) {
    .p-business__future strong {
        font-size: 3.1111111111em
    }
}

@media(max-width:768px) {
    .p-business__future strong {
        font-size: 2.3333333333em;
        line-height: 1.5714285714;
        margin-bottom: 2em;
        margin-top: 2.1071428571em
    }
}

[lang=ja] .p-business__future strong {
    letter-spacing: .07em
}

.p-business__future_title {
    background: url(img/business/future_bg.jpg) no-repeat 50%;
    background-size: cover;
    display: flex;
    flex-direction: column;
    height: 26.25em;
    justify-content: center
}

@media(max-width:768px) {
    .p-business__future_title {
        background-position: 20% 50%;
        height: 12.5em
    }
}

.p-business__future_title>div {
    width: 100%
}

.p-business__future_title h2 {
    color: #fff;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 2.4375em
}

@media(max-width:768px) {
    .p-business__future_title h2 {
        font-size: 2em;
        text-align: center
    }
}

.p-business__project {
    border-radius: 1em;
    display: flex;
    margin-bottom: 2.5em;
    overflow: hidden;
    position: relative
}

@media(max-width:1080px) {
    .p-business__project {
        display: block;
        margin-bottom: 1.625em
    }
}

.p-business__project>a {
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

@media(max-width:1080px) {
    .p-business__project>a {
        display: none
    }
}

.p-business__project>a:after {
    background: url(img/arrow_wht.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: 1.75em;
    position: absolute;
    right: 2.3125em;
    top: calc(50% - .875em);
    width: 2.5625em
}

@media(min-width:1081px) {
    body:not(.is-touch) .p-business__project.has-link:hover .p-business__project_content {
        background-color: #000;
        color: #fff
    }
}

.p-business__project_img {
    min-height: 14.375em;
    width: 20.625em
}

.p-business__project_img.is-sp {
    display: none
}

@media(max-width:1080px) {
    .p-business__project_img {
        min-height: 0;
        width: 100%
    }

    .p-business__project_img.is-sp {
        display: block
    }

    .p-business__project_img.is-pc {
        display: none
    }
}

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

@media(max-width:1080px) {
    .p-business__project_img img {
        height: auto
    }
}

.p-business__project_content {
    background: #fff;
    padding: 1.375em 1.875em;
    transition: background-color .3s ease, color .3s ease;
    width: calc(100% - 20.625em)
}

@media(max-width:1080px) {
    .p-business__project_content {
        padding: 1.0625em 1.25em 1.375em;
        width: 100%
    }
}

.p-business__project_title {
    font-size: .875em;
    font-weight: 900;
    line-height: 1.9285714286
}

@media(max-width:768px) {
    .p-business__project_title {
        font-size: .625em;
        line-height: 1.5
    }
}

.p-business__project_logo {
    margin-top: 1em
}

@media(max-width:768px) {
    .p-business__project_logo {
        margin-top: .5625em
    }
}

.p-business__project_logo img {
    width: auto
}

@media(max-width:768px) {
    .p-business__project_logo img {
        height: 3em
    }
}

.p-business__project_desc {
    font-size: .875em;
    font-weight: 900;
    line-height: 1.9285714286;
    margin-top: .9375em
}

@media(max-width:768px) {
    .p-business__project_desc {
        font-size: .8125em;
        line-height: 1.6153846154;
        margin-top: .4375em
    }
}

.p-business__project_link {
    display: none
}

@media(max-width:1080px) {
    .p-business__project_link {
        display: block;
        margin-top: .5em;
        text-align: right
    }

    .p-business__project_link a {
        align-items: center;
        display: inline-flex;
        font-size: .6875em;
        font-weight: 900
    }

    .p-business__project_link .arrow {
        background: #9ca7b5;
        border-radius: 50%;
        height: 2.5454545455em;
        margin-left: .7272727273em;
        position: relative;
        width: 2.5454545455em
    }

    .p-business__project_link .arrow:after {
        background: url(img/arrow_rec_wht.svg);
        background-repeat: no-repeat;
        background-size: contain;
        content: " ";
        display: block;
        height: .5454545455em;
        left: .9090909091em;
        position: absolute;
        top: 1em;
        width: .8181818182em
    }
}

.p-company__main_img {
    margin-top: 3.75em
}

@media(max-width:768px) {
    .p-company__main_img {
        height: 12.5em;
        margin-top: 1.5em
    }

    .p-company__main_img img {
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover
    }
}

.p-company__mission {
    margin-top: 0
}

@media(max-width:768px) {
    .p-company__mission {
        margin-top: .6875em
    }
}

.p-company__mission dd, .p-company__mission dt {
    margin-top: 6.25em
}

.p-company__mission dt {
    width: 12.75em
}

@media(max-width:768px) {
    .p-company__mission dt {
        margin-top: 2.9375em
    }
}

.p-company__mission dt span {
    display: block;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 2.1875em;
    font-weight: 700;
    line-height: 2.2285714286
}

@media(max-width:768px) {
    .p-company__mission dt span {
        font-size: .875em;
        line-height: 1.5
    }
}

.p-company__mission dd {
    display: flex;
    flex-direction: column;
    width: calc(100% - 12.75em)
}

@media(max-width:1080px) {
    .p-company__mission dd {
        margin-top: .9375em;
        width: 100%
    }
}

.p-company__mission dd>p {
    font-size: 1.125em;
    font-weight: 900;
    line-height: 2.5
}

@media(max-width:768px) {
    .p-company__mission dd>p {
        font-size: .8125em;
        line-height: 2.0769230769
    }
}

[lang=ja] .p-company__mission dd>p {
    font-feature-settings: "palt";
    letter-spacing: .125em
}

.p-company__mission strong {
    font-size: 2.5em;
    font-weight: 900;
    line-height: 2;
    margin-bottom: .3555555556em
}

@media(max-width:768px) {
    .p-company__mission strong {
        font-size: 2.1538461538em;
        line-height: 1.5714285714
    }
}

[lang=ja] .p-company__mission strong {
    font-feature-settings: "palt";
    letter-spacing: .05em
}

.p-company__copy {
    font-size: 1em;
    margin-bottom: 1.625em;
    margin-left: -.25em;
    margin-top: .6875em
}

@media(max-width:768px) {
    .p-company__copy {
        margin-bottom: .4375em;
        margin-left: 0;
        margin-top: .375em
    }
}

[lang=en-US] .p-company__copy {
    margin-top: -.375em
}

.p-company__copy strong {
    font-size: 8.75em;
    font-weight: 900;
    line-height: 1.1928571429;
    white-space: nowrap
}

@media(max-width:1080px) {
    .p-company__copy strong {
        font-size: 5em
    }
}

@media(max-width:768px) {
    .p-company__copy strong {
        font-size: 3.625em;
        line-height: 1.1896551724
    }
}

[lang=ja] .p-company__copy strong {
    color: transparent
}

[lang=ja] .p-company__copy strong .line1 {
    background: url(img/company/copy_1.svg) no-repeat;
    background-size: 3.4449392857em
}

@media(max-width:768px) {
    [lang=ja] .p-company__copy strong .line1 {
        background-size: 3.5026258621em
    }
}

[lang=ja] .p-company__copy strong .line2 {
    background: url(img/company/copy_2.svg) no-repeat;
    background-size: 5.34269em
}

@media(max-width:768px) {
    [lang=ja] .p-company__copy strong .line2 {
        background-size: 5.4045327586em
    }
}

[lang=en-US] .p-company__copy strong {
    font-size: 6.125em
}

@media(max-width:1080px) {
    [lang=en-US] .p-company__copy strong {
        font-size: 4.75em
    }
}

@media(max-width:768px) {
    [lang=en-US] .p-company__copy strong {
        font-size: 2.5em
    }
}

.p-company__team {
    margin-bottom: 6em;
    margin-top: 3.4375em
}

@media(max-width:768px) {
    .p-company__team {
        margin-bottom: 2.375em;
        margin-top: 1.0625em
    }
}

.p-company__team h3 {
    display: block;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 2.5em;
    line-height: 1.3
}

@media(max-width:768px) {
    .p-company__team h3 {
        font-size: 2em;
        line-height: 1.125
    }
}

.p-company__team_title {
    background: url(img/company/team_bg.jpg) no-repeat 50%;
    background-size: cover;
    height: 28.125em;
    padding-top: 17.4375em
}

@media(max-width:768px) {
    .p-company__team_title {
        background-image: url(img/company/team_bg_sp.jpg);
        height: 12.5em;
        padding-top: 6.25em
    }
}

.p-company__team_title h2 {
    color: #fff;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 3.75em
}

@media(max-width:768px) {
    .p-company__team_title h2 {
        font-size: 2em
    }
}

.p-company__members {
    margin-top: 6.875em
}

@media(max-width:768px) {
    .p-company__members {
        margin-top: 3.625em
    }
}

.p-company__supporters {
    background: #d6dce2;
    margin-top: 7.625em;
    padding-bottom: 7.625em;
    padding-top: 6.8125em
}

@media(max-width:768px) {
    .p-company__supporters {
        margin-top: 3.75em;
        padding-bottom: 2.9375em;
        padding-top: 3.25em
    }
}

.p-company__supporters h3 {
    margin-bottom: .425em
}

@media(max-width:768px) {
    .p-company__supporters h3+p {
        font-size: .8125em
    }
}

.p-company__info {
    display: flex;
    justify-content: space-between;
    margin-top: 6.625em
}

@media(max-width:1080px) {
    .p-company__info {
        display: block
    }
}

@media(max-width:768px) {
    .p-company__info {
        margin-top: 3.5em
    }
}

.p-company__info h3 {
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 2.5em;
    line-height: 1.3
}

@media(max-width:768px) {
    .p-company__info h3 {
        font-size: 2em;
        line-height: 1.125
    }
}

.p-company__info_left {
    display: flex;
    flex-direction: column;
    width: 28.3125em
}

@media(max-width:1080px) {
    .p-company__info_left {
        display: block;
        width: 100%
    }
}

.p-company__map {
    margin-bottom: 1.5625em;
    margin-top: auto;
    overflow: hidden;
    padding-top: 85.651214128%;
    position: relative
}

@media(max-width:1080px) {
    .p-company__map {
        margin-bottom: 0;
        margin-top: 2.375em
    }
}

.p-company__map iframe {
    filter: grayscale(100%);
    height: calc(100% + 18.75em);
    left: 0;
    position: absolute;
    top: -9.375em;
    width: 100%;
    translateZ(0);
    will-change: filter;
}

.p-company__map_canvas {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.p-company__info_right {
    width: 30.1875em
}

@media(max-width:1080px) {
    .p-company__info_right {
        width: 100%
    }
}

.p-company__info_detail {
    margin-top: -.875em
}

@media(max-width:1080px) {
    .p-company__info_detail {
        margin-top: 0
    }
}

.p-company__info_detail dd, .p-company__info_detail dt {
    border-top: 1px solid #000;
    font-size: .8125em;
    font-weight: 700;
    line-height: 1.6153846154;
    padding-bottom: 1.6923076923em;
    padding-top: 1.6923076923em
}

@media(max-width:768px) {
    .p-company__info_detail dd, .p-company__info_detail dt {
        font-size: .625em;
        line-height: 1.6;
        padding-bottom: 1.8em;
        padding-top: 1.8em
    }
}

.p-company__info_detail dd:first-of-type, .p-company__info_detail dt:first-of-type {
    border-top: none
}

[lang=ja] .p-company__info_detail dd, [lang=ja] .p-company__info_detail dt {
    font-feature-settings: "palt";
    letter-spacing: .1em
}

.p-company__info_detail dt {
    width: 8.3076923077em
}

@media(min-width:769px) {
    .p-company__info_detail dt br {
        display: none
    }
}

@media(max-width:768px) {
    .p-company__info_detail dt {
        width: 6.8em
    }
}

[lang=en-US] .p-company__info_detail dt {
    width: 8.4615384615em
}

@media(max-width:768px) {
    [lang=en-US] .p-company__info_detail dt {
        padding-right: .5em;
        width: 9em
    }
}

.p-company__info_detail dd {
    width: calc(100% - 8.30769em)
}

@media(max-width:768px) {
    .p-company__info_detail dd {
        width: calc(100% - 6.8em)
    }
}

[lang=en-US] .p-company__info_detail dd {
    width: calc(100% - 8.46154em)
}

@media(max-width:768px) {
    [lang=en-US] .p-company__info_detail dd {
        width: calc(100% - 9em)
    }
}

.p-page__main p {
    font-size: 1.125em;
    font-weight: 900;
    line-height: 2;
    margin-top: .9444444444em
}

@media(max-width:768px) {
    .p-page__main p {
        font-size: .75em;
        margin-top: .9166666667em
    }
}

[lang=ja] .p-page__main p {
    font-feature-settings: "palt";
    letter-spacing: .125em
}

.p-page__main strong {
    display: block;
    font-size: 3.2777777778em;
    font-weight: 900;
    line-height: 1.5517241379;
    margin-top: .593220339em
}

@media(max-width:1080px) {
    .p-page__main strong {
        font-size: 2.8333333333em
    }
}

@media(max-width:768px) {
    .p-page__main strong {
        font-size: 2.25em
    }
}

[lang=ja] .p-page__main strong {
    font-feature-settings: "palt";
    letter-spacing: .1em
}

.p-page__title {
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 2.5em
}

@media(max-width:768px) {
    .p-page__title {
        font-size: 2em
    }
}

.p-page__title_small {
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 1.625em;
    margin-top: .1923076923em
}

@media(max-width:768px) {
    .p-page__title_small {
        font-size: 1em;
        margin-top: 0
    }
}

.p-page__content {
    font-size: 1em;
    font-weight: 500;
    line-height: 1.6875;
    margin-bottom: 7.1875em;
    margin-top: 2.5em
}

@media(max-width:768px) {
    .p-page__content {
        font-size: .8125em;
        margin-bottom: 4.25em
    }
}

.p-page__content h2 {
    font-size: 1.625em;
    line-height: 1.4615384615;
    margin-top: 1.4615384615em
}

.p-page__content h3 {
    font-size: 1.1875em;
    line-height: 1.6315789474;
    margin-top: 2.6315789474em
}

.p-page__content h4 {
    font-size: 1em;
    line-height: 1.6875;
    margin-top: 1.6875em
}

.p-page__content ol, .p-page__content p, .p-page__content ul {
    margin-top: 1.6875em
}

.p-page__content ul>li:before {
    top: .625em
}

.p-page__content .indent {
    padding-left: 8.5em
}

@media(max-width:768px) {
    .p-page__content .indent {
        padding-left: 1.5em
    }

    .p-privacy .p-page__content {
        font-size: .75em;
        line-height: 1.7
    }
}

.p-privacy .p-page__content h3 {
    position: relative
}

.p-privacy .p-page__content h3:after {
    background: #000;
    background-repeat: no-repeat;
    background-size: contain;
    bottom: .7894736842em;
    content: " ";
    display: block;
    height: 1px;
    left: 0;
    position: absolute;
    width: 100%;
    z-index: -1
}

.p-privacy .p-page__content h3 span {
    background: #fff;
    display: inline;
    padding-right: .8em
}

.p-privacy .p-page__content ol>li {
    padding-left: 2.5em
}

.p-privacy .p-page__content ol>li:before {
    content: "("counter(item) ")"
}

.p-privacy .p-page__content ol>li>ol>li {
    padding-left: 1.875em
}

.p-privacy .p-page__content ol>li>ol>li:before {
    content: counter(item) "."
}

.p-recruit__main {
    background: url(img/recruit/main_bg.jpg) no-repeat;
    background-position: center 60%;
    background-size: cover;
    padding-bottom: 9.8125em;
    padding-top: 9.125em
}

@media(max-width:768px) {
    .p-recruit__main {
        padding-bottom: 3.3125em;
        padding-top: 5.4375em
    }
}

.p-recruit__title {
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 9.0625em;
    margin-left: -.0827586207em
}

@media(max-width:768px) {
    .p-recruit__title {
        font-size: 3.75em
    }
}

.p-recruit__title_text {
    font-size: 1.125em;
    font-weight: 900;
    line-height: 1.8333333333;
    margin-top: -.3888888889em
}

@media(max-width:768px) {
    .p-recruit__title_text {
        font-size: .75em;
        line-height: 2.0833333333;
        margin-top: .25em
    }
}

[lang=ja] .p-recruit__title_text {
    letter-spacing: .1em
}

.p-recruit__copy {
    margin-top: 4.75em
}

@media(max-width:768px) {
    .p-recruit__copy {
        margin-top: 3.125em
    }
}

.p-recruit__copy strong {
    font-size: 10em;
    font-weight: 900;
    line-height: 1.1875;
    white-space: nowrap
}

@media(max-width:1080px) {
    .p-recruit__copy strong {
        font-size: 6.5625em
    }
}

@media(max-width:768px) {
    .p-recruit__copy strong {
        font-size: 3.625em;
        line-height: 1.1896551724
    }
}

[lang=en-US] .p-recruit__copy strong {
    font-size: 6.125em
}

@media(max-width:1080px) {
    [lang=en-US] .p-recruit__copy strong {
        font-size: 4.1875em
    }
}

@media(max-width:768px) {
    [lang=en-US] .p-recruit__copy strong {
        font-size: 2.0625em
    }
}

[lang=ja] .p-recruit__copy strong {
    color: transparent
}

[lang=ja] .p-recruit__copy strong .line1 {
    background: url(img/recruit/copy_1.svg) no-repeat;
    background-size: 3.623375em
}

@media(max-width:768px) {
    [lang=ja] .p-recruit__copy strong .line1 {
        background-size: 3.6234172414em
    }
}

[lang=ja] .p-recruit__copy strong .line2 {
    background: url(img/recruit/copy_2.svg) no-repeat;
    background-size: 4.410875em
}

@media(max-width:768px) {
    [lang=ja] .p-recruit__copy strong .line2 {
        background-size: 4.4109310345em
    }
}

[lang=ja] .p-recruit__copy strong .line3 {
    background: url(img/recruit/copy_3.svg) no-repeat;
    background-size: 5.567375em
}

@media(max-width:768px) {
    [lang=ja] .p-recruit__copy strong .line3 {
        background-size: 5.5674172414em
    }
}

.p-recruit__mission {
    margin-top: 2.5625em
}

@media(max-width:768px) {
    .p-recruit__mission {
        margin-top: .625em
    }
}

.p-recruit__mission dd, .p-recruit__mission dt {
    margin-top: 4em
}

.p-recruit__mission dt {
    width: 9.5em
}

@media(max-width:768px) {
    .p-recruit__mission dt {
        margin-top: 1.75em
    }
}

.p-recruit__mission dt span {
    display: block;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 1.625em;
    font-weight: 700;
    line-height: 3.2307692308
}

@media(max-width:768px) {
    .p-recruit__mission dt span {
        font-size: .875em;
        line-height: 1.5
    }
}

.p-recruit__mission dd {
    display: flex;
    flex-direction: column;
    width: calc(100% - 9.5em)
}

@media(max-width:1080px) {
    .p-recruit__mission dd {
        margin-top: .25em;
        width: 100%
    }
}

.p-recruit__mission dd p {
    font-size: 3.25em;
    font-weight: 900;
    line-height: 1.6153846154;
    margin-bottom: .3076923077em
}

@media(max-width:1080px) {
    .p-recruit__mission dd p {
        font-size: 2.625em
    }
}

@media(max-width:768px) {
    .p-recruit__mission dd p {
        font-size: 1.4375em;
        line-height: 1.5652173913
    }
}

[lang=ja] .p-recruit__mission dd p {
    letter-spacing: .02em
}

.p-recruit__link {
    align-items: center;
    display: inline-flex;
    margin-top: 2.625em
}

@media(max-width:768px) {
    .p-recruit__link {
        margin-left: auto;
        margin-top: 1.375em
    }
}

.p-recruit__link .text {
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 1.5em;
    position: relative
}

@media(max-width:768px) {
    .p-recruit__link .text {
        font-size: .8125em
    }
}

[lang=ja] .p-recruit__link .text {
    letter-spacing: .05em
}

.p-recruit__link .text:after {
    background: #fff;
    background-repeat: no-repeat;
    background-size: contain;
    bottom: 0;
    content: " ";
    display: block;
    height: 1px;
    left: 0;
    position: absolute;
    transform: scaleX(0);
    transform-origin: 0 0;
    transition: transform .3s cubic-bezier(.23, 1, .32, 1);
    width: 100%
}

.p-recruit__link .arrow {
    background: #fff;
    border-radius: 50%;
    height: 3.875em;
    margin-left: 1.125em;
    position: relative;
    width: 3.875em
}

.p-recruit__link .arrow:after, .p-recruit__link .arrow:before {
    background: url(img/arrow_black.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: .625em;
    left: calc(50% - .4375em);
    position: absolute;
    top: calc(50% - .3125em);
    transition: opacity .5s cubic-bezier(.86, 0, .07, 1), transform .5s cubic-bezier(.86, 0, .07, 1);
    width: .875em
}

@media(max-width:768px) {
    .p-recruit__link .arrow:after, .p-recruit__link .arrow:before {
        height: .5em;
        left: calc(50% - .34375em);
        top: calc(50% - .25em);
        width: .6875em
    }
}

.p-recruit__link .arrow:before {
    opacity: 0;
    transform: translateX(-150%)
}

@media(max-width:768px) {
    .p-recruit__link .arrow {
        height: 2.0625em;
        margin-left: .6875em;
        width: 2.0625em
    }
}

body:not(.is-touch) .p-recruit__link:hover .text:after {
    transform: scaleX(1)
}

body:not(.is-touch) .p-recruit__link:hover .arrow:before {
    opacity: 1;
    transform: translateX(0)
}

body:not(.is-touch) .p-recruit__link:hover .arrow:after {
    opacity: 0;
    transform: translateX(150%)
}

.p-recruit__company, .p-recruit__job {
    color: #000;
    padding-bottom: 9em;
    padding-top: 6.5em
}

@media(max-width:768px) {
    .p-recruit__company, .p-recruit__job {
        padding-bottom: 4.4375em;
        padding-top: 3.875em
    }
}

.p-recruit__company h2, .p-recruit__job h2 {
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 2.5em;
    letter-spacing: -.01em
}

@media(max-width:768px) {
    .p-recruit__company h2, .p-recruit__job h2 {
        font-size: 2em;
        line-height: 1.125
    }
}

.p-recruit__company p, .p-recruit__job p {
    font-weight: 900;
    margin-top: .875em
}

@media(max-width:768px) {
    .p-recruit__company p, .p-recruit__job p {
        font-size: .75em;
        line-height: 2
    }
}

[lang=ja] .p-recruit__company p, [lang=ja] .p-recruit__job p {
    letter-spacing: .08em
}

.p-recruit__company {
    background: url(img/recruit/company_bg.jpg) no-repeat;
    background-size: cover
}

.p-recruit__slide {
    margin-top: 3.25em
}

@media(max-width:768px) {
    .p-recruit__slide {
        margin-top: 1.625em
    }
}

.p-recruit__slide iframe {
    width: 100%
}

.p-recruit__job {
    background: #fff
}

.p-recruit__job_list {
    margin-top: 3.75em
}

@media(max-width:768px) {
    .p-recruit__job_list {
        margin-top: 2.25em
    }
}

.p-recruit__job_list li {
    border-radius: .8125em;
    margin-top: 2.5em;
    overflow: hidden
}

@media(max-width:768px) {
    .p-recruit__job_list li {
        border-radius: .4375em;
        margin-top: 1.25em
    }
}

.p-recruit__job_list a {
    background: linear-gradient(90deg, #ce307d 3%, #cf802c 62%, #d09a78 84%);
    display: block;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 2.4375em;
    padding: .8974358974em 2.7692307692em .8974358974em 1.0769230769em;
    position: relative
}

@media(min-width:769px) {
    .p-recruit__job_list a br {
        display: none
    }
}

@media(max-width:768px) {
    .p-recruit__job_list a {
        font-size: 1.3125em;
        padding: 1.1904761905em 3.3333333333em 1.1904761905em .8571428571em
    }
}

.p-recruit__job_list a:before {
    background: #000;
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transform-origin: 100% 0;
    transition: all .3s cubic-bezier(.23, 1, .32, 1);
    width: 100%
}

body:not(.is-touch) .p-recruit__job_list a:hover:before {
    opacity: 0
}

body:not(.is-touch) .p-recruit__job_list a:hover .circle {
    background: #fff;
    transform: scale(.8360655738)
}

body:not(.is-touch) .p-recruit__job_list a:hover .circle:before {
    background-color: #d09a78
}

body:not(.is-touch) .p-recruit__job_list a:hover .arrow:before {
    opacity: 1
}

body:not(.is-touch) .p-recruit__job_list a:hover .arrow:after {
    opacity: 0
}

.p-recruit__job_list .text {
    position: relative;
    z-index: 1
}

.p-recruit__job_list .circle {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background: linear-gradient(38deg, #d7307d 10%, #d8842c 62%, #d9a378 84%);
    border-radius: 50%;
    font-size: .4102564103em;
    height: 3.8125em;
    position: absolute;
    right: 2.875em;
    top: calc(50% - 1.90625em);
    transition: all .3s cubic-bezier(.23, 1, .32, 1);
    width: 3.8125em
}

@media(max-width:768px) {
    .p-recruit__job_list .circle {
        font-size: .7619047619em;
        height: 3.1875em;
        right: 1.1875em;
        top: calc(50% - 1.59375em);
        width: 3.1875em
    }
}

.p-recruit__job_list .circle:before {
    background: #000;
    background-repeat: no-repeat;
    background-size: contain;
    border-radius: 50%;
    content: " ";
    display: block;
    height: calc(100% - 2px);
    left: 1px;
    position: absolute;
    top: 1px;
    transition: background-color .3s cubic-bezier(.23, 1, .32, 1);
    width: calc(100% - 2px)
}

.p-recruit__job_list .arrow:after, .p-recruit__job_list .arrow:before {
    background: url(img/arrow_rec_grd.svg);
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: .625em;
    left: calc(50% - .4375em);
    position: absolute;
    top: calc(50% - .3125em);
    transition: opacity .5s cubic-bezier(.86, 0, .07, 1), transform .5s cubic-bezier(.86, 0, .07, 1);
    width: .875em
}

@media(max-width:768px) {
    .p-recruit__job_list .arrow:after, .p-recruit__job_list .arrow:before {
        height: .5em;
        left: calc(50% - .34375em);
        top: calc(50% - .25em);
        width: .6875em
    }
}

.p-recruit__job_list .arrow:before {
    opacity: 0;
    transform: translateX(-150%)
}

.p-recruit__job_list .arrow:after, .p-recruit__job_list .arrow:before {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition: opacity .3s cubic-bezier(.23, 1, .32, 1)
}

.p-recruit__job_list .arrow:before {
    background-image: url(img/arrow_rec_wht.svg);
    transform: none
}

.p-thanks__content {
    display: flex;
    flex-direction: column;
    height: 41.125em;
    justify-content: center;
    padding-left: 57.3469387755%;
    position: relative
}

@media(max-width:1160px) {
    .p-thanks__content {
        height: 56.724137931vw
    }
}

@media(min-width:769px) {
    .p-thanks__content {
        min-height: calc(100vh - 43.6875em)
    }
}

@media(min-width:769px)and (orientation:portrait) {
    .p-thanks__content {
        min-height: calc(100vh - 39.1875em)
    }
}

@media(min-width:769px)and (orientation:portrait)and (min-aspect-ratio:1/2) {
    .p-thanks__content {
        min-height: calc(100vh - 34.5em)
    }
}

@media(max-width:768px) {
    .p-thanks__content {
        height: auto;
        padding-left: 0
    }
}

.p-thanks__content:after {
    background: none;
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: 100%;
    position: absolute;
    right: calc(50% - 5.4375em);
    top: 0;
    width: 42.375em;
    width: 69.1836734694%;
    z-index: -1
}

@media(max-width:768px) {
    .p-thanks__content:after {
        height: 26.5em;
        margin-bottom: -3.25em;
        margin-left: -2.625em;
        position: static;
        width: 27.625em
    }
}

[lang=ja] .p-thanks__content {
    font-feature-settings: "palt";
    letter-spacing: .046em
}

.p-thanks__content.img1:after {
    background-image: url(img/contact/thanks_1.jpg)
}

.p-thanks__content.img2:after {
    background-image: url(img/contact/thanks_2.jpg)
}

.p-thanks__content.img3:after {
    background-image: url(img/contact/thanks_3.jpg)
}

.p-thanks__content.img4:after {
    background-image: url(img/contact/thanks_4.jpg)
}

.p-thanks__content.img5:after {
    background-image: url(img/contact/thanks_5.jpg)
}

.p-thanks__content.img6:after {
    background-image: url(img/contact/thanks_6.jpg)
}

.p-thanks__title {
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 1.4375em
}

@media(max-width:768px) {
    .p-thanks__title {
        font-size: 1em
    }
}

.p-thanks__subtitle {
    font-size: 2.4375em;
    font-weight: 900;
    line-height: 1.4102564103;
    margin-right: -1em;
    margin-top: .4102564103em
}

@media(max-width:768px) {
    .p-thanks__subtitle {
        font-size: 1.6875em;
        line-height: 1.4074074074;
        margin-top: .8148148148em
    }
}

[lang=ja] .p-thanks__subtitle {
    letter-spacing: .125em
}

.p-thanks__message {
    font-size: .8125em;
    margin-top: 1.5384615385em
}

@media(max-width:768px) {
    .p-thanks__message {
        font-size: .75em;
        line-height: 1.8333333333;
        margin-top: 1em;
        white-space: normal
    }
}

.p-thanks__back {
    font-size: .875em;
    margin-bottom: 0;
    margin-top: 2.5714285714em;
    text-align: left
}

@media(max-width:768px) {
    .p-thanks__back {
        margin-top: 2em
    }
}

.p-top__slider {
    height: 100%
}

.p-top__slider .swiper {
    height: 100%;
    width: 100%
}

.p-top__slider .swiper:after, .p-top__slider .swiper:before {
    background: #e5eaf0;
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transition: opacity .75s cubic-bezier(.25, .46, .45, .94), visibility 0s linear .75s;
    visibility: hidden;
    width: 100%;
    z-index: -1
}

.p-top__slider .swiper:after {
    background-image: url(img/top/contact_bg.png);
    background-size: 100% 100%
}

.p-top__slider .slide2:before, .p-top__slider .slide5:before, .p-top__slider .slide7:after {
    opacity: 1;
    transition: opacity 1.5s cubic-bezier(.25, .46, .45, .94), visibility 0s linear;
    transition: opacity .75s cubic-bezier(.25, .46, .45, .94);
    visibility: visible
}

.p-top__slider .swiper-slide {
    box-sizing: border-box;
    overflow: hidden
}

.p-top__slider .swiper-pagination {
    position: fixed;
    right: 2.9375em;
    top: 50%
}

@media(orientation:portrait) {
    .p-top__slider .swiper-pagination {
        right: 1.125em
    }
}

.p-top__slider .swiper-pagination:after {
    content: "";
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: .8125em;
    left: calc(100% + .30769em);
    letter-spacing: .03em;
    opacity: 1;
    position: absolute;
    top: calc(100% + 1.92308em);
    transform: rotate(90deg);
    transform-origin: 0 0;
    transition: opacity .3s ease
}

@media(max-width:768px)and (orientation:portrait) {
    .p-top__slider .swiper-pagination:after {
        display: none
    }
}

.p-top__slider .slide0 .swiper-pagination:after, .p-top__slider .slide7 .swiper-pagination:after {
    opacity: 0
}

.p-top__slider .slide0 .swiper-pagination:after, .p-top__slider .slide1 .swiper-pagination:after {
    content: "Company"
}

.p-top__slider .slide2 .swiper-pagination:after, .p-top__slider .slide3 .swiper-pagination:after, .p-top__slider .slide4 .swiper-pagination:after {
    content: "Business"
}

.p-top__slider .slide5 .swiper-pagination:after {
    content: "News"
}

.p-top__slider .slide6 .swiper-pagination:after, .p-top__slider .slide7 .swiper-pagination:after {
    content: "Recruit"
}

.p-top__slider .swiper-pagination-bullet {
    background: none;
    height: .75em;
    margin: .875em 0 !important;
    opacity: .6;
    position: relative;
    transition: transform .2s cubic-bezier(.23, 1, .32, 1);
    width: .75em
}

@media(max-width:768px) {
    .p-top__slider .swiper-pagination-bullet {
        margin: .75em 0 !important
    }
}

.p-top__slider .swiper-pagination-bullet:before {
    background: #fff;
    background-repeat: no-repeat;
    background-size: contain;
    border-radius: 50%;
    content: " ";
    display: block;
    height: .25em;
    left: .25em;
    position: absolute;
    top: .25em;
    width: .25em
}

.p-top__slider .swiper-pagination-bullet-active, .p-top__slider .swiper-pagination-bullet:hover {
    opacity: 1;
    transform: scale(1.5)
}

.p-top__slider .swiper-bg {
    display: block;
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    opacity: 0;
    position: absolute;
    top: 0;
    transition: opacity .75s cubic-bezier(.25, .46, .45, .94), visibility 0s linear .75s;
    visibility: hidden;
    width: 100%;
    z-index: -1
}

.p-top__slider .swiper-bg.image0 {
    background: #fff
}

@media(max-width:768px)and (min-aspect-ratio:9/16) {
    .p-top__slider .swiper-bg.image0 {
        height: 177.7777692308vw;
        top: calc(50% - 88.88887vw)
    }
}

@media(max-width:768px)and (orientation:portrait) {
    .p-top__slider .swiper-bg.image1 {
        -o-object-position: center 25%;
        object-position: center 25%
    }
}

.p-top__slider .swiper-bg-circle {
    border-radius: 50%;
    bottom: -12.9375em;
    height: 63.375em;
    overflow: hidden;
    position: absolute;
    right: -12.625em;
    width: 63.375em;
    z-index: -1
}

@media(orientation:portrait) {
    .p-top__slider .swiper-bg-circle {
        bottom: -14.336492891vh;
        bottom: calc(var(--vh)*-14.33649);
        height: 74.644549763vh;
        height: calc(var(--vh)*74.64455);
        right: -39.2180094787vh;
        right: calc(var(--vh)*-39.21801);
        width: 74.644549763vh;
        width: calc(var(--vh)*74.64455)
    }
}

.p-top__slider .swiper-bg-circle img {
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transform: scale(1);
    transition: opacity .75s cubic-bezier(.25, .46, .45, .94), visibility 0s linear .75s;
    transition: opacity .75s cubic-bezier(.25, .46, .45, .94), transform 0s cubic-bezier(.39, .575, .565, 1) .75s, visibility 0s linear .75s;
    visibility: hidden
}

.p-top__slider .slide3 .swiper-bg-circle .image3 {
    opacity: 1;
    transform: scale(1.1);
    transition: opacity 1.5s cubic-bezier(.25, .46, .45, .94) .4s, transform 8s cubic-bezier(.39, .575, .565, 1) .4s;
    visibility: visible
}

.p-top__slider .slide0 .image0, .p-top__slider .slide1 .image1, .p-top__slider .slide6 .image6 {
    opacity: 1;
    transition: opacity 1.5s cubic-bezier(.25, .46, .45, .94), visibility 0s linear;
    transition: opacity 1.5s cubic-bezier(.25, .46, .45, .94) .4s;
    visibility: visible
}

.p-top__slider .slide6 .image6 {
    opacity: .8
}

.p-top__section {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: flex-start;
    margin-left: auto;
    margin-right: auto;
    max-width: 140.8296943231vh;
    padding-left: 9.6875em;
    padding-right: 9.6875em;
    padding-top: 9.5em;
    width: 100%
}

@media(orientation:portrait) {
    .p-top__section {
        padding-left: 1.875em;
        padding-right: 1.875em;
        padding-top: 6.25em
    }
}

.p-top__section h2 {
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 5.6875em;
    font-weight: 700;
    line-height: 1.1098901099;
    margin-left: -.0659340659em
}

@media(max-width:768px) {
    .p-top__section h2 {
        font-size: 3.75em;
        line-height: 1.2833333333;
        margin-left: -.05em;
        white-space: nowrap
    }
}

[lang=ja] .p-top__section h2 {
    letter-spacing: .024em
}

.p-top__section h3 {
    font-size: 1.4375em;
    font-weight: 900;
    line-height: 1.5652173913;
    margin-top: 1.8260869565em
}

@media(max-width:768px) {
    .p-top__section h3 {
        font-size: 1.125em;
        line-height: 1.2777777778;
        margin-top: .7222222222em
    }
}

[lang=ja] .p-top__section h3 {
    letter-spacing: .09em
}

.p-top__section p {
    font-size: .9375em;
    font-weight: 900;
    line-height: 2.2666666667;
    margin-top: .8em
}

@media(max-width:768px) {
    .p-top__section p {
        font-size: .75em;
        line-height: 2.0833333333;
        margin-top: 1em;
        white-space: nowrap
    }
}

[lang=ja] .p-top__section p {
    letter-spacing: .11em
}

.p-top__section strong {
    display: inline-block;
    font-size: 2em;
    font-weight: 900;
    line-height: 1.7
}

@media(max-width:768px) {
    .p-top__section strong {
        font-size: 1.5em
    }
}

[lang=ja] .p-top__section strong {
    letter-spacing: .13em
}

.p-top__section.section1 {
    padding-top: 8.5625em
}

@media(max-width:768px) {
    .p-top__section.section1 {
        justify-content: center;
        padding-top: 16.9431279621vh;
        padding-top: calc(var(--vh)*16.94313)
    }
}

.p-top__section.section1 p {
    font-size: 1.125em;
    line-height: 1.9444444444;
    margin-top: 1.9444444444em
}

@media(max-width:768px) {
    .p-top__section.section1 p {
        font-size: .875em
    }
}

[lang=ja] .p-top__section.section1 p {
    letter-spacing: .03em
}

.p-top__section.section2 {
    padding-top: 6.1875em
}

@media(max-width:768px) {
    .p-top__section.section2 {
        justify-content: center;
        padding-top: 1.875em
    }
}

.p-top__section.section2 h2 {
    letter-spacing: 0
}

.p-top__section.section2 p {
    margin-top: .5333333333em
}

@media(max-width:768px) {
    .p-top__section.section2 p {
        margin-top: -.3125em
    }
}

@media(orientation:portrait) {
    .p-top__section.section3 {
        padding-top: 4.25em
    }
}

.p-top__section.section3 h2 {
    margin-left: 0
}

[lang=en-US] .p-top__section.section3 h2 {
    margin-bottom: .3296703297em
}

.p-top__section.section4 {
    padding-top: 13.3125em
}

@media(max-width:768px) {
    .p-top__section.section4 {
        justify-content: center;
        padding-top: 9.9526066351vh;
        padding-top: calc(var(--vh)*9.95261)
    }

    .p-top__section.section5 {
        justify-content: center;
        padding-top: 7.345971564vh;
        padding-top: calc(var(--vh)*7.34597)
    }
}

.p-top__section.section5 h2 {
    letter-spacing: 0
}

@media(max-width:768px) {
    .p-top__section.section5 h2 {
        font-size: 3.75em
    }
}

.p-top__section.section6 h2 {
    letter-spacing: 0;
    margin-bottom: .1098901099em
}

.p-top__section.section6 p {
    font-size: 1em;
    margin-top: .5em
}

@media(max-width:768px) {
    .p-top__section.section6 p {
        font-size: .75em
    }
}

.p-top__section.section6 strong {
    font-size: 2.3125em
}

@media(max-width:768px) {
    .p-top__section.section6 strong {
        font-size: 2.5em;
        margin-top: -.1666666667em
    }
}

[lang=ja] .p-top__section.section6 strong {
    font-feature-settings: "palt";
    letter-spacing: .16em
}

.p-top__section.section7 {
    padding-bottom: 39.5em;
    padding-top: 4.875em
}

@media(orientation:portrait) {
    .p-top__section.section7 {
        justify-content: center;
        padding-bottom: 35em
    }
}

@media(orientation:portrait)and (min-aspect-ratio:1/2) {
    .p-top__section.section7 {
        padding-bottom: 31.75em
    }
}

@media(max-width:768px) {
    .p-top__section.section7 {
        justify-content: center;
        padding-top: 9.7156398104vh;
        padding-top: calc(var(--vh)*9.71564)
    }
}

.p-top__section.section7 h2 {
    font-size: 3em
}

@media(max-width:768px) {
    .p-top__section.section7 h2 {
        font-size: 2.1875em
    }
}

.p-top__section.section7 h2 {
    align-items: baseline
}

.p-top__section.section7 small {
    font-size: .25em
}

@media(max-width:768px) {
    .p-top__section.section7 small {
        font-size: .2857142857em
    }
}

.p-top__section.section7 p {
    font-size: .625em;
    line-height: 1.8;
    margin-top: 2.8em
}

@media(max-width:768px) {
    .p-top__section.section7 p {
        margin-top: .8em;
        transform: scale(.8);
        transform-origin: 0 0
    }
}

.p-top__section7_inner {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    width: 26.25em
}

@media(max-width:768px)and (orientation:portrait) {
    .p-top__section7_inner {
        width: 18.75em
    }
}

.p-top__scroll {
    bottom: 8.8125em;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-weight: 700;
    left: calc(100% - 5.0625em);
    letter-spacing: .03em;
    opacity: 0;
    padding-right: 5.0625em;
    position: fixed;
    transform: rotate(90deg);
    transform-origin: 0 100%;
    transition: opacity .75s cubic-bezier(.25, .46, .45, .94), visibility 0s linear .75s;
    visibility: hidden
}

@media(orientation:portrait) {
    .p-top__scroll {
        bottom: 13.0833333333em;
        font-size: .75em;
        left: calc(100% - 2.66667em);
        padding-right: 5.25em
    }
}

.p-top__scroll:after {
    -webkit-animation: scaleX-in-out 2s cubic-bezier(.645, .045, .355, 1) 0s infinite running;
    animation: scaleX-in-out 2s cubic-bezier(.645, .045, .355, 1) 0s infinite running;
    background: #fff;
    background-repeat: no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: 1px;
    position: absolute;
    right: 0;
    top: 50%;
    width: 4.1875em
}

@media(orientation:portrait) {
    .p-top__scroll:after {
        width: 4.25em
    }
}

.slide0 .p-top__scroll {
    opacity: 1;
    transition: opacity 1.5s cubic-bezier(.25, .46, .45, .94), visibility 0s linear;
    visibility: visible
}

.p-top__copy {
    margin-bottom: -1em
}

.p-top__copy h2 {
    font-size: 5.75em;
    font-weight: 900;
    line-height: 1.1956521739;
    margin-left: 0
}

@media(orientation:portrait) {
    [lang=en-US] .p-top__copy h2 {
        font-size: 4.8421052632em
    }
}

@media(max-width:768px) {
    .p-top__copy h2 {
        font-size: 3.625em;
        line-height: 1.2068965517
    }

    [lang=en-US] .p-top__copy h2 {
        font-size: 2.625em
    }
}

[lang=ja] .p-top__copy h2 {
    white-space: nowrap
}

[lang=ja] .p-top__copy h2 .line1 {
    background: url(img/copy_1.svg) no-repeat;
    background-size: 3.4448913043em;
    color: transparent
}

@media(max-width:768px) {
    [lang=ja] .p-top__copy h2 .line1 {
        background-size: 3.4348275862em
    }
}

[lang=ja] .p-top__copy h2 .line2 {
    background: url(img/copy_2.svg) no-repeat;
    background-size: 5.3426358696em;
    color: transparent
}

@media(max-width:768px) {
    [lang=ja] .p-top__copy h2 .line2 {
        background-size: 5.3768965517em
    }
}

.p-top__business_content {
    padding-top: 27.875em;
    width: 100%
}

@media(orientation:portrait) {
    .p-top__business_content {
        padding-top: 24.8125em
    }
}

.p-top__business_img {
    height: 100%;
    left: calc(50% - 70.41485vh);
    max-width: 140.8296943231vh;
    position: absolute;
    top: 4.9375em;
    width: 100%;
    z-index: -1
}

@media(orientation:portrait) {
    .p-top__business_img {
        left: calc(50% - 12.1875em);
        max-width: 100%;
        top: calc(50% - 28em);
        width: 24.375em
    }
}

.p-top__business_img img {
    display: block;
    position: absolute
}

.p-top__business_img .circle, .p-top__business_img .global, .p-top__business_img .metaverse, .p-top__business_img .metaverse_content {
    opacity: 0;
    transition: opacity 2s cubic-bezier(.23, 1, .32, 1)
}

.transitionEnd .p-top__business_img .circle, .transitionEnd .p-top__business_img .global, .transitionEnd .p-top__business_img .metaverse, .transitionEnd .p-top__business_img .metaverse_content {
    opacity: 1
}

.p-top__business_img .circle {
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 50%;
    overflow: hidden;
    position: absolute
}

.p-top__business_img .metaverse_circle {
    background-image: url(img/top/business_metaverse_bg.png);
    height: 15.625em;
    left: 15.0625em;
    top: 19.625em;
    width: 15.625em
}

@media(orientation:portrait) {
    .p-top__business_img .metaverse_circle {
        height: 10.0625em;
        left: 7.25em;
        top: 19.125em;
        width: 10.0625em
    }
}

.transitionEnd .p-top__business_img .metaverse_circle {
    transition-delay: .3s
}

.p-top__business_img .metaverse {
    left: 4.5em;
    top: 2.375em;
    width: 6.608125em
}

@media(orientation:portrait) {
    .p-top__business_img .metaverse {
        left: 2.875em;
        top: 1.5em;
        width: 4.3125em
    }
}

.transitionEnd .p-top__business_img .metaverse {
    transition-delay: .3s
}

.p-top__business_img .metaverse_content {
    left: 3em;
    top: 4.25em;
    width: 9.594375em
}

@media(orientation:portrait) {
    .p-top__business_img .metaverse_content {
        left: 1.9375em;
        top: 2.75em;
        width: 6.25em
    }
}

.transitionEnd .p-top__business_img .metaverse_content {
    transition-delay: .3s
}

.p-top__business_img .global {
    left: 29.625em;
    top: 22.1875em;
    transform: translateX(-92%);
    width: 14.70233125em
}

@media(orientation:portrait) {
    .p-top__business_img .global {
        left: 8.625em;
        top: 24.5625em;
        width: 7.4375em
    }
}

.transitionEnd .p-top__business_img .global {
    -webkit-animation: translateX-in .8166666667s cubic-bezier(.165, .84, .44, 1) .8666666667s 1 forwards;
    animation: translateX-in .8166666667s cubic-bezier(.165, .84, .44, 1) .8666666667s 1 forwards;
    transition-delay: .9333333333s
}

@media(orientation:portrait) {
    .transitionEnd .p-top__business_img .global {
        -webkit-animation-name: translateY-in;
        animation-name: translateY-in
    }
}

.p-top__business_img .people_circle {
    background-image: url(img/top/business_people_bg.png);
    height: 31.6875em;
    left: 43.3125em;
    top: 11.5em;
    width: 31.6875em
}

@media(orientation:portrait) {
    .p-top__business_img .people_circle {
        height: 14.5975em;
        left: 4.875em;
        top: 29.4375em;
        width: 14.5975em
    }
}

.transitionEnd .p-top__business_img .people_circle {
    transition-delay: 1.6833333333s
}

.p-top__business_img .people_text, .p-top__business_img .people_text_large {
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    position: absolute
}

.p-top__business_img .people_text_large {
    font-size: 3em;
    left: 2.875em;
    line-height: 1.0416666667;
    top: 2.875em
}

@media(orientation:portrait) {
    .p-top__business_img .people_text_large {
        font-size: 1.75em;
        left: 2.3571428571em;
        top: 2.6428571429em
    }
}

@media(max-width:768px)and (orientation:landscape) {
    .p-top__business_img .people_text_large {
        top: calc(50% - 1.3125em)
    }
}

.p-top__business_img .people_text_large em {
    display: inline-block;
    font-size: 1.3333333333em;
    font-style: normal;
    margin-bottom: -.046875em;
    margin-left: -.0625em;
    vertical-align: bottom
}

.p-top__business_img .people_text {
    font-size: .8125em;
    left: 10.7692307692em;
    line-height: 1.6153846154;
    top: 20.3076923077em;
    width: 19.2307692308em
}

@media(max-width:768px) {
    .p-top__business_img .people_text {
        display: none
    }
}

.p-top__business_img .people_circle_large {
    background-image: url(img/top/business_people_bg2.png);
    height: 46.9375em;
    left: 35.6875em;
    top: 3.875em;
    transform: scale(0);
    width: 46.9375em
}

@media(orientation:portrait) {
    .p-top__business_img .people_circle_large {
        height: 21.5625em;
        left: 1.40625em;
        top: 25.9375em;
        width: 21.5625em
    }
}

.transitionEnd .p-top__business_img .people_circle_large {
    -webkit-animation: scale-up .9166666667s cubic-bezier(0, .69, 0, .99) 2.3833333333s 1 forwards;
    animation: scale-up .9166666667s cubic-bezier(0, .69, 0, .99) 2.3833333333s 1 forwards;
    transition-delay: 2.3833333333s
}

.p-top__business_label {
    color: #262626;
    font-family: Ubuntu, Noto Sans JP, -apple-system, BlinkMacSystemFont, Hiragino Sans, ヒラギノ角ゴ Pro W3, HiraKakuProN-W3, Hiragino Kaku Gothic Pro, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, sans-serif;
    font-size: 2.3125em;
    margin-bottom: -.1891891892em;
    margin-left: 3.5675675676em;
    margin-top: .5405405405em;
    position: relative
}

@media(orientation:portrait) {
    .p-top__business_label {
        font-size: 1.25em;
        margin-bottom: -.45em;
        margin-left: 1.3em
    }
}

.p-top__business_label span {
    display: block;
    font-size: 5.1351351351em;
    line-height: 1;
    position: absolute;
    right: -.5578947368em;
    top: -.4263157895em
}

@media(orientation:portrait) {
    .p-top__business_label span {
        font-size: 4.1em;
        right: -.7073170732em;
        top: -.243902439em
    }
}

.section4 .p-top__business_label {
    margin-bottom: 0;
    position: absolute;
    right: 3.2432432432em;
    top: -2.8378378378em;
    z-index: -1
}

@media(orientation:portrait) {
    .section4 .p-top__business_label {
        left: 0;
        right: auto;
        top: -2.35em
    }
}

.section4 .p-top__business_label span {
    right: -.6043956044em;
    top: -.3736263736em
}

.p-top__card_wrapper {
    display: flex;
    margin-left: -2.1875em;
    margin-right: -2.1875em
}

@media(orientation:portrait) {
    .p-top__card_wrapper {
        flex-direction: column;
        margin-left: auto;
        margin-right: auto;
        max-width: 23.75em;
        width: 100%
    }
}

.p-top__card {
    align-items: flex-start;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 1.375em;
    display: flex;
    flex-direction: column;
    height: 31.25em;
    margin: 0 2.1875em;
    opacity: 0;
    padding: 2.0625em 2.5em 3em;
    position: relative;
    transition: opacity .5s ease;
    width: 28.4375em
}

@media(orientation:portrait) {
    .p-top__card {
        height: auto;
        margin: 0;
        padding: 1.125em 1.625em 1.625em;
        width: 100%
    }
}

@media(max-aspect-ratio:1/2) {
    .p-top__card {
        height: 18.75em
    }
}

.transitionEnd .p-top__card {
    opacity: 1
}

.p-top__card.metaverse {
    background-image: url(img/top/metaverse.jpg)
}

.p-top__card.esports {
    background-image: url(img/top/esports.jpg)
}

@media(orientation:portrait) {
    .p-top__card.esports {
        background-image: url(img/top/esports_sp.jpg);
        margin-top: 11.6113744076vh;
        margin-top: calc(var(--vh)*11.61137)
    }
}

.p-top__card.esports h2 {
    font-size: 4.375em;
    margin-top: -.1285714286em
}

@media(orientation:portrait) {
    .p-top__card.esports h2 {
        font-size: 2.6875em
    }
}

.p-top__card h2 {
    font-size: 3.8125em;
    line-height: 1.0327868852;
    margin-bottom: auto;
    margin-left: 0
}

@media(orientation:portrait) {
    .p-top__card h2 {
        font-size: 2.375em
    }
}

.p-top__card h3 {
    font-size: 1.4375em;
    line-height: 1.5652173913;
    margin-top: auto
}

@media(orientation:portrait) {
    .p-top__card h3 {
        font-size: 1.0625em;
        margin-top: .1176470588em
    }
}

@media(max-aspect-ratio:1/2) {
    .p-top__card h3 {
        margin-top: auto
    }
}

.p-top__card p {
    font-size: .8125em;
    line-height: 2;
    margin-top: .5384615385em;
    white-space: normal
}

@media(orientation:portrait) {
    .p-top__card p {
        font-size: .625em
    }
}

.p-top__card a {
    margin-top: 2.75em
}

@media(orientation:portrait) {
    .p-top__card a {
        margin-top: .4375em
    }
}

.b_transit {
    height: 100vh;
    pointer-events: none;
    position: fixed;
    width: 100vw;
    z-index: 500
}

.b_transit, .b_transit_img {
    left: 50%;
    top: 0;
    transform: translate(-50%)
}

.b_transit_img {
    background-image: url(img/b_transit.png);
    background-position: 0 -8.3333333333%;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute
}

.b_transit_img.animate {
    -webkit-animation: sprite .6673340007s steps(14);
    animation: sprite .6673340007s steps(14)
}

@media(min-aspect-ratio:10/7) {
    .b_transit_img {
        height: 70vw;
        width: 100vw
    }
}

@media(max-aspect-ratio:10/7) {
    .b_transit_img {
        height: calc(var(--vh)*100);
        width: calc(var(--vh)*142.85714)
    }
}

@-webkit-keyframes sprite {
    to {
        background-position: 0 108.3333333333%
    }
}

@keyframes sprite {
    to {
        background-position: 0 108.3333333333%
    }
}

.u-ta-l {
    text-align: left !important
}

.u-ta-c {
    text-align: center !important
}

.u-ta-r {
    text-align: right !important
}

.u-ta-j {
    text-align: justify !important;
    -ms-text-justify: inter-ideograph !important;
    text-justify: inter-ideograph !important
}

@media(orientation:landscape) {
    .u-pc-hide {
        display: none !important
    }
}

@media(orientation:portrait) {
    .u-sp-hide {
        display: none !important
    }
}

.u-hidden {
    clip: rect(0 0 0 0);
    border: 0;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute !important;
    width: 1px
}

/*追加css*/
/* ---------------------------------------------
*   p-gc-cassette-company
--------------------------------------------- */
.p-gc-cassette-company+.p-gc-cassette-company {
    margin-top: 6.6em;
}

.p-gc-cassette-company__ttl {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 2rem;
    text-align: center;
}

.p-gc-cassette-company__head {
    margin-bottom: 1.3em;
}

/* ---------------------------------------------
*   p-gc-kv
--------------------------------------------- */
.p-gc-kv {
    background: url(img/img_gc_kv.jpg) no-repeat 50%;
    background-size: cover;
    height: 22.5em;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.p-gc-kv__container {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    max-width: 56.25em;
    padding-left: 1.875em;
    padding-right: 1.875em;
}

@media screen and (max-width: 825px) {
    .p-gc-kv__container {
        max-width: initial;
        padding-left: 0em;
        padding-right: 0em;
    }
}

.p-gc-kv__ttl {
    color: #fff;
    font-family: "Ubuntu", sans-serif;
    font-size: 2.4375em;
    font-weight: 700;
    letter-spacing: 0.035em;
}

@media screen and (max-width: 825px) {
    .p-gc-kv__ttl {
        text-align: center;
    }
}

/* ---------------------------------------------
*   p-gc-dtl-kv
--------------------------------------------- */
.p-gc-dtl-kv {
    background: url(img/img_gcdtl_kv.jpg) no-repeat 50%;
    background-size: cover;
    height: 29.38em;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.p-gc-dtl-kv__matereal {
    background: url(img/MR_Corporate_Header_Banner.png) no-repeat 50%;
    background-size: cover;
}

.p-gc-dtl-kv__andepoch {
    background: url(img/AE_Corporate_Header_Banner.png) no-repeat 50%;
    background-size: cover;
}

@media screen and (max-width: 825px) {
    .p-gc-dtl-kv__andepoch {
        background: url(img/MUGEN_sp.png) no-repeat;
        height: 29rem;
        background-position: bottom 0% left 0%;
        background-size: 100%;
    }
}

@media screen and (max-width: 825px) {
    .p-gc-dtl-kv__matereal {
        background: url(img/PaletteProject_sp.png) no-repeat;
        height: 29rem;
        background-position: bottom 0% left 0%;
        background-size: 100%;
    }
}

.p-gc-dtl-kv__container {
    padding-left: 5.625em;
    padding-right: 5.625em;
}

.p-gc-dtl-kv__img {
    width: 400px;
    height: 240px;
    margin-left: auto;
    margin-right: auto;
}

@media screen and (max-width: 825px) {
    .p-gc-dtl-kv__img {
        width: 48.4848484848vw;
        height: 29.0909090909vw;
        padding-left: 0em;
        padding-right: 0em;
    }
}

.p-gc-dtl-kv__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

/* ---------------------------------------------
*   p-gc-list-company
--------------------------------------------- */
.p-gc-list-company {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    width: 100%;
    gap: 3%;
}

@media screen and (max-width: 750px) {
    .p-gc-list-company {
        display: block;
    }
}

.p-gc-list-company__item {
    width: 31.3095238095%;
}

.p-gc-list-company__item:nth-of-type(n+4) {
    margin-top: 2.9em;
}

@media screen and (max-width: 825px) {
    .p-gc-list-company__item {
        width: 48.409524%;
    }

    .p-gc-list-company__item:nth-of-type(n+3) {
        margin-top: 4.4em;
    }
}

@media screen and (max-width: 750px) {
    .p-gc-list-company__item {
        width: 100%;
    }

    .p-gc-list-company__item:nth-of-type(n+2) {
        margin-top: 55px;
    }
}

.p-gc-list-company__link {
    display: block;
    width: 100%;
    height: 100%;
}

/* @media (hover: hover) and (pointer: fine) and (min-width: 751px) {
    .p-gc-list-company__link:hover .p-gc-list-company__inner {
        background-color: #000;
    }

    .p-gc-list-company__link:hover .p-gc-list-company__img img {
        filter: brightness(0) invert(1);
        translateZ(0);
        will-change: filter;
    }
} */

.p-gc-list-company__link--nolink {
    pointer-events: none;
}

.p-gc-list-company__inner {
    padding: 60px 0;
    border-radius: 15px;
    margin-bottom: 0.9em;
    border: 1px solid #BFBFBF;
    transition: all 0.3s;
}

.p-gc-list-company__img {
    width: 160px;
    height: 80px;
    margin: 0 auto;
}

.p-gc-list-company__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    transition: all 0.3s;
}

.p-gc-list-company__txt {
    display: block;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 0.8125rem;
    text-align: center;
}

/* ---------------------------------------------
*   p-gc-dtl-list-members
--------------------------------------------- */
.p-gc-dtl-list-members {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    gap: 2.5%;
    margin-top: 11.05em;
}

@media screen and (max-width: 750px) {
    .p-gc-dtl-list-members {
        display: block;
    }
}

.p-gc-dtl-list-members__item {
    position: relative;
    width: 31.634%;
    background-color: #D6DCE1;
    border-radius: 15px;
    padding: 141px 0 40px;
}

.p-gc-dtl-list-members__item:nth-of-type(n+4) {
    margin-top: 12.8125em;
}

@media screen and (max-width: 825px) {
    .p-gc-dtl-list-members__item {
        width: 48.709524%;
    }

    .p-gc-dtl-list-members__item:nth-of-type(n+3) {
        margin-top: 12.8125em;
    }
}

@media screen and (max-width: 750px) {
    .p-gc-dtl-list-members__item {
        width: 100%;
    }

    .p-gc-dtl-list-members__item:nth-of-type(n+2) {
        margin-top: 12em;
    }
}

.p-gc-dtl-list-members__img {
    position: absolute;
    width: 214px;
    bottom: 100%;
    left: 50%;
    transform: translate(-50%, 50%);
}

.p-gc-dtl-list-members__name {
    display: block;
    font-family: "Noto Sans JP", sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 26px;
    text-align: center;
    padding: 0 1em;
    word-break: break-word;
}

/* ---------------------------------------------
*   p-gc-dtl-list-service
--------------------------------------------- */
.p-gc-dtl-list-service {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    gap: 2.5%;
    margin-top: 2.825em;
}

@media screen and (max-width: 750px) {
    .p-gc-dtl-list-service {
        display: block;
    }
}

.p-gc-dtl-list-service__item {
    width: 31.634%;
}

.p-gc-dtl-list-service__item:nth-of-type(n+4) {
    margin-top: 1.5625em;
}

@media screen and (max-width: 825px) {
    .p-gc-dtl-list-service__item {
        width: 48.709524%;
    }

    .p-gc-dtl-list-service__item:nth-of-type(n+3) {
        margin-top: 1.3625em;
    }
}

@media screen and (max-width: 750px) {
    .p-gc-dtl-list-service__item {
        width: 100%;
    }

    .p-gc-dtl-list-service__item:nth-of-type(n+2) {
        margin-top: 1.5625em;
    }
}

.p-gc-dtl-list-service__link {
    display: block;
    width: 100%;
    height: 100%;
}

.p-gc-dtl-list-service__link--nolink {
    pointer-events: none;
}

.p-gc-dtl-list-service__inner {
    padding: 70px 0;
    border-radius: 15px;
    transition: all 0.3s;
}

.p-gc-dtl-list-service__inner__full {
    padding: 0;
}

.p-gc-dtl-list-service__img {
    width: 160px;
    height: 80px;
    margin: 0 auto;
}

.p-gc-dtl-list-service__img__full {
    width: 100%;
    height: 100%;
    margin: 0 auto;
}

.p-gc-dtl-list-service__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    transition: all 0.3s;
}

/* ---------------------------------------------
*   p-gc-section-company
--------------------------------------------- */
.p-gc-section-company {
    margin-top: 6.7em;
    margin-bottom: 12.3em;
}

.p-gc-section-company__container {
    max-width: 900px;
    padding-left: 1.875em;
    padding-right: 1.875em;
    margin: 0 auto;
}

/* ---------------------------------------------
*   p-gc-dtl-section-about
--------------------------------------------- */
.p-gc-dtl-section-about+.p-gc-dtl-section-about .p-gc-dtl-section-about__container {
    padding: 6.8125em 1.875em 6.8125em;
}

.p-gc-dtl-section-about--bg {
    background-color: #D6DCE1;
}

.p-gc-dtl-section-about__container {
    max-width: 1040px;
    padding-left: 1.875em;
    padding-right: 1.875em;
    margin: 7em auto 6.875em;
}

.p-gc-dtl-section-about__full {
    padding: 6.8125em 1.875em 6.8125em;
    margin: 0em auto 6.875em;
}

.p-gc-dtl-section-about__ttl {
    font-family: "Ubuntu", sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 40px;
}

@media screen and (max-width: 825px) {
    .p-gc-dtl-section-about__ttl {
        text-align: center;
    }
}

/* ---------------------------------------------
*   p-gc-dtl-section-info
--------------------------------------------- */
.p-gc-dtl-section-info {
    display: flex;
    justify-content: space-between;
    margin-top: 7.125em;
    margin-right: auto;
    margin-bottom: 18em;
    margin-left: auto;
    max-width: 1040px;
    padding-left: 1.875em;
    padding-right: 1.875em;
}

@media screen and (max-width: 825px) {
    .p-gc-dtl-section-info {
        display: block;
        margin-top: 3.5em;
        margin-bottom: 5.5em;
    }
}

.p-gc-dtl-section-info__left {
    display: flex;
    flex-direction: column;
    width: 28.3125em;
}

@media screen and (max-width: 825px) {
    .p-gc-dtl-section-info__left {
        display: block;
        width: 100%;
    }
}

.p-gc-dtl-section-info__ttl {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 2.4em;
    line-height: 1.3;
    font-weight: 700;
}

@media screen and (max-width: 825px) {
    .p-gc-dtl-section-info__ttl {
        font-size: 2em;
        line-height: 1.125;
    }
}

.p-gc-dtl-section-info__img {
    max-width: 400px;
    margin-top: 1.75em;
}

@media screen and (max-width: 825px) {
    .p-gc-dtl-section-info__img {
        max-width: initial;
        width: 100%;
        margin-bottom: 0;
        margin-top: 2.375em;
    }
}

.p-gc-dtl-section-info__right {
    width: 30.1875em;
}

@media screen and (max-width: 825px) {
    .p-gc-dtl-section-info__right {
        width: 100%;
    }
}

.p-gc-dtl-section-info__detail {
    display: flex;
    flex-wrap: wrap;
    margin-top: -0.875em;
}

@media screen and (max-width: 825px) {
    .p-gc-dtl-section-info__detail {
        margin-top: 0;
    }
}

.p-gc-dtl-section-info__detail dt, .p-gc-dtl-section-info__detail dd {
    font-feature-settings: "palt";
    border-top: 1px solid #000;
    font-size: 0.8125em;
    font-weight: 700;
    line-height: 1.6153846154;
    padding-bottom: 1.6923076923em;
    padding-top: 1.6923076923em;
}

@media screen and (max-width: 825px) {
    .p-gc-dtl-section-info__detail dt, .p-gc-dtl-section-info__detail dd {
        font-size: 0.825em;
        line-height: 1.6;
        padding-bottom: 1.8em;
        padding-top: 1.8em;
    }
}

.p-gc-dtl-section-info__detail dt:first-of-type, .p-gc-dtl-section-info__detail dd:first-of-type {
    font-feature-settings: "palt";
    border-top: none;
}

.p-gc-dtl-section-info__detail dt {
    width: 8.507692em;
}

@media screen and (max-width: 825px) {
    .p-gc-dtl-section-info__detail dt {
        width: 8.8em;
    }
}

.p-gc-dtl-section-info__detail dd {
    width: calc(100% - 8.507692em);
    padding-left: 1em;
}

@media screen and (max-width: 825px) {
    .p-gc-dtl-section-info__detail dd {
        width: calc(100% - 8.8em);
        padding-left: 0.6em;
    }
}
