﻿﻿@charset "UTF-8";
@font-face {
    font-family: "Impact";
    src: url("../font/impact.ttf") format("truetype");
}

body {
    font-family: "Impact";
}

img.wp-smiley,
img.emoji {
    display: inline !important;
    border: none !important;
    box-shadow: none !important;
    height: 1em !important;
    width: 1em !important;
    margin: 0 0.07em !important;
    vertical-align: -0.1em !important;
    background: none !important;
    padding: 0 !important;
}

.wp-block-button__link {
    color: #fff;
    background-color: #32373c;
    border-radius: 9999px;
    box-shadow: none;
    text-decoration: none;
    padding: calc(0.667em + 2px) calc(1.333em + 2px);
    font-size: 1.125em;
}

.wp-block-file__button {
    background: #32373c;
    color: #fff;
    text-decoration: none;
}

::before,
::after {
    box-sizing: border-box;
    border-style: solid;
    border-width: 0;
}

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

body {
    margin: 0;
}

main {
    display: block;
}

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

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

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

dt {
    font-weight: bold;
}

dd {
    margin-left: 0;
}

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

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

address {
    font-style: inherit;
}

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

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

b,
strong {
    font-weight: bolder;
}

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

small {
    font-size: 80%;
}

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

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

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

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

button,
[type=button],
[type=reset],
[type=submit] {
    cursor: pointer;
}

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

:-moz-focusring {
    outline: auto;
}

select:disabled {
    opacity: inherit;
}

option {
    padding: 0;
}

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

legend {
    padding: 0;
}

progress {
    vertical-align: baseline;
}

textarea {
    overflow: auto;
    box-sizing: border-box;
}

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

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

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

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

[type=number] {
    -moz-appearance: textfield;
}

label[for] {
    cursor: pointer;
}

details {
    display: block;
}

summary {
    display: list-item;
}

[contenteditable]:focus {
    outline: auto;
}

table {
    border-color: inherit;
    border-collapse: collapse;
}

caption {
    text-align: left;
}

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

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

@media only screen and (min-width: 768px) {
    .u-sp {
        display: none !important;
    }
}

@media only screen and (max-width: 767px) {
    .u-pc {
        display: none !important;
    }
}

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

html {
    height: 100%;
    font-size: 0.85vw;
}

@media only screen and (min-width: 1600px) {
    html {
        font-size: 10px;
    }
}

@media only screen and (max-width: 767px) {
    html {
        font-size: 2.6666666667vw;
    }
}

body {
    min-height: 100%;
    font-family: "Impact", "Helvetica", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    color: #888;
    background-color: #1a1a1a;
    font-feature-settings: "halt" on;
    letter-spacing: 0.5px;
}

body::before {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    background-color: #eee;
    opacity: 1;
    transition: opacity 0s ease-out 1s;
    content: "";
}

body[data-page-type=top]::before,
body[data-page-type=investees_insights]::before,
body[data-page-type=partners]::before,
body[data-page-type=team]::before,
body[data-page-type=team-detail]::before {
    opacity: 0;
}

*:focus {
    outline-width: 0;
}

*:focus-visible {
    outline-width: 1px;
}

.c-lang-switch {
    font-size: 1.2rem;
    line-height: 1.458;
    color: #a1a1a1;
}

.c-lang-switch__btn {
    color: #6d6d6d;
    border-bottom: 1px solid transparent;
    transition: color 0.5s ease-out, border-color 0.5s ease-out;
}

.c-lang-switch__btn--ja:lang(ja) {
    color: #fff;
    border-color: currentColor;
    pointer-events: none;
}

.c-lang-switch__btn--en:lang(en-US) {
    color: #fff;
    border-color: currentColor;
    pointer-events: none;
}

@media (any-hover: hover) {
    .c-lang-switch__btn:hover {
        color: #fff;
        transition: color 0.2s ease-out;
    }
}

.c-contact {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 9.375vw;
    background-color: #eee;
    border-radius: 0 0 2rem 2rem;
}

@media only screen and (max-width: 767px) {
    .c-contact {
        display: block;
        padding: 6.4rem 2rem;
        border-radius: 0 0 1.5rem 1.5rem;
    }
}

.c-contact__text {
    position: sticky;
    top: 10rem;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .c-contact__text {
        position: static;
        width: 100%;
        margin-bottom: 6.4rem;
    }
}

.c-contact__heading {
    margin-bottom: 3.4rem;
    margin-left: -1.9rem;
}

@media only screen and (max-width: 767px) {
    .c-contact__heading {
        margin-bottom: 6.4rem;
        margin-left: -1rem;
    }
}

.c-contact__catch {
    width: 31.71875vw;
    margin-bottom: 3rem;
    font-size: 2.1rem;
    font-weight: 600;
    line-height: 1.4761904762;
}

@media only screen and (max-width: 767px) {
    .c-contact__catch {
        width: 100%;
        margin-bottom: 1.6rem;
        font-size: 2rem;
        line-height: 1.5238095238;
    }
}

.c-contact__lead {
    width: 31.71875vw;
    margin-bottom: 0.6rem;
    font-size: 1.4rem;
    line-height: 1.5;
    letter-spacing: -0.02em;
}

@media only screen and (max-width: 767px) {
    .c-contact__lead {
        width: 100%;
        font-size: 1.2rem;
        line-height: 1.5833333333;
    }
}

.c-contact__note {
    margin-bottom: 5vw;
    font-size: 1.2rem;
    line-height: 1.5;
    color: #d93a3a;
}

@media only screen and (max-width: 767px) {
    .c-contact__note {
        margin-bottom: 6.4rem;
    }
}

.c-contact__note ._asterisk {
    margin-right: 0.4rem;
}

.c-contact__form {
    width: 40.625vw;
    margin-top: 2.109375vw;
    margin-bottom: 2.5vw;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .c-contact__form {
        width: 100%;
        margin-bottom: 2.4rem;
    }
}

.c-contact__form .hs-form {
    min-height: 100vh;
}

.c-contact__form .hs-form .hs-richtext {
    color: #1a1a1a;
}

.c-contact__form .hs-form .hs-richtext h2 {
    padding-bottom: 0.8rem;
    border-bottom: solid 2px #1a1a1a;
    font-weight: 600;
    font-size: 2.2rem;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .hs-richtext h2 {
        font-weight: 600;
        font-size: 2.2rem;
        line-height: 1.5;
    }
}

.c-contact__form .hs-form .hs-richtext h3 {
    display: block;
    margin-bottom: 0.8rem;
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .hs-richtext h3 {
        margin-bottom: 1rem;
        font-size: 1.5rem;
        line-height: 1.4666666667;
    }
}

.c-contact__form .hs-form .hs-richtext p {
    font-size: 1.2rem;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .hs-richtext p {
        line-height: 1.6666666667;
    }
}

.c-contact__form .hs-form .hs-richtext a {
    text-decoration: underline;
    text-underline-offset: 0.4rem;
    transition: opacity 0.2s;
}

.c-contact__form .hs-form .hs-richtext a[target=_blank]::after {
    display: inline-block;
    content: "";
    background-image: url("assets/img/contact/icon-external.svg");
    background-repeat: no-repeat;
    background-size: contain;
    width: 1.1rem;
    height: 1.1rem;
    margin-left: 0.2rem;
}

@media (any-hover: hover) {
    .c-contact__form .hs-form .hs-richtext a:hover {
        opacity: 0.6;
    }
}

.c-contact__form .hs-form fieldset {
    max-width: 100%;
    margin-bottom: 2.5vw;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form fieldset {
        margin-bottom: 4rem;
    }
}

.c-contact__form .hs-form label {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin-bottom: 0.625vw;
    font-weight: 600;
    font-size: 1.4rem;
    line-height: 1.5714285714;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form label {
        margin-bottom: 1.8rem;
    }
}

.c-contact__form .hs-form .hs-form-required {
    margin-left: 0.4rem;
    color: #d93a3a;
}

.c-contact__form .hs-form .hs-error-msgs {
    margin-top: 0.9375vw;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .hs-error-msgs {
        margin-top: 1rem;
    }
}

.c-contact__form .hs-form .hs-error-msgs+.hs-error-msgs {
    margin-top: 0;
}

.c-contact__form .hs-form .hs-error-msgs label {
    margin-bottom: 0;
    font-weight: 300;
    font-size: 1.2rem;
    line-height: 1.5;
    color: #d93a3a;
}

.c-contact__form .hs-form .input {
    width: 100%;
    margin: 0;
}

.c-contact__form .hs-form .input .hs-input {
    display: block;
    width: 100%;
}

.c-contact__form .hs-form .input .hs-input[type=text],
.c-contact__form .hs-form .input .hs-input[type=email] {
    height: 3.515625vw;
    background: #e8e8e8;
    padding: 0.9375vw 1.640625vw;
    font-size: 1.4rem;
    line-height: 1.5;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .input .hs-input[type=text],
    .c-contact__form .hs-form .input .hs-input[type=email] {
        height: 6.8rem;
        padding: 2.4rem;
        font-size: 1.3rem;
        line-height: 1.5384615385;
    }
}

.c-contact__form .hs-form .input .hs-input[type=text]::-moz-placeholder,
.c-contact__form .hs-form .input .hs-input[type=email]::-moz-placeholder {
    color: #a1a1a1;
}

.c-contact__form .hs-form .input .hs-input[type=text]::placeholder,
.c-contact__form .hs-form .input .hs-input[type=email]::placeholder {
    color: #a1a1a1;
}

.c-contact__form .hs-form .input .hs-input[type=text].error,
.c-contact__form .hs-form .input .hs-input[type=email].error {
    background: #f1e5e5;
    border-bottom: solid 1px #d93a3a;
}

.c-contact__form .hs-form .input textarea {
    height: 5.15625vw;
    background: #e8e8e8;
    padding: 0.9375vw 1.640625vw;
    font-size: 1.4rem;
    line-height: 1.5;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .input textarea {
        height: 18rem;
        padding: 2.4rem;
    }
}

.c-contact__form .hs-form .input textarea::-moz-placeholder {
    color: #a1a1a1;
}

.c-contact__form .hs-form .input textarea::placeholder {
    color: #a1a1a1;
}

.c-contact__form .hs-form .input textarea.error {
    background: #f1e5e5;
    border-bottom: solid 1px #d93a3a;
}

.c-contact__form .hs-form .hs-form-radio:not(:last-child) {
    margin-bottom: 0.8rem;
}

.c-contact__form .hs-form .hs-form-radio label {
    margin-bottom: 0;
}

.c-contact__form .hs-form .hs-form-radio label>span {
    margin-left: 1.6rem;
    font-weight: 300;
    font-size: 1.2rem;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .hs-form-radio label>span {
        margin-left: 1.2rem;
        font-size: 1.3rem;
        line-height: 1.5384615385;
    }
}

.c-contact__form .hs-form .hs-form-radio .hs-input {
    position: relative;
    width: 1.4rem;
    height: 1.4rem;
    display: inline-block;
}

.c-contact__form .hs-form .hs-form-radio .hs-input::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 1.4rem;
    height: 1.4rem;
    content: "";
    display: block;
    border: solid 1px #1a1a1a;
    background-color: #fff;
    border-radius: 50%;
}

.c-contact__form .hs-form .hs-form-radio .hs-input::after {
    position: absolute;
    top: 0rem;
    left: 0rem;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
    margin: auto;
    content: "";
    opacity: 0;
    border-radius: 50%;
    background-color: #1a1a1a;
}

.c-contact__form .hs-form .hs-form-radio .hs-input:checked::after {
    opacity: 1;
}

.c-contact__form .hs-form .hs-form-booleancheckbox label {
    position: relative;
    margin-bottom: 0;
    display: flex;
    align-items: center;
}

.c-contact__form .hs-form .hs-form-booleancheckbox label>span {
    display: flex;
    margin-left: 1.3rem;
    font-weight: 600;
    font-size: 1.3rem;
    line-height: 1.9230769231;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .hs-form-booleancheckbox label>span {
        margin-left: 1rem;
        font-size: 1.4rem;
        line-height: 1.7857142857;
    }
}

.c-contact__form .hs-form .hs-form-booleancheckbox .hs-input {
    position: relative;
    width: 2rem;
    height: 2rem;
    display: inline-block;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .hs-form-booleancheckbox .hs-input {
        width: 1.6rem;
        height: 1.6rem;
    }
}

.c-contact__form .hs-form .hs-form-booleancheckbox .hs-input::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 2rem;
    height: 2rem;
    content: "";
    display: block;
    border: solid 1px #a1a1a1;
    background-color: #fff;
    border-radius: 0.4rem;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .hs-form-booleancheckbox .hs-input::before {
        width: 1.6rem;
        height: 1.6rem;
    }
}

.c-contact__form .hs-form .hs-form-booleancheckbox .hs-input::after {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.2rem;
    height: 0.9rem;
    margin: auto;
    content: "";
    background-image: url("assets/img/contact/icon-check.svg");
    background-repeat: no-repeat;
    background-size: contain;
    opacity: 0;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .hs-form-booleancheckbox .hs-input::after {
        width: 0.9rem;
        height: 0.6rem;
    }
}

.c-contact__form .hs-form .hs-form-booleancheckbox .hs-input:checked::after {
    opacity: 1;
}

.c-contact__form .hs-form .hs_agree {
    margin-top: 0.625vw;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .hs_agree {
        margin-top: 2rem;
    }
}

.c-contact__form .hs-form .form-columns-0 {
    margin-top: 3.125vw;
}

.c-contact__form .hs-form .form-columns-0:first-of-type {
    margin-top: 0;
}

.c-contact__form .hs-form .form-columns-1 .input {
    margin-right: 0;
}

.c-contact__form .hs-form .form-columns-2 {
    display: flex;
}

.c-contact__form .hs-form .form-columns-2 .hs-form-field {
    width: calc(50% - 1rem);
}

.c-contact__form .hs-form .form-columns-2 .hs-form-field+.hs-form-field {
    margin-left: 2rem;
}

.c-contact__form .hs-form .hs-fieldtype-file {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .hs-fieldtype-file label {
        margin-bottom: 0.3rem;
    }
}

.c-contact__form .hs-form .hs-fieldtype-file .hs-field-desc {
    width: auto;
    margin-left: 0.8rem;
    margin-bottom: 0.625vw;
    font-size: 1.1rem;
    line-height: 1.4545454545;
    color: #d93a3a;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .hs-fieldtype-file .hs-field-desc {
        margin-left: 0;
        margin-bottom: 1.8rem;
    }
}

.c-contact__form .hs-form .hs-fieldtype-file .input {
    position: relative;
    display: flex;
    align-items: center;
}

.c-contact__form .hs-form .hs-fieldtype-file .input::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 12.578125vw;
    height: 3.515625vw;
    content: "";
    display: block;
    background-color: #e8e8e8;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .hs-fieldtype-file .input::before {
        width: 16.8rem;
        height: 6.8rem;
    }
}

.c-contact__form .hs-form .hs-fieldtype-file .hs-input {
    position: relative;
    width: 12.578125vw;
    margin-right: 2.5vw;
    font-size: 1.2rem;
    line-height: 1.5;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .hs-fieldtype-file .hs-input {
        width: 16.8rem;
        margin-right: 1.2rem;
    }
}

.c-contact__form .hs-form .hs-fieldtype-file .hs-input::file-selector-button {
    width: 12.578125vw;
    height: 3.515625vw;
    opacity: 0;
    cursor: pointer;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .hs-fieldtype-file .hs-input::file-selector-button {
        width: 16.8rem;
        height: 6.8rem;
    }
}

.c-contact__form .hs-form .hs-fieldtype-file .file-upload-button {
    position: absolute;
    top: 0;
    left: 0;
    width: 12.578125vw;
    height: 3.515625vw;
    content: "";
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    line-height: 1.5;
    color: #1a1a1a;
    cursor: pointer;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .hs-fieldtype-file .file-upload-button {
        width: 16.8rem;
        height: 6.8rem;
        font-size: 1.3rem;
    }
}

.c-contact__form .hs-form .hs-fieldtype-file .file-upload-button::after {
    display: block;
    content: "";
    background-image: url("assets/img/contact/icon-upload.svg");
    background-repeat: no-repeat;
    background-size: contain;
    width: 1.1rem;
    height: 1.1rem;
    margin-left: 1.1rem;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .hs-fieldtype-file .file-upload-button::after {
        margin-left: 1.8rem;
    }
}

.c-contact__form .hs-form .hs-fieldtype-file .file-name {
    width: 28.046875vw;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 1.2rem;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .hs-fieldtype-file .file-name {
        width: 11.5rem;
    }
}

.c-contact__form .hs-form .hs_submit {
    margin-top: 3.75vw;
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .hs_submit {
        margin-top: 5.6rem;
        margin-bottom: 2.4rem;
    }
}

.c-contact__form .hs-form .actions {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 23rem;
    height: 5.3rem;
    border-radius: 5.3rem;
    pointer-events: none;
}

.c-contact__form .hs-form .actions::before {
    position: absolute;
    top: 1px;
    right: 1px;
    bottom: 1px;
    left: 1px;
    display: block;
    border-radius: 5.3rem;
    background-color: #1a1a1a;
    content: "";
}

.c-contact__form .hs-form .actions::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    background-color: #fff;
    content: "";
    transform: scaleY(0);
    transform-origin: center top;
    transition: transform 0.5s cubic-bezier(0.3, 0.72, 0.56, 1);
}

@media only screen and (max-width: 767px) {
    .c-contact__form .hs-form .actions {
        text-align: center;
    }
}

.c-contact__form .hs-form .actions .hs-button {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    color: #fff;
    font-weight: 600;
    font-size: 1.4rem;
    text-align: center;
    pointer-events: auto;
    transition: color 0.5s cubic-bezier(0.3, 0.72, 0.56, 1);
}

@media (any-hover: hover) {
    .c-contact__form .hs-form .actions:hover::after {
        transform: scaleY(1);
        transform-origin: center bottom;
    }
    .c-contact__form .hs-form .actions:hover .hs-button {
        color: #1a1a1a;
    }
}

.c-contact__form .grecaptcha-badge {
    position: fixed;
    bottom: 0;
    right: 0;
    pointer-events: none;
    visibility: hidden;
}

.c-contact__form .submitted-message {
    font-size: 1.4rem;
    color: #1a1a1a;
    line-height: 2;
}

.c-contact__recaptcha {
    font-size: 1.2rem;
    letter-spacing: -0.02em;
    color: #a1a1a1;
}

@media only screen and (max-width: 767px) {
    .c-contact__recaptcha {
        font-size: 1rem;
        line-height: 1.4;
        text-align: center;
    }
}

.c-contact__recaptcha ._link {
    text-decoration: underline;
    transition: opacity 0.2s;
}

@media (any-hover: hover) {
    .c-contact__recaptcha ._link:hover {
        opacity: 0.6;
    }
}

.c-contact__form.is-submitted+.c-contact__recaptcha {
    display: none;
}

.c-breadcrumb {
    padding: 3.2rem 3.125vw;
    border-top: solid 1px rgba(26, 26, 26, 0.1);
}

@media only screen and (max-width: 767px) {
    .c-breadcrumb {
        padding: 2.4rem 2rem;
    }
}

.c-breadcrumb--white {
    color: #a1a1a1;
    border-color: rgba(161, 161, 161, 0.1);
}

.c-breadcrumb--white .c-breadcrumb__item--current {
    color: #fff;
}

.c-breadcrumb__list {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 1.4rem;
    letter-spacing: -0.03em;
    white-space: nowrap;
}

@media only screen and (max-width: 767px) {
    .c-breadcrumb__list {
        font-size: 1.2rem;
        letter-spacing: -0.01em;
    }
}

.c-breadcrumb__list::before,
.c-breadcrumb__list::after {
    margin-bottom: 0.3rem;
}

@media only screen and (max-width: 767px) {
    .c-breadcrumb__list::before,
    .c-breadcrumb__list::after {
        margin-bottom: 0.2rem;
    }
}

.c-breadcrumb__list::before {
    content: "(";
}

.c-breadcrumb__list::after {
    content: ")";
}

.c-breadcrumb__item:not(:first-child)::before {
    margin: 0 0.1rem;
    content: "/";
}

@media only screen and (max-width: 767px) {
    .c-breadcrumb__item:not(:first-child)::before {
        margin: 0 0.3rem;
    }
}

.c-breadcrumb__item--current {
    color: #1a1a1a;
    pointer-events: none;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

.c-page-heading {
    position: relative;
    margin-left: -0.5rem;
    padding: 1.9rem 3.5rem 1.8rem 1.4rem;
    width: -moz-fit-content;
    width: fit-content;
    font-weight: 400;
    font-size: 6.9rem;
    line-height: 1.15;
    letter-spacing: -0.02em;
    text-transform: uppercase;
    color: #1a1a1a;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .c-page-heading {
        padding: 1.9rem 0.9rem 1.9rem;
        margin-left: -0.9rem;
        font-size: 4rem;
        line-height: 1;
        letter-spacing: 0em;
    }
}

.c-page-heading.is-visible::before,
.c-page-heading.is-visible::after {
    opacity: 1;
}

.c-page-heading.is-visible::before {
    transform: translateX(5rem);
}

@media only screen and (max-width: 767px) {
    .c-page-heading.is-visible::before {
        transform: translateX(2.9rem);
    }
}

.c-page-heading.is-visible::after {
    transform: translateX(calc(-100% + 5rem));
}

@media only screen and (max-width: 767px) {
    .c-page-heading.is-visible::after {
        transform: translateX(calc(-100% + 2.9rem));
    }
}

.c-page-heading::before,
.c-page-heading::after {
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: currentColor;
    content: "";
    transform: translateX(0);
    opacity: 0;
    transition: opacity 0.75s 1.5s, transform 0.9s cubic-bezier(0.22, 1, 0.36, 1) 1.5s;
}

body[data-page-count="1"] .c-page-heading::before,
body[data-page-count="1"] .c-page-heading::after {
    transition-delay: 0.25s, 0.25s;
}

.c-page-heading::before {
    top: 0;
}

.c-page-heading::after {
    bottom: 0;
}

.c-page-heading--white {
    color: #fff;
}

.c-page-heading--white::before,
.c-page-heading--white::after {
    background-color: #fff;
}

.c-page-heading__text {
    display: block;
    transform: translateY(100%);
    -webkit-clip-path: polygon(0% -100%, 100% -100%, 100% -30%, 0% 0%);
    clip-path: polygon(0% -100%, 100% -100%, 100% -30%, 0% 0%);
    transition: 0.6s cubic-bezier(0.26, 0.52, 0.28, 0.96);
    transition-property: transform, -webkit-clip-path;
    transition-property: transform, clip-path;
    transition-property: transform, clip-path, -webkit-clip-path;
    transition-delay: 1.25s, 1.25s;
}

body[data-page-count="1"] .c-page-heading__text {
    transition-delay: 0s, 0s;
}

body[data-page-count="1"] .c-page-heading__text:nth-child(2) {
    transition-delay: 0.2s, 0.2s;
}

.c-page-heading.is-visible .c-page-heading__text {
    transform: translateY(0);
    -webkit-clip-path: polygon(0% -100%, 100% -100%, 100% 100%, 0% 130%);
    clip-path: polygon(0% -100%, 100% -100%, 100% 100%, 0% 130%);
}

.c-page-heading__text:nth-child(2) {
    transition-delay: 1.45s, 1.45s;
}

.c-dropdown {
    position: relative;
}

.c-dropdown__trigger {
    width: 100%;
}

.c-dropdown__panel {
    position: absolute;
    z-index: 100;
    width: 100%;
    overflow: hidden;
    height: 0;
    display: none;
}

.c-pagination {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 2.9rem 2.34375vw;
    font-weight: 400;
    font-size: 1.4rem;
    line-height: 1.1428571429;
    color: #000;
}

@media only screen and (max-width: 767px) {
    .c-pagination {
        padding: 2.6rem 2rem;
        font-size: 1.2rem;
    }
}

.c-pagination::before,
.c-pagination::after {
    position: absolute;
    width: calc(100% - 2.34375vw);
    height: 1px;
    content: "";
    display: block;
    background-color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .c-pagination::before,
    .c-pagination::after {
        width: calc(100% - 2rem);
    }
}

.c-pagination::before {
    top: 0;
    right: 0;
}

.c-pagination::after {
    left: 0;
    bottom: 0;
}

.c-pagination__list {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2.8rem;
}

@media only screen and (max-width: 767px) {
    .c-pagination__list {
        gap: 2.5rem;
    }
}

.c-pagination__number {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.c-pagination__number::before {
    position: absolute;
    width: 3rem;
    height: 3rem;
    content: "";
    display: block;
    background-color: #1a1a1a;
    border-radius: 50%;
    display: none;
}

.c-pagination__number.is-current::before {
    display: block;
}

.c-pagination__ellipsis {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1rem;
}

.c-pagination__ellipsis svg {
    width: 100%;
    fill: #1a1a1a;
}

.c-pagination__link {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 1.6rem;
    font-weight: 400;
    transition: opacity 0.2s;
}

@media only screen and (max-width: 767px) {
    .c-pagination__link {
        font-size: 1.4rem;
    }
}

.c-pagination__link[aria-current=page] {
    color: #fff;
    pointer-events: none;
}

.c-pagination__link::before {
    position: absolute;
    width: 3rem;
    height: 3rem;
    content: "";
    display: block;
}

@media (any-hover: hover) {
    .c-pagination__link:hover {
        opacity: 0.3;
    }
}

.c-pagination__prev,
.c-pagination__next {
    transition: opacity 0.2s;
}

.c-pagination__prev.-disabled,
.c-pagination__next.-disabled {
    color: #d7d7d7;
    pointer-events: none;
}

@media (any-hover: hover) {
    .c-pagination__prev:hover,
    .c-pagination__next:hover {
        opacity: 0.3;
    }
}

.c-sections-nav {
    height: 100%;
}

@media only screen and (max-width: 767px) {
    .c-sections-nav {
        position: fixed;
        z-index: 200;
        right: 0;
        bottom: 0;
        left: 0;
        height: auto;
        background-color: #eee;
        transition: transform 0.4s cubic-bezier(0.29, 1.02, 0.63, 0.99);
    }
}

@media only screen and (max-width: 767px) {
    .c-sections-nav.is-hidden {
        transform: translateY(100%);
    }
}

.c-sections-nav__list {
    --default-color: #a1a1a1;
    --active-color: #fff;
    position: sticky;
    top: calc(50vh - 5rem);
}

@media only screen and (max-width: 767px) {
    .c-sections-nav__list {
        --default-color: #a1a1a1;
        --active-color: #1a1a1a;
    }
}

.c-sections-nav__list.is-light {
    --default-color: #c1c1c1;
    --active-color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .c-sections-nav__list.is-light {
        --default-color: #a1a1a1;
        --active-color: #1a1a1a;
    }
}

@media only screen and (max-width: 767px) {
    .c-sections-nav__list {
        position: static;
        top: auto;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        display: flex;
        flex-wrap: nowrap;
        padding: 1.7rem 2rem;
    }
}

.c-sections-nav__item {
    position: relative;
    overflow: hidden;
    font-style: normal;
    font-weight: 300;
    font-size: 1.2rem;
    line-height: 2.17;
}

@media only screen and (max-width: 767px) {
    .c-sections-nav__item {
        scroll-snap-align: start;
        flex-shrink: 0;
        padding: 0 1.2rem;
    }
}

@media only screen and (max-width: 767px) {
    .c-sections-nav__item:first-child {
        padding-left: 2rem;
    }
    .c-sections-nav__item:first-child::before {
        left: 2rem;
    }
}

.c-sections-nav__item.is-active::before {
    transform: translate(0%, -50%);
}

@media only screen and (max-width: 767px) {
    .c-sections-nav__item.is-active::before {
        transform: none;
        opacity: 1;
    }
}

.c-sections-nav__item.is-active ._link {
    transform: translateX(1.3rem);
    color: var(--active-color);
}

@media only screen and (max-width: 767px) {
    .c-sections-nav__item.is-active ._link {
        transform: none;
    }
}

.c-sections-nav__item::before {
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    width: 0.5rem;
    height: 1px;
    background-color: var(--active-color);
    transform: translate(-100%, -50%);
    content: "";
    transition: transform 0.4s cubic-bezier(0.45, 0, 0.57, 0.99);
}

@media only screen and (max-width: 767px) {
    .c-sections-nav__item::before {
        top: auto;
        right: 1.2rem;
        bottom: 0;
        left: 1.2rem;
        width: auto;
        transform: none;
        opacity: 0;
        transition: opacity 0.4s cubic-bezier(0.45, 0, 0.57, 0.99);
    }
}

.c-sections-nav__item ._link {
    display: inline-block;
    color: var(--default-color);
    transition: transform 0.4s cubic-bezier(0.45, 0, 0.57, 0.99), color 0.6s cubic-bezier(0.18, 0.57, 0.52, 1);
}

@media (any-hover: hover) {
    .c-sections-nav__item ._link:hover {
        color: var(--active-color);
    }
}

.c-section-heading.is-visible ._label::after {
    transform: scaleX(1);
}

.c-section-heading ._label {
    display: flex;
    align-items: center;
    gap: 3.2rem;
    min-height: 0.8rem;
    font-style: normal;
    font-weight: 600;
    font-size: 1.6rem;
    line-height: 1.5;
    color: #383838;
}

@media only screen and (max-width: 767px) {
    .c-section-heading ._label {
        gap: 2.4rem;
        min-height: 0.7rem;
        font-size: 1.3rem;
        line-height: 1.54;
    }
}

.c-section-heading ._label::after {
    display: inline-block;
    flex: 1;
    height: 1px;
    background-color: #1a1a1a;
    content: "";
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.6s cubic-bezier(0.65, 0, 0.38, 0.99);
}

.c-section-heading ._title {
    display: block;
    margin-top: 3.2rem;
    font-style: normal;
    font-weight: 400;
    font-size: 5.6rem;
    line-height: 1.14;
    letter-spacing: -0.02em;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .c-section-heading ._title {
        margin-top: 1.8rem;
        font-size: 3rem;
        line-height: 1.16;
    }
}

.c-section-heading.is-white {
    color: #fff;
}

.c-section-heading.is-white ._label {
    color: currentColor;
}

.c-section-heading.is-white ._label::after {
    background-color: currentColor;
}

.c-section-heading.is-white ._title {
    color: currentColor;
}

.c-section-heading.is-small ._title {
    font-size: 4.8rem;
}

@media only screen and (max-width: 767px) {
    .c-section-heading.is-small ._title {
        font-size: 3rem;
    }
}

.c-clipped-element {
    transform: translateY(50%);
    -webkit-clip-path: polygon(0% -100%, 100% -100%, 100% -30%, 0% 0%);
    clip-path: polygon(0% -100%, 100% -100%, 100% -30%, 0% 0%);
    transition: 0.6s cubic-bezier(0.26, 0.52, 0.28, 0.96);
    transition-property: transform, -webkit-clip-path;
    transition-property: transform, clip-path;
    transition-property: transform, clip-path, -webkit-clip-path;
}

.c-clipped-element.is-visible {
    transform: translateY(0);
    -webkit-clip-path: polygon(0% -100%, 100% -100%, 100% 100%, 0% 130%);
    clip-path: polygon(0% -100%, 100% -100%, 100% 100%, 0% 130%);
}

.c-mailmagazine {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 9.375vw;
    color: #fff;
    background-color: #383838;
    border-radius: 0 0 2rem 2rem;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine {
        display: block;
        padding: 5.2rem 2rem 6.4rem;
        border-radius: 0 0 1.5rem 1.5rem;
    }
}

.c-mailmagazine__text {
    position: sticky;
    top: 10rem;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__text {
        position: static;
        width: 100%;
        margin-bottom: 6.4rem;
    }
}

.c-mailmagazine__heading {
    position: relative;
    display: inline-block;
    margin-bottom: 3.4rem;
    padding-top: 1rem;
    padding-right: 1.9rem;
    font-size: 4.7rem;
    line-height: 1.455;
    letter-spacing: -0.02em;
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__heading {
        margin-bottom: 1.3rem;
        padding: 1.2rem 0 1rem;
        font-size: 3.2rem;
    }
}

.c-mailmagazine__heading.is-visible::before {
    transform: scaleX(1);
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) 0.2s;
}

.c-mailmagazine__heading::before {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: currentColor;
    content: "";
    transform: scaleX(0);
    transform-origin: left center;
}

.c-mailmagazine__catch {
    margin-bottom: 0.6rem;
    font-size: 2.1rem;
    font-weight: 600;
    line-height: 1.4761904762;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__catch {
        width: 100%;
        font-size: 2rem;
        line-height: 1.5238095238;
    }
}

.c-mailmagazine__note {
    margin-bottom: 5vw;
    font-size: 1.2rem;
    line-height: 1.5;
    color: #d93a3a;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__note {
        margin-bottom: 6.4rem;
    }
}

.c-mailmagazine__note ._asterisk {
    margin-right: 0.4rem;
}

.c-mailmagazine__form {
    width: 40.625vw;
    margin-top: 2.109375vw;
    margin-bottom: 2.5vw;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__form {
        width: 100%;
        margin-bottom: 2.4rem;
    }
}

.c-mailmagazine__form .hs-form fieldset {
    max-width: 100%;
    margin-bottom: 2.5vw;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__form .hs-form fieldset {
        margin-bottom: 4rem;
    }
}

.c-mailmagazine__form .hs-form label {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin-bottom: 0.625vw;
    font-weight: 600;
    font-size: 1.4rem;
    line-height: 1.5714285714;
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__form .hs-form label {
        margin-bottom: 1.4rem;
    }
}

.c-mailmagazine__form .hs-form .hs-form-required {
    margin-left: 0.4rem;
    color: #d93a3a;
}

.c-mailmagazine__form .hs-form .hs-error-msgs {
    margin-top: 0.9375vw;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__form .hs-form .hs-error-msgs {
        margin-top: 1rem;
    }
}

.c-mailmagazine__form .hs-form .hs-error-msgs+.hs-error-msgs {
    margin-top: 0;
}

.c-mailmagazine__form .hs-form .hs-error-msgs label {
    margin-bottom: 0;
    font-weight: 300;
    font-size: 1.2rem;
    line-height: 1.5;
    color: #d93a3a;
}

.c-mailmagazine__form .hs-form .input {
    width: 100%;
    margin: 0;
}

.c-mailmagazine__form .hs-form .input .hs-input {
    display: block;
    width: 100%;
}

.c-mailmagazine__form .hs-form .input .hs-input[type=email] {
    height: 3.515625vw;
    background: #e8e8e8;
    padding: 0.9375vw 1.640625vw;
    font-size: 1.4rem;
    line-height: 1.5;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__form .hs-form .input .hs-input[type=email] {
        height: 6.8rem;
        padding: 2.4rem;
        font-size: 1.3rem;
        line-height: 1.5384615385;
    }
}

.c-mailmagazine__form .hs-form .input .hs-input[type=email]::-moz-placeholder {
    color: #a1a1a1;
}

.c-mailmagazine__form .hs-form .input .hs-input[type=email]::placeholder {
    color: #a1a1a1;
}

.c-mailmagazine__form .hs-form .input .hs-input[type=email].error {
    background: #f1e5e5;
    border-bottom: solid 1px #d93a3a;
}

.c-mailmagazine__form .hs-form .hs_email {
    margin-bottom: 6.4rem;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__form .hs-form .hs_email {
        margin-bottom: 5.8rem;
    }
}

.c-mailmagazine__form .hs-form .hs-form-booleancheckbox label {
    position: relative;
    margin-bottom: 0;
    display: flex;
    align-items: center;
}

.c-mailmagazine__form .hs-form .hs-form-booleancheckbox label>span {
    display: flex;
    margin-left: 1.3rem;
    font-weight: 600;
    font-size: 1.3rem;
    line-height: 1.9230769231;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__form .hs-form .hs-form-booleancheckbox label>span {
        margin-left: 1rem;
        font-size: 1.4rem;
        line-height: 1.7857142857;
    }
}

.c-mailmagazine__form .hs-form .hs-form-booleancheckbox .hs-input {
    position: relative;
    width: 2rem;
    height: 2rem;
    display: inline-block;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__form .hs-form .hs-form-booleancheckbox .hs-input {
        width: 1.6rem;
        height: 1.6rem;
    }
}

.c-mailmagazine__form .hs-form .hs-form-booleancheckbox .hs-input::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 2rem;
    height: 2rem;
    content: "";
    display: block;
    border: solid 1px #a1a1a1;
    background-color: #fff;
    border-radius: 0.4rem;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__form .hs-form .hs-form-booleancheckbox .hs-input::before {
        width: 1.6rem;
        height: 1.6rem;
    }
}

.c-mailmagazine__form .hs-form .hs-form-booleancheckbox .hs-input::after {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.2rem;
    height: 0.9rem;
    margin: auto;
    content: "";
    background-image: url("assets/img/contact/icon-check.svg");
    background-repeat: no-repeat;
    background-size: contain;
    opacity: 0;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__form .hs-form .hs-form-booleancheckbox .hs-input::after {
        width: 0.9rem;
        height: 0.6rem;
    }
}

.c-mailmagazine__form .hs-form .hs-form-booleancheckbox .hs-input:checked::after {
    opacity: 1;
}

.c-mailmagazine__form .hs-form .hs-richtext {
    margin-bottom: 1.5625vw;
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__form .hs-form .hs-richtext {
        margin-bottom: 2rem;
    }
}

.c-mailmagazine__form .hs-form .hs-richtext h3 {
    display: block;
    margin-bottom: 0.8rem;
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__form .hs-form .hs-richtext h3 {
        margin-bottom: 1rem;
        font-size: 1.5rem;
        line-height: 1.4666666667;
    }
}

.c-mailmagazine__form .hs-form .hs-richtext p {
    font-size: 1.2rem;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__form .hs-form .hs-richtext p {
        line-height: 1.6666666667;
    }
}

.c-mailmagazine__form .hs-form .hs-richtext a {
    text-decoration: underline;
    text-underline-offset: 0.4rem;
    transition: opacity 0.2s;
}

.c-mailmagazine__form .hs-form .hs-richtext a[target=_blank]::after {
    display: inline-block;
    content: "";
    background-image: url("assets/img/contact/icon-external-white.svg");
    background-repeat: no-repeat;
    background-size: contain;
    width: 1.1rem;
    height: 1.1rem;
    margin-left: 0.2rem;
}

@media (any-hover: hover) {
    .c-mailmagazine__form .hs-form .hs-richtext a:hover {
        opacity: 0.6;
    }
}

.c-mailmagazine__form .hs-form .hs_submit {
    margin-top: 3.75vw;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__form .hs-form .hs_submit {
        margin-top: 5.6rem;
    }
}

.c-mailmagazine__form .hs-form .actions {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 23rem;
    height: 5.3rem;
    border-radius: 5.3rem;
    pointer-events: none;
}

.c-mailmagazine__form .hs-form .actions::before {
    position: absolute;
    top: 1px;
    right: 1px;
    bottom: 1px;
    left: 1px;
    display: block;
    border-radius: 3rem;
    background-color: #fff;
    content: "";
}

.c-mailmagazine__form .hs-form .actions::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    background-color: #1a1a1a;
    content: "";
    transform: scaleY(0);
    transform-origin: center top;
    transition: transform 0.5s cubic-bezier(0.3, 0.72, 0.56, 1);
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__form .hs-form .actions {
        text-align: center;
    }
}

.c-mailmagazine__form .hs-form .actions .hs-button {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    color: #1a1a1a;
    font-weight: 600;
    font-size: 1.4rem;
    text-align: center;
    pointer-events: auto;
    transition: color 0.5s cubic-bezier(0.3, 0.72, 0.56, 1);
}

@media (any-hover: hover) {
    .c-mailmagazine__form .hs-form .actions:hover::after {
        transform: scaleY(1);
        transform-origin: center bottom;
    }
    .c-mailmagazine__form .hs-form .actions:hover .hs-button {
        color: #fff;
    }
}

.c-mailmagazine__form .grecaptcha-badge {
    position: fixed;
    bottom: 0;
    right: 0;
    pointer-events: none;
    visibility: hidden;
}

.c-mailmagazine__form .submitted-message {
    font-size: 1.4rem;
    color: #fff;
    line-height: 2;
}

.c-mailmagazine__recaptcha {
    font-size: 1.2rem;
    letter-spacing: -0.02em;
    color: #a1a1a1;
}

@media only screen and (max-width: 767px) {
    .c-mailmagazine__recaptcha {
        font-size: 1rem;
        line-height: 1.4;
        text-align: center;
    }
}

.c-mailmagazine__recaptcha ._link {
    text-decoration: underline;
    transition: opacity 0.2s;
}

@media (any-hover: hover) {
    .c-mailmagazine__recaptcha ._link:hover {
        opacity: 0.6;
    }
}

.c-mailmagazine__form.is-submitted+.c-mailmagazine__recaptcha {
    display: none;
}

.l__header {
    position: fixed;
    z-index: 500;
    top: 0;
    right: 0;
    left: 0;
    transition: transform 0.5s;
}

body.is-scroll-down .l__header {
    transform: translateY(-100%);
}

body.is-scroll-up .l__header {
    transform: translateY(-1.4rem);
}

@media only screen and (max-width: 767px) {
    body.is-scroll-up .l__header {
        transform: translateY(0);
    }
}

.l__first-view-sentinel {
    position: absolute;
    top: 23.828125vw;
    display: block;
    width: 100%;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

@media only screen and (max-width: 767px) {
    .l__first-view-sentinel {
        top: 25.6rem;
    }
}

.l__container {
    position: relative;
    background: #1a1a1a;
}

.l__curtain {
    position: fixed;
    z-index: 1400;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    pointer-events: none;
    visibility: hidden;
    background-color: transparent;
    transition: visibility 0.7s linear;
}

.l__curtain::before,
.l__curtain::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    content: "";
    opacity: 0;
    transform-origin: top center;
    transform: scaleY(0);
}

.l__curtain::before {
    background-color: #383838;
    transition: opacity 0s linear 0.6s, transform 0.6s cubic-bezier(0.8, 0, 0.48, 1) 0.1s;
}

.l__curtain::after {
    background-color: #090909;
    transition: opacity 0s linear 0.6s, transform 0.6s cubic-bezier(0.8, 0, 0.48, 1) 0s;
}

html.is-animating .l__curtain {
    visibility: visible;
}

html.is-animating .l__curtain::before,
html.is-animating .l__curtain::after {
    opacity: 1;
    transform: scaleY(1);
}

html.is-changing .l__curtain {
    visibility: visible;
}

html.is-changing .l__curtain::before,
html.is-changing .l__curtain::after {
    opacity: 1;
    transform: scaleY(1);
}

html.is-changing .l__curtain::before {
    transition: opacity 0.7s linear, transform 0.6s cubic-bezier(0.8, 0, 0.48, 1) 0s;
}

html.is-changing .l__curtain::after {
    transition: opacity 0.7s linear, transform 0.6s cubic-bezier(0.8, 0, 0.48, 1) 0.1s;
}

.l__footer {
    background-color: #1a1a1a;
}

.l__footer-contact {
    position: relative;
    z-index: 2;
    background-color: #383838;
}

@media only screen and (max-width: 767px) {
    .l__footer-contact {
        margin-top: -0.1rem;
    }
}

.l__footer-mailmagazine {
    position: relative;
    z-index: 1;
    background-color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .l__footer-mailmagazine {
        margin-top: -0.1rem;
    }
}

.l__totop {
    width: 5.2rem;
    position: fixed;
    right: 3.125vw;
    bottom: 3.125vw;
    z-index: 500;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

body.is-scroll-down .l__totop {
    opacity: 1;
    visibility: visible;
}

body.is-scroll-down .l__totop .totop-btn {
    opacity: 0.3;
}

@media (any-hover: hover) {
    body.is-scroll-down .l__totop .totop-btn:hover {
        opacity: 1;
    }
}

body.is-scroll-up .l__totop {
    opacity: 1;
    visibility: visible;
}

.l__totop .totop-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 5.2rem;
    background-color: #eee;
    border-radius: 50%;
    border: #1a1a1a 1px solid;
    opacity: 1;
    transition: background-color 0.3s ease, border-color 0.3s ease, opacity 0.3s ease;
}

@media (any-hover: hover) {
    .l__totop .totop-btn:hover {
        background-color: #1a1a1a;
        border-color: #eee;
    }
    .l__totop .totop-btn:hover svg path {
        stroke: #eee;
    }
}

.l__totop .totop-btn__icon,
.l__totop svg {
    display: block;
}

.l__totop .totop-btn__icon {
    width: 1.6rem;
}

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

.l__totop svg path {
    transition: stroke 0.3s ease;
}

@media only screen and (max-width: 767px) {
    .l__totop {
        width: 4.3rem;
        right: 2rem;
        bottom: 2rem;
    }
    .l__totop .totop-btn {
        height: 4.3rem;
    }
    .l__totop .totop-btn__icon {
        width: 1.3rem;
    }
}

.sp-menu-dialog {
    display: block;
    width: 100%;
    height: 100%;
    background-color: #1a1a1a;
    padding: 1.9rem 2rem 4rem;
    box-sizing: border-box;
}

.sp-menu-dialog__ {
    margin-bottom: 5.8rem;
}

.sp-menu-dialog__ a {
    color: #fff;
    font-size: 16px;
    line-height: 2;
}

.sp-menu-dialog__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 5.8rem;
}

.sp-menu-dialog__logo img {
    width: 13.25rem;
    height: 5.05rem;
    backface-visibility: hidden;
    -moz-backface-visibility: hidden;
}

@media only screen and (max-width: 767px) {
    .sp-menu-dialog__logo img {
        width: 9.15rem;
        height: 3.5rem;
    }
}

.sp-menu-dialog__contact {
    margin-left: auto;
    margin-right: 0.5rem;
    padding: 1.6rem 2.6rem;
    font-weight: bold;
    font-size: 1.1rem;
    line-height: 1.124;
    color: #fff;
    background-color: #383838;
    border-radius: 3rem;
}

.sp-menu-dialog__close-button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 4.3rem;
    height: 4.3rem;
    font-size: 0.9rem;
    color: #fff;
    line-height: 1.374;
    border-radius: 50%;
    border: 1px solid #424242;
}

.sp-menu-dialog__main {
    margin-bottom: 10.8rem;
    padding-left: 2rem;
    font-size: 2.9rem;
    line-height: 1.3793103448;
    letter-spacing: -0.02em;
    color: #d7d7d7;
}

.sp-menu-dialog__main-link {
    position: relative;
}

.sp-menu-dialog__main-link::after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: transparent;
    content: "";
    transition: background-color 0.4s cubic-bezier(0.24, 0.63, 0.59, 1);
}

.sp-menu-dialog__main-link[aria-current=page]::after,
.sp-menu-dialog__main-link.is-parent-page::after {
    background-color: currentColor;
}

.sp-menu-dialog__bottom {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    margin-top: 5.8rem;
    padding: 0 2rem;
}

.sp-menu-dialog__sns {
    display: flex;
    gap: 0.9rem;
}

.sp-menu-dialog__sns-link svg {
    width: 3.3rem;
}

.sp-menu-dialog__sns-link svg path {
    fill: #d7d7d7;
}

.header-logo {
    filter: invert(0);
    transition: filter 0.5s ease-out;
    display: flex;
}

.header-logo img {
    width: 18.1rem;
    height: 7rem;
    backface-visibility: hidden;
    -moz-backface-visibility: hidden;
}

@media only screen and (max-width: 767px) {
    .header-logo img {
        width: 9.15rem;
        height: 3.5rem;
    }
}

.contact-link {
    position: relative;
    overflow: hidden;
    display: inline-block;
    padding: 1.8rem 4.2rem;
    border-radius: 3rem;
}

@media only screen and (max-width: 767px) {
    .contact-link {
        padding: 1.6rem 2.6rem;
    }
}

.contact-link::before {
    position: absolute;
    top: 1px;
    right: 1px;
    bottom: 1px;
    left: 1px;
    display: block;
    background-color: #383838;
    border-radius: 3rem;
    content: "";
}

.contact-link ._label {
    position: relative;
    z-index: 1;
    font-weight: bold;
    font-size: 1.35rem;
    line-height: 1.296;
    color: #fff;
    transition: color 0.5s cubic-bezier(0.3, 0.72, 0.56, 1);
}

@media only screen and (max-width: 767px) {
    .contact-link ._label {
        font-size: 1.1rem;
        line-height: 1.124;
    }
}

.contact-link::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    background-color: #fff;
    content: "";
    transform: scaleY(0);
    transform-origin: center top;
    transition: transform 0.5s cubic-bezier(0.3, 0.72, 0.56, 1);
}

@media (any-hover: hover) {
    .contact-link:hover ._label {
        color: #1a1a1a;
    }
    .contact-link:hover::after {
        transform: scaleY(1);
        transform-origin: center bottom;
    }
}

.pc-nav {
    display: flex;
    align-items: center;
    padding: 2.7rem 3.125vw 1.4rem;
    color: #d7d7d7;
    transition: color 0.5s ease-out, background-color 0.5s ease-out;
}

@media only screen and (max-width: 767px) {
    .pc-nav {
        display: none;
    }
}

.pc-nav.is-dark {
    color: #1a1a1a;
}

.pc-nav.is-dark .header-logo {
    margin-top: -0.3rem;
    filter: invert(1);
}

.pc-nav.is-dark .c-lang-switch__btn--ja:lang(ja) {
    color: #1a1a1a;
    border-color: currentColor;
}

.pc-nav.is-dark .c-lang-switch__btn--en:lang(en-US) {
    color: #1a1a1a;
    border-color: currentColor;
}

@media (any-hover: hover) {
    .pc-nav.is-dark .c-lang-switch__btn:hover {
        color: #1a1a1a;
    }
}

body.is-scroll-up .pc-nav {
    background-color: #1a1a1a;
}

body.is-scroll-up .pc-nav.is-dark {
    background-color: #eee;
}

.pc-nav__links-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    height: 5.4rem;
    margin-left: auto;
}

.pc-nav__links {
    display: flex;
    padding: 0 2.5vw;
}

.pc-nav__link-item:not(:first-child) {
    margin-left: 2rem;
}

.pc-nav__link {
    position: relative;
    overflow: hidden;
    display: inline-block;
}

.pc-nav__link::after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: transparent;
    transform: scaleX(0);
    content: "";
    transition: background-color 0.4s cubic-bezier(0.24, 0.63, 0.59, 1), transform 0.4s cubic-bezier(0.24, 0.63, 0.59, 1);
}

.pc-nav__link[aria-current=page]::after,
.pc-nav__link.is-parent-page::after {
    background-color: currentColor;
    transform: scaleX(1);
}

.pc-nav__link ._label {
    display: block;
    padding: 0.2rem 0;
    font-size: 1.3rem;
    line-height: 1.346;
    transition: transform 0.4s cubic-bezier(0.26, 0.67, 0.55, 0.98);
}

.pc-nav__link ._label:nth-child(2) {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
}

@media (any-hover: hover) {
    .pc-nav__link:hover ._label {
        transform: translateY(-100%);
    }
}

.pc-nav__lang-switch {
    margin-top: -0.4rem;
    padding: 0 1.796875vw;
    border-left: 1px solid #464646;
}

.pc-nav__contact {
    margin-left: 0.390625vw;
}

.sp-nav {
    display: none;
}

@media only screen and (max-width: 767px) {
    .sp-nav {
        display: flex;
        align-items: center;
        padding: 0 2rem 0.4rem;
        height: 8.8rem;
        color: #d7d7d7;
        transition: color 0.5s ease-out;
    }
}

.sp-nav.is-dark {
    color: #1a1a1a;
}

.sp-nav.is-dark .header-logo {
    margin-top: -0.3rem;
    filter: invert(1);
}

@media only screen and (max-width: 767px) {
    .sp-nav__contact {
        margin-left: auto;
    }
}

@media only screen and (max-width: 767px) {
    .sp-nav__menu {
        z-index: 1;
        display: block;
    }
}

@media only screen and (max-width: 767px) {
    .sp-nav__menu-trigger {
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 50%;
        margin-left: 0.5rem;
        border: 1px solid #424242;
        width: 4.3rem;
        height: 4.3rem;
        font-size: 0.9rem;
        line-height: 1.374;
        color: #fff;
        background-color: #1a1a1a;
    }
}

.sp-nav__menu-dialog {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    transform: translateX(100%);
    transition: transform 0.3s ease-in-out;
}

.sp-nav__menu-dialog.is-open {
    transform: translateX(0);
}

.footer {
    padding: 9.765625vw 9.453125vw 5.78125vw;
    background-color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .footer {
        padding: 7.5rem 2rem 5.6rem;
    }
}

.footer__body {
    display: flex;
}

@media only screen and (max-width: 767px) {
    .footer__body {
        display: block;
    }
}

.footer__nav {
    display: flex;
}

@media only screen and (max-width: 767px) {
    .footer__nav {
        display: block;
    }
}

.footer__logo {
    width: 40.546875vw;
}

@media only screen and (max-width: 767px) {
    .footer__logo {
        width: auto;
    }
}

.footer__logo-link img {
    width: 15rem;
    backface-visibility: hidden;
    -moz-backface-visibility: hidden;
}

@media only screen and (max-width: 767px) {
    .footer__logo-link img {
        width: 14.5rem;
        height: 5.5rem;
    }
}

.footer__page-list {
    width: 27.109375vw;
    margin-top: -0.7rem;
}

@media only screen and (max-width: 767px) {
    .footer__page-list {
        margin-top: 6rem;
        width: auto;
    }
}

.footer__page-link {
    position: relative;
    display: block;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .footer__page-link {
        font-size: 2.4rem;
        line-height: 1.45;
    }
}

.footer__page-link ._label {
    display: block;
    font-size: 2.5rem;
    line-height: 1.48;
    letter-spacing: -0.02em;
    color: #d7d7d7;
    transition: transform 0.4s cubic-bezier(0.26, 0.67, 0.55, 0.98);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.footer__page-link ._label:nth-child(2) {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
}

@media (any-hover: hover) {
    .footer__page-link:hover ._label {
        transform: translateY(-100%);
    }
}

.footer__sns-list {
    display: flex;
    gap: 2rem;
    margin-top: 3.6rem;
}

.footer__sns-item {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #000;
    -webkit-backdrop-filter: drop-shadow(2px 4px 6px #fff);
    backdrop-filter: drop-shadow(2px 4px 6px #fff);
    border-radius: 50%;
    border: 1px solid #fff;
    padding: 0 3px;
}

.footer__sns-link {
    font-size: 1.15rem;
    color: #a1a1a1;
    line-height: 2.304;
    letter-spacing: -0.04rem;
}

.footer__sns-link img {
    width: 40px;
}

@media only screen and (max-width: 767px) {
    .footer__sns-link {
        line-height: 2.087;
    }
}

.footer__sns-link svg {
    width: 3.7rem;
    height: 3.7rem;
}

.footer__sns-link svg path {
    fill: #d7d7d7;
    transition: fill 0.3s;
}

@media (any-hover: hover) {
    .footer__sns-link:hover svg path {
        fill: #fff;
    }
}

.footer__other-pages {
    margin-top: -0.8rem;
}

@media only screen and (max-width: 767px) {
    .footer__other-pages {
        margin-top: 2.3rem;
    }
}

.footer__other-page-link {
    position: relative;
    font-size: clamp(15px, 1.15rem, 20px);
    color: #a1a1a1;
    line-height: 2.304;
    letter-spacing: 0１em;
}

@media only screen and (max-width: 767px) {
    .footer__other-page-link {
        line-height: 2.087;
    }
}

.footer__other-page-link::after {
    position: absolute;
    left: 0;
    bottom: -2px;
    display: block;
    content: "";
    width: 100%;
    height: 1px;
    background-color: #a1a1a1;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.3s cubic-bezier(0.15, 0.38, 0.29, 0.99);
}

@media (any-hover: hover) {
    .footer__other-page-link:hover::after {
        transform: scaleX(1);
    }
}

.footer__copyright {
    margin-top: 10.3rem;
    font-size: clamp(15px, 1.15rem, 20px);
    color: #a1a1a1;
    line-height: 2.304;
    letter-spacing: 0.04em;
    text-align: right;
}

@media only screen and (max-width: 767px) {
    .footer__copyright {
        margin-top: 2.8rem;
        font-size: 1rem;
        line-height: 2.65;
    }
}

.top {
    position: relative;
    background-color: #1a1a1a;
    font-feature-settings: "palt";
}

.top__kv {
    padding-top: calc(10rem - 4.6875vw);
}

@media only screen and (max-width: 767px) {
    .top__kv {
        padding-top: 6.8rem;
    }
}

.top__about-us {
    position: relative;
    z-index: 1;
    margin-top: -15.625vw;
}

@media only screen and (max-width: 767px) {
    .top__about-us {
        margin-top: -17.8rem;
    }
}

.top__partners-and-insights {
    position: relative;
    z-index: 1;
    margin-top: -23.4375vw;
}

@media only screen and (max-width: 767px) {
    .top__partners-and-insights {
        margin-top: -25rem;
    }
}

.top__partners {
    position: relative;
}

.top__investees-insights {
    position: relative;
    overflow: hidden;
}

.top__news {
    position: relative;
    z-index: 1;
    margin-top: -15.625vw;
}

@media only screen and (max-width: 767px) {
    .top__news {
        margin-top: -15rem;
    }
}

.top__news::after {
    position: absolute;
    left: 3.125vw;
    bottom: 0;
    width: calc(100% - 6.25vw);
    height: 1px;
    content: "";
    display: block;
    background-color: rgba(0, 0, 0, 0.1);
}

@media only screen and (max-width: 767px) {
    .top__news::after {
        left: 2rem;
        width: calc(100% - 4rem);
    }
}

.top__portfolio {
    position: relative;
    z-index: 1;
    margin-top: -15.625vw;
}

@media only screen and (max-width: 767px) {
    .top__portfolio {
        margin-top: -15rem;
    }
}

.top__team {
    position: relative;
    z-index: 1;
    margin-top: -27.34375vw;
}

@media only screen and (max-width: 767px) {
    .top__team {
        margin-top: -20rem;
    }
}

.top__note {
    position: relative;
    z-index: 1;
    margin-top: -15.625vw;
    background-color: #fff;
    padding: 7.578125vw 0 23.4375vw;
    border-top-right-radius: 1.5625vw;
    border-top-left-radius: 1.5625vw;
}

@media only screen and (max-width: 767px) {
    .top__note {
        margin-top: -25rem;
        padding: 5.1rem 0 15rem;
        border-top-right-radius: 1.5rem;
        border-top-left-radius: 1.5rem;
    }
}

.top__openingCurtain {
    position: fixed;
    z-index: 1400;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #888;
}

.top__openingCurtain::before,
.top__openingCurtain::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    content: "";
    opacity: 0;
    transform-origin: top center;
}

.top__openingCurtain::before {
    background-color: #383838;
}

.top__openingCurtain::after {
    background-color: #090909;
}

.top__openingCurtain.is-open {
    pointer-events: none;
    visibility: hidden;
    background-color: transparent;
    transition: background-color 0s linear 0.8s, visibility 3s linear;
}

.top__openingCurtain.is-open::before,
.top__openingCurtain.is-open::after {
    opacity: 1;
    transform: scaleY(0);
    transition: opacity 0.6s linear, transform 0.7s cubic-bezier(0.8, 0, 0.48, 1) 1.2s;
}

.top__openingCurtain.is-open::before {
    transition: opacity 0.6s linear, transform 0.7s cubic-bezier(0.8, 0, 0.48, 1) 1.3s;
}

body:not([data-page-count="1"]) .top__openingCurtain {
    display: none;
}

.top-kv {
    position: relative;
    display: flex;
    flex-direction: column;
}

@media only screen and (max-width: 767px) {
    .top-kv {
        padding-bottom: 3.5rem;
    }
}

.top-kv__content {
    position: relative;
    overflow: hidden;
    order: 1;
}

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

.top-kv__portfolio-list {
    position: relative;
    overflow-x: hidden;
    display: flex;
    justify-content: space-between;
    padding: 4.6875vw 3.125vw;
    pointer-events: none;
    opacity: 0.01;
    -webkit-clip-path: inset(49.9% 0%);
    clip-path: inset(49.9% 0%);
}

.top-kv__portfolio-item {
    width: 15.234375vw;
    transition: width 0.65s cubic-bezier(0.87, 0, 0.13, 1);
}

.top-kv__portfolio-item:not(:first-child) {
    margin-left: 0.46875vw;
}

.top-kv__portfolio-item.is-first-transition {
    transition: width 0.65s cubic-bezier(1, 0, 0, 1);
}

.top-kv-portfolio {
    position: relative;
    overflow: hidden;
    z-index: 1;
    height: 43.0078125vw;
    border-radius: 0.78125vw;
}

.top-kv-portfolio__texts {
    position: absolute;
    z-index: 1;
    right: 0;
    bottom: 0;
    left: 0;
    height: 12.7rem;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.341) 0%, rgba(0, 0, 0, 0) 100%);
    pointer-events: none;
}

.top-kv-portfolio__texts.is-dark-bg {
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0) 100%);
}

.top-kv-portfolio__title {
    position: absolute;
    top: 2.75rem;
    left: 3rem;
    font-family: "Anton", "Helvetica", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 4.5rem;
    color: #fff;
    white-space: nowrap;
    opacity: 0;
    transition: opacity 0.6s ease-out;
}

.top-kv-portfolio__representative {
    position: absolute;
    bottom: 2.15rem;
    left: 3rem;
    font-family: "Noto Sans JP", "Helvetica", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 1.4rem;
    line-height: 1.25;
    color: #a1a1a1;
    opacity: 0;
    transition: opacity 0.6s ease-out;
}

.top-kv-portfolio__company-vertical {
    position: absolute;
    bottom: 1.35rem;
    left: 0.2rem;
    font-size: 1.2rem;
    color: #fff;
    line-height: 1.458;
    writing-mode: vertical-rl;
    opacity: 0;
    transition: opacity 0.4s ease-out 0.4s;
}

.top-kv-portfolio__visual {
    position: absolute;
    top: 0;
    left: 50%;
    width: 39.2578125vw;
    height: 100%;
    transform: translateX(-50%);
}

.top-kv-portfolio__visual img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.top-kv__sp-portfolios {
    padding: 3.5rem 0;
    pointer-events: none;
    opacity: 0.01;
    -webkit-clip-path: inset(49.9% 0%);
    clip-path: inset(49.9% 0%);
}

.top-kv__sp-portfolios-item {
    padding: 0 0.3rem;
}

.top-kv-sp-portfolio {
    position: relative;
}

.top-kv-sp-portfolio__texts {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 1.4rem 2.5rem;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.341) 0%, rgba(0, 0, 0, 0) 100%);
    opacity: 0;
    transition: opacity 0.6s ease-out;
}

.top-kv-sp-portfolio__texts.is-dark-bg {
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0) 100%);
}

.top-kv-sp-portfolio__title {
    font-size: 2.6rem;
    font-family: "Anton", "Helvetica", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    color: #fff;
    line-height: 1.5;
}

.top-kv-sp-portfolio__representative {
    font-size: 0.9rem;
    font-family: "Noto Sans JP", "Helvetica", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    color: #a1a1a1;
    line-height: 1.05;
}

.top-kv-sp-portfolio__visual {
    height: 34rem;
}

.top-kv-sp-portfolio__visual img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 0.8rem;
}

.top-kv__content.is-ready .top-kv__canvas {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0s linear 0.1s, visibility 0s linear 1s;
}

.top-kv__content.is-ready .top-kv__portfolio-list {
    opacity: 1;
    -webkit-clip-path: none;
    clip-path: none;
    pointer-events: auto;
}

.top-kv__content.is-ready .top-kv__portfolio-item {
    flex-grow: 1;
}

.top-kv__content.is-ready .top-kv__portfolio-item.is-active {
    width: 56.5625vw;
}

.top-kv__content.is-ready .top-kv__portfolio-item.is-active .top-kv-portfolio__title {
    opacity: 1;
}

.top-kv__content.is-ready .top-kv__portfolio-item.is-active .top-kv-portfolio__representative {
    opacity: 1;
    transition: opacity 0.7s cubic-bezier(0.165, 0.84, 0.44, 1) 0.35s;
}

.top-kv__content.is-ready .top-kv__portfolio-item.is-active .top-kv-portfolio__company-vertical {
    opacity: 0;
    transition: opacity 0.1s ease-out;
}

.top-kv__content.is-ready .top-kv-portfolio__company-vertical {
    opacity: 1;
}

.top-kv__content.is-ready .top-kv__sp-portfolios {
    opacity: 1;
    -webkit-clip-path: none;
    clip-path: none;
    pointer-events: auto;
}

.top-kv__content.is-ready .top-kv-sp-portfolio__texts {
    opacity: 1;
}

.top-note {
    padding: 0 9.375vw;
}

@media only screen and (max-width: 767px) {
    .top-note {
        padding: 0;
        overflow: hidden;
    }
}

.top-note__link {
    display: flex;
    flex-direction: column;
    height: 100%;
}

@media (any-hover: hover) {
    .top-note__link:hover .top-note__itemImage img {
        transform: scale(1.1);
    }
    .top-note__link:hover .top-note__itemIcon {
        background-color: #fff;
    }
    .top-note__link:hover .top-note__itemIcon svg path {
        fill: #1a1a1a;
    }
}

.top-note__header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 6rem;
}

@media only screen and (max-width: 767px) {
    .top-note__header {
        margin-bottom: 4.6rem;
        padding: 0 2rem;
    }
}

.top-note__header .top-section-heading {
    margin-left: -1.9rem;
}

@media only screen and (max-width: 767px) {
    .top-note__header .top-section-heading {
        margin-left: -1rem;
        padding: 2.1rem 0.9rem 2rem;
        line-height: 0.955;
    }
}

.top-note__description {
    margin-top: 2.734375vw;
    width: 39.609375vw;
    font-size: 1.4rem;
    line-height: 1.5;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .top-note__description {
        margin-top: 3.1rem;
        width: 100%;
        font-size: 1.2rem;
        line-height: 1.6;
    }
}

.top-note__list {
    display: flex;
    justify-content: space-between;
}

.top-note__list.is-hidden {
    display: none;
}

@media only screen and (max-width: 767px) {
    .top-note__list {
        gap: 2.8rem;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        margin-bottom: 4.3rem;
        padding: 0 2rem;
        scroll-padding: 2rem;
    }
}

.top-note__item {
    width: 25.15625vw;
    border: 1px solid rgba(26, 26, 26, 0.2);
    scroll-snap-align: start;
}

@media only screen and (max-width: 767px) {
    .top-note__item {
        flex-shrink: 0;
        width: 27.8rem;
    }
}

.top-note__itemImage {
    width: 100%;
    height: 13.125vw;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .top-note__itemImage {
        height: 14.5rem;
    }
}

.top-note__itemImage img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transform: scale(1);
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.top-note__itemText {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    padding: 1.875vw 2.8125vw 2.734375vw;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .top-note__itemText {
        padding: 1.6rem 1.9rem 2rem;
    }
}

.top-note__itemTitle {
    margin-bottom: 2rem;
    font-size: 1.4rem;
    line-height: 1.5;
    font-weight: 600;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

@media only screen and (max-width: 767px) {
    .top-note__itemTitle {
        margin-bottom: 4rem;
        font-size: 1.3rem;
        line-height: 1.6;
    }
}

.top-note__itemBottom {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-top: auto;
}

.top-note__itemDate {
    margin-bottom: -0.2rem;
    font-size: 1.4rem;
    letter-spacing: -0.05em;
}

@media only screen and (max-width: 767px) {
    .top-note__itemDate {
        font-size: 1.3rem;
    }
}

.top-note__itemIcon {
    background-color: #1a1a1a;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    border: solid 1px #1a1a1a;
    transition: background-color 0.3s ease-in;
}

.top-note__itemIcon svg {
    width: 1.1rem;
}

.top-note__itemIcon svg path {
    fill: #fff;
    transition: fill 0.3s ease-in;
}

.top-note__moreButton {
    display: flex;
    justify-content: flex-end;
    margin-top: 4.53125vw;
}

@media only screen and (max-width: 767px) {
    .top-note__moreButton {
        justify-content: center;
        margin-top: 2rem;
    }
}

.c-link {
    position: relative;
    width: 15.6rem;
    height: 3.8rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 2rem;
    border: 1px solid #1a1a1a;
    background-color: #1a1a1a;
    font-size: 1.35rem;
    line-height: 1;
    color: #fff;
    transition: background-color 0.15s ease-in, color 0.15s ease-in;
}

@media only screen and (max-width: 767px) {
    .c-link {
        width: 23rem;
        height: 4.4rem;
        border-radius: 2.2rem;
        font-size: 1.2rem;
    }
}

@media (any-hover: hover) {
    .c-link:hover {
        background-color: #fff;
        color: #1a1a1a;
    }
    .c-link:hover .c-link__internalIcon svg path,
    .c-link:hover .c-link__externalIcon svg path {
        fill: #1a1a1a;
    }
    .c-link:hover .c-link__internalIcon svg {
        transform: translateX(0);
    }
}

.c-link.is-white {
    border: 1px solid #fff;
    background-color: #fff;
    color: #1a1a1a;
}

.c-link.is-white .c-link__internalIcon svg path,
.c-link.is-white .c-link__externalIcon svg path {
    fill: #1a1a1a;
}

@media (any-hover: hover) {
    .c-link.is-white:hover {
        background-color: #1a1a1a;
        color: #fff;
    }
    .c-link.is-white:hover .c-link__internalIcon svg path,
    .c-link.is-white:hover .c-link__externalIcon svg path {
        fill: #fff;
    }
}

.c-link__text {
    padding-top: 0.1rem;
}

.c-link__internalIcon {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 1.5rem;
    width: 0.9rem;
    display: flex;
    align-items: center;
    gap: 0.9rem;
    margin: auto;
    overflow: hidden;
}

.c-link__internalIcon svg {
    flex-shrink: 0;
    width: 0.9rem;
    transform: translateX(-200%);
    transition: transform 0.45s ease-in;
}

.c-link__internalIcon svg path {
    fill: #fff;
    transition: fill 0.15s ease-in;
}

.c-link__externalIcon {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 0.9rem;
    margin: auto;
    overflow: hidden;
}

.c-link__externalIcon svg {
    width: 0.9rem;
}

.c-link__externalIcon svg path {
    fill: #fff;
    transition: fill 0.15s ease-in;
}

.top-insights {
    position: relative;
    padding: 7.421875vw 0 4.4140625vw;
}

@media only screen and (max-width: 767px) {
    .top-insights {
        padding: 6.3rem 0 4rem;
    }
}

.top-insights__header {
    padding: 0 4.765625vw;
    margin: 0 3.125vw;
}

@media only screen and (max-width: 767px) {
    .top-insights__header {
        padding: 0;
        margin: 0 2rem;
    }
}

@media only screen and (max-width: 767px) {
    .top-insights__header .top-section-heading {
        margin-left: -1rem;
        padding: 2.1rem 0.9rem 2rem;
        width: 23.7rem;
        line-height: 0.955;
    }
}

.top-insights__slide {
    margin-top: 4.0625vw;
}

@media only screen and (max-width: 767px) {
    .top-insights__slide {
        margin-top: 3.1rem;
    }
}

.top-insights__slide .splide__pagination {
    margin-top: 1.875vw;
}

.top-insights__slide .splide__pagination li {
    width: 0.46875vw;
    margin: 0 0.234375vw;
}

@media only screen and (max-width: 767px) {
    .top-insights__slide .splide__pagination {
        margin-top: 1.6rem;
    }
    .top-insights__slide .splide__pagination li {
        width: 0.5rem;
        margin: 0 0.25rem;
    }
}

.top-insights__slide .splide__pagination__page {
    display: block;
    width: 100%;
    height: 0.46875vw;
    background-color: #626262;
    border-radius: 50%;
}

.top-insights__slide .splide__pagination__page.is-active {
    background-color: #fff;
}

@media only screen and (max-width: 767px) {
    .top-insights__slide .splide__pagination__page {
        height: 0.5rem;
    }
}

.top-insights__item {
    pointer-events: none;
}

.top-insights__item.is-current .top-insight-card {
    transform: scale(1);
}

.top-insight-card {
    height: 100%;
    position: relative;
    overflow: hidden;
    border-radius: 1.5625vw;
    background-color: #fff;
    transition: transform 0.1s linear;
    pointer-events: auto;
    transform: scale(0.9);
    transition: transform 1s cubic-bezier(0.76, 0, 0.24, 1);
}

@media only screen and (max-width: 767px) {
    .top-insight-card {
        display: block;
        border-radius: 1.5rem;
        transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1);
    }
}

.top-insight-card__texts {
    padding: 4.453125vw 4.375vw;
    width: 40%;
    min-height: 70vh;
}

@media only screen and (max-width: 767px) {
    .top-insight-card__texts {
        position: relative;
        padding: 2.4rem 2rem 3.2rem;
        width: auto;
        min-height: auto;
    }
}

@keyframes investeesTitleHover {
    0% {
        transform: translateY(0);
        opacity: 1;
        -webkit-clip-path: polygon(0% 0%, 100% -30%, 100% 100%, 0% 130%);
        clip-path: polygon(0% 0%, 100% -30%, 100% 100%, 0% 130%);
    }
    49% {
        transform: translateY(-25%);
        opacity: 1;
        -webkit-clip-path: polygon(0% 130%, 100% 100%, 100% 100%, 0% 130%);
        clip-path: polygon(0% 130%, 100% 100%, 100% 100%, 0% 130%);
    }
    50% {
        transform: translateY(-25%);
        opacity: 0;
        -webkit-clip-path: polygon(0% 130%, 100% 100%, 100% 100%, 0% 130%);
        clip-path: polygon(0% 130%, 100% 100%, 100% 100%, 0% 130%);
    }
    51% {
        transform: translateY(25%);
        opacity: 0;
        -webkit-clip-path: polygon(0% -100%, 100% -100%, 100% -30%, 0% 0%);
        clip-path: polygon(0% -100%, 100% -100%, 100% -30%, 0% 0%);
    }
    100% {
        transform: translateY(0);
        opacity: 1;
        -webkit-clip-path: polygon(0% -100%, 100% -100%, 100% 100%, 0% 130%);
        clip-path: polygon(0% -100%, 100% -100%, 100% 100%, 0% 130%);
    }
}

.top-insight-card__name-en {
    display: block;
    font-size: 6.2rem;
    font-family: "Anton", "Helvetica", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    color: #1a1a1a;
    border-bottom: 0.2rem solid currentColor;
}

@media only screen and (max-width: 767px) {
    .top-insight-card__name-en {
        font-size: 4.3rem;
        line-height: 1.1;
    }
}

.top-insight-card__name-en ._link {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    padding-bottom: 1.4rem;
}

@media only screen and (max-width: 767px) {
    .top-insight-card__name-en ._link {
        padding-bottom: 0.9rem;
    }
}

@media (any-hover: hover) {
    .top-insight-card__name-en ._link:hover ._name {
        animation: investeesTitleHover 0.75s cubic-bezier(0.26, 0.52, 0.28, 0.96) forwards;
    }
    .top-insight-card__name-en ._link:hover ._iconWrapper {
        background-color: #fff;
    }
    .top-insight-card__name-en ._link:hover ._iconWrapper ._icon svg {
        transform: translateX(0);
    }
    .top-insight-card__name-en ._link:hover ._iconWrapper ._icon svg path {
        fill: #1a1a1a;
    }
}

.top-insight-card__name-en ._name {
    display: block;
}

.top-insight-card__name-en ._iconWrapper {
    position: relative;
    background-color: #1a1a1a;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.9rem;
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    border: solid 1px #1a1a1a;
    transition: background-color 0.3s ease-in;
}

@media only screen and (max-width: 767px) {
    .top-insight-card__name-en ._iconWrapper {
        margin-bottom: 0.5rem;
    }
}

.top-insight-card__name-en ._iconWrapper ._icon {
    position: absolute;
    top: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    gap: 1.1rem;
    width: 1.1rem;
    margin: auto;
    overflow: hidden;
}

.top-insight-card__name-en ._iconWrapper ._icon svg {
    flex-shrink: 0;
    width: 1.1rem;
    transform: translateX(-200%);
    transition: transform 0.45s ease-in;
}

.top-insight-card__name-en ._iconWrapper ._icon svg path {
    fill: #fff;
    transition: fill 0.3s ease-in;
}

.top-insight-card__profile {
    margin-top: 1.5625vw;
    font-size: 1.2rem;
    color: #6a6a6a;
    line-height: 1.25;
}

@media only screen and (max-width: 767px) {
    .top-insight-card__profile {
        margin-top: 1.5rem;
        font-size: 1.1rem;
        line-height: 1.591;
    }
}

.top-insight-card__profile ._name {
    font-family: "Noto Sans JP", "Helvetica", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}

.top-insight-card__message {
    margin-top: 3.203125vw;
    font-size: 1.3rem;
    color: #1a1a1a;
    line-height: 1.55;
    letter-spacing: 0.04em;
}

@media only screen and (max-width: 767px) {
    .top-insight-card__message {
        margin-top: 1.4rem;
        font-size: 1.2rem;
        line-height: 1.458;
        display: -webkit-box;
        overflow: hidden;
        -webkit-line-clamp: 7;
        -webkit-box-orient: vertical;
    }
}

.top-insight-card__visual {
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
}

@media only screen and (max-width: 767px) {
    .top-insight-card__visual {
        position: static;
        top: auto;
        right: auto;
        width: auto;
        height: 22.8rem;
    }
}

.top-insight-card__visual img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

@media only screen and (max-width: 767px) {
    .top-insight-card__visual img {
        -o-object-position: center 30%;
        object-position: center 30%;
    }
}

.top-insights__footer {
    display: flex;
    justify-content: flex-end;
    margin-top: 2.34375vw;
    padding: 0 9.453125vw;
    width: 100%;
    pointer-events: none;
}

@media only screen and (max-width: 767px) {
    .top-insights__footer {
        justify-content: center;
        margin-top: 3.2rem;
        padding: 0;
        width: auto;
        height: auto;
        pointer-events: auto;
    }
}

.top-insights__footer .c-link {
    position: relative;
    pointer-events: auto;
}

.top-insights__indicator {
    position: absolute;
    top: 0;
    right: 1.25vw;
    bottom: 0;
    padding: 50vh 0;
}

@media only screen and (max-width: 767px) {
    .top-insights__indicator {
        right: 0.8rem;
    }
}

.top-insights__indicator-list {
    position: sticky;
    top: 50vh;
    transform: translateY(-50%);
}

.top-insights__indicator-item:not(:first-child) {
    margin-top: 0;
}

.top-insights__indicator-item.is-active ._dot {
    opacity: 1;
}

.top-insights__indicator-item ._dot {
    display: inline-block;
    width: 0.46875vw;
    height: 0.46875vw;
    border-radius: 50%;
    background-color: #fff;
    opacity: 0.33;
    transition: opacity 0.4s ease-out;
}

@media only screen and (max-width: 767px) {
    .top-insights__indicator-item ._dot {
        width: 0.5rem;
        height: 0.5rem;
    }
}

.top-portfolio {
    position: relative;
    background-color: #1a1a1a;
    padding: 7.578125vw 3.125vw 15.625vw;
    border-top-right-radius: 1.5625vw;
    border-top-left-radius: 1.5625vw;
}

@media only screen and (max-width: 767px) {
    .top-portfolio {
        padding: 5rem 2rem 15rem;
        border-top-right-radius: 1.5rem;
        border-top-left-radius: 1.5rem;
    }
}

.top-portfolio__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 6.25vw;
}

@media only screen and (max-width: 767px) {
    .top-portfolio__header {
        padding: 0;
    }
}

.top-portfolio__header .top-section-heading {
    margin-left: -1.9rem;
}

@media only screen and (max-width: 767px) {
    .top-portfolio__header .top-section-heading {
        margin-left: -1rem;
    }
}

.top-portfolio__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: auto;
    grid-column-gap: 3.9166666667%;
    margin-top: 77px;
    padding: 0 6.25vw;
}

@media only screen and (max-width: 767px) {
    .top-portfolio__list {
        grid-template-columns: repeat(2, 1fr);
        margin-top: 4rem;
        margin-bottom: 1.1rem;
        padding: 0;
        gap: 0 1.1rem;
    }
}

.top-portfolio__item-link {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    min-height: 13.1rem;
}

@media only screen and (max-width: 767px) {
    .top-portfolio__item-link {
        min-height: 9.3rem;
    }
}

.top-portfolio__item-link::before,
.top-portfolio__item-link::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    content: "";
    display: block;
    background-color: #a1a1a1;
    transition: transform 0.25s ease-in-out;
}

.top-portfolio__item-link::before {
    transform: scaleX(0);
    transform-origin: left;
}

.top-portfolio__item-link::after {
    transform: scaleX(1);
    transform-origin: right;
    transition-delay: 0.25s;
}

@media (any-hover: hover) {
    .top-portfolio__item-link:hover::before {
        transform: scaleX(1);
        transition-delay: 0.25s;
    }
    .top-portfolio__item-link:hover::after {
        transform: scaleX(0);
        transition-delay: 0s;
    }
}

.top-portfolio__item-link-inner {
    display: block;
    padding: 2rem 0;
}

@media only screen and (max-width: 767px) {
    .top-portfolio__item-link-inner {
        padding: 1.5rem 0;
    }
}

.top-portfolio__item-company {
    display: block;
    font-size: 2.5rem;
    letter-spacing: -0.02em;
    color: #fff;
    word-break: break-word;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

@media only screen and (max-width: 767px) {
    .top-portfolio__item-company {
        font-size: 1.9rem;
    }
}

.top-portfolio__item-label {
    display: inline-flex;
    gap: 0 0.3rem;
    margin-top: 0.7rem;
    padding: 0.4rem 1rem;
    font-size: 1rem;
    font-weight: 300;
    color: #fff;
    border-radius: 5rem;
    border: 1px solid currentColor;
}

@media only screen and (max-width: 767px) {
    .top-portfolio__item-label {
        padding: 0.4rem 0.7rem;
        font-size: 1.1rem;
        line-height: 1.2;
    }
}

.top-portfolio__link {
    display: flex;
    justify-content: flex-end;
    margin-top: 2.421875vw;
    padding: 0 6.25vw;
}

@media only screen and (max-width: 767px) {
    .top-portfolio__link {
        justify-content: center;
        margin-top: 2.7rem;
    }
}

.top-about-us__body {
    position: relative;
    padding: 13.125vw 9.375vw 19.53125vw;
    background-color: #eee;
    border-top-right-radius: 1.5625vw;
    border-top-left-radius: 1.5625vw;
}

@media only screen and (max-width: 767px) {
    .top-about-us__body {
        padding: 5.1rem 2rem 20rem;
        border-top-right-radius: 1.5rem;
        border-top-left-radius: 1.5rem;
    }
}

.top-about-us__body .top-section-heading {
    margin-left: -1.9rem;
}

@media only screen and (max-width: 767px) {
    .top-about-us__body .top-section-heading {
        margin-left: -1rem;
    }
}

.top-about-us__title {
    font-size: 16rem;
    color: #fff;
    letter-spacing: -0.02em;
}

@media only screen and (max-width: 767px) {
    .top-about-us__title {
        margin-left: 1.25rem;
        font-size: 6.5rem;
    }
}

.top-about-us__content {
    display: flex;
    margin-top: 3.671875vw;
}

@media only screen and (max-width: 767px) {
    .top-about-us__content {
        display: block;
        margin-top: 3.1rem;
    }
}

.top-about-introduction {
    width: 50%;
}

@media only screen and (max-width: 767px) {
    .top-about-introduction {
        width: auto;
    }
}

.top-about-introduction__title {
    font-size: 3.1rem;
    font-weight: 600;
    color: #1a1a1a;
    line-height: 1.419;
}

@media only screen and (max-width: 767px) {
    .top-about-introduction__title {
        font-size: 2.1rem;
        line-height: 1.619;
    }
}

.top-about-introduction__description {
    margin-top: 2.34375vw;
    width: 28.3984375vw;
    font-size: 1.4rem;
    color: #1a1a1a;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .top-about-introduction__description {
        margin-top: 1.4rem;
        width: auto;
        font-size: 1.2rem;
        line-height: 1.583;
    }
}

.top-about-introduction__more {
    margin-top: 2.890625vw;
}

.top-about-us__service {
    flex: 1;
    margin-top: -10.3125vw;
    border-top: 2px solid #000;
}

@media only screen and (max-width: 767px) {
    .top-about-us__service {
        margin-top: 2.9rem;
    }
}

.top-about-performance {
    padding: 0.9375vw 0 2.65625vw;
    border-bottom: 1px solid #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .top-about-performance {
        padding: 1.2rem 0 3.4rem;
    }
}

.top-about-performance__title {
    display: flex;
    align-items: center;
    font-size: 1.4rem;
    letter-spacing: -0.02em;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .top-about-performance__title {
        font-size: 1.2rem;
    }
}

.top-about-performance__title::before {
    display: inline-block;
    margin-right: 0.5rem;
    width: 0.75rem;
    height: 0.75rem;
    border-radius: 50%;
    background-color: currentColor;
    content: "";
}

.top-about-performance__list {
    display: flex;
    justify-content: flex-end;
}

.top-about-performance__item {
    overflow: hidden;
    padding: 1.1rem 3.4rem 2.5rem;
    font-size: 3.1rem;
    letter-spacing: -0.02em;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .top-about-performance__item {
        padding: 2.3rem 0 0 1.3rem;
        width: 50%;
        font-size: 2.7rem;
    }
}

.top-about-performance__item:lang(en-US) {
    padding: 1.4rem 2.4rem 2.5rem 2.1rem;
    font-size: 2.4rem;
}

@media only screen and (max-width: 767px) {
    .top-about-performance__item:lang(en-US) {
        padding: 1.6rem 1.1rem 1.3rem 1.8rem;
    }
}

.top-about-performance__item:not(:first-child) {
    border-left: 1px solid #1a1a1a;
}

.top-about-performance__item:not(:first-child) ._number {
    transition-delay: 0.2s;
}

.top-about-performance__item:last-child {
    padding-right: 0;
}

@media only screen and (max-width: 767px) {
    .top-about-performance__item:last-child {
        padding-left: 1.6rem;
    }
}

.top-about-performance__item:last-child:lang(en-US) {
    padding-left: 1.6rem;
    padding-right: 1.8rem;
}

@media only screen and (max-width: 767px) {
    .top-about-performance__item:last-child:lang(en-US) {
        padding-left: 1.7rem;
        padding-right: 0;
    }
}

.top-about-performance__item.is-visible ._number {
    transform: translateY(0);
}

@media only screen and (max-width: 767px) {
    .top-about-performance__item ._category:lang(en-US) {
        display: block;
        width: 100%;
        padding-left: 0.3rem;
        font-size: 1.8rem;
    }
}

.top-about-performance__item ._number {
    position: relative;
    bottom: -0.5rem;
    display: inline-block;
    font-size: 7.5rem;
    font-family: "Anton", "Helvetica", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    color: #1a1a1a;
    transform: translateY(120%);
    transition: transform 0.6s cubic-bezier(0.29, 0.58, 0.52, 0.99);
}

@media only screen and (max-width: 767px) {
    .top-about-performance__item ._number {
        bottom: -0.4rem;
        font-size: 5.5rem;
        line-height: 1.455;
    }
}

.top-about-performance__item ._number:lang(en-US) {
    font-size: 7rem;
    vertical-align: bottom;
}

@media only screen and (max-width: 767px) {
    .top-about-performance__item ._number:lang(en-US) {
        font-size: 5.5rem;
        line-height: 1;
    }
}

.top-about-performance__item ._unit {
    font-size: 2.65rem;
    font-family: "Noto Sans JP", "Helvetica", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}

@media only screen and (max-width: 767px) {
    .top-about-performance__item ._unit {
        font-size: 2.2rem;
    }
}

.top-about-performance__item ._unit:lang(en-US) {
    margin-left: -0.2rem;
    font-size: 2.2rem;
    letter-spacing: -0.06em;
}

@media only screen and (max-width: 767px) {
    .top-about-performance__item ._unit:lang(en-US) {
        margin-left: 0;
        font-size: 1.7rem;
        vertical-align: bottom;
    }
}

.top-about-performance__note {
    display: block;
    font-size: 1rem;
    font-family: "Noto Sans JP", "Helvetica", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    color: #545454;
    line-height: 1.4;
    text-align: right;
    letter-spacing: -0.02em;
}

@media only screen and (max-width: 767px) {
    .top-about-performance__note {
        margin-top: 1.8rem;
        font-size: 1rem;
    }
}

.top-about-cases {
    position: relative;
    padding: 3.0078125vw 0 2.8125vw;
}

@media only screen and (max-width: 767px) {
    .top-about-cases {
        padding: 0;
    }
}

.top-about-cases::after {
    position: absolute;
    right: 2rem;
    bottom: 0;
    left: 0;
    display: inline-block;
    height: 1px;
    background-color: #1a1a1a;
    content: "";
}

@media only screen and (max-width: 767px) {
    .top-about-cases::after {
        right: 2.7rem;
    }
}

.top-about-cases:lang(en-US)::after {
    width: calc(100% - 3.5em);
}

@media only screen and (max-width: 767px) {
    .top-about-cases:lang(en-US)::after {
        width: calc(100% - 4.1em);
    }
}

.top-about-cases__list {
    display: flex;
}

@media only screen and (max-width: 767px) {
    .top-about-cases__list {
        display: block;
    }
}

.top-about-cases__item {
    flex: 1;
    padding: 1.09375vw 1.5234375vw;
}

@media only screen and (max-width: 767px) {
    .top-about-cases__item {
        padding: 2.8rem 2rem 2rem;
    }
}

.top-about-cases__item:not(:first-child) {
    border-left: 1px solid #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .top-about-cases__item:not(:first-child) {
        border-top: 1px solid #1a1a1a;
        border-left: none;
    }
}

@media only screen and (max-width: 767px) {
    .top-about-case {
        display: flex;
    }
}

.top-about-case__title {
    font-size: 1rem;
    letter-spacing: -0.02em;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .top-about-case__title {
        width: 7.35rem;
    }
}

.top-about-case__description {
    margin-top: 0.5rem;
    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: -0.02em;
    color: #1a1a1a;
    line-height: 1.571;
}

@media only screen and (max-width: 767px) {
    .top-about-case__description {
        flex: 1;
        margin-top: -0.3rem;
    }
}

.top-about-cases__more {
    position: absolute;
    right: -0.7rem;
    bottom: -1rem;
    font-size: 1.8rem;
    font-weight: 600;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .top-about-cases__more {
        right: 0;
        bottom: -1.2rem;
    }
}

.top-about-us__more {
    display: flex;
    justify-content: flex-end;
    margin-top: 2.890625vw;
}

@media only screen and (max-width: 767px) {
    .top-about-us__more {
        justify-content: center;
        margin-top: 4.8rem;
    }
}

.top-about-us__more .c-link {
    margin-right: -0.546875vw;
}

@media only screen and (max-width: 767px) {
    .top-about-us__more .c-link {
        margin-right: 0;
    }
}

.top-partners {
    position: relative;
    background-color: #1a1a1a;
    border-top-right-radius: 1.5625vw;
    border-top-left-radius: 1.5625vw;
}

@media only screen and (max-width: 767px) {
    .top-partners {
        border-top-right-radius: 1.5rem;
        border-top-left-radius: 1.5rem;
    }
}

.top-partners__inner {
    padding: 7.421875vw 0 5.46875vw;
}

@media only screen and (max-width: 767px) {
    .top-partners__inner {
        padding: 5.1rem 0 4rem;
    }
}

.top-partners__header {
    padding: 0 7.8125vw;
}

@media only screen and (max-width: 767px) {
    .top-partners__header {
        padding: 0 1rem;
    }
}

.top-partners__body {
    overflow: hidden;
    margin-top: -10.2rem;
}

@media only screen and (max-width: 767px) {
    .top-partners__body {
        margin-top: 1.3rem;
    }
}

.top-partners__texts {
    padding-left: 50%;
    padding-right: 9.4921875vw;
}

@media only screen and (max-width: 767px) {
    .top-partners__texts {
        padding: 0 1.85rem;
    }
}

.top-partners__subtitle {
    padding-top: 1.3rem;
    font-size: 3.1rem;
    font-weight: 600;
    color: #fff;
    line-height: 1.419;
}

@media only screen and (max-width: 767px) {
    .top-partners__subtitle {
        font-size: 2.1rem;
        line-height: 1.619;
    }
}

.top-partners__description {
    margin-top: 1.5625vw;
    font-size: 1.4rem;
    color: #d4d4d4;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .top-partners__description {
        margin-top: 1.3rem;
        font-size: 1.2rem;
        line-height: 1.583;
    }
}

.top-partners__slide {
    margin-top: 5.703125vw;
}

@media only screen and (max-width: 767px) {
    .top-partners__slide {
        margin-top: 4.4rem;
    }
}

.top-partners__item:not(:first-child) {
    margin-left: 1.171875vw;
}

@media only screen and (max-width: 767px) {
    .top-partners__item:not(:first-child) {
        margin-left: 1rem;
    }
}

@media (any-hover: hover) {
    .top-partners__company-link:hover .top-partners__company ._visual img {
        transform: scale(1.1);
    }
}

.top-partners__company {
    width: 19.0625vw;
}

@media only screen and (max-width: 767px) {
    .top-partners__company {
        width: 24.1rem;
    }
}

.top-partners__company ._visual {
    overflow: hidden;
    border-radius: 0.78125vw;
}

@media only screen and (max-width: 767px) {
    .top-partners__company ._visual {
        border-radius: 1rem;
    }
}

.top-partners__company ._visual img {
    width: 100%;
    height: 23.28125vw;
    -o-object-fit: cover;
    object-fit: cover;
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

@media only screen and (max-width: 767px) {
    .top-partners__company ._visual img {
        height: 29.4rem;
    }
}

.top-partners__company ._name {
    margin-top: 1.09375vw;
    font-size: 1.2rem;
    font-family: "Noto Sans JP", "Helvetica", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    color: #a1a1a1;
    line-height: 1.458;
}

@media only screen and (max-width: 767px) {
    .top-partners__company ._name {
        margin-top: 0.7rem;
        font-size: 1.1rem;
        line-height: 1.591;
    }
}

.top-partners__company ._representative {
    display: flex;
    flex-wrap: wrap;
    gap: 0 0.5rem;
    margin-top: 0.46875vw;
    font-size: 1.4rem;
    font-family: "Noto Sans JP", "Helvetica", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    color: #d7d7d7;
    line-height: 1.25;
}

@media only screen and (max-width: 767px) {
    .top-partners__company ._representative {
        margin-top: 0.4rem;
    }
}

.top-partners__footer {
    display: flex;
    justify-content: flex-end;
    margin-top: 4.53125vw;
    padding: 0 9.4921875vw;
}

@media only screen and (max-width: 767px) {
    .top-partners__footer {
        justify-content: center;
        margin-top: 4.7rem;
        padding: 0;
    }
}

.top-team {
    position: relative;
    background-color: #1a1a1a;
    padding: 7.1875vw 9.375vw 12.8125vw;
    border-radius: 1.5625vw 1.5625vw 0 0;
}

@media only screen and (max-width: 767px) {
    .top-team {
        padding: 4.9rem 2rem 7.7rem;
        border-radius: 1.5rem 1.5rem 0 0;
    }
}

.top-team__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.top-team__header .top-section-heading {
    margin-left: -1.9rem;
}

@media only screen and (max-width: 767px) {
    .top-team__header .top-section-heading {
        margin-left: -1rem;
    }
}

.top-team__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: auto;
    gap: 4.296875vw 3.3333333333%;
    margin-top: 6.40625vw;
}

@media only screen and (max-width: 767px) {
    .top-team__list {
        grid-template-columns: repeat(2, 1fr);
        gap: 2.7rem 1.6rem;
        margin-top: 3.5rem;
    }
}

.top-team__item {
    text-align: right;
}

.top-team__itemLink {
    position: relative;
}

@media (any-hover: hover) {
    .top-team__itemLink:hover .top-team__itemImage img {
        transform: scale(1.1);
    }
}

.top-team__itemImage {
    width: 100%;
    height: 31.5625vw;
    margin-bottom: 1.8rem;
    border-radius: 0.78125vw;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .top-team__itemImage {
        width: 16rem;
        height: 20.2rem;
        margin-bottom: 1.4rem;
        border-radius: 0.5rem;
    }
}

.top-team__itemImage img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-clip-path: inset(100% 0 0 0);
    clip-path: inset(100% 0 0 0);
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-clip-path 1s cubic-bezier(0.15, 0.66, 0.39, 0.99);
    transition: clip-path 1s cubic-bezier(0.15, 0.66, 0.39, 0.99), transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: clip-path 1s cubic-bezier(0.15, 0.66, 0.39, 0.99), transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-clip-path 1s cubic-bezier(0.15, 0.66, 0.39, 0.99);
}

.top-team__itemImage.is-visible img {
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
}

.top-team__itemName {
    display: block;
    margin-bottom: 0.7rem;
    font-size: 1.9rem;
    letter-spacing: -0.02em;
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .top-team__itemName {
        margin-bottom: 0.3rem;
        font-size: 1.2rem;
    }
}

.top-team__itemPosition {
    display: block;
    font-size: 1.5rem;
    letter-spacing: -0.02em;
    color: #a1a1a1;
}

@media only screen and (max-width: 767px) {
    .top-team__itemPosition {
        font-size: 1rem;
    }
}

.top-team__link {
    display: flex;
    justify-content: flex-end;
    margin-top: 4.453125vw;
}

@media only screen and (max-width: 767px) {
    .top-team__link {
        justify-content: center;
        margin-top: 4.5rem;
    }
}

.top-news {
    background-color: #eee;
    padding: 7.578125vw 9.375vw 10.78125vw;
    border-radius: 1.5625vw 1.5625vw 0 0;
}

@media only screen and (max-width: 767px) {
    .top-news {
        padding: 5.2rem 2rem 7.5rem;
        border-radius: 1.5rem 1.5rem 0 0;
    }
}

.top-news__header {
    position: relative;
    display: flex;
    justify-content: space-between;
    margin-bottom: 1.171875vw;
    padding-bottom: 2.1875vw;
}

@media only screen and (max-width: 767px) {
    .top-news__header {
        margin-bottom: 1.5rem;
        padding-bottom: 2rem;
    }
}

.top-news__header .top-section-heading {
    margin-left: -1.9rem;
}

@media only screen and (max-width: 767px) {
    .top-news__header .top-section-heading {
        margin-left: -1.1rem;
    }
}

.top-news__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: auto;
    grid-gap: 0 3.8461538462%;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .top-news__list {
        display: block;
    }
}

@media only screen and (max-width: 767px) {
    .top-news__item:nth-child(n+4) {
        display: none;
    }
}

.top-news__item:nth-child(n+7) {
    display: none;
}

.top-news__item-link {
    position: relative;
    display: block;
    padding: 0.9rem 0 6.2rem;
}

@media only screen and (max-width: 767px) {
    .top-news__item-link {
        padding: 0.9rem 0 3.6rem;
    }
}

.top-news__item-link::before,
.top-news__item-link::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    content: "";
    display: block;
    background-color: #1a1a1a;
    transition: transform 0.25s ease-in-out;
}

.top-news__item-link::before {
    transform: scaleX(0);
    transform-origin: left;
}

.top-news__item-link::after {
    transform: scaleX(1);
    transform-origin: right;
    transition-delay: 0.25s;
}

@media (any-hover: hover) {
    .top-news__item-link:hover::before {
        transform: scaleX(1);
        transition-delay: 0.25s;
    }
    .top-news__item-link:hover::after {
        transform: scaleX(0);
        transition-delay: 0s;
    }
    .top-news__item-link:hover .top-news__item-icon {
        background-color: #fff;
    }
    .top-news__item-link:hover .top-news__item-icon svg path {
        fill: #1a1a1a;
    }
    .top-news__item-link:hover[target=_self] .top-news__item-icon ._icon svg {
        transform: translateX(0);
    }
}

.top-news__item-header {
    margin-bottom: 2.4rem;
}

@media only screen and (max-width: 767px) {
    .top-news__item-header {
        margin-bottom: 2.5rem;
    }
}

.top-news__item-date {
    position: relative;
    padding-left: 1.1rem;
    font-size: 1.4rem;
    letter-spacing: -0.02em;
}

.top-news__item-date::before {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 0.7rem;
    height: 0.7rem;
    content: "";
    display: block;
    margin: auto;
    background-color: #1a1a1a;
    border-radius: 50%;
}

.top-news__item-category {
    display: inline-block;
    margin-left: 1rem;
    padding: 0.4rem 1.5rem 0.3rem;
    border: solid 1px #1a1a1a;
    border-radius: 1.9rem;
    font-size: 1.1rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.02em;
}

.top-news__item-body {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.top-news__item-title {
    width: 19.21875vw;
    font-size: 1.4rem;
    line-height: 1.5;
    font-weight: 600;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

@media only screen and (max-width: 767px) {
    .top-news__item-title {
        width: 26.1rem;
        font-size: 1.3rem;
    }
}

.top-news__item-icon {
    background-color: #1a1a1a;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    border: solid 1px #1a1a1a;
    transition: background-color 0.3s ease-in;
}

.top-news__item-icon ._icon {
    display: flex;
    align-items: center;
    width: 1.1rem;
    height: 1.1rem;
}

.top-news__item-icon ._icon svg {
    width: 1.1rem;
}

.top-news__item-icon ._icon svg path {
    fill: #fff;
    transition: fill 0.3s ease-in;
}

.top-news__item-link[target=_self] .top-news__item-icon ._icon {
    gap: 1.1rem;
    justify-content: flex-start;
    margin: auto;
    overflow: hidden;
}

.top-news__item-link[target=_self] .top-news__item-icon ._icon svg {
    flex-shrink: 0;
    transform: translateX(-200%);
    transition: transform 0.3s ease-in;
}

.top-news__link {
    display: flex;
    justify-content: flex-end;
    margin-top: 4.375vw;
}

@media only screen and (max-width: 767px) {
    .top-news__link {
        justify-content: center;
        margin-top: 0.2rem;
    }
}

.top-pinned-news {
    position: relative;
    display: block;
}

.top-pinned-news::before,
.top-pinned-news::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    content: "";
    display: block;
    background-color: #1a1a1a;
    transition: transform 0.4s ease-in-out;
}

.top-pinned-news::before {
    transform: scaleX(0);
    transform-origin: left;
}

.top-pinned-news::after {
    transform: scaleX(1);
    transform-origin: right;
    transition-delay: 0.25s;
}

@media (any-hover: hover) {
    .top-pinned-news:hover::before {
        transform: scaleX(1);
        transition-delay: 0.25s;
    }
    .top-pinned-news:hover::after {
        transform: scaleX(0);
        transition-delay: 0s;
    }
    .top-pinned-news:hover .top-pinned-news__icon {
        background-color: #fff;
    }
    .top-pinned-news:hover .top-pinned-news__icon svg path {
        fill: #1a1a1a;
    }
    .top-pinned-news:hover[target=_self] .top-pinned-news__icon ._icon svg {
        transform: translateX(0);
    }
}

.top-pinned-news__inner {
    padding: 0.9rem 0 4.5rem;
}

@media only screen and (max-width: 767px) {
    .top-pinned-news__inner {
        padding: 0.85rem 0 3.1rem;
    }
}

.top-pinned-news__date {
    position: relative;
    padding-left: 1.1rem;
    font-size: 1.4rem;
    letter-spacing: -0.02em;
    color: #1a1a1a;
}

.top-pinned-news__date::before {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 0.7rem;
    height: 0.7rem;
    content: "";
    display: block;
    margin: auto;
    background-color: #1a1a1a;
    border-radius: 50%;
}

.top-pinned-news__category {
    display: inline-block;
    margin-left: 1rem;
    padding: 0.4rem 1.5rem 0.3rem;
    border: solid 1px #1a1a1a;
    border-radius: 1.9rem;
    font-size: 1.1rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.02em;
    color: #1a1a1a;
}

.top-pinned-news__category--featured {
    margin-left: 0.3rem;
    color: #fff;
    background-color: #1a1a1a;
}

.top-pinned-news__body {
    display: flex;
    margin-top: 1.71875vw;
}

@media only screen and (max-width: 767px) {
    .top-pinned-news__body {
        margin-top: 1.75rem;
    }
}

.top-pinned-news__visual img {
    width: auto;
    max-width: 22.1875vw;
    height: 17.5rem;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center top;
    object-position: center top;
}

@media only screen and (max-width: 767px) {
    .top-pinned-news__visual img {
        width: 9rem;
        max-width: none;
        height: auto;
        max-height: 13.5rem;
    }
}

.top-pinned-news__content {
    flex: 1;
    margin-left: 7.2rem;
    padding-top: 0.5rem;
}

@media only screen and (max-width: 767px) {
    .top-pinned-news__content {
        margin-left: 2.2rem;
    }
}

.top-pinned-news__content ._title {
    font-size: 2.15rem;
    font-weight: 600;
    color: #1a1a1a;
    line-height: 1.442;
}

@media only screen and (max-width: 767px) {
    .top-pinned-news__content ._title {
        font-size: 1.45rem;
        line-height: 1.517;
    }
}

.top-pinned-news__content ._content {
    margin-top: 1.40625vw;
    font-size: 1.5rem;
    color: #1a1a1a;
    line-height: 1.5;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

@media only screen and (max-width: 767px) {
    .top-pinned-news__content ._content {
        display: none;
    }
}

.top-pinned-news__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    align-self: center;
    margin-left: 16.3rem;
    width: 5.8rem;
    height: 5.8rem;
    border-radius: 50%;
    background-color: #1a1a1a;
    border: solid 1px #1a1a1a;
    transition: background-color 0.3s ease-in;
}

@media only screen and (max-width: 767px) {
    .top-pinned-news__icon {
        margin-left: 2.7rem;
        width: 3rem;
        height: 3rem;
    }
}

.top-pinned-news__icon ._icon {
    display: flex;
    align-items: center;
    width: 1.6rem;
    height: 1.6rem;
}

@media only screen and (max-width: 767px) {
    .top-pinned-news__icon ._icon {
        width: 1.1rem;
        height: 1.1rem;
    }
}

.top-pinned-news__icon ._icon svg {
    width: 100%;
}

.top-pinned-news__icon ._icon svg path {
    fill: #fff;
    transition: fill 0.3s ease-in;
}

.top-pinned-news[target=_self] .top-pinned-news__icon ._icon {
    gap: 1.6rem;
    justify-content: flex-start;
    margin: auto;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .top-pinned-news[target=_self] .top-pinned-news__icon ._icon {
        gap: 1.1rem;
    }
}

.top-pinned-news[target=_self] .top-pinned-news__icon ._icon svg {
    flex-shrink: 0;
    transform: translateX(-200%);
    transition: transform 0.3s ease-in;
}

.top-section-heading {
    position: relative;
    display: inline-block;
    padding: 2.5rem 2.5rem 2.3rem 1.4rem;
    font-size: 6.9rem;
    line-height: 1;
    color: #fff;
    letter-spacing: -0.02em;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .top-section-heading {
        padding: 1.8rem 0.9rem 1.6rem;
        font-size: 4rem;
    }
}

.top-section-heading.is-dark {
    color: #1a1a1a;
}

.top-section-heading.is-visible::before,
.top-section-heading.is-visible::after {
    opacity: 1;
}

.top-section-heading.is-visible::before {
    transform: translateX(4.7rem);
}

@media only screen and (max-width: 767px) {
    .top-section-heading.is-visible::before {
        transform: translateX(2.9rem);
    }
}

.top-section-heading.is-visible::after {
    transform: translateX(calc(-100% + 4.75rem));
}

@media only screen and (max-width: 767px) {
    .top-section-heading.is-visible::after {
        transform: translateX(calc(-100% + 2.9rem));
    }
}

.top-section-heading::before,
.top-section-heading::after {
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: currentColor;
    content: "";
    transform: translateX(0);
    opacity: 0;
    transition: opacity 0.75s 0.25s, transform 0.9s cubic-bezier(0.22, 1, 0.36, 1) 0.25s;
}

.top-section-heading::before {
    top: 0;
}

.top-section-heading::after {
    bottom: 0;
}

.top-section-heading__text {
    display: block;
    transform: translateY(100%);
    -webkit-clip-path: polygon(0% -100%, 100% -100%, 100% -30%, 0% 0%);
    clip-path: polygon(0% -100%, 100% -100%, 100% -30%, 0% 0%);
    transition: 0.6s cubic-bezier(0.26, 0.52, 0.28, 0.96);
    transition-property: transform, -webkit-clip-path;
    transition-property: transform, clip-path;
    transition-property: transform, clip-path, -webkit-clip-path;
}

.top-section-heading.is-visible .top-section-heading__text {
    transform: translateY(0);
    -webkit-clip-path: polygon(0% -100%, 100% -100%, 100% 100%, 0% 130%);
    clip-path: polygon(0% -100%, 100% -100%, 100% 100%, 0% 130%);
}

.top-section-heading__text:nth-child(2) {
    transition-delay: 0.2s;
}

.news {
    position: relative;
    background-color: #eee;
}

.news:after {
    content: "";
    display: block;
    height: 1px;
    background: rgba(26, 26, 26, 0.1);
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
}

@media only screen and (max-width: 767px) {
    .news {
        z-index: 1;
    }
    .news:after {
        bottom: 0.1rem;
    }
}

.news__inner {
    padding: 11.640625vw 9.375vw 14.0625vw;
}

@media only screen and (max-width: 767px) {
    .news__inner {
        padding: 11.2rem 0 11.2rem;
    }
}

.news__heading {
    margin-bottom: 8.75vw;
}

@media only screen and (max-width: 767px) {
    .news__heading {
        margin-bottom: 4.8rem;
        padding: 0 2rem;
    }
}

.news__filter {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8.3rem;
}

@media only screen and (max-width: 767px) {
    .news__filter {
        display: block;
        margin-bottom: 4rem;
    }
}

@media only screen and (max-width: 767px) {
    .news__categories {
        margin-bottom: 2.5rem;
    }
}

@media only screen and (max-width: 767px) {
    .news__years {
        display: flex;
        justify-content: flex-end;
    }
}

.news__cards {
    position: relative;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: auto;
    grid-gap: 6.875vw 3.8461538462%;
    margin-bottom: 7.96875vw;
}

@media only screen and (max-width: 767px) {
    .news__cards {
        display: flex;
        flex-direction: column;
        gap: 5rem;
        margin-bottom: 6.8rem;
        padding: 0 2rem;
    }
}

.news__notfound {
    color: #1a1a1a;
    font-size: 1.4rem;
    font-weight: bold;
    letter-spacing: 0.04em;
}

@media only screen and (max-width: 767px) {
    .news__notfound {
        padding: 0 2rem;
    }
}

.news__pagination {
    position: relative;
    width: 46.71875vw;
    margin: auto;
}

@media only screen and (max-width: 767px) {
    .news__pagination {
        width: 100%;
    }
}

.news-categories {
    display: flex;
    flex-wrap: wrap;
    gap: 1.2rem;
}

@media only screen and (max-width: 767px) {
    .news-categories {
        flex-wrap: nowrap;
        margin-bottom: -1rem;
        padding: 0 2rem 1rem;
        gap: 0.8rem;
        overflow-x: auto;
    }
}

@media only screen and (max-width: 767px) {
    .news-categories__item {
        flex-shrink: 0;
    }
}

.news-categories__link {
    display: inline-flex;
    align-items: center;
    background-color: #d7d7d7;
    padding: 0 1.8rem;
    height: 3.2rem;
    border-radius: 2rem;
    font-weight: 600;
    font-size: 1.3rem;
    letter-spacing: 0.02em;
    line-height: 1.5384615385;
    color: #383838;
    border: solid 1px transparent;
    transition: border-color 0.2s;
}

@media only screen and (max-width: 767px) {
    .news-categories__link {
        padding: 0 1.5rem;
        height: 2.8rem;
        font-size: 1rem;
    }
}

.news-categories__link.-en {
    font-size: 1.7rem;
    font-weight: 400;
}

@media only screen and (max-width: 767px) {
    .news-categories__link.-en {
        font-size: 1.4rem;
    }
}

.news-categories__link.-current {
    background-color: #1a1a1a;
    color: #fff;
}

@media (any-hover: hover) {
    .news-categories__link:hover {
        border-color: #1a1a1a;
    }
}

.news-years {
    position: relative;
    width: 14.3rem;
}

.news-years-trigger {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.2rem 2rem 1.2rem;
    font-weight: 700;
    font-size: 1.5rem;
    letter-spacing: -0.02em;
    text-transform: uppercase;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .news-years-trigger {
        padding-bottom: 0.8rem;
        border-bottom: solid 1px #383838;
        font-size: 1.3rem;
    }
}

.news-years-trigger ._icon {
    position: relative;
    width: 0.7rem;
    height: 0.7rem;
    transform-origin: center;
    transition: transform 0.3s ease-in-out;
}

.news-years-trigger ._icon::before,
.news-years-trigger ._icon::after {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 1px;
    height: 100%;
    content: "";
    display: block;
    margin: auto;
    background-color: #1a1a1a;
}

.news-years-trigger ._icon::before {
    transform: rotate(45deg);
    transform-origin: center bottom;
}

.news-years-trigger ._icon::after {
    transform: rotate(-45deg);
    transform-origin: center bottom;
}

[aria-expanded=true] .news-years-trigger ._icon {
    transform: rotate(180deg);
}

@media only screen and (max-width: 767px) {
    .news-years-panel {
        width: 14.3rem;
    }
}

.news-years-panel__item {
    width: 100%;
}

.news-years-panel__item:not(:first-child) .news-years-panel__link {
    border-top: solid 1px rgba(255, 255, 255, 0.1);
}

.news-years-panel__link {
    display: flex;
    align-items: center;
    width: 100%;
    height: 3.8rem;
    padding: 0.2rem 2rem 0;
    font-size: 1.2rem;
    text-transform: uppercase;
    color: #fff;
    background-color: #1a1a1a;
    transition: color 0.3s ease-out, background-color 0.3s ease-out;
}

@media (any-hover: hover) {
    .news-years-panel__link:hover {
        color: #1a1a1a;
        background-color: #fff;
    }
}

.news-card-link {
    position: relative;
    display: block;
    color: #1a1a1a;
}

@media (any-hover: hover) {
    .news-card-link:hover .news-card-link__thumb {
        transform: scale(0.95);
    }
    .news-card-link:hover .news-card-link__thumb img {
        transform: scale(1.1);
    }
    .news-card-link:hover .news-card-link__icon {
        background-color: transparent;
        border: solid 1px #1a1a1a;
    }
    .news-card-link:hover .news-card-link__icon svg path {
        fill: #1a1a1a;
    }
}

.news-card-link__thumb {
    width: 100%;
    height: 14.84375vw;
    overflow: hidden;
    transform: scale(1);
    transition: transform 0.45s cubic-bezier(0.33, 1, 0.68, 1);
}

@media only screen and (max-width: 767px) {
    .news-card-link__thumb {
        width: 33.5rem;
        height: 19.8rem;
    }
}

.news-card-link__thumb img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transform: scale(1);
    transition: transform 0.45s cubic-bezier(0.33, 1, 0.68, 1);
}

@media only screen and (max-width: 767px) {
    .news-card-link__thumb img {
        width: 100%;
    }
}

.news-card-link__header {
    position: relative;
    margin: 1.2rem 0 2.4rem;
    padding-top: 1.6rem;
}

@media only screen and (max-width: 767px) {
    .news-card-link__header {
        margin: 1.8rem 0 1.4rem;
        padding-top: 0;
    }
}

.news-card-link__header::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    content: "";
    display: block;
    background-color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .news-card-link__header::before {
        display: none;
    }
}

.news-card-link__date {
    position: relative;
    padding-left: 1.3rem;
    font-size: 1.4rem;
    font-weight: 300;
    line-height: 1.1428571429;
    letter-spacing: -0.02em;
}

.news-card-link__date::before {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 0.9rem;
    height: 0.9rem;
    content: "";
    display: block;
    margin: auto;
    background-color: #1a1a1a;
    border-radius: 50%;
}

.news-card-link__category {
    display: inline-block;
    margin-left: 1.8rem;
    padding: 0.1rem 1.5rem 0;
    border: solid 1px #1a1a1a;
    border-radius: 1.9rem;
    font-style: normal;
    font-weight: 300;
    font-size: 1.2rem;
    line-height: 1.5;
    letter-spacing: -0.02em;
}

.news-card-link__body {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.news-card-link__title {
    width: 19.21875vw;
    font-size: 1.4rem;
    line-height: 1.5;
    font-weight: 600;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

@media only screen and (max-width: 767px) {
    .news-card-link__title {
        width: 27.8rem;
    }
}

.news-card-link__icon {
    background-color: #1a1a1a;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    border: solid 1px #1a1a1a;
    transition: background-color 0.45s cubic-bezier(0.33, 1, 0.68, 1);
}

.news-card-link__icon svg {
    width: 1rem;
}

.news-card-link__icon svg path {
    fill: #fff;
    transition: fill 0.45s cubic-bezier(0.33, 1, 0.68, 1);
}

.news-card-link__icon.-external svg {
    width: 1.1rem;
}

.news-detail {
    position: relative;
    z-index: 1;
    padding-top: 13.125vw;
    background-color: #eee;
}

.news-detail:after {
    content: "";
    display: block;
    height: 1px;
    background: rgba(26, 26, 26, 0.1);
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
}

@media only screen and (max-width: 767px) {
    .news-detail {
        padding-top: 12.8rem;
    }
    .news-detail:after {
        bottom: 0.1rem;
    }
}

.news-detail__body {
    padding: 2.5vw 14.84375vw calc(4.375vw - 0.9rem);
    font-size: 1.5rem;
    line-height: 1.8;
    letter-spacing: 0.08em;
    color: #1a1a1a;
    word-break: break-word;
}

@media only screen and (max-width: 767px) {
    .news-detail__body {
        padding: 5.6rem 2rem 4.6rem;
        font-size: 1.5rem;
        line-height: 1.4;
        letter-spacing: 0.01em;
    }
}

.news-detail__body picture:not(:first-child),
.news-detail__body p:not(:first-child) {
    margin-top: 4.8rem;
}

@media only screen and (max-width: 767px) {
    .news-detail__body picture:not(:first-child),
    .news-detail__body p:not(:first-child) {
        margin-top: 4rem;
    }
}

.news-detail__body picture {
    display: block;
}

.news-detail__body img {
    display: block;
    max-width: 100%;
    height: auto;
}

.news-detail__body a {
    text-decoration: underline;
    transition: opacity 0.2s;
}

@media (any-hover: hover) {
    .news-detail__body a:hover {
        opacity: 0.6;
    }
}

.news-detail__share {
    margin-bottom: calc(9.140625vw - 0.9rem);
    padding: 0 14.84375vw;
}

@media only screen and (max-width: 767px) {
    .news-detail__share {
        margin-bottom: 1.4rem;
        padding: 0 2rem;
    }
}

.news-detail-share__link {
    transition: opacity 0.2s;
}

@media (any-hover: hover) {
    .news-detail-share__link:hover {
        opacity: 0.6;
    }
}

.news-detail-header {
    padding: 0 14.84375vw 2.5vw;
    border-bottom: solid 1px #1a1a1a;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .news-detail-header {
        padding: 0 2rem 2.2rem;
    }
}

.news-detail-header__sub {
    display: flex;
    align-items: center;
    margin-bottom: 3.75vw;
}

@media only screen and (max-width: 767px) {
    .news-detail-header__sub {
        margin-bottom: 3.2rem;
    }
}

.news-detail-header__date {
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 300;
    font-size: 1.4rem;
    line-height: 1.1428571429;
    letter-spacing: -0.02em;
}

.news-detail-header__date::before {
    width: 0.9rem;
    height: 0.9rem;
    content: "";
    display: block;
    margin-right: 0.4rem;
    border-radius: 50%;
    background-color: #1a1a1a;
}

.news-detail-header__category {
    display: flex;
    align-items: center;
    height: 2.1rem;
    margin-left: 2rem;
    font-weight: 300;
    font-size: 1.2rem;
    line-height: 1;
    letter-spacing: -0.02em;
    border: solid 1px #1a1a1a;
    padding: 0.1rem 1.2rem;
    border-radius: 1.2rem;
}

.news-detail-header__heading {
    font-weight: 600;
    font-size: 3rem;
    line-height: 1.4;
}

@media only screen and (max-width: 767px) {
    .news-detail-header__heading {
        font-size: 2rem;
        line-height: 1.6;
    }
}

.news-detail-share {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

@media only screen and (max-width: 767px) {
    .news-detail-share {
        gap: 1rem;
    }
}

.news-detail-share__heading {
    font-size: 1.4rem;
    color: #1a1a1a;
}

.news-detail-share__list {
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

@media only screen and (max-width: 767px) {
    .news-detail-share__list {
        gap: 0;
    }
}

.news-detail-share__link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 4.4rem;
    height: 4.4rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media only screen and (max-width: 767px) {
    .news-detail-share__link {
        width: 4.2rem;
        height: 4.2rem;
    }
}

.news-detail-share__link svg {
    width: 2.6rem;
    height: 2.6rem;
}

@media only screen and (max-width: 767px) {
    .news-detail-share__link svg {
        width: 2.2rem;
        height: 2.2rem;
    }
}

.news-detail-pagination {
    display: grid;
    grid-template-columns: 1fr 23.4375vw 1fr;
    grid-template-rows: auto;
}

.news-detail-pagination__prev,
.news-detail-pagination__index,
.news-detail-pagination__next {
    position: relative;
    flex-grow: 1;
    padding: 4rem 0;
    font-weight: 400;
    font-size: 2.4rem;
    color: #1a1a1a;
    transition: color 0.3s cubic-bezier(0.33, 1, 0.68, 1);
}

@media only screen and (max-width: 767px) {
    .news-detail-pagination__prev,
    .news-detail-pagination__index,
    .news-detail-pagination__next {
        padding: 2rem 0;
        font-size: 1.4rem;
        line-height: 1.1428571429;
    }
}

.news-detail-pagination__prev.is-disabled,
.news-detail-pagination__index.is-disabled,
.news-detail-pagination__next.is-disabled {
    color: #d7d7d7;
    pointer-events: none;
}

.news-detail-pagination__prev::before,
.news-detail-pagination__index::before,
.news-detail-pagination__next::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    display: block;
    background-color: #1a1a1a;
    opacity: 0;
    transition: opacity 0.3s cubic-bezier(0.33, 1, 0.68, 1);
}

.news-detail-pagination__prev ._text,
.news-detail-pagination__index ._text,
.news-detail-pagination__next ._text {
    position: relative;
    display: block;
}

@media (any-hover: hover) {
    .news-detail-pagination__prev:hover,
    .news-detail-pagination__index:hover,
    .news-detail-pagination__next:hover {
        color: #fff;
    }
    .news-detail-pagination__prev:hover::before,
    .news-detail-pagination__index:hover::before,
    .news-detail-pagination__next:hover::before {
        opacity: 1;
    }
    .news-detail-pagination__prev:hover ._text,
    .news-detail-pagination__index:hover ._text,
    .news-detail-pagination__next:hover ._text {
        transform: translateX(0);
    }
    .news-detail-pagination__prev:hover ._icon,
    .news-detail-pagination__index:hover ._icon,
    .news-detail-pagination__next:hover ._icon {
        opacity: 1;
        transition: opacity 0.6s 0.2s;
    }
}

.news-detail-pagination__prev {
    padding-left: 14.84375vw;
}

@media only screen and (max-width: 767px) {
    .news-detail-pagination__prev {
        padding-left: 2rem;
    }
}

.news-detail-pagination__next {
    text-align: right;
    padding-right: 14.84375vw;
}

@media only screen and (max-width: 767px) {
    .news-detail-pagination__next {
        padding-right: 2rem;
    }
}

.news-detail-pagination__index {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.news-detail-pagination__prev-inner,
.news-detail-pagination__next-inner {
    display: flex;
    align-items: center;
    gap: 2.4rem;
}

.news-detail-pagination__prev-inner ._text,
.news-detail-pagination__next-inner ._text {
    transition: transform 0.75s cubic-bezier(0.25, 1, 0.5, 1);
}

.news-detail-pagination__prev-inner ._icon,
.news-detail-pagination__next-inner ._icon {
    position: relative;
    width: 3rem;
    height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background-color: #fff;
    opacity: 0;
    transition: opacity 0.45s;
}

.news-detail-pagination__prev-inner ._icon svg,
.news-detail-pagination__next-inner ._icon svg {
    width: 1rem;
    height: 1rem;
    margin: auto;
}

.news-detail-pagination__prev-inner ._icon svg path,
.news-detail-pagination__next-inner ._icon svg path {
    fill: #1a1a1a;
}

.news-detail-pagination__prev-inner ._text {
    transform: translateX(-5.4rem);
}

.news-detail-pagination__prev-inner ._icon svg {
    transform: rotate(180deg);
}

.news-detail-pagination__next-inner {
    justify-content: flex-end;
}

.news-detail-pagination__next-inner ._text {
    transform: translateX(5.4rem);
}

.portfolio {
    position: relative;
    padding-top: 11.640625vw;
    background-color: #eee;
}

@media only screen and (max-width: 767px) {
    .portfolio {
        z-index: 1;
        padding-top: 11.2rem;
    }
}

.portfolio__header {
    padding: 0 9.375vw;
}

@media only screen and (max-width: 767px) {
    .portfolio__header {
        padding: 0 2rem;
    }
}

.portfolio__body {
    margin-top: 5vw;
}

@media only screen and (max-width: 767px) {
    .portfolio__body {
        margin-top: 4.1rem;
    }
}

.portfolio__lead {
    padding: 0 14.84375vw;
}

@media only screen and (max-width: 767px) {
    .portfolio__lead {
        padding: 0 4rem;
    }
}

.portfolio__lead ._title {
    font-style: normal;
    font-weight: 600;
    font-size: 2.8rem;
    line-height: 1.5;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .portfolio__lead ._title {
        font-size: 2rem;
        line-height: 1.6;
    }
}

.portfolio__lead ._message {
    margin-top: 1.875vw;
    font-style: normal;
    font-weight: 300;
    font-size: 1.4rem;
    line-height: 2;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .portfolio__lead ._message {
        margin-top: 1.8rem;
        font-size: 1.2rem;
        line-height: 1.58;
    }
}

.portfolio__companies {
    margin-top: 9.375vw;
}

@media only screen and (max-width: 767px) {
    .portfolio__companies {
        margin-top: 7rem;
    }
}

.portfolio__ipo {
    position: relative;
}

@media only screen and (max-width: 767px) {
    .portfolio__ipo {
        z-index: 1;
    }
}

.portfolio__breadcrumb {
    background-color: #fff;
}

.portfolio-companies {
    padding: 0 9.375vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-companies {
        padding: 0 2rem;
    }
}

.portfolio-companies__content {
    display: flex;
    margin-top: 5.625vw;
    padding-bottom: 11.875vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-companies__content {
        display: block;
        margin-top: 4rem;
        padding-bottom: 7.2rem;
    }
}

.portfolio-companies__filter-area {
    width: 19.53125vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-companies__filter-area {
        width: auto;
    }
}

.portfolio-companies__filter-content {
    position: sticky;
    top: calc(50vh - 13.5rem);
    padding: 2.5vw 0.46875vw calc(2.5vw - 0.6rem) 1.875vw;
    width: 15.546875vw;
    border: 1px solid #a1a1a1;
    border-radius: 1rem;
}

@media only screen and (max-width: 767px) {
    .portfolio-companies__filter-content {
        position: static;
        padding: 0;
        width: auto;
        border: none;
        border-radius: 0;
    }
}

.portfolio-companies__filter-title {
    display: flex;
    align-items: center;
    font-style: normal;
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 1.125;
    letter-spacing: -0.02em;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .portfolio-companies__filter-title {
        padding-left: 1.2rem;
        font-size: 1rem;
        line-height: 1.1;
        color: #a1a1a1;
    }
}

.portfolio-companies__filter-title::before {
    display: inline-block;
    margin-right: 0.6rem;
    width: 0.6rem;
    height: 0.6rem;
    border-radius: 50%;
    background-color: #1a1a1a;
    content: "";
}

@media only screen and (max-width: 767px) {
    .portfolio-companies__filter-title::before {
        margin-right: 0.4rem;
        width: 0.4rem;
        height: 0.4rem;
        background-color: #a1a1a1;
    }
}

.portfolio-companies__filter {
    margin-top: 2.2rem;
}

@media only screen and (max-width: 767px) {
    .portfolio-companies__filter {
        margin-top: 0.3rem;
    }
}

.portfolio-companies__list-area {
    flex: 1;
}

@media only screen and (max-width: 767px) {
    .portfolio-companies__list-area {
        margin-top: 3.2rem;
    }
}

.portfolio-companies__list {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5625vw 2.5316455696%;
    transition: opacity 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

@media only screen and (max-width: 767px) {
    .portfolio-companies__list {
        gap: 1.6rem normal;
        justify-content: space-between;
    }
}

.portfolio-companies__list.is-hidden {
    opacity: 0;
}

.portfolio-companies__item {
    width: 31.6455696203%;
}

@media only screen and (max-width: 767px) {
    .portfolio-companies__item {
        width: 16.2rem;
    }
}

.portfolio-companies__item.is-removed {
    display: none;
}

@media (any-hover: hover) {
    .portfolio-companies__link:hover ._line {
        transform: translateX(200%);
    }
}

.portfolio-companies__company {
    position: relative;
    padding: 1.2rem 0;
    min-height: 10rem;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .portfolio-companies__company {
        min-height: 7.7rem;
    }
}

.portfolio-companies__company ._line {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 1px;
    content: "";
    display: block;
    transition: transform 0.45s cubic-bezier(0.45, 0, 0.55, 1);
}

.portfolio-companies__company ._line::before,
.portfolio-companies__company ._line::after {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    content: "";
    display: block;
    background-color: #1a1a1a;
}

.portfolio-companies__company ._line::before {
    left: -200%;
}

.portfolio-companies__company ._line::after {
    left: 0;
}

.portfolio-companies__company ._name {
    font-style: normal;
    font-weight: 400;
    font-size: 2.4rem;
    line-height: 1.15;
    letter-spacing: -0.02em;
    color: #1a1a1a;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

@media only screen and (max-width: 767px) {
    .portfolio-companies__company ._name {
        font-size: 2rem;
        line-height: 1.38;
    }
}

.portfolio-companies__company ._phase {
    display: inline-block;
    margin-top: 1rem;
    padding: 0.6rem 1rem;
    font-style: normal;
    font-weight: 400;
    font-size: 1.1rem;
    line-height: 0.91;
    letter-spacing: -0.02em;
    color: #1a1a1a;
    border: 1px solid currentColor;
    border-radius: 4.1rem;
}

@media only screen and (max-width: 767px) {
    .portfolio-companies__company ._phase {
        margin-top: 0.3rem;
        padding: 0.4rem 0.7rem;
        font-size: 1rem;
        line-height: 1;
        border-radius: 2rem;
    }
}

@media only screen and (max-width: 767px) {
    .portfolio-sectors {
        margin-top: 0.8rem;
        background-color: #d7d7d7;
        border: 1px solid #a1a1a1;
        border-radius: 1rem;
    }
}

@media only screen and (max-width: 767px) {
    .portfolio-sectors__item {
        display: flex;
        align-items: center;
        padding: 1.6rem 1.2rem;
    }
}

@media only screen and (max-width: 767px) {
    .portfolio-sectors__item[aria-current=true]::before {
        opacity: 1;
    }
}

.portfolio-sectors__item[aria-current=true] .portfolio-sectors__btn {
    color: #1a1a1a;
}

.portfolio-sectors__item:first-child {
    margin-top: -0.6rem;
}

@media only screen and (max-width: 767px) {
    .portfolio-sectors__item:first-child {
        margin-top: 0;
    }
}

@media only screen and (max-width: 767px) {
    .portfolio-sectors__item:not(:first-child) {
        border-top: 1px solid #a1a1a1;
    }
}

@media only screen and (max-width: 767px) {
    .portfolio-sectors__item::before {
        display: inline-block;
        margin-right: 1rem;
        width: 0.4rem;
        height: 0.4rem;
        background-color: #1a1a1a;
        border-radius: 50%;
        opacity: 0;
        content: "";
        transition: opacity 0.4s cubic-bezier(0.21, 0.73, 0.59, 0.99);
    }
}

.portfolio-sectors__btn {
    width: 100%;
    padding: 0.6rem 0;
    font-style: normal;
    font-weight: 400;
    font-size: 1.5rem;
    line-height: 1.13;
    letter-spacing: -0.02em;
    color: #a1a1a1;
    transition: color 0.4s cubic-bezier(0.16, 0.46, 0.33, 1.02);
}

@media only screen and (max-width: 767px) {
    .portfolio-sectors__btn {
        padding: 0;
        color: #1a1a1a;
    }
}

@media (any-hover: hover) {
    .portfolio-sectors__btn:hover {
        color: #1a1a1a;
    }
}

.portfolio-dropdown-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1.5rem 2.6rem;
    font-style: normal;
    font-weight: 400;
    font-size: 1.4rem;
    line-height: 1.14;
    color: #1a1a1a;
    border: 1px solid #a1a1a1;
    border-radius: 1rem;
}

.portfolio-dropdown-label ._icon {
    position: relative;
    display: inline-block;
    width: 0.8rem;
    height: 0.8rem;
    transform: rotate(-45deg);
    transition: transform 0.4s cubic-bezier(0.15, 0.38, 0.29, 0.99);
}

.portfolio-dropdown-label ._icon::before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 1px;
    height: 100%;
    background-color: #383838;
    content: "";
}

.portfolio-dropdown-label ._icon::after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 1px;
    background-color: #383838;
    content: "";
}

.c-dropdown__trigger[aria-expanded=true] .portfolio-dropdown-label ._icon {
    transform: rotate(135deg);
}

.portfolio-ipo {
    padding: 9.296875vw 9.375vw 6.171875vw;
    background-color: #fff;
    border-radius: 1.5625vw 1.5625vw 0 0;
}

@media only screen and (max-width: 767px) {
    .portfolio-ipo {
        padding: 6.8rem 2rem 11.2rem;
        border-radius: 1.5rem 1.5rem 0 0;
    }
}

.portfolio-ipo__list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 5.625vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-ipo__list {
        display: block;
        margin-top: 4.7rem;
        border-top: 1px solid rgba(161, 161, 161, 0.3);
    }
}

.portfolio-ipo__item {
    width: 39.84375vw;
    border-bottom: 1px solid rgba(161, 161, 161, 0.3);
}

@media only screen and (max-width: 767px) {
    .portfolio-ipo__item {
        width: auto;
    }
}

.portfolio-ipo__item:nth-child(-n+2) {
    border-top: 1px solid rgba(161, 161, 161, 0.3);
}

@media only screen and (max-width: 767px) {
    .portfolio-ipo__item:nth-child(-n+2) {
        border-top: none;
    }
}

.portfolio-ipo__company {
    display: flex;
    padding: 2.5rem 1rem 2.4rem 0;
}

@media only screen and (max-width: 767px) {
    .portfolio-ipo__company {
        padding: 2.1rem 0.9rem 1.9rem 0;
    }
}

.portfolio-ipo__company ._name {
    font-style: normal;
    font-weight: 400;
    font-size: 1.8rem;
    line-height: 1.56;
    letter-spacing: -0.02em;
    color: #1a1a1a;
    transform: translateX(0);
    transition: transform 0.3s cubic-bezier(0.33, 1, 0.68, 1);
}

@media only screen and (max-width: 767px) {
    .portfolio-ipo__company ._name {
        font-size: 1.6rem;
        line-height: 1.75;
    }
}

.portfolio-ipo__company ._year {
    margin-left: auto;
    font-style: normal;
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 1.75;
    letter-spacing: -0.02em;
    color: #a1a1a1;
}

@media only screen and (max-width: 767px) {
    .portfolio-ipo__company ._year {
        font-size: 1.4rem;
        line-height: 2;
    }
}

.portfolio-ipo__company ._year::after {
    content: ".";
}

@media (any-hover: hover) {
    .portfolio-ipo__link:hover .portfolio-ipo__company ._name {
        transform: translateX(1.2rem);
    }
}

.portfolio-detail {
    position: relative;
    padding-top: 8.4375vw;
    background-color: #eee;
}

@media only screen and (max-width: 767px) {
    .portfolio-detail {
        z-index: 1;
        padding-top: 11.2rem;
    }
}

.portfolio-detail__header {
    position: relative;
    padding: 0 9.375vw calc(5.78125vw - 0.8rem);
}

@media only screen and (max-width: 767px) {
    .portfolio-detail__header {
        padding: 0 2rem 5.6rem;
    }
}

.portfolio-detail__header-content {
    display: flex;
    margin-top: 4.6875vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-detail__header-content {
        display: block;
        margin-top: 3.9rem;
    }
}

.portfolio-detail__header-logo {
    padding: 0 3.90625vw;
    margin-top: -0.8rem;
    width: 23.28125vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-detail__header-logo {
        margin-top: 0;
        padding: 0 9.4rem;
        width: auto;
        height: 14.7rem;
    }
}

.portfolio-detail__header-logo img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

.portfolio-detail__header-texts {
    flex: 1;
    margin-left: 5.625vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-detail__header-texts {
        margin-top: 3.9rem;
        margin-left: 0;
    }
}

.portfolio-detail__title {
    font-style: normal;
    font-weight: 400;
    font-size: 6.2rem;
    line-height: 1.15;
    letter-spacing: -0.02em;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .portfolio-detail__title {
        font-size: 4rem;
    }
}

.portfolio-detail__description {
    margin-top: 2.34375vw;
    font-style: normal;
    font-weight: 300;
    font-size: 1.6rem;
    line-height: 1.75;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .portfolio-detail__description {
        margin-top: 2.4rem;
        font-size: 1.4rem;
        line-height: 1.5;
    }
}

.portfolio-detail__header-divider {
    margin-top: 1.875vw;
    width: 1.328125vw;
    background-color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .portfolio-detail__header-divider {
        margin-top: 2rem;
        width: 1.7rem;
    }
}

.portfolio-detail__links {
    display: flex;
    align-items: center;
    margin-top: calc(1.796875vw - 0.8rem);
}

@media only screen and (max-width: 767px) {
    .portfolio-detail__links {
        margin-top: 1.2rem;
    }
}

.portfolio-detail__links-title {
    font-style: normal;
    font-weight: 400;
    font-size: 1.2rem;
    line-height: 1.2;
    color: #1a1a1a;
}

.portfolio-detail__links-list {
    display: flex;
    align-items: center;
    margin-left: -0.8rem;
}

.portfolio-detail__links-item ._link {
    transition: opacity 0.2s;
    width: 3.6rem;
    height: 3.6rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media (any-hover: hover) {
    .portfolio-detail__links-item ._link:hover {
        opacity: 0.6;
    }
}

.portfolio-detail__links-item svg {
    width: 2rem;
}

.portfolio-detail__body {
    position: relative;
    pointer-events: none;
}

.portfolio-detail__base-info {
    position: relative;
    margin-top: -11.71875vw;
    padding: 13.046875vw 9.375vw 18.28125vw 21.09375vw;
    background-color: #1a1a1a;
    border-radius: 1.5625vw 1.5625vw 0 0;
    pointer-events: auto;
}

@media only screen and (max-width: 767px) {
    .portfolio-detail__base-info {
        margin-top: -10rem;
        padding: 6.3rem 2rem 18.6rem;
        border-radius: 1.5rem 1.5rem 0 0;
    }
}

.portfolio-detail__base-info-bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.portfolio-detail__other-info {
    position: relative;
    margin-top: -23.4375vw;
    padding: 13.28125vw 9.375vw 14.921875vw 21.09375vw;
    background-color: #fff;
    border-radius: 1.5625vw 1.5625vw 0 0;
    pointer-events: auto;
}

@media only screen and (max-width: 767px) {
    .portfolio-detail__other-info {
        z-index: 1;
        margin-top: -25rem;
        padding: 6.4rem 2rem 10rem;
        border-radius: 1rem 1rem 0 0;
    }
}

.portfolio-detail__company-info {
    position: relative;
}

.portfolio-detail__ceo-profile {
    position: relative;
    margin-top: 9.6875vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-detail__ceo-profile {
        margin-top: 8rem;
    }
}

.portfolio-detail__products {
    position: relative;
    margin-top: 9.6875vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-detail__products {
        margin-top: 8rem;
    }
}

.portfolio-detail__milestones:not(:first-child) {
    margin-top: 9.6875vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-detail__milestones:not(:first-child) {
        margin-top: 8rem;
    }
}

.portfolio-detail__investor {
    margin-top: 9.6875vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-detail__investor {
        margin-top: 8rem;
    }
}

.portfolio-detail__nav-area {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    padding: 12.96875vw 0 8.90625vw 3.125vw;
    width: 21.09375vw;
    pointer-events: auto;
    z-index: 1;
}

@media only screen and (max-width: 767px) {
    .portfolio-detail__nav-area {
        position: static;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        padding: 0;
        width: auto;
    }
}

.portfolio-detail__breadcrumbs {
    background-color: #fff;
}

.portfolio-section-title {
    color: #fff;
}

.portfolio-section-title--black {
    color: #1a1a1a;
}

.portfolio-section-title ._ja {
    display: inline-flex;
    align-items: center;
    min-height: 2.3rem;
    font-style: normal;
    font-weight: 600;
    font-size: 1.4rem;
    line-height: 1.5;
    color: currentColor;
}

@media only screen and (max-width: 767px) {
    .portfolio-section-title ._ja {
        min-height: 2.1rem;
        font-size: 1.3rem;
        line-height: 1.54;
    }
}

.portfolio-section-title ._ja::before {
    display: inline-block;
    margin-right: 1rem;
    width: 1.7rem;
    height: 1px;
    background-color: currentColor;
    content: "";
}

@media only screen and (max-width: 767px) {
    .portfolio-section-title ._ja::before {
        width: 1.4rem;
    }
}

.portfolio-section-title ._en {
    display: inline-block;
    margin-top: 0.9375vw;
    font-style: normal;
    font-weight: 400;
    font-size: 4.8rem;
    line-height: 1.14;
    letter-spacing: -0.02em;
    color: currentColor;
}

@media only screen and (max-width: 767px) {
    .portfolio-section-title ._en {
        margin-top: 1rem;
        font-size: 3rem;
        line-height: 1.16;
    }
}

.portfolio-company__info-list {
    margin-top: 3.203125vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-company__info-list {
        margin-top: 2.4rem;
    }
}

.portfolio-company__info-list.is-visible .portfolio-company__info-item ._label::after {
    transform: scaleX(1);
}

.portfolio-company__info-item {
    display: flex;
    border-bottom: 1px solid rgba(161, 161, 161, 0.3);
}

.portfolio-company__info-item ._label {
    position: relative;
    padding: 2.4rem 0;
    width: 18.75vw;
    font-style: normal;
    font-weight: 600;
    font-size: 1.4rem;
    line-height: 1.4;
    color: #a1a1a1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

@media only screen and (max-width: 767px) {
    .portfolio-company__info-item ._label {
        padding: 1.6rem 0;
        width: 11.5rem;
        font-size: 1.2rem;
        line-height: 1.92;
    }
}

.portfolio-company__info-item ._label::after {
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    display: block;
    height: 1px;
    background-color: #a1a1a1;
    content: "";
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.75s cubic-bezier(0.22, 1, 0.36, 1);
}

.portfolio-company__info-item ._value {
    flex: 1;
    padding: 2.4rem 0 2rem 5rem;
    font-style: normal;
    font-weight: 400;
    font-size: 1.4rem;
    line-height: 1.4;
    color: #fff;
    white-space: pre-wrap;
}

@media only screen and (max-width: 767px) {
    .portfolio-company__info-item ._value {
        padding: 1.6rem 0 1.6rem 1.6rem;
        font-size: 1.2rem;
        line-height: 1.92;
    }
}

.portfolio-company__info-item ._link {
    transition: opacity 0.2s;
}

@media (any-hover: hover) {
    .portfolio-company__info-item ._link:hover {
        opacity: 0.6;
    }
}

.portfolio-company__info-item:nth-of-type(1) ._label::after {
    transition-delay: 0s;
}

.portfolio-company__info-item:nth-of-type(2) ._label::after {
    transition-delay: 0.15s;
}

.portfolio-company__info-item:nth-of-type(3) ._label::after {
    transition-delay: 0.3s;
}

.portfolio-company__info-item:nth-of-type(4) ._label::after {
    transition-delay: 0.45s;
}

.portfolio-company__info-item:nth-of-type(5) ._label::after {
    transition-delay: 0.6s;
}

.portfolio-company__info-item:nth-of-type(6) ._label::after {
    transition-delay: 0.75s;
}

.portfolio-company__info-item:nth-of-type(7) ._label::after {
    transition-delay: 0.9s;
}

.portfolio-ceo__content {
    display: flex;
    margin-top: 4.6875vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-ceo__content {
        display: block;
        margin-top: 3.1rem;
    }
}

.portfolio-ceo__visual {
    overflow: hidden;
    width: 28.90625vw;
    height: 34.375vw;
    border-radius: 0.78125vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-ceo__visual {
        width: 100%;
        height: 39.8rem;
        border-radius: 1rem;
    }
}

.portfolio-ceo__visual img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-clip-path: inset(100% 0 0 0);
    clip-path: inset(100% 0 0 0);
}

.portfolio-ceo__visual.is-visible img {
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
    transition: -webkit-clip-path 1s cubic-bezier(0.15, 0.66, 0.39, 0.99);
    transition: clip-path 1s cubic-bezier(0.15, 0.66, 0.39, 0.99);
    transition: clip-path 1s cubic-bezier(0.15, 0.66, 0.39, 0.99), -webkit-clip-path 1s cubic-bezier(0.15, 0.66, 0.39, 0.99);
}

.portfolio-ceo__texts {
    flex: 1;
    align-self: flex-end;
    margin-left: 5vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-ceo__texts {
        margin-top: 3.2rem;
        margin-left: 0;
    }
}

.portfolio-ceo__name {
    font-family: "Anton", "Helvetica", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 5rem;
    line-height: 1.46;
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .portfolio-ceo__name {
        font-size: 4.2rem;
        line-height: 1.48;
    }
}

.portfolio-ceo__profile {
    display: flex;
    align-items: center;
    margin-top: 0.3125vw;
    font-style: normal;
    font-weight: 300;
    font-size: 1.6rem;
    line-height: 1.5;
    color: #a1a1a1;
}

@media only screen and (max-width: 767px) {
    .portfolio-ceo__profile {
        margin-top: 0.2rem;
        font-size: 1.4rem;
    }
}

.portfolio-ceo__profile ._slash {
    display: inline-block;
    margin: 0 0.8rem;
    width: 1px;
    height: 2rem;
    background-color: currentColor;
    transform: rotate(18deg);
}

@media only screen and (max-width: 767px) {
    .portfolio-ceo__profile ._slash {
        margin: 0 0.9rem;
        height: 1.8rem;
    }
}

.portfolio-ceo__links {
    margin-top: 1.875vw;
    display: flex;
    align-items: center;
}

@media only screen and (max-width: 767px) {
    .portfolio-ceo__links {
        margin-top: 1.8rem;
    }
}

.portfolio-ceo__link-item:not(:first-child) {
    margin-left: 1.7rem;
}

@media only screen and (max-width: 767px) {
    .portfolio-ceo__link-item:not(:first-child) {
        margin-left: 1.8rem;
    }
}

.portfolio-ceo__link-item svg {
    width: 1.4rem;
}

@media only screen and (max-width: 767px) {
    .portfolio-ceo__link-item svg {
        width: 1.5rem;
    }
}

.portfolio-ceo__link-item--fill path {
    fill: #a1a1a1;
}

.portfolio-ceo__link-item--stroke path {
    stroke: #a1a1a1;
}

.portfolio-ceo__link-item--text {
    font-style: normal;
    font-weight: 300;
    font-size: 1.3rem;
    line-height: 1.54;
    text-decoration-line: underline;
    color: #a1a1a1;
}

.portfolio-ceo__link-item--text:not(:first-child) {
    margin-left: 2.4rem;
}

@media only screen and (max-width: 767px) {
    .portfolio-ceo__link-item--text:not(:first-child) {
        margin-left: 2.2rem;
    }
}

.portfolio-ceo__divider {
    margin-top: 2.34375vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-ceo__divider {
        margin-top: 2.4rem;
    }
}

.portfolio-ceo__description {
    margin-top: 2.34375vw;
    font-style: normal;
    font-weight: 300;
    font-size: 1.4rem;
    line-height: 1.71;
    color: #eee;
    white-space: pre-wrap;
}

@media only screen and (max-width: 767px) {
    .portfolio-ceo__description {
        margin-top: 2.4rem;
        font-size: 1.2rem;
        line-height: 1.58;
        white-space: normal;
    }
}

.portfolio-products__list {
    margin-top: 4.6875vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-products__list {
        margin-top: 3.4rem;
    }
}

.portfolio-products__item:not(:first-child) {
    margin-top: 3.125vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-products__item:not(:first-child) {
        margin-top: 2rem;
    }
}

.portfolio-product {
    overflow: hidden;
    background: #fff;
    border-radius: 0.78125vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-product {
        display: block;
        border-radius: 1rem;
    }
}

.portfolio-product__header {
    width: 100%;
}

@media only screen and (max-width: 767px) {
    .portfolio-product__header {
        width: auto;
    }
}

.portfolio-product__visual {
    height: 29.296875vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-product__visual {
        height: 14.2rem;
    }
}

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

.portfolio-product__body {
    display: flex;
    gap: 4.375vw;
    padding: 4.21875vw 5.46875vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-product__body {
        display: block;
        padding: 2rem 2rem 2.4rem;
    }
}

.portfolio-product__logo {
    overflow: hidden;
    width: 23.4375vw;
    height: 14.296875vw;
    border-radius: 0.78125vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-product__logo {
        width: 29.5rem;
        height: 16rem;
        border-radius: 1rem;
    }
}

.portfolio-product__logo img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

.portfolio-product__texts {
    flex: 1;
}

@media only screen and (max-width: 767px) {
    .portfolio-product__texts {
        margin-top: 2rem;
        display: flex;
        flex-direction: column;
    }
}

.portfolio-product__name {
    font-style: normal;
    font-weight: 600;
    font-size: 2.3rem;
    line-height: 1.45;
    text-decoration-line: underline;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .portfolio-product__name {
        font-size: 2rem;
        line-height: 1.5;
    }
}

.portfolio-product-feature {
    margin-top: 1.5625vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-product-feature {
        margin-top: 1.4rem;
    }
}

.portfolio-product-feature__title {
    font-style: normal;
    font-weight: 600;
    font-size: 1.4rem;
    line-height: 1.5;
    color: #383838;
}

@media only screen and (max-width: 767px) {
    .portfolio-product-feature__title {
        font-size: 1.3rem;
        line-height: 1.54;
    }
}

.portfolio-product-feature__description {
    margin-top: 1.015625vw;
    font-style: normal;
    font-weight: 300;
    font-size: 1.2rem;
    line-height: 1.67;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .portfolio-product-feature__description {
        margin-top: 1.4rem;
        line-height: 1.58;
    }
}

.portfolio-product__more {
    margin-top: 1.953125vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-product__more {
        margin: 2.4rem auto 0;
    }
}

.portfolio-product__more-link {
    position: relative;
    display: inline-block;
    padding: 1.1rem 5.3rem;
    font-style: normal;
    font-weight: 400;
    font-size: 1.1rem;
    line-height: 1.18;
    letter-spacing: -0.02em;
    color: #1a1a1a;
    border-radius: 5rem;
    border: 1px solid #1a1a1a;
    transition: background-color 0.15s ease-in, color 0.15s ease-in;
}

@media only screen and (max-width: 767px) {
    .portfolio-product__more-link {
        padding: 1.5rem 5.8rem;
        line-height: 1.18;
    }
}

.portfolio-product__more-link ._icon {
    position: absolute;
    top: 50%;
    right: 1.4rem;
    display: flex;
    transform: translateY(-50%);
}

@media only screen and (max-width: 767px) {
    .portfolio-product__more-link ._icon {
        right: 1.7rem;
    }
}

.portfolio-product__more-link svg {
    width: 1.13rem;
}

.portfolio-product__more-link svg path {
    fill: #000;
    transition: fill 0.15s ease-in;
}

.portfolio-product__more-link ._labels {
    position: relative;
    overflow: hidden;
    display: inline-block;
    height: 1em;
}

.portfolio-product__more-link ._labels span {
    display: block;
    transition: transform 0.4s cubic-bezier(0.26, 0.67, 0.55, 0.98);
}

@media (any-hover: hover) {
    .portfolio-product__more-link:hover {
        background-color: #1a1a1a;
        color: #fff;
    }
    .portfolio-product__more-link:hover svg path {
        fill: #fff;
    }
    .portfolio-product__more-link:hover ._labels span {
        transform: translateY(-100%);
    }
}

.portfolio-recruit__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 2.109375vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-recruit__list {
        display: block;
        margin-top: 2rem;
    }
}

.portfolio-recruit__item {
    width: 48.8764044944%;
}

@media only screen and (max-width: 767px) {
    .portfolio-recruit__item {
        width: auto;
    }
}

.portfolio-recruit__link {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 3.3rem 0 2.1rem;
    min-height: 100%;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .portfolio-recruit__link {
        padding: 3.2rem 0;
    }
}

.portfolio-recruit__link ._line {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    content: "";
    display: block;
    transition: transform 0.75s cubic-bezier(0.45, 0, 0.55, 1);
}

.portfolio-recruit__link ._line::before,
.portfolio-recruit__link ._line::after {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    content: "";
    display: block;
    background-color: #1a1a1a;
}

.portfolio-recruit__link ._line::before {
    left: -200%;
}

.portfolio-recruit__link ._line::after {
    left: 0;
}

.portfolio-recruit__link ._label {
    flex: 1;
    font-style: normal;
    font-weight: 700;
    font-size: 1.8rem;
    line-height: 1.56;
    color: #383838;
}

@media only screen and (max-width: 767px) {
    .portfolio-recruit__link ._label {
        font-size: 1.4rem;
        line-height: 1.14;
    }
}

.portfolio-recruit__link ._icon {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin-right: 1.6rem;
    margin-left: 2rem;
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    border: solid 1px transparent;
    background-color: #1a1a1a;
    transition: background-color 0.3s, border-color 0.3s;
}

@media only screen and (max-width: 767px) {
    .portfolio-recruit__link ._icon {
        margin-right: 1.2rem;
        margin-left: 1rem;
    }
}

.portfolio-recruit__link ._icon svg {
    width: 1.04rem;
}

.portfolio-recruit__link ._icon svg path {
    fill: #fff;
    transition: fill 0.3s;
}

@media (any-hover: hover) {
    .portfolio-recruit__link:hover ._line {
        transform: translateX(200%);
    }
    .portfolio-recruit__link:hover ._icon {
        background-color: #fff;
        border-color: #1a1a1a;
    }
    .portfolio-recruit__link:hover ._icon svg path {
        fill: #1a1a1a;
    }
}

.portfolio-milestones__list {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5625vw 2.2471910112%;
    margin-top: 4.6875vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-milestones__list {
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        display: flex;
        flex-wrap: nowrap;
        gap: normal normal;
        margin: 3rem -2rem 0;
        padding-right: 2rem;
    }
}

.portfolio-milestones__item {
    width: 31.797752809%;
}

@media only screen and (max-width: 767px) {
    .portfolio-milestones__item {
        scroll-snap-align: start;
        flex-shrink: 0;
        padding-left: 2rem;
        width: 26.1rem;
    }
}

@media (any-hover: hover) {
    .portfolio-milestones__link:hover .portfolio-milestone__icon {
        background-color: #fff;
        border-color: #1a1a1a;
    }
    .portfolio-milestones__link:hover .portfolio-milestone__icon svg path {
        fill: #1a1a1a;
    }
}

.portfolio-milestone {
    padding: 2.34375vw;
    min-height: 100%;
    border: 1px solid #1a1a1a;
    border-radius: 0.78125vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-milestone {
        padding: 2rem 2rem 1.8rem;
        border-radius: 1rem;
    }
}

.portfolio-milestone__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.portfolio-milestone__date {
    display: inline-flex;
    align-items: center;
    gap: 0 0.4rem;
    font-style: normal;
    font-weight: 300;
    font-size: 1.4rem;
    line-height: 1.14;
    letter-spacing: -0.02em;
    color: #1a1a1a;
}

.portfolio-milestone__date::before {
    display: inline-block;
    width: 0.9rem;
    height: 0.9rem;
    background-color: #1a1a1a;
    border-radius: 50%;
    content: "";
}

.portfolio-milestone__icon {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    background-color: #1a1a1a;
    border: solid 1px transparent;
    transition: background-color 0.3s, border-color 0.3s;
}

.portfolio-milestone__icon svg {
    width: 1rem;
}

.portfolio-milestone__icon svg path {
    fill: #fff;
    transition: fill 0.3s;
}

.portfolio-milestone__title {
    margin-top: 1.5625vw;
    font-style: normal;
    font-weight: 300;
    font-size: 1.4rem;
    line-height: 1.5;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .portfolio-milestone__title {
        margin-top: 2rem;
        font-size: 1.2rem;
        line-height: 1.42;
    }
}

.portfolio-investors__list {
    display: flex;
    flex-wrap: wrap;
    gap: 3.75vw 2.2471910112%;
    margin-top: 4.6875vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-investors__list {
        gap: 2.6rem normal;
        justify-content: space-between;
        margin-top: 3rem;
    }
}

.portfolio-investors__item {
    width: 31.797752809%;
}

@media only screen and (max-width: 767px) {
    .portfolio-investors__item {
        width: 16rem;
    }
}

.portfolio-investors__item.is-visible .portfolio-investor__visual img {
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
}

@media (any-hover: hover) {
    .portfolio-investors__link:hover .portfolio-investor__visual img {
        transform: scale(1.1);
    }
}

.portfolio-investor__visual {
    overflow: hidden;
    height: 27.65625vw;
    border-radius: 0.78125vw;
}

@media only screen and (max-width: 767px) {
    .portfolio-investor__visual {
        height: 20rem;
        border-radius: 1rem;
    }
}

.portfolio-investor__visual img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-clip-path: inset(100% 0 0 0);
    clip-path: inset(100% 0 0 0);
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-clip-path 1s cubic-bezier(0.15, 0.66, 0.39, 0.99);
    transition: clip-path 1s cubic-bezier(0.15, 0.66, 0.39, 0.99), transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: clip-path 1s cubic-bezier(0.15, 0.66, 0.39, 0.99), transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-clip-path 1s cubic-bezier(0.15, 0.66, 0.39, 0.99);
}

.portfolio-investor__name {
    margin-top: 1.8rem;
    font-style: normal;
    font-weight: 400;
    font-size: 1.8rem;
    text-align: right;
    letter-spacing: -0.02em;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .portfolio-investor__name {
        margin-top: 1.5rem;
        font-size: 1.2rem;
    }
}

.portfolio-investor__position {
    margin-top: 0.2rem;
    font-style: normal;
    font-weight: 400;
    font-size: 1.2rem;
    text-align: right;
    letter-spacing: -0.02em;
    color: #a1a1a1;
}

@media only screen and (max-width: 767px) {
    .portfolio-investor__position {
        margin-top: 0.7rem;
        font-size: 1rem;
    }
}

.partners {
    position: relative;
    color: #fff;
    background-color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .partners {
        z-index: 1;
    }
}

.partners__inner {
    padding: 13.90625vw 9.375vw 14.0625vw;
}

@media only screen and (max-width: 767px) {
    .partners__inner {
        padding: 11.2rem 0 10.3rem;
    }
}

.partners__heading {
    margin-bottom: 5vw;
}

@media only screen and (max-width: 767px) {
    .partners__heading {
        margin-bottom: 4rem;
        padding: 0 2rem;
    }
}

.partners__lead {
    margin-bottom: 9.6875vw;
    padding: 0 5.46875vw;
}

@media only screen and (max-width: 767px) {
    .partners__lead {
        margin-bottom: 7.5rem;
        padding: 0 4rem;
    }
}

.partners__lead-title {
    margin-bottom: 2.4rem;
    font-weight: 600;
    font-size: 2.8rem;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .partners__lead-title {
        margin-bottom: 1.8rem;
        font-size: 2rem;
        line-height: 1.6;
    }
}

.partners__lead-text {
    font-size: 1.4rem;
    line-height: 2;
}

@media only screen and (max-width: 767px) {
    .partners__lead-text {
        font-size: 1.2rem;
        line-height: 1.5833333333;
    }
}

@media only screen and (max-width: 767px) {
    .partners__investors {
        padding: 0 2rem;
    }
}

.partners__investors-heading {
    position: relative;
    margin-bottom: 7.2rem;
}

@media only screen and (max-width: 767px) {
    .partners__investors-heading {
        margin-bottom: 3rem;
    }
}

.partners__investors-heading::before {
    flex: 1;
    width: 100%;
    height: 1px;
    content: "";
    display: block;
    margin-bottom: 3.4rem;
    background-color: #fff;
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.6s cubic-bezier(0.65, 0, 0.38, 0.99);
}

@media only screen and (max-width: 767px) {
    .partners__investors-heading::before {
        margin-bottom: 2.6rem;
    }
}

.partners__investors-heading ._note {
    margin-left: 0.5em;
    font-size: 1.4rem;
    letter-spacing: normal;
}

@media only screen and (max-width: 767px) {
    .partners__investors-heading ._note {
        font-size: 0.9rem;
    }
}

@media only screen and (max-width: 767px) {
    .partners__investors-heading ._note:lang(en-US) {
        display: block;
    }
}

.partners__investors-heading.is-visible::before {
    transform: scaleX(1);
}

.partners__investors-heading-main {
    display: inline-flex;
    align-items: center;
    font-weight: 400;
    font-size: 5rem;
    line-height: 1.28;
    letter-spacing: -0.02em;
    text-transform: uppercase;
}

@media only screen and (max-width: 767px) {
    .partners__investors-heading-main {
        font-size: 3rem;
        line-height: 1.15625;
    }
}

.partners__investors-heading-main ._investors:lang(en-US) {
    margin-left: 0.25em;
}

.partners__investors-heading-main ._investors:lang(ja) {
    font-size: 4rem;
    line-height: 1.6;
    font-weight: 600;
}

@media only screen and (max-width: 767px) {
    .partners__investors-heading-main ._investors:lang(ja) {
        font-size: 2.4rem;
    }
}

.partners__investors-sub-heading {
    margin-bottom: 4rem;
    font-weight: 600;
    font-size: 2.4rem;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .partners__investors-sub-heading {
        margin-bottom: 2.4rem;
        font-size: 1.8rem;
    }
}

.partners__ceos,
.partners__institutional {
    margin-bottom: 9.375vw;
}

@media only screen and (max-width: 767px) {
    .partners__ceos,
    .partners__institutional {
        margin-bottom: 6.4rem;
    }
}

.partners__ceos-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
    gap: 2.34375vw 4.7801147228%;
}

@media only screen and (max-width: 767px) {
    .partners__ceos-list {
        display: flex;
        flex-direction: column;
        gap: 3rem;
    }
}

.partners__institutional-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: auto;
    gap: 1.5625vw 1.9120458891%;
}

@media only screen and (max-width: 767px) {
    .partners__institutional-list {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: auto;
        gap: 1.1rem;
    }
}

.partners__institutional-item img {
    width: 100%;
    height: auto;
}

.partners__institutional-link {
    display: block;
    border-radius: 0.78125vw;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .partners__institutional-link {
        border-radius: 0.7rem;
    }
}

.partners__institutional-link img {
    width: 100%;
    height: auto;
    transform: scale(1);
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

@media (any-hover: hover) {
    .partners__institutional-link:hover img {
        transform: scale(1.1);
    }
}

.partners__individual-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: auto;
    gap: 1.9120458891%;
}

@media only screen and (max-width: 767px) {
    .partners__individual-list {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: auto;
        gap: 3.5rem 1.1rem;
    }
}

.pt-individual {
    display: block;
}

.pt-individual ._image {
    width: 100%;
    margin-bottom: 1.4rem;
    border-radius: 0.78125vw;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .pt-individual ._image {
        margin-bottom: 1.5rem;
        border-radius: 1rem;
    }
}

.pt-individual ._image img {
    width: 100%;
    height: auto;
    transform: scale(1);
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.pt-individual ._company {
    display: block;
    margin-bottom: 0.2rem;
    font-weight: 300;
    font-size: 1.2rem;
    line-height: 1.5;
    color: #a1a1a1;
}

@media only screen and (max-width: 767px) {
    .pt-individual ._company {
        margin-bottom: 0.6rem;
        font-size: 1.1rem;
        line-height: 1.5;
    }
}

.pt-individual ._position {
    margin-right: 0.8rem;
    font-weight: 300;
    font-size: 1.2rem;
    line-height: 1.5;
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .pt-individual ._position {
        margin-right: 0.4rem;
        font-size: 1.1rem;
        line-height: 1.4545454545;
    }
}

.pt-individual ._name {
    font-weight: 600;
    font-size: 1.4rem;
    line-height: 1.5;
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .pt-individual ._name {
        white-space: nowrap;
        font-size: 1.3rem;
        line-height: 1.5384615385;
    }
}

@media (any-hover: hover) {
    .pt-individual:hover ._image img {
        transform: scale(1.1);
    }
}

.pt-ceo {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 2.34375vw;
}

@media only screen and (max-width: 767px) {
    .pt-ceo {
        padding-top: 3rem;
    }
}

.pt-ceo::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    content: "";
    display: block;
    background-color: #fff;
}

@media (any-hover: hover) {
    .pt-ceo:hover .pt-ceo__image img {
        transform: scale(1.1);
    }
}

.pt-ceo__image {
    width: 56.5656565657%;
    border-radius: 0.78125vw;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .pt-ceo__image {
        width: 15.6rem;
        border-radius: 1rem;
    }
}

.pt-ceo__image img {
    width: 100%;
    height: auto;
    transform: scale(1);
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.pt-ceo__text {
    width: 36.3636363636%;
}

@media only screen and (max-width: 767px) {
    .pt-ceo__text {
        width: 15.5rem;
    }
}

.pt-ceo__name-en {
    margin-bottom: 1.2rem;
    font-family: "Anton", "Helvetica", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-weight: 400;
    font-size: 4.2rem;
    line-height: 1.2380952381;
}

@media only screen and (max-width: 767px) {
    .pt-ceo__name-en {
        margin-bottom: 1rem;
        font-size: 3.2rem;
        line-height: 1.1875;
    }
}

.pt-ceo__name-ja {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    gap: 0 0.5rem;
    margin-bottom: 1.3rem;
    padding-bottom: 2.5rem;
    font-weight: 300;
    font-size: 1.3rem;
    line-height: 1.5384615385;
}

@media only screen and (max-width: 767px) {
    .pt-ceo__name-ja {
        margin-bottom: 1.2rem;
        padding-bottom: 2.4rem;
        font-size: 1.2rem;
        line-height: 1.5;
    }
}

.pt-ceo__name-ja::after {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 2.6rem;
    height: 1px;
    content: "";
    display: block;
    background-color: #fff;
}

.pt-ceo__company {
    font-size: 1.2rem;
    line-height: 1.5;
    letter-spacing: -0.02em;
    color: #a1a1a1;
}

@media only screen and (max-width: 767px) {
    .pt-ceo__company {
        font-size: 1.1rem;
    }
}

.investees {
    position: relative;
    padding-top: 13.90625vw;
    background-color: #1a1a1a;
    z-index: 1;
}

@media only screen and (max-width: 767px) {
    .investees {
        padding-top: 11.2rem;
    }
}

.investees__heading {
    position: relative;
    margin-top: 0.46875vw;
    padding: 0 9.375vw;
}

@media only screen and (max-width: 767px) {
    .investees__heading {
        margin-top: 1.1rem;
        padding: 0 2rem;
    }
}

.investees__body {
    position: relative;
    display: flex;
    padding-top: 8.75vw;
}

@media only screen and (max-width: 767px) {
    .investees__body {
        margin-top: 6.4rem;
        padding: 0 2rem;
    }
}

.investees__nav-area {
    padding-bottom: 14.0625vw;
    padding-left: 3.125vw;
    width: 21.09375vw;
}

@media only screen and (max-width: 767px) {
    .investees__nav-area {
        padding: 0;
        width: auto;
    }
}

@media only screen and (max-width: 767px) {
    .investees__nav-area .c-sections-nav {
        background-color: #1a1a1a;
    }
}

@media only screen and (max-width: 767px) {
    .investees__nav-area .c-sections-nav .c-sections-nav__list {
        --default-color: #a1a1a1;
        --active-color: #fff;
    }
}

.investees__list {
    flex: 1;
    padding-right: 9.375vw;
    padding-bottom: 14.0625vw;
}

@media only screen and (max-width: 767px) {
    .investees__list {
        position: relative;
        z-index: 1;
        padding-right: 0;
        padding-bottom: 9.8rem;
        background-color: #1a1a1a;
    }
}

.investees__item:not(:first-child) {
    margin-top: 9.375vw;
}

@media only screen and (max-width: 767px) {
    .investees__item:not(:first-child) {
        margin-top: 8rem;
    }
}

@media (any-hover: hover) {
    .investees__link:hover .investee-block__name ._line {
        transform: translateX(200%);
    }
    .investees__link:hover .investee-block__name ._arrow svg {
        transform: translateX(0);
    }
    .investees__link:hover .investee-block__visual img {
        transform: scale(1.1);
    }
}

.investee-block {
    display: flex;
    align-items: flex-end;
}

@media only screen and (max-width: 767px) {
    .investee-block {
        display: block;
    }
}

.investee-block__visual {
    overflow: hidden;
    width: 23.28125vw;
    height: 28.359375vw;
    border-radius: 0.78125vw;
}

@media only screen and (max-width: 767px) {
    .investee-block__visual {
        width: 100%;
        height: 39.8rem;
        border-radius: 1rem;
    }
}

.investee-block__visual img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.investee-block__texts {
    flex: 1;
    margin-left: 5.625vw;
}

@media only screen and (max-width: 767px) {
    .investee-block__texts {
        margin-top: 3rem;
        margin-left: 0;
    }
}

.investee-block__company {
    font-style: normal;
    font-weight: 400;
    font-size: 1.8rem;
    line-height: 1.17;
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .investee-block__company {
        font-size: 1.5rem;
        line-height: 1.13;
    }
}

.investee-block__company ._no {
    margin-right: 0.8rem;
}

.investee-block__name {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-top: 1.171875vw;
    padding-bottom: 1.3rem;
    font-family: "Anton", "Helvetica", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 6rem;
    line-height: 1.08;
    color: #fff;
    overflow: hidden;
    border-bottom: solid 0.3rem #fff;
}

@media only screen and (max-width: 767px) {
    .investee-block__name {
        margin-top: 1.2rem;
        padding-bottom: 1.2rem;
        font-size: 4.4rem;
    }
}

.investee-block__name ._arrow {
    margin-bottom: 0.6rem;
    display: flex;
    align-items: center;
    width: 1.8rem;
    height: 1.8rem;
    gap: 1.8rem;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .investee-block__name ._arrow {
        margin-bottom: 0.3rem;
    }
}

.investee-block__name ._arrow svg {
    flex-shrink: 0;
    width: 1.8rem;
    height: 1.8rem;
    transform: translateX(-200%);
    transition: transform 0.45s cubic-bezier(0.45, 0, 0.55, 1);
}

.investee-block__message {
    margin-top: 1.875vw;
    font-style: normal;
    font-weight: 300;
    font-size: 1.4rem;
    line-height: 1.71;
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .investee-block__message {
        margin-top: 1.9rem;
        font-size: 1.2rem;
        line-height: 1.83;
    }
}

.about {
    position: relative;
    background-color: #eee;
}

@media only screen and (max-width: 767px) {
    .about {
        z-index: 1;
    }
}

.about__kv {
    position: relative;
}

.about__contents {
    position: relative;
}

.about__content-area {
    padding: 8.75vw 0 0;
}

@media only screen and (max-width: 767px) {
    .about__content-area {
        padding: 6.2rem 0 0;
    }
}

.about__content--who {
    margin-top: -11.71875vw;
}

@media only screen and (max-width: 767px) {
    .about__content--who {
        margin-top: -15rem;
    }
}

.about__esg {
    margin-top: 12.1875vw;
    padding-bottom: 9.375vw;
}

@media only screen and (max-width: 767px) {
    .about__esg {
        margin-top: 8.6rem;
        padding-bottom: 8rem;
    }
}

.about__history {
    margin-top: 11.5625vw;
}

@media only screen and (max-width: 767px) {
    .about__history {
        margin-top: 8.4rem;
    }
}

.about__overview {
    margin-top: -19.53125vw;
}

@media only screen and (max-width: 767px) {
    .about__overview {
        margin-top: -12rem;
    }
}

@media only screen and (max-width: 767px) {
    .about__access {
        position: relative;
        z-index: 1;
    }
}

.about__nav-area {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    padding: 8.125vw 0 8.90625vw 3.125vw;
    width: 21.09375vw;
}

@media only screen and (max-width: 767px) {
    .about__nav-area {
        position: static;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        padding: 0;
        width: auto;
    }
}

.about__breadcrumbs {
    position: relative;
    background-color: #fff;
}

.about-kv {
    position: relative;
}

.about-kv__visual {
    position: relative;
    overflow: hidden;
    height: 100vh;
    max-height: 62.5vw;
}

@media only screen and (max-width: 767px) {
    .about-kv__visual {
        height: 33.1rem;
        max-height: none;
    }
}

@media only screen and (max-width: 767px) {
    .about-kv__visual img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
    }
}

.about-kv__image-text {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    font-style: normal;
    font-weight: 400;
    font-size: 14.609375vw;
    line-height: 1.15;
    letter-spacing: -0.02em;
    color: transparent;
    white-space: nowrap;
    -webkit-text-stroke-width: 0;
    -webkit-background-clip: text;
    background-image: url(../img/about/main.jpg);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    opacity: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.about-kv__image-text ._fallback {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-image: url(assets/img/about/kv/main.jpg);
    background-position: center center;
    background-size: 100vw auto;
    opacity: 0;
}

.about-kv__texts {
    position: absolute;
    right: 8.984375vw;
    bottom: -2.3rem;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

@media only screen and (max-width: 767px) {
    .about-kv__texts {
        right: 1.9rem;
        bottom: -1.1rem;
    }
}

.about-kv__texts.is-visible .about-kv__breadcrumbs {
    opacity: 1;
    transition: opacity 0.6s cubic-bezier(0.36, 0.75, 0.73, 0.99) 0.8s;
}

.about-kv__title {
    margin-top: -0.6rem;
    font-style: normal;
    font-weight: 400;
    font-size: 6.9rem;
    line-height: 1.15;
    letter-spacing: -0.02em;
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .about-kv__title {
        margin-top: 1.1rem;
        font-size: 4.4rem;
        line-height: 1;
        letter-spacing: 0;
    }
}

.about-value {
    padding: 0 9.375vw 0 21.09375vw;
}

@media only screen and (max-width: 767px) {
    .about-value {
        padding: 0 2rem;
    }
}

.about-value .c-section-heading ._title {
    margin-top: 4rem;
}

@media only screen and (max-width: 767px) {
    .about-value .c-section-heading ._title {
        margin-top: 1.8rem;
    }
}

.about-value__lead {
    display: flex;
    margin-top: 4.6875vw;
}

@media only screen and (max-width: 767px) {
    .about-value__lead {
        display: block;
        margin-top: 4rem;
    }
}

.about-value__lead:lang(en-US) {
    display: block;
}

.about-value__lead-title {
    width: 28.90625vw;
    font-style: normal;
    font-weight: 600;
    font-size: 3.2rem;
    line-height: 1.38;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .about-value__lead-title {
        width: auto;
        font-size: 2.4rem;
        white-space: nowrap;
    }
}

.about-value__lead-title:lang(en-US) {
    width: 100%;
    font-size: 4rem;
    font-weight: 400;
    line-height: 1.15;
    margin-bottom: 2.5vw;
}

@media only screen and (max-width: 767px) {
    .about-value__lead-title:lang(en-US) {
        font-size: 2.4rem;
        line-height: 1.38;
        margin-bottom: 0;
    }
}

.about-value__lead-title ._line {
    display: inline-block;
}

.about-value__lead-title ._line:nth-of-type(1) {
    transition-delay: 0s;
}

.about-value__lead-title ._line:nth-of-type(2) {
    transition-delay: 0.15s;
}

.about-value__lead-title ._line:nth-of-type(3) {
    transition-delay: 0.3s;
}

.about-value__lead-message {
    flex: 1;
    font-style: normal;
    font-weight: 300;
    font-size: 1.4rem;
    line-height: 1.71;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .about-value__lead-message {
        margin-top: 2.4rem;
        font-size: 1.2rem;
        line-height: 1.58;
    }
}

.about-value__performance {
    margin-top: 6.015625vw;
    border-top: 0.4rem solid #383838;
}

@media only screen and (max-width: 767px) {
    .about-value__performance {
        margin-top: 5.2rem;
    }
}

.about-value__performance-title {
    display: flex;
    align-items: center;
    margin-top: 0.9375vw;
    font-style: normal;
    font-weight: 400;
    font-size: 1.8rem;
    line-height: 1.14;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .about-value__performance-title {
        margin-top: 1.2rem;
        font-size: 1.4rem;
        line-height: 1.17;
    }
}

.about-value__performance-title::before {
    display: inline-block;
    margin-right: 0.8rem;
    width: 0.6rem;
    height: 0.6rem;
    background-color: currentColor;
    border-radius: 50%;
    content: "";
}

@media only screen and (max-width: 767px) {
    .about-value__performance-title::before {
        margin-right: 0.4rem;
    }
}

.about-value__performance-list {
    display: flex;
}

.about-value__performance-item {
    overflow: hidden;
    flex: 1;
    padding-bottom: 0.46875vw;
    font-style: normal;
    font-weight: 400;
    font-size: 2.5rem;
    line-height: 1.16;
    color: #1a1a1a;
    text-align: center;
}

@media only screen and (max-width: 767px) {
    .about-value__performance-item {
        padding: 2.6rem 0 0rem;
        font-size: 2.6rem;
        line-height: 1.15;
    }
}

@media only screen and (max-width: 767px) {
    .about-value__performance-item:lang(en-US) {
        padding: 1.6rem 1.1rem 1.3rem 1.8rem;
        font-size: 2.4rem;
    }
}

.about-value__performance-item:not(:first-child) {
    border-left: 1px solid #383838;
}

.about-value__performance-item:not(:first-child) ._no {
    transition-delay: 0.2s;
}

@media only screen and (max-width: 767px) {
    .about-value__performance-item:last-child:lang(en-US) {
        padding-left: 1.7rem;
        padding-right: 0;
    }
}

.about-value__performance-item.is-visible ._no {
    transform: translateY(0);
}

@media only screen and (max-width: 767px) {
    .about-value__performance-item ._category:lang(en-US) {
        display: block;
        width: 100%;
        padding-left: 0.3rem;
        font-size: 1.8rem;
        text-align: left;
    }
}

.about-value__performance-item ._no {
    display: inline-block;
    font-family: "Anton", "Helvetica", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 7.8rem;
    line-height: 1.34;
    transform: translateY(100%);
    transition: transform 0.6s cubic-bezier(0.29, 0.58, 0.52, 0.99);
}

@media only screen and (max-width: 767px) {
    .about-value__performance-item ._no {
        font-size: 5.2rem;
        line-height: 1.46;
    }
}

@media only screen and (max-width: 767px) {
    .about-value__performance-item ._no:lang(en-US) {
        font-size: 5.5rem;
        line-height: 1;
    }
}

.about-value__performance-item ._unit {
    font-weight: 300;
    font-size: 2.1rem;
    line-height: 1.52;
}

@media only screen and (max-width: 767px) {
    .about-value__performance-item ._unit {
        font-size: 2.4rem;
        line-height: 1.5;
    }
}

@media only screen and (max-width: 767px) {
    .about-value__performance-item ._unit:lang(en-US) {
        margin-left: 0;
        font-size: 1.7rem;
        letter-spacing: -0.06em;
        vertical-align: bottom;
    }
}

.about-value__performance-note {
    margin-top: 1.640625vw;
    font-style: normal;
    font-weight: 300;
    font-size: 1rem;
    line-height: 1.5;
    text-align: right;
    color: #383838;
}

@media only screen and (max-width: 767px) {
    .about-value__performance-note {
        margin-top: 1.2rem;
        line-height: 1.4;
    }
}

.about-value__performance-cases {
    position: relative;
    display: flex;
    margin-top: 0.390625vw;
    padding: 2.421875vw 1.875vw 2.5vw;
    border-top: 1px solid #383838;
}

@media only screen and (max-width: 767px) {
    .about-value__performance-cases {
        display: block;
        margin-top: 3.1rem;
        padding: 0;
    }
}

.about-value__performance-cases::before {
    position: absolute;
    right: 2.4rem;
    bottom: 0;
    left: 0;
    display: block;
    height: 1px;
    background-color: #383838;
    content: "";
}

@media only screen and (max-width: 767px) {
    .about-value__performance-cases::before {
        right: 2.1rem;
    }
}

.about-value__performance-cases::after {
    position: absolute;
    right: 0;
    bottom: -1.2rem;
    font-family: "Noto Sans JP", "Helvetica", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 1.75;
    color: #1a1a1a;
    content: attr(data-etc);
}

@media only screen and (max-width: 767px) {
    .about-value__performance-cases::after {
        bottom: -1.4rem;
        font-size: 1.4rem;
        line-height: 2;
    }
}

.about-value__performance-cases:lang(en-US)::before {
    right: 3.4rem;
}

@media only screen and (max-width: 767px) {
    .about-value__performance-cases:lang(en-US)::before {
        right: 3.1rem;
    }
}

.about-value__performance-cases-item {
    flex: 1;
    padding: 0.625vw 3.75vw 0.546875vw;
}

@media only screen and (max-width: 767px) {
    .about-value__performance-cases-item {
        padding: 2.5rem 0rem 2.2rem 2rem;
    }
}

.about-value__performance-cases-item:not(:first-child) {
    border-left: 1px solid #383838;
}

@media only screen and (max-width: 767px) {
    .about-value__performance-cases-item:not(:first-child) {
        border-top: 1px solid #383838;
        border-left: none;
    }
}

@media only screen and (max-width: 767px) {
    .about-value__performance-case {
        display: flex;
    }
}

.about-value__performance-case.is-visible ._title {
    opacity: 1;
    transform: translateY(0);
}

.about-value__performance-case ._title {
    font-style: normal;
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 1.17;
    color: #1a1a1a;
    opacity: 0;
    transform: translateY(2rem);
    transition: 0.6s cubic-bezier(0.25, 0.77, 0.66, 1);
    transition-property: opacity, transform;
}

@media only screen and (max-width: 767px) {
    .about-value__performance-case ._title {
        margin-top: 0.5rem;
        width: 7.4rem;
        font-size: 1.2rem;
        line-height: 1.1;
    }
}

.about-value__performance-case ._description {
    margin-top: 0.9375vw;
    font-style: normal;
    font-weight: 600;
    font-size: 1.8rem;
    line-height: 1.44;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .about-value__performance-case ._description {
        flex: 1;
        margin-top: 0;
        font-size: 1.4rem;
        line-height: 1.5;
    }
}

.about-esg {
    display: flex;
    padding: 0 9.375vw 0 21.09375vw;
}

@media only screen and (max-width: 767px) {
    .about-esg {
        display: block;
        padding: 0 2rem;
    }
}

.about-esg__title-area {
    width: 17.1875vw;
}

@media only screen and (max-width: 767px) {
    .about-esg__title-area {
        width: auto;
    }
}

.about-esg__title-area .c-section-heading ._title {
    margin-top: 4rem;
}

@media only screen and (max-width: 767px) {
    .about-esg__title-area .c-section-heading ._title {
        margin-top: 1.8rem;
    }
}

.about-esg__content {
    flex: 1;
    margin-top: 0.6rem;
    margin-left: 11.71875vw;
}

@media only screen and (max-width: 767px) {
    .about-esg__content {
        margin-top: 4rem;
        margin-left: 0;
    }
}

.about-esg__content ._title {
    font-style: normal;
    font-weight: 600;
    font-size: 3.2rem;
    line-height: 1.38;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .about-esg__content ._title {
        font-size: 2.4rem;
    }
}

.about-esg__content ._title ._line {
    display: inline-block;
}

.about-esg__content ._title ._line:nth-of-type(1) {
    transition-delay: 0s;
}

.about-esg__content ._title ._line:nth-of-type(2) {
    transition-delay: 0.15s;
}

.about-esg__content ._title ._line:nth-of-type(3) {
    transition-delay: 0.3s;
}

.about-esg__content ._description {
    margin-top: 3.59375vw;
    font-style: normal;
    font-weight: 300;
    font-size: 1.4rem;
    line-height: 1.71;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .about-esg__content ._description {
        margin-top: 2.4rem;
        font-size: 1.2rem;
        line-height: 1.58;
    }
}

.about-esg__content ._list {
    margin: 2.4rem 0;
}

@media only screen and (max-width: 767px) {
    .about-esg__content ._list {
        margin: 1.9rem 0;
    }
}

.about-esg__content ._listItem {
    display: flex;
}

.about-esg__content ._listItem::before {
    display: inline-block;
    margin: 1rem 0.6rem;
    width: 0.2rem;
    height: 0.2rem;
    border-radius: 50%;
    background-color: currentColor;
    content: "";
}

@media only screen and (max-width: 767px) {
    .about-esg__content ._listItem::before {
        margin: 0.7rem 0.5rem;
    }
}

.about-who {
    padding: 11.171875vw 0 10.9375vw;
    background: #1a1a1a;
    border-radius: 1.5625vw 1.5625vw 0px 0px;
}

@media only screen and (max-width: 767px) {
    .about-who {
        padding: 8.6rem 0 6.3rem;
        border-radius: 1rem 1rem 0px 0px;
    }
}

.about-who__title-area {
    position: sticky;
    top: 4.21875vw;
    padding: 0 9.375vw 0 21.09375vw;
}

@media only screen and (max-width: 767px) {
    .about-who__title-area {
        top: 9.8rem;
        display: flex;
        justify-content: center;
        padding: 0;
    }
}

.about-who__title-area.is-visible .c-section-heading ._title {
    opacity: 1;
    transform: translateY(0);
}

.about-who__title-area .c-section-heading {
    padding-right: 11.015625vw;
    text-align: center;
}

@media only screen and (max-width: 767px) {
    .about-who__title-area .c-section-heading {
        padding-right: 0;
    }
}

.about-who__title-area .c-section-heading ._label {
    display: none;
}

.about-who__title-area .c-section-heading ._title {
    margin-top: 0;
    opacity: 0;
    transform: translateY(70%);
    transition: 0.8s cubic-bezier(0.23, 0.51, 0.39, 1);
    transition-property: opacity, transform;
}

@media only screen and (max-width: 767px) {
    .about-who__title-area .c-section-heading ._title {
        margin-top: 0;
    }
}

.about-who__contents {
    margin-top: 4.21875vw;
}

@media only screen and (max-width: 767px) {
    .about-who__contents {
        margin-top: 4rem;
    }
}

.about-who__content {
    position: sticky;
    top: calc(6.3rem + 8.4375vw);
    display: flex;
}

@media only screen and (max-width: 767px) {
    .about-who__content {
        top: 17.3rem;
        display: block;
    }
}

.about-who__content:last-child {
    top: 0;
    align-items: flex-start;
    border-bottom: 1px solid #434343;
}

.about-who__content:last-child .about-who__content-title {
    position: sticky;
    top: calc(6.3rem + 8.4375vw);
    padding: 3.046875vw 0 0 21.09375vw;
    height: 18.1rem;
}

@media only screen and (max-width: 767px) {
    .about-who__content:last-child .about-who__content-title {
        top: 17.3rem;
        padding: 3.1rem 2rem 1.3rem;
        height: 7.2rem !important;
    }
}

.about-who__content-title {
    position: relative;
    padding: 2.96875vw 0 0 21.09375vw;
    width: 38.28125vw;
    height: 16.4rem;
    font-style: normal;
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 1.14;
    color: #a1a1a1;
    background-color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .about-who__content-title {
        padding: 3.1rem 2rem 1rem;
        width: auto;
        height: auto;
        font-size: 1.4rem;
        line-height: 1.167;
    }
}

.about-who__content-title ._bar {
    position: absolute;
    top: -1px;
    left: 0;
    display: block;
    width: 100vw;
    height: 1px;
    background-color: #434343;
}

.about-who__content-title ._inner {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.about-who__content-title ._inner::before {
    display: inline-block;
    margin-right: 0.8rem;
    width: 0.6rem;
    height: 0.6rem;
    background-color: currentColor;
    border-radius: 50%;
    content: "";
}

.about-who__content-body {
    flex: 1;
}

.about-who__content-message {
    padding: 3.203125vw 9.375vw 3.046875vw 0;
    font-style: normal;
    font-weight: 600;
    font-size: 2.7rem;
    line-height: 1.56;
    letter-spacing: 0.04em;
    color: #fff;
    background-color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .about-who__content-message {
        padding: 0 2rem 3.1rem;
        font-size: 1.5rem;
        line-height: 1.6;
        letter-spacing: 0.07em;
    }
}

.about-who__content-item {
    position: sticky;
    top: calc(6.3rem + 8.4375vw);
    display: flex;
    align-items: center;
    min-height: calc(6.25vw + 12.6rem);
    background-color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .about-who__content-item {
        top: 24.5rem;
        align-items: flex-start;
        padding: 0 0 0 2rem;
        min-height: 14.4rem;
    }
}

.about-who__content-item:not(:first-child)::before {
    position: absolute;
    top: -1px;
    right: 0;
    left: 0;
    display: block;
    height: 1px;
    background-color: #434343;
    content: "";
}

@media only screen and (max-width: 767px) {
    .about-who__content-item:not(:first-child)::before {
        left: 2rem;
    }
}

.about-who__way {
    padding: 3.125vw 9.375vw 3.125vw 0;
}

@media only screen and (max-width: 767px) {
    .about-who__way {
        padding: 3.2rem 2rem 0 0;
    }
}

.about-who__way-title {
    font-style: normal;
    font-weight: 600;
    font-size: 2.8rem;
    line-height: 1.5;
    letter-spacing: 0.01em;
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .about-who__way-title {
        font-size: 1.6rem;
    }
}

.about-who__way-title:lang(en-US) {
    text-indent: -1.2em;
    padding-left: 1.2em;
}

.about-who__way-description {
    margin-top: 2.4rem;
    margin-left: 3.6rem;
    font-style: normal;
    font-weight: 300;
    font-size: 1.6rem;
    line-height: 1.88;
    color: #d7d7d7;
}

@media only screen and (max-width: 767px) {
    .about-who__way-description {
        margin-top: 1.6rem;
        margin-left: 2rem;
        font-size: 1.4rem;
        line-height: 1.43;
    }
}

.about-dei {
    display: flex;
    padding: 11.5625vw 9.375vw 0 21.09375vw;
}

@media only screen and (max-width: 767px) {
    .about-dei {
        display: block;
        padding: 7.1rem 2rem 0;
    }
}

.about-dei__header {
    width: 17.1875vw;
}

@media only screen and (max-width: 767px) {
    .about-dei__header {
        width: auto;
    }
}

.about-dei__header .c-section-heading ._title {
    margin-top: 4rem;
}

@media only screen and (max-width: 767px) {
    .about-dei__header .c-section-heading ._title {
        margin-top: 1.8rem;
    }
}

.about-dei__body {
    margin-left: auto;
    padding-top: 0.5rem;
    width: 40.625vw;
    color: #1a1a1a;
    font-size: 1.4rem;
    font-style: normal;
    font-weight: 300;
    line-height: 1.71;
}

@media only screen and (max-width: 767px) {
    .about-dei__body {
        margin-left: 0;
        padding-top: 4.1rem;
        width: auto;
        font-size: 1.2rem;
        line-height: 1.58;
    }
}

.about-dei__message:not(:first-child) {
    margin-top: 2.4rem;
}

@media only screen and (max-width: 767px) {
    .about-dei__message:not(:first-child) {
        margin-top: 1.9rem;
    }
}

.about-dei__list {
    margin-top: 2.4rem;
}

@media only screen and (max-width: 767px) {
    .about-dei__list {
        margin-top: 1.9rem;
    }
}

@media only screen and (max-width: 767px) {
    .about-dei__item {
        display: flex;
    }
}

.about-dei__item:not(:first-child) {
    margin-top: 1.2rem;
}

@media only screen and (max-width: 767px) {
    .about-dei__item:not(:first-child) {
        margin-top: 0;
    }
}

.about-dei__item ._term {
    display: inline-flex;
    justify-content: space-between;
    min-width: 6.5rem;
    font-weight: normal;
}

@media only screen and (max-width: 767px) {
    .about-dei__item ._term {
        min-width: 6.1rem;
    }
}

.about-dei__item ._term::after {
    content: ":";
}

@media only screen and (max-width: 767px) {
    .about-dei__item ._description {
        margin-left: 0.5rem;
    }
}

.about-history {
    padding: 0 9.375vw 0 21.09375vw;
}

@media only screen and (max-width: 767px) {
    .about-history {
        padding: 0 2rem;
    }
}

.about-history__header .c-section-heading ._title {
    margin-top: 4rem;
}

@media only screen and (max-width: 767px) {
    .about-history__header .c-section-heading ._title {
        margin-top: 1.8rem;
    }
}

.about-history__body {
    display: flex;
    margin-top: 4.6875vw;
    padding-bottom: 10.9375vw;
}

@media only screen and (max-width: 767px) {
    .about-history__body {
        display: block;
        margin-top: 4rem;
        padding-bottom: 8rem;
    }
}

.about-history__visual-area {
    padding-bottom: 13.4rem;
}

@media only screen and (max-width: 767px) {
    .about-history__visual-area {
        padding-bottom: 0;
    }
}

.about-history__visual-list {
    position: sticky;
    top: calc(50vh - 12.3828125vw);
    width: 33.28125vw;
    height: 24.765625vw;
}

@media only screen and (max-width: 767px) {
    .about-history__visual-list {
        position: relative;
        top: auto;
        width: 100%;
        height: 25rem;
    }
}

.about-history__visual-item {
    position: absolute;
    overflow: hidden;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 0.78125vw;
    transition: opacity 0.2s cubic-bezier(0.5, 0, 0.5, 1);
}

@media only screen and (max-width: 767px) {
    .about-history__visual-item {
        border-radius: 1rem;
    }
}

.about-history__visual-item.is-hidden {
    opacity: 0;
    pointer-events: none;
}

.about-history__visual-item img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.about-history__texts {
    margin-left: auto;
    padding-top: 8.828125vw;
    width: 28.90625vw;
}

@media only screen and (max-width: 767px) {
    .about-history__texts {
        margin-top: 2.4rem;
        margin-left: 0;
        padding-top: 0;
        width: auto;
    }
}

.about-history__item {
    padding: 2.734375vw 0;
}

@media only screen and (max-width: 767px) {
    .about-history__item {
        padding: 0;
    }
    .about-history__item+.about-history__item {
        margin-top: 6.4rem;
    }
}

@media only screen and (max-width: 767px) {
    .about-history__year-block img {
        width: 100%;
        height: 25rem;
        -o-object-fit: cover;
        object-fit: cover;
        border-radius: 1rem;
    }
}

.about-history__year {
    font-family: "Anton", "Helvetica", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 4.8rem;
    line-height: 1.46;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .about-history__year {
        margin-top: 2.4rem;
        font-size: 4rem;
        line-height: 0.85;
    }
}

.about-history__events {
    margin-top: 2.5vw;
}

@media only screen and (max-width: 767px) {
    .about-history__events {
        margin-top: 2.4rem;
    }
}

.about-history__event-title {
    font-style: normal;
    font-weight: 600;
    font-size: 1.8rem;
    line-height: 1.78;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .about-history__event-title {
        font-size: 1.5rem;
        line-height: 1.4;
    }
}

.about-history__event-description {
    margin-top: 1.875vw;
    font-style: normal;
    font-weight: 300;
    font-size: 1.4rem;
    line-height: 1.71;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .about-history__event-description {
        margin-top: 1.8rem;
        font-size: 1.2rem;
        line-height: 1.4;
    }
}

.about-history__note {
    margin-top: 2.578125vw;
}

@media only screen and (max-width: 767px) {
    .about-history__note {
        margin-top: 4.8rem;
    }
}

.about-history__note-title {
    font-style: normal;
    font-weight: 300;
    font-size: 1.2rem;
    line-height: 1.5;
    color: #383838;
}

@media only screen and (max-width: 767px) {
    .about-history__note-title {
        font-size: 1rem;
    }
}

.about-history__note-histories {
    margin-top: 0.3125vw;
    padding-left: 1.3rem;
}

@media only screen and (max-width: 767px) {
    .about-history__note-histories {
        display: flex;
        flex-wrap: wrap;
        margin-top: 0.2rem;
        padding-left: 1rem;
    }
}

.about-history__note-histories:lang(en-US) {
    padding-left: 0.8rem;
}

@media only screen and (max-width: 767px) {
    .about-history__note-histories:lang(en-US) {
        padding-left: 0.6rem;
    }
}

.about-history__note-history {
    font-style: normal;
    font-weight: 300;
    font-size: 1.2rem;
    line-height: 1.5;
    color: #383838;
}

@media only screen and (max-width: 767px) {
    .about-history__note-history {
        font-size: 1rem;
    }
}

@media only screen and (min-width: 768px) {
    .about-history__note-history ._delimiter {
        display: none;
    }
}

@media only screen and (max-width: 767px) {
    .about-history__note-history ._delimiter:lang(en-US) {
        margin-right: 0.2rem;
    }
}

.about-outline {
    padding: 11.25vw 9.375vw 4.6875vw 21.09375vw;
    background: #fff;
    border-radius: 1.5625vw 1.5625vw 0px 0px;
}

@media only screen and (max-width: 767px) {
    .about-outline {
        padding: 7rem 2rem 1.1rem;
        border-radius: 1rem 1rem 0px 0px;
    }
}

.about-outline__header .c-section-heading ._title {
    margin-top: 4rem;
}

@media only screen and (max-width: 767px) {
    .about-outline__header .c-section-heading ._title {
        margin-top: 1.8rem;
    }
}

.about-outline__list {
    margin-top: 4.6875vw;
    background-color: rgba(238, 238, 238, 0.7);
}

@media only screen and (max-width: 767px) {
    .about-outline__list {
        margin-top: 3.9rem;
    }
}

.about-outline__item {
    position: relative;
    display: flex;
    align-items: center;
    padding: 1.5625vw 0;
    border-bottom: 1px solid #fff;
}

@media only screen and (max-width: 767px) {
    .about-outline__item {
        padding: 1.5rem 0 1.6rem;
    }
}

.about-outline__item::after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 19.21875vw;
    display: block;
    width: 1px;
    background-color: #fff;
    content: "";
}

@media only screen and (max-width: 767px) {
    .about-outline__item::after {
        left: 10.7rem;
    }
}

.about-outline__label {
    padding-left: 3.125vw;
    width: 19.21875vw;
    font-style: normal;
    font-weight: 600;
    font-size: 1.4rem;
    line-height: 2;
    color: #383838;
}

@media only screen and (max-width: 767px) {
    .about-outline__label {
        width: 10.7rem;
        font-size: 1.2rem;
        line-height: 1.92;
    }
}

.about-outline__value {
    flex: 1;
    padding: 0 3.125vw;
    font-style: normal;
    font-weight: 300;
    font-size: 1.4rem;
    line-height: 1.71;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .about-outline__value {
        padding: 0 0.8rem 0 1.2rem;
        font-weight: 400;
        font-size: 1.2rem;
        line-height: 1.92;
    }
}

.about-outline__value a {
    text-decoration: underline;
    text-underline-offset: 0.2rem;
    text-decoration-thickness: 0.08rem;
    transition: opacity 0.2s;
}

@media (any-hover: hover) {
    .about-outline__value a:hover {
        opacity: 0.6;
    }
}

.about-outline__value-text {
    display: block;
}

.about-outline__terms-name {
    display: flex;
    justify-content: space-between;
    font-weight: 300;
    white-space: nowrap;
}

.about-outline__terms-name::after {
    margin-left: 0.2rem;
    content: ":";
}

.about-outline__terms-description {
    padding-left: 0.2rem;
    white-space: pre-wrap;
}

@media only screen and (max-width: 767px) {
    .about-outline__terms-description {
        padding-left: 0.5rem;
    }
}

.about-access {
    padding: 6.953125vw 9.375vw 13.984375vw 21.09375vw;
    background-color: #fff;
}

@media only screen and (max-width: 767px) {
    .about-access {
        padding: 4rem 2rem 10rem;
    }
}

.about-access__header .c-section-heading ._title {
    margin-top: 4rem;
}

@media only screen and (max-width: 767px) {
    .about-access__header .c-section-heading ._title {
        margin-top: 1.8rem;
    }
}

.about-access__map {
    overflow: hidden;
    margin-top: 4.6875vw;
    height: 22.265625vw;
    border-radius: 0.78125vw;
}

@media only screen and (max-width: 767px) {
    .about-access__map {
        margin-top: 4rem;
        height: 21.5rem;
        border-radius: 1rem;
    }
}

.about-access__map iframe {
    width: 100%;
    height: 100%;
}

.about-access__information {
    display: flex;
    margin-top: 3.671875vw;
}

@media only screen and (max-width: 767px) {
    .about-access__information {
        display: block;
        margin-top: 2.4rem;
    }
}

.about-access__access-information {
    width: 29.84375vw;
}

@media only screen and (max-width: 767px) {
    .about-access__access-information {
        width: auto;
    }
}

.about-access__information-title {
    display: inline-flex;
    align-items: center;
    font-style: normal;
    font-weight: 600;
    font-size: 1.4rem;
    line-height: 1.71;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .about-access__information-title {
        font-size: 1.2rem;
        line-height: 1.42;
    }
}

.about-access__information-title::before {
    display: inline-block;
    margin-right: 0.4rem;
    width: 0.8rem;
    height: 1px;
    background-color: currentColor;
    content: "";
}

.about-access__information-description {
    margin-top: 0.625vw;
    font-style: normal;
    font-weight: 300;
    font-size: 1.4rem;
    line-height: 1.71;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .about-access__information-description {
        margin-top: 0.8rem;
        font-size: 1.2rem;
        line-height: 1.42;
    }
}

.about-access__location-information {
    margin-left: auto;
    width: 29.84375vw;
}

@media only screen and (max-width: 767px) {
    .about-access__location-information {
        margin-top: 3.2rem;
        width: auto;
    }
}

.about-access__address {
    margin-top: 0.625vw;
}

@media only screen and (max-width: 767px) {
    .about-access__address {
        margin-top: 0.8rem;
    }
}

.about-access__address ._address {
    font-style: normal;
    font-weight: 300;
    font-size: 1.4rem;
    line-height: 1.71;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .about-access__address ._address {
        font-size: 1.2rem;
        line-height: 1.42;
    }
}

.about-access__address ._mapLink {
    display: inline-flex;
    align-items: center;
    margin-top: 0.46875vw;
    font-style: normal;
    font-weight: 400;
    font-size: 1.2rem;
    line-height: 1.3;
    color: #383838;
    border-bottom: 1px solid currentColor;
}

@media only screen and (max-width: 767px) {
    .about-access__address ._mapLink {
        margin-top: 1.3rem;
        font-size: 1.2rem;
        line-height: 1.42;
    }
}

.about-access__address ._mapLink svg {
    margin-left: 0.4rem;
    width: 1rem;
    height: 1rem;
}

.about-access__address ._companyName {
    margin-top: 1.640625vw;
}

@media only screen and (max-width: 767px) {
    .about-access__address ._companyName {
        margin-top: 2.4rem;
    }
}

.about-access__address ._companyName,
.about-access__address ._tel {
    font-style: normal;
    font-weight: 300;
    font-size: 1.4rem;
    line-height: 1.71;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .about-access__address ._companyName,
    .about-access__address ._tel {
        font-size: 1.2rem;
        line-height: 1.42;
    }
}

.team {
    position: relative;
    z-index: 1;
    background-color: #1a1a1a;
}

.team__inner {
    padding: 13.90625vw 9.375vw 14.0625vw;
}

@media only screen and (max-width: 767px) {
    .team__inner {
        padding: 11.2rem 0 11.2rem;
    }
}

.team__heading {
    margin-bottom: 8.75vw;
}

@media only screen and (max-width: 767px) {
    .team__heading {
        margin-bottom: 6.4rem;
        padding: 0 2rem;
    }
}

.team__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: auto;
    gap: 4.375vw 3.8461538462%;
}

@media only screen and (max-width: 767px) {
    .team__list {
        padding: 0 2rem;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: auto;
        gap: 4rem 1.5rem;
    }
}

.team__item {
    text-align: right;
}

.team__item.is-visible .team__item-image img {
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
}

@media (any-hover: hover) {
    .team__item-link:hover .team__item-image img {
        transform: scale(1.1);
    }
}

.team__item-image {
    width: 100%;
    height: 31.484375vw;
    margin-bottom: 1.484375vw;
    border-radius: 0.78125vw;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .team__item-image {
        margin-bottom: 1.4rem;
        height: 20.2rem;
        border-radius: 1rem;
    }
}

.team__item-image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-clip-path: inset(100% 0 0 0);
    clip-path: inset(100% 0 0 0);
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-clip-path 1s cubic-bezier(0.15, 0.66, 0.39, 0.99);
    transition: clip-path 1s cubic-bezier(0.15, 0.66, 0.39, 0.99), transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: clip-path 1s cubic-bezier(0.15, 0.66, 0.39, 0.99), transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-clip-path 1s cubic-bezier(0.15, 0.66, 0.39, 0.99);
}

.team__item-name {
    margin-bottom: 0.8rem;
    font-size: 1.8rem;
    line-height: 1.1666666667;
    letter-spacing: -0.02em;
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .team__item-name {
        margin-bottom: 0.4rem;
        font-size: 1.3rem;
        line-height: 1.1538461538;
    }
}

.team__item-position {
    font-size: 1.4rem;
    line-height: 1.1428571429;
    letter-spacing: -0.02em;
    color: #a1a1a1;
}

@media only screen and (max-width: 767px) {
    .team__item-position {
        font-size: 1.1rem;
        line-height: 1.1818181818;
    }
}

.team-detail {
    position: relative;
    padding-top: 13.125vw;
    background-color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .team-detail {
        z-index: 1;
        padding-top: 12.8rem;
        overflow: hidden;
    }
}

.team-detail__intro {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding-bottom: 11.484375vw;
}

@media only screen and (max-width: 767px) {
    .team-detail__intro {
        display: block;
        padding-bottom: 8rem;
    }
}

.team-detail__intro-sticky-image {
    order: 2;
    width: 35.46875vw;
    height: 44.765625vw;
    margin-right: 9.375vw;
    position: sticky;
    top: 10rem;
    border-radius: 0.78125vw;
    overflow: hidden;
}

.team-detail__intro-sticky-image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

@media only screen and (max-width: 767px) {
    .team-detail__intro-image {
        height: 42.2rem;
        margin: 0 2rem 4.8rem;
        border-radius: 1rem;
        overflow: hidden;
    }
}

@media only screen and (max-width: 767px) {
    .team-detail__intro-image img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
    }
}

.team-detail__intro-text {
    flex: 1;
    padding-left: 9.375vw;
    padding-right: 5.15625vw;
}

@media only screen and (max-width: 767px) {
    .team-detail__intro-text {
        padding: 0;
    }
}

.team-detail__header {
    position: relative;
    margin-bottom: calc(2.5vw - 1.2rem);
    padding-bottom: 2.34375vw;
    border-bottom: solid 1px #a1a1a1;
}

@media only screen and (max-width: 767px) {
    .team-detail__header {
        margin: 0 2rem 0.4rem;
        padding: 0 0 1.4rem;
    }
}

.team-detail__heading {
    margin-bottom: 2.4rem;
    font-size: 5.6rem;
    line-height: 1.3928571429;
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .team-detail__heading {
        margin-bottom: 2rem;
        font-weight: 400;
        font-size: 4.4rem;
        line-height: 1.2045454545;
        letter-spacing: -0.02em;
    }
}

.team-detail__position {
    letter-spacing: -0.02em;
    color: #a1a1a1;
}

.team-detail__position ._label {
    margin-bottom: 0.8rem;
    font-size: 1rem;
    font-weight: normal;
    line-height: 1.1;
}

.team-detail__position ._value {
    font-size: 2rem;
    line-height: 1.15;
}

@media only screen and (max-width: 767px) {
    .team-detail__position ._value {
        font-size: 1.5rem;
    }
}

.team-detail__contacts {
    display: flex;
    align-items: center;
    margin-left: -1.2rem;
    margin-bottom: 6.8rem;
}

@media only screen and (max-width: 767px) {
    .team-detail__contacts {
        margin-left: -1rem;
        margin-bottom: 3.8rem;
        padding: 0 2rem;
    }
}

.team-detail__contacts-item ._link {
    transition: opacity 0.2s;
    width: 4.4rem;
    height: 4.4rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media only screen and (max-width: 767px) {
    .team-detail__contacts-item ._link {
        width: 3.8rem;
        height: 3.8rem;
    }
}

@media (any-hover: hover) {
    .team-detail__contacts-item ._link:hover {
        opacity: 0.6;
    }
}

.team-detail__contacts-item svg {
    width: 2rem;
    fill: #a1a1a1;
}

@media only screen and (max-width: 767px) {
    .team-detail__contacts-item svg {
        width: 1.8rem;
    }
}

.team-detail__contacts-item svg path {
    fill: #a1a1a1;
}

.team-detail__career {
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .team-detail__career {
        padding: 0 2rem;
    }
}

.team-detail__career ._label {
    position: relative;
    margin-bottom: 2.4rem;
    padding-left: 2.8rem;
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 1.125;
}

.team-detail__career ._label::before {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 1.7rem;
    height: 1px;
    content: "";
    display: block;
    margin: auto;
    background-color: #fff;
}

.team-detail__career ._value {
    font-size: 1.5rem;
    line-height: 1.4;
}

@media only screen and (max-width: 767px) {
    .team-detail__career ._value {
        font-size: 1.4rem;
        line-height: 1.4285714286;
    }
}

.team-detail__career ._value a {
    text-decoration: underline;
    transition: opacity 0.2s;
}

@media (any-hover: hover) {
    .team-detail__career ._value a:hover {
        opacity: 0.6;
    }
}

.team-detail__career ._value p+p {
    margin-top: 1.4em;
}

@media only screen and (max-width: 767px) {
    .team-detail__career ._value p+p {
        margin-top: 1.4285714286em;
    }
}

.team-detail__interviews {
    margin-top: 8.75vw;
}

@media only screen and (max-width: 767px) {
    .team-detail__interviews {
        margin-top: 8rem;
        padding: 0 4rem 0 2rem;
    }
}

.team-detail__interviews-heading {
    position: relative;
    margin-bottom: 6.640625vw;
    font-weight: 600;
    font-size: 3rem;
    line-height: 1.8;
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .team-detail__interviews-heading {
        margin-bottom: 6.9rem;
        font-size: 2.2rem;
        line-height: 1.8181818182;
    }
}

.team-detail__interviews-text {
    position: relative;
    z-index: 1;
}

.team-detail__interviews-quote {
    position: absolute;
    width: 5rem;
    height: 5rem;
}

@media only screen and (max-width: 767px) {
    .team-detail__interviews-quote {
        width: 4.3rem;
        height: 4.3rem;
    }
}

.team-detail__interviews-quote svg {
    width: 100%;
    height: auto;
}

.team-detail__interviews-quote.-left {
    top: -3.2rem;
    left: -2rem;
}

@media only screen and (max-width: 767px) {
    .team-detail__interviews-quote.-left {
        top: -2.6rem;
    }
}

.team-detail__interviews-quote.-right {
    bottom: -2.2rem;
    right: -2.1rem;
}

@media only screen and (max-width: 767px) {
    .team-detail__interviews-quote.-right {
        bottom: -2.5rem;
        right: -2rem;
    }
}

.team-detail__interviews-item:not(:last-child) {
    margin-bottom: 5.859375vw;
}

@media only screen and (max-width: 767px) {
    .team-detail__interviews-item:not(:last-child) {
        margin-bottom: 6.4rem;
    }
}

.team-detail__subInfo {
    background-color: #fff;
    color: #1a1a1a;
    padding: 10.390625vw 9.375vw 6.25vw;
    border-radius: 1.5625vw 1.5625vw 0 0;
    margin-top: -15.625vw;
}

@media only screen and (max-width: 767px) {
    .team-detail__subInfo {
        padding: 6.4rem 2rem 8rem;
        border-radius: 1.5rem 1.5rem 0 0;
        margin-top: -15rem;
    }
}

.team-detail__subInfo-heading {
    position: relative;
    margin-bottom: 6rem;
    padding-top: 0.9rem;
}

@media only screen and (max-width: 767px) {
    .team-detail__subInfo-heading {
        margin-bottom: 4rem;
    }
}

.team-detail__subInfo-heading::before {
    width: 1.7rem;
    height: 1px;
    content: "";
    display: block;
    margin-bottom: 2.3rem;
    background-color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .team-detail__subInfo-heading::before {
        width: 1.4rem;
        margin-bottom: 2rem;
    }
}

.team-detail__subInfo-heading ._en {
    font-size: 5rem;
    line-height: 1.14;
    letter-spacing: -0.02em;
}

@media only screen and (max-width: 767px) {
    .team-detail__subInfo-heading ._en {
        font-size: 3.2rem;
        line-height: 1.15625;
    }
}

.team-detail__investment {
    margin-bottom: 9.375vw;
}

@media only screen and (max-width: 767px) {
    .team-detail__investment {
        margin-bottom: 6.4rem;
    }
}

.team-detail__investment-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: auto;
    gap: 0 1.9230769231%;
}

@media only screen and (max-width: 767px) {
    .team-detail__investment-list {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: auto;
        gap: 0 1.5rem;
    }
}

.team-detail__investment-link {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    padding: 2rem 0 6rem;
    font-weight: 400;
    font-size: 1.8rem;
    line-height: 1.1666666667;
    letter-spacing: -0.02em;
}

@media only screen and (max-width: 767px) {
    .team-detail__investment-link {
        padding: 1.6rem 0 3rem;
        font-size: 1.5rem;
        line-height: 1.1333333333;
    }
}

.team-detail__investment-link ._top-line {
    position: absolute;
    top: 0;
    width: 100%;
    height: 1px;
    display: block;
}

.team-detail__investment-link ._top-line::before,
.team-detail__investment-link ._top-line::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: #1a1a1a;
    transition: transform 0.25s ease-in-out;
}

.team-detail__investment-link ._top-line::before {
    transform: scaleX(0);
    transform-origin: left;
}

.team-detail__investment-link ._top-line::after {
    transform: scaleX(1);
    transform-origin: right;
    transition-delay: 0.25s;
}

.team-detail__investment-link ._bottom-line {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    content: "";
    background-color: #1a1a1a;
    display: none;
}

@media only screen and (min-width: 768px) {
    .team-detail__investment-item:nth-last-child(-n+4) .team-detail__investment-link ._bottom-line {
        display: block;
    }
}

@media only screen and (max-width: 767px) {
    .team-detail__investment-item:nth-last-child(-n+2) .team-detail__investment-link ._bottom-line {
        display: block;
    }
}

@media (any-hover: hover) {
    .team-detail__investment-link:hover ._top-line::before {
        transform: scaleX(1);
        transition-delay: 0.25s;
    }
    .team-detail__investment-link:hover ._top-line::after {
        transform: scaleX(0);
        transition-delay: 0s;
    }
}

.team-detail__news-wrap {
    box-sizing: content-box;
    overflow: hidden;
    padding-bottom: 2.4rem;
    transition: max-height 0.3s;
}

@media only screen and (max-width: 767px) {
    .team-detail__news-wrap {
        padding-bottom: 2rem;
    }
}

.team-detail__news-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: auto;
    gap: 0 1.9230769231%;
}

@media only screen and (max-width: 767px) {
    .team-detail__news-list {
        display: block;
    }
}

.team-detail__news-item {
    padding-bottom: 1.5625vw;
}

@media only screen and (max-width: 767px) {
    .team-detail__news-item {
        padding-bottom: 2rem;
    }
}

.team-detail__news-link-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
}

.team-detail__news-link-header ._icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    background-color: #1a1a1a;
    border: solid 1px transparent;
    transition: background-color 0.3s, border-color 0.3s;
}

.team-detail__news-link-header ._icon svg {
    width: 1rem;
    height: auto;
}

.team-detail__news-link-header ._icon svg path {
    fill: #fff;
    transition: fill 0.3s;
}

.team-detail__news-link-header ._date {
    position: relative;
    display: block;
    padding-left: 1.3rem;
    font-weight: 300;
    font-size: 1.4rem;
    line-height: 1.1428571429;
    letter-spacing: -0.02em;
}

.team-detail__news-link-header ._date::before {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 0.9rem;
    height: 0.9rem;
    content: "";
    display: block;
    margin: auto;
    border-radius: 50%;
    background-color: #1a1a1a;
}

.team-detail__news-link {
    display: block;
    width: 100%;
    height: 100%;
    border: solid 1px #1a1a1a;
    border-radius: 0.78125vw;
    padding: 3rem 3rem 2.8rem;
}

@media only screen and (max-width: 767px) {
    .team-detail__news-link {
        padding: 2rem 2rem 2.7rem;
        border-radius: 1rem;
    }
}

.team-detail__news-link ._title {
    font-weight: 300;
    font-size: 1.4rem;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .team-detail__news-link ._title {
        font-size: 1.2rem;
        line-height: 1.4166666667;
    }
}

@media (any-hover: hover) {
    .team-detail__news-link:hover .team-detail__news-link-header ._icon {
        background-color: #fff;
        border-color: #1a1a1a;
    }
    .team-detail__news-link:hover .team-detail__news-link-header ._icon svg path {
        fill: #1a1a1a;
    }
}

.team-detail__news-listBtn {
    font-size: 1.6rem;
    letter-spacing: -0.02em;
    line-height: 1.125;
    text-align: center;
    display: flex;
    justify-content: center;
    margin: 1.2rem auto 0;
}

.team-detail__news-listBtn.is-hidden {
    display: none;
}

.team-detail__news-listBtn span {
    display: block;
    position: relative;
}

.team-detail__news-listBtn span:after {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #1a1a1a;
    position: absolute;
    bottom: 0.1rem;
    left: 0;
    transition: width 0.3s;
}

@media (any-hover: hover) {
    .team-detail__news-listBtn:hover span:after {
        width: 0;
        right: 0;
        left: auto;
    }
}

@media only screen and (max-width: 767px) {
    .team-detail__news-listBtn {
        margin: 0.8rem auto 0;
    }
}

.team-detail__news-more {
    text-align: right;
}

@media only screen and (max-width: 767px) {
    .team-detail__news-more {
        text-align: center;
    }
}

.team-detail__news-more ._link {
    display: inline-block;
    padding: 1rem 2.8rem;
    border-radius: 2.6rem;
    background-color: #1a1a1a;
    border: solid 1px transparent;
    font-weight: 600;
    font-size: 1.2rem;
    line-height: 1.5;
    color: #fff;
    transition: background-color 0.3s, border-color 0.3s, color 0.3s;
}

@media only screen and (max-width: 767px) {
    .team-detail__news-more ._link {
        padding: 1.3rem 3.4rem;
    }
}

@media (any-hover: hover) {
    .team-detail__news-more ._link:hover {
        background-color: #fff;
        border-color: #1a1a1a;
        color: #1a1a1a;
    }
}

.team-detail__pagination {
    position: relative;
    z-index: 1;
    background-color: #fff;
}

.team-detail__breadcrumbs {
    background-color: #fff;
}

.team-detail-interview__heading {
    padding-bottom: 2rem;
    font-weight: 600;
    font-size: 2.2rem;
    line-height: 1.3636363636;
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .team-detail-interview__heading {
        padding-bottom: 1.2rem;
        border-bottom: solid 1px #383838;
        font-size: 1.6rem;
        line-height: 1.375;
    }
}

.team-detail-interview__text {
    position: relative;
    margin-left: 2.4rem;
    padding-top: 2.4rem;
    font-weight: 300;
    font-size: 1.5rem;
    line-height: 1.4;
    color: #d7d7d7;
    white-space: pre-wrap;
}

@media only screen and (max-width: 767px) {
    .team-detail-interview__text {
        width: 29.5rem;
        margin-left: 2rem;
        padding-top: 1.6rem;
        font-size: 1.4rem;
        line-height: 1.4285714286;
    }
}

.team-detail-interview__text::before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    display: block;
    content: "";
    width: 100%;
    height: 1px;
    background-color: #383838;
}

@media only screen and (max-width: 767px) {
    .team-detail-interview__text::before {
        display: none;
    }
}

.team-detail-pagination {
    display: flex;
    align-items: center;
    background-color: #fff;
    height: 18.046875vw;
    border-top: solid 1px rgba(26, 26, 26, 0.1);
}

@media only screen and (max-width: 767px) {
    .team-detail-pagination {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto auto;
        gap: 0 1px;
        height: auto;
        border-top: 0;
    }
}

.team-detail-pagination__link {
    position: relative;
    display: flex;
    padding: 1.5625vw;
    font-weight: 400;
    color: #1a1a1a;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .team-detail-pagination__link {
        padding: 1.6rem 2rem;
    }
}

.team-detail-pagination__link.-index {
    flex: 1;
    height: 100%;
    justify-content: center;
    align-items: center;
    font-size: 2.4rem;
}

@media only screen and (max-width: 767px) {
    .team-detail-pagination__link.-index {
        grid-column: 1/3;
        grid-row: 2/3;
        padding: 3.2rem 0;
        font-size: 1.4rem;
        line-height: 1.6rem;
    }
}

.team-detail-pagination__link.-index ._text {
    position: relative;
    display: block;
}

.team-detail-pagination__link.-index ._text::after {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    content: "";
    display: block;
    background-color: #1a1a1a;
    transform: scaleX(0);
    transition: transform 0.2s cubic-bezier(0.5, 1, 0.89, 1);
}

@media (any-hover: hover) {
    .team-detail-pagination__link.-index:hover ._text::after {
        transform: scaleX(1);
    }
}

.team-detail-pagination__link.-prev,
.team-detail-pagination__link.-next {
    width: 38.28125vw;
    height: 100%;
    flex-direction: column;
    justify-content: flex-end;
    background-color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .team-detail-pagination__link.-prev,
    .team-detail-pagination__link.-next {
        width: 100%;
        height: 16rem;
    }
}

@media only screen and (max-width: 767px) {
    .team-detail-pagination__link.-prev {
        grid-column: 1/2;
        grid-row: 1/2;
    }
}

.team-detail-pagination__link.-next {
    align-items: flex-end;
    text-align: right;
}

@media only screen and (max-width: 767px) {
    .team-detail-pagination__link.-next {
        grid-column: 2/3;
        grid-row: 1/2;
    }
}

.team-detail-pagination__link.is-disabled {
    visibility: hidden;
}

@media (any-hover: hover) {
    .team-detail-pagination__link:hover .team-detail-pagination__image {
        opacity: 1;
    }
    .team-detail-pagination__link:hover .team-detail-pagination__name {
        color: #383838;
    }
    .team-detail-pagination__link:hover .team-detail-pagination__position {
        color: #6a6a6a;
    }
    .team-detail-pagination__link:hover .team-detail-pagination__label {
        color: #1a1a1a;
    }
    .team-detail-pagination__link:hover .team-detail-pagination__label.-prev ._text,
    .team-detail-pagination__link:hover .team-detail-pagination__label.-next ._text {
        transform: translateX(0);
    }
    .team-detail-pagination__link:hover .team-detail-pagination__label ._icon {
        opacity: 1;
        transition: opacity 0.6s 0.2s;
    }
}

.team-detail-pagination__image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.5;
    transition: opacity 0.3s;
}

.team-detail-pagination__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center 26%;
    object-position: center 26%;
}

.team-detail-pagination__text {
    position: relative;
}

@media only screen and (max-width: 767px) {
    .team-detail-pagination__text {
        display: flex;
        flex-direction: column;
    }
}

.team-detail-pagination__name {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 400;
    font-size: 1.4rem;
    line-height: 1.1428571429;
    letter-spacing: -0.02em;
    transition: color 0.3s;
    color: #d7d7d7;
}

@media only screen and (max-width: 767px) {
    .team-detail-pagination__name {
        order: 2;
    }
}

.team-detail-pagination__position {
    display: block;
    margin-bottom: 1.2rem;
    font-size: 1.2rem;
    line-height: 1.1666666667;
    letter-spacing: -0.02em;
    transition: color 0.3s;
    color: #a1a1a1;
}

@media only screen and (max-width: 767px) {
    .team-detail-pagination__position {
        order: 3;
        margin-bottom: 0;
    }
}

.team-detail-pagination__label {
    position: relative;
    display: block;
    font-weight: 400;
    font-size: 2.4rem;
    line-height: 1.1666666667;
    color: #fff;
    transition: color 0.3s;
}

@media only screen and (max-width: 767px) {
    .team-detail-pagination__label {
        order: 1;
        margin-bottom: 1.8rem;
        font-size: 1.8rem;
        line-height: 1.1666666667;
    }
}

.team-detail-pagination__label.-prev {
    padding-left: 5.4rem;
}

.team-detail-pagination__label.-prev ._text {
    display: block;
    transform: translateX(-5.4rem);
    transition: transform 0.75s cubic-bezier(0.25, 1, 0.5, 1);
}

.team-detail-pagination__label.-prev ._icon {
    left: 0;
    transform: rotate(180deg);
}

.team-detail-pagination__label.-next {
    padding-right: 5.4rem;
}

.team-detail-pagination__label.-next ._text {
    display: block;
    transform: translateX(5.4rem);
    transition: transform 0.75s cubic-bezier(0.25, 1, 0.5, 1);
}

.team-detail-pagination__label.-next ._icon {
    right: 0;
}

.team-detail-pagination__label ._icon {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    background-color: #1a1a1a;
    border-radius: 50%;
    opacity: 0;
    transition: opacity 0.45s;
}

.team-detail-pagination__label ._icon svg {
    width: 1rem;
    height: 1rem;
}

.contact {
    position: relative;
    z-index: 1;
    background-color: #eee;
    border-radius: 0 0 2rem 2rem;
    overflow: hidden;
}

.contact .c-contact__form {
    width: 100%;
}

@media only screen and (max-width: 767px) {
    .contact {
        border-radius: 0 0 1.5rem 1.5rem;
    }
}

.contact__inner {
    padding: 11.640625vw 9.375vw 14.0625vw;
}

@media only screen and (max-width: 767px) {
    .contact__inner {
        padding: 12.8rem 0 11.2rem;
    }
}

.contact__heading {
    margin-bottom: 4vw;
}

@media only screen and (max-width: 767px) {
    .contact__heading {
        margin-bottom: 6.4rem;
        padding: 0 2rem;
    }
}

.contact__content {
    display: flex;
    gap: 18rem;
    padding: 0 5.46875vw;
}

@media only screen and (max-width: 767px) {
    .contact__content {
        display: block;
        padding: 0 4rem;
    }
}

.contact__body {
    flex: 1;
}

.contact__lead {
    margin-bottom: 0.2rem;
    font-size: 1.4rem;
    line-height: 2;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .contact__lead {
        margin-bottom: 0.4rem;
        font-size: 1.2rem;
        line-height: 1.5833333333;
    }
}

.contact__note {
    margin-bottom: 8.28125vw;
    font-size: 1.2rem;
    line-height: 1.5;
    color: #d93a3a;
}

@media only screen and (max-width: 767px) {
    .contact__note {
        margin-bottom: 6.4rem;
    }
}

.contact__note ._asterisk {
    margin-right: 0.4rem;
}

.contact__contents {
    margin-bottom: 3.75vw;
}

@media only screen and (max-width: 767px) {
    .contact__contents {
        margin-bottom: 2.4rem;
    }
}

.contact__contents .hs-form {
    min-height: 100vh;
}

.contact__contents .hs-form .hs-richtext {
    color: #1a1a1a;
}

.contact__contents .hs-form .hs-richtext h2 {
    padding-bottom: 0.8rem;
    border-bottom: solid 2px #1a1a1a;
    font-weight: 600;
    font-size: 3.2rem;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs-richtext h2 {
        font-weight: 600;
        font-size: 2.2rem;
        line-height: 1.5;
    }
}

.contact__contents .hs-form .hs-richtext h3 {
    display: block;
    margin-bottom: 1.1rem;
    font-size: 1.6rem;
    font-weight: 600;
    line-height: 1.5;
    text-align: center;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs-richtext h3 {
        margin-bottom: 1rem;
        font-size: 1.5rem;
        line-height: 1.4666666667;
        text-align: left;
    }
}

.contact__contents .hs-form .hs-richtext p {
    font-size: 1.2rem;
    line-height: 2;
    text-align: center;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs-richtext p {
        line-height: 1.6666666667;
        text-align: left;
    }
}

.contact__contents .hs-form .hs-richtext a {
    text-decoration: underline;
    text-underline-offset: 0.4rem;
    transition: opacity 0.2s;
}

.contact__contents .hs-form .hs-richtext a[target=_blank]::after {
    display: inline-block;
    content: "";
    background-image: url("assets/img/contact/icon-external.svg");
    background-repeat: no-repeat;
    background-size: contain;
    width: 1.1rem;
    height: 1.1rem;
    margin-left: 0.2rem;
}

@media (any-hover: hover) {
    .contact__contents .hs-form .hs-richtext a:hover {
        opacity: 0.6;
    }
}

.contact__contents .hs-form fieldset {
    max-width: 100%;
    margin-bottom: 4.375vw;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form fieldset {
        margin-bottom: 3.2rem;
    }
}

.contact__contents .hs-form label {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin-bottom: 2.5vw;
    font-weight: 600;
    font-size: 1.5rem;
    line-height: 1.4666666667;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form label {
        margin-bottom: 1.2rem;
    }
}

.contact__contents .hs-form .hs-form-required {
    margin-left: 0.4rem;
    color: #d93a3a;
}

.contact__contents .hs-form .hs-error-msgs {
    margin-top: 0.9375vw;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs-error-msgs {
        margin-top: 1rem;
    }
}

.contact__contents .hs-form .hs-error-msgs+.hs-error-msgs {
    margin-top: 0;
}

.contact__contents .hs-form .hs-error-msgs label {
    margin-bottom: 0;
    font-weight: 300;
    font-size: 1.2rem;
    line-height: 1.5;
    color: #d93a3a;
}

.contact__contents .hs-form .input {
    width: 100%;
    margin: 0;
}

.contact__contents .hs-form .input .hs-input {
    display: block;
    width: 100%;
}

.contact__contents .hs-form .input .hs-input[type=text],
.contact__contents .hs-form .input .hs-input[type=email] {
    height: 4.375vw;
    background: #e8e8e8;
    padding: 0 2.34375vw;
    font-size: 1.4rem;
    line-height: 1.5;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .input .hs-input[type=text],
    .contact__contents .hs-form .input .hs-input[type=email] {
        height: 6.8rem;
        padding: 2.4rem;
        font-size: 1.3rem;
        line-height: 1.5384615385;
    }
}

.contact__contents .hs-form .input .hs-input[type=text]::-moz-placeholder,
.contact__contents .hs-form .input .hs-input[type=email]::-moz-placeholder {
    color: #a1a1a1;
}

.contact__contents .hs-form .input .hs-input[type=text]::placeholder,
.contact__contents .hs-form .input .hs-input[type=email]::placeholder {
    color: #a1a1a1;
}

.contact__contents .hs-form .input .hs-input[type=text].error,
.contact__contents .hs-form .input .hs-input[type=email].error {
    background: #f1e5e5;
    border-bottom: solid 1px #d93a3a;
}

.contact__contents .hs-form .input textarea {
    height: 21.09375vw;
    background: #e8e8e8;
    padding: 2.34375vw;
    font-size: 1.4rem;
    line-height: 1.5;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .input textarea {
        height: 18rem;
        padding: 2.4rem;
    }
}

.contact__contents .hs-form .input textarea::-moz-placeholder {
    color: #a1a1a1;
}

.contact__contents .hs-form .input textarea::placeholder {
    color: #a1a1a1;
}

.contact__contents .hs-form .input textarea.error {
    background: #f1e5e5;
    border-bottom: solid 1px #d93a3a;
}

.contact__contents .hs-form .hs-form-radio:not(:last-child) {
    margin-bottom: 1.6rem;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs-form-radio:not(:last-child) {
        margin-bottom: 1.4rem;
    }
}

.contact__contents .hs-form .hs-form-radio label {
    margin-bottom: 0;
}

.contact__contents .hs-form .hs-form-radio label>span {
    margin-left: 1.6rem;
    font-weight: 300;
    font-size: 1.4rem;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs-form-radio label>span {
        margin-left: 1.2rem;
        font-size: 1.3rem;
        line-height: 1.5384615385;
    }
}

.contact__contents .hs-form .hs-form-radio .hs-input {
    position: relative;
    width: 1.4rem;
    height: 1.4rem;
    display: inline-block;
}

.contact__contents .hs-form .hs-form-radio .hs-input::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 1.4rem;
    height: 1.4rem;
    content: "";
    display: block;
    border: solid 1px #1a1a1a;
    background-color: #fff;
    border-radius: 50%;
}

.contact__contents .hs-form .hs-form-radio .hs-input::after {
    position: absolute;
    top: 0rem;
    left: 0rem;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
    margin: auto;
    content: "";
    opacity: 0;
    border-radius: 50%;
    background-color: #1a1a1a;
}

.contact__contents .hs-form .hs-form-radio .hs-input:checked::after {
    opacity: 1;
}

.contact__contents .hs-form .hs-form-booleancheckbox label {
    position: relative;
    margin: 0 auto;
    display: flex;
    align-items: center;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs-form-booleancheckbox label {
        margin: 0;
    }
}

.contact__contents .hs-form .hs-form-booleancheckbox label>span {
    display: flex;
    margin-left: 2.1rem;
    font-weight: 600;
    font-size: 1.4rem;
    line-height: 1.5625;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs-form-booleancheckbox label>span {
        margin-left: 1rem;
        font-size: 1.4rem;
        line-height: 1.7857142857;
    }
}

.contact__contents .hs-form .hs-form-booleancheckbox .hs-input {
    position: relative;
    width: 2rem;
    height: 2rem;
    display: inline-block;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs-form-booleancheckbox .hs-input {
        width: 1.6rem;
        height: 1.6rem;
    }
}

.contact__contents .hs-form .hs-form-booleancheckbox .hs-input::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 2rem;
    height: 2rem;
    content: "";
    display: block;
    border: solid 1px #a1a1a1;
    background-color: #fff;
    border-radius: 0.4rem;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs-form-booleancheckbox .hs-input::before {
        width: 1.6rem;
        height: 1.6rem;
    }
}

.contact__contents .hs-form .hs-form-booleancheckbox .hs-input::after {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.2rem;
    height: 0.9rem;
    margin: auto;
    content: "";
    background-image: url("assets/img/contact/icon-check.svg");
    background-repeat: no-repeat;
    background-size: contain;
    opacity: 0;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs-form-booleancheckbox .hs-input::after {
        width: 0.9rem;
        height: 0.6rem;
    }
}

.contact__contents .hs-form .hs-form-booleancheckbox .hs-input:checked::after {
    opacity: 1;
}

.contact__contents .hs-form .hs_agree {
    margin-top: 3.515625vw;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs_agree {
        margin-top: 2rem;
    }
}

.contact__contents .hs-form .hs_agree .hs-error-msgs label {
    margin: auto;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs_agree .hs-error-msgs label {
        margin-left: 0;
    }
}

.contact__contents .hs-form .hs_error_rollup .hs-error-msgs label {
    margin: auto;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs_error_rollup .hs-error-msgs label {
        margin-left: 0;
    }
}

.contact__contents .hs-form .form-columns-0 {
    margin-top: 6.25vw;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .form-columns-0 {
        margin-top: 7.2rem;
        margin-bottom: 3.2rem;
    }
}

.contact__contents .hs-form .form-columns-1 .input {
    margin-right: 0;
}

.contact__contents .hs-form .form-columns-1:last-of-type {
    margin-top: 6.25vw;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .form-columns-1:last-of-type {
        margin-top: 5.6rem;
    }
}

.contact__contents .hs-form .form-columns-2 {
    display: flex;
}

.contact__contents .hs-form .form-columns-2 .hs-form-field {
    width: calc(50% - 1rem);
}

.contact__contents .hs-form .form-columns-2 .hs-form-field+.hs-form-field {
    margin-left: 2rem;
}

.contact__contents .hs-form .hs-fieldtype-file {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs-fieldtype-file label {
        margin-bottom: 0.3rem;
    }
}

.contact__contents .hs-form .hs-fieldtype-file .hs-field-desc {
    width: auto;
    margin-left: 0.8rem;
    margin-bottom: 2.5vw;
    font-size: 1.1rem;
    line-height: 1.4545454545;
    color: #d93a3a;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs-fieldtype-file .hs-field-desc {
        margin-left: 0;
        margin-bottom: 1.8rem;
    }
}

.contact__contents .hs-form .hs-fieldtype-file .input {
    position: relative;
    display: flex;
    align-items: center;
}

.contact__contents .hs-form .hs-fieldtype-file .input::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 13.671875vw;
    height: 4.375vw;
    content: "";
    display: block;
    background-color: #e8e8e8;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs-fieldtype-file .input::before {
        width: 16.8rem;
        height: 6.8rem;
    }
}

.contact__contents .hs-form .hs-fieldtype-file .hs-input {
    position: relative;
    width: 13.671875vw;
    margin-right: 2.5vw;
    font-size: 1.2rem;
    line-height: 1.5;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs-fieldtype-file .hs-input {
        width: 16.8rem;
        margin-right: 1.2rem;
    }
}

.contact__contents .hs-form .hs-fieldtype-file .hs-input::file-selector-button {
    width: 13.671875vw;
    height: 4.375vw;
    opacity: 0;
    cursor: pointer;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs-fieldtype-file .hs-input::file-selector-button {
        width: 16.8rem;
        height: 6.8rem;
    }
}

.contact__contents .hs-form .hs-fieldtype-file .file-upload-button {
    position: absolute;
    top: 0;
    left: 0;
    width: 13.671875vw;
    height: 4.375vw;
    content: "";
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    line-height: 1.5;
    color: #1a1a1a;
    cursor: pointer;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs-fieldtype-file .file-upload-button {
        width: 16.8rem;
        height: 6.8rem;
        font-size: 1.3rem;
    }
}

.contact__contents .hs-form .hs-fieldtype-file .file-upload-button::after {
    display: block;
    content: "";
    background-image: url("assets/img/contact/icon-upload.svg");
    background-repeat: no-repeat;
    background-size: contain;
    width: 1.1rem;
    height: 1.1rem;
    margin-left: 1.1rem;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs-fieldtype-file .file-upload-button::after {
        margin-left: 1.8rem;
    }
}

.contact__contents .hs-form .hs-fieldtype-file .file-name {
    width: 54.140625vw;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 1.2rem;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs-fieldtype-file .file-name {
        width: 11.5rem;
    }
}

.contact__contents .hs-form .hs_submit {
    margin-top: 8.125vw;
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .hs_submit {
        margin-top: 5.6rem;
    }
}

.contact__contents .hs-form .actions {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 23rem;
    height: 5.3rem;
    margin: auto;
    border-radius: 5.3rem;
    pointer-events: none;
}

.contact__contents .hs-form .actions::before {
    position: absolute;
    top: 1px;
    right: 1px;
    bottom: 1px;
    left: 1px;
    display: block;
    background-color: #1a1a1a;
    border-radius: 5.3rem;
    content: "";
}

.contact__contents .hs-form .actions::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    background-color: #fff;
    content: "";
    transform: scaleY(0);
    transform-origin: center top;
    transition: transform 0.5s cubic-bezier(0.3, 0.72, 0.56, 1);
}

@media only screen and (max-width: 767px) {
    .contact__contents .hs-form .actions {
        text-align: center;
    }
}

.contact__contents .hs-form .actions .hs-button {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    color: #fff;
    font-weight: 600;
    font-size: 1.4rem;
    text-align: center;
    pointer-events: auto;
    transition: color 0.5s cubic-bezier(0.3, 0.72, 0.56, 1);
}

@media (any-hover: hover) {
    .contact__contents .hs-form .actions:hover::after {
        transform: scaleY(1);
        transform-origin: center bottom;
    }
    .contact__contents .hs-form .actions:hover .hs-button {
        color: #1a1a1a;
    }
}

.contact__contents .grecaptcha-badge {
    display: none;
}

.contact__contents .submitted-message {
    font-size: 1.4rem;
    line-height: 2;
}

.contact__recaptcha {
    font-size: 1.4rem;
    line-height: 1.1428571429;
    letter-spacing: -0.02em;
    color: #a1a1a1;
    text-align: center;
}

@media only screen and (max-width: 767px) {
    .contact__recaptcha {
        font-size: 1rem;
        line-height: 1.4;
    }
}

.contact__recaptcha ._link {
    text-decoration: underline;
    transition: opacity 0.2s;
}

@media (any-hover: hover) {
    .contact__recaptcha ._link:hover {
        opacity: 0.6;
    }
}

.contact__thanks {
    flex: 1;
}

.contact-thanks {
    color: #1a1a1a;
}

.contact-thanks__heading {
    margin-bottom: 1.875vw;
    font-weight: 600;
    font-size: 2.1rem;
    line-height: 1.3333333333;
}

@media only screen and (max-width: 767px) {
    .contact-thanks__heading {
        margin-top: 6.4rem;
        margin-bottom: 3.2rem;
        font-size: 1.7rem;
        line-height: 1.5294117647;
    }
}

.contact-thanks__message {
    margin-bottom: 8.125vw;
}

@media only screen and (max-width: 767px) {
    .contact-thanks__message {
        margin-bottom: 7.2rem;
    }
}

.contact-thanks__message p {
    font-size: 1.4rem;
    line-height: 2;
}

.contact-thanks__message p:not(:first-child) {
    margin-top: 1em;
}

.contact-thanks__link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 23rem;
    height: 5.3rem;
    border-radius: 5.3rem;
    background-color: #1a1a1a;
    color: #fff;
    font-size: 1.2rem;
    text-align: center;
}

@media only screen and (max-width: 767px) {
    .contact-thanks__link {
        margin: 0 auto;
    }
}

.privacy-policy {
    background-color: #eee;
    position: relative;
    z-index: 1;
    border-radius: 0 0 2rem 2rem;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .privacy-policy {
        border-radius: 0 0 1.5rem 1.5rem;
    }
}

.privacy-policy__inner {
    padding: 13.125vw 14.84375vw 14.0625vw;
}

@media only screen and (max-width: 767px) {
    .privacy-policy__inner {
        padding: 12.8rem 2rem 10rem;
    }
}

.privacy-policy__header {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.privacy-policy__title {
    margin-top: 1.9rem;
    font-style: normal;
    font-weight: 400;
    font-size: 6.4rem;
    line-height: 1.156;
    letter-spacing: -0.02em;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .privacy-policy__title {
        margin-top: 1.5rem;
        font-size: 3.6rem;
        line-height: 1;
    }
}

.privacy-policy__description {
    margin-top: 0.7rem;
    font-style: normal;
    font-weight: 600;
    font-size: 1.6rem;
    line-height: 1.4;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .privacy-policy__description {
        margin-top: 0.8rem;
        font-size: 1.3rem;
    }
}

.privacy-policy__body {
    margin-top: 8.75vw;
}

@media only screen and (max-width: 767px) {
    .privacy-policy__body {
        margin-top: 4.8rem;
    }
}

.privacy-policy__section:not(:first-child) {
    margin-top: 5vw;
}

@media only screen and (max-width: 767px) {
    .privacy-policy__section:not(:first-child) {
        margin-top: 3.2rem;
    }
}

.privacy-policy__section ._title {
    font-style: normal;
    font-weight: 600;
    font-size: 1.6rem;
    line-height: 1.5;
    color: #383838;
}

@media only screen and (max-width: 767px) {
    .privacy-policy__section ._title {
        font-size: 1.3rem;
        line-height: 1.4;
    }
}

.privacy-policy__section ._content {
    margin-top: 2.4rem;
    font-style: normal;
    font-weight: 300;
    font-size: 1.4rem;
    line-height: 1.43;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .privacy-policy__section ._content {
        margin-top: 1.1rem;
        font-size: 1.2rem;
        line-height: 1.42;
    }
}

.privacy-policy__section ._content p+ul,
.privacy-policy__section ._content ul+p,
.privacy-policy__section ._content p+section {
    margin-top: 1.43em;
}

.privacy-policy__section ._content dt {
    font-weight: 300;
    float: left;
}

.privacy-policy__section ._content dt:lang(en-US) {
    margin-right: 0.25em;
}

.privacy-policy__established {
    margin-top: 5vw;
    text-align: right;
    font-size: 1.4rem;
    line-height: 1.43;
    font-weight: 300;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .privacy-policy__established {
        margin-top: 3.2rem;
        font-size: 1.2rem;
        line-height: 1.42;
    }
}

.not-found {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 18.984375vw 0 14.0625vw;
    background-color: #eee;
}

@media only screen and (max-width: 767px) {
    .not-found {
        position: relative;
        z-index: 1;
        padding: 12.5rem 0 10rem;
    }
}

.not-found__title {
    font-style: normal;
    font-weight: 400;
    font-size: 2rem;
    line-height: 1.6;
    letter-spacing: -0.02em;
    color: #1a1a1a;
    text-align: center;
}

@media only screen and (max-width: 767px) {
    .not-found__title {
        font-size: 1.6rem;
    }
}

.not-found__title ._code {
    font-size: 5.6rem;
}

@media only screen and (max-width: 767px) {
    .not-found__title ._code {
        font-size: 3.8rem;
    }
}

.not-found__message {
    margin-top: 3.125vw;
    font-style: normal;
    font-weight: 300;
    font-size: 1.4rem;
    line-height: 1.4;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .not-found__message {
        margin-top: 3.2rem;
        font-size: 1.2rem;
    }
}

.not-found__link-wrapper {
    margin-top: 5vw;
}

@media only screen and (max-width: 767px) {
    .not-found__link-wrapper {
        margin-top: 4.8rem;
    }
}

.not-found__link-wrapper .c-link {
    padding: 1.7rem 8.3rem;
    width: auto;
    height: auto;
    border-radius: 5rem;
}

.not-found__link-wrapper .c-link__text {
    font-style: normal;
    font-weight: 600;
    line-height: 1.5;
}

.not-found__link-wrapper .c-link__icon {
    right: auto;
    left: 2.3rem;
    width: 1.1rem;
    transform: rotate(180deg);
}

.not-found__link-wrapper .c-link__icon svg {
    width: 1.1rem;
    transform: translateX(-2rem);
}

.mailmagazine {
    position: relative;
    background-color: #eee;
}

@media only screen and (max-width: 767px) {
    .mailmagazine {
        z-index: 1;
    }
}

.mailmagazine__inner {
    padding: 13.125vw 9.375vw 14.0625vw;
}

@media only screen and (max-width: 767px) {
    .mailmagazine__inner {
        padding: 12.8rem 0 11.2rem;
    }
}

.mailmagazine__heading {
    margin-bottom: 8.75vw;
}

@media only screen and (max-width: 767px) {
    .mailmagazine__heading {
        margin-bottom: 6.4rem;
        padding: 0 2rem;
    }
}

.mailmagazine__content {
    width: 46.875vw;
    margin: auto;
}

@media only screen and (max-width: 767px) {
    .mailmagazine__content {
        width: 100%;
        padding: 0 4rem;
    }
}

.mailmagazine__subHeading {
    margin-bottom: 3.2rem;
    padding-bottom: 0.8rem;
    border-bottom: solid 2px #1a1a1a;
    font-weight: 600;
    font-size: 3.2rem;
    line-height: 1.5;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .mailmagazine__subHeading {
        font-size: 2.2rem;
        border-bottom-width: 1px;
    }
}

.mailmagazine__lead {
    margin-bottom: 0.2rem;
    font-size: 1.4rem;
    line-height: 2;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .mailmagazine__lead {
        margin-bottom: 0.4rem;
        font-size: 1.2rem;
        line-height: 1.5833333333;
    }
}

.mailmagazine__note {
    margin-bottom: 5vw;
    font-size: 1.2rem;
    line-height: 1.5;
    color: #d93a3a;
}

@media only screen and (max-width: 767px) {
    .mailmagazine__note {
        margin-bottom: 6.4rem;
    }
}

.mailmagazine__note ._asterisk {
    margin-right: 0.4rem;
}

.mailmagazine__contents {
    margin-bottom: 3.75vw;
}

@media only screen and (max-width: 767px) {
    .mailmagazine__contents {
        margin-bottom: 2.4rem;
    }
}

.mailmagazine__contents .hs-form {
    min-height: 53.2rem;
}

.mailmagazine__contents .hs-form fieldset {
    max-width: 100%;
    margin-bottom: 4.375vw;
}

@media only screen and (max-width: 767px) {
    .mailmagazine__contents .hs-form fieldset {
        margin-bottom: 4rem;
    }
}

.mailmagazine__contents .hs-form label {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin-bottom: 2.5vw;
    font-weight: 600;
    font-size: 1.5rem;
    line-height: 1.4666666667;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .mailmagazine__contents .hs-form label {
        margin-bottom: 1.8rem;
    }
}

.mailmagazine__contents .hs-form .hs-form-required {
    margin-left: 0.4rem;
    color: #d93a3a;
}

.mailmagazine__contents .hs-form .hs-error-msgs {
    margin-top: 0.9375vw;
}

@media only screen and (max-width: 767px) {
    .mailmagazine__contents .hs-form .hs-error-msgs {
        margin-top: 1rem;
    }
}

.mailmagazine__contents .hs-form .hs-error-msgs+.hs-error-msgs {
    margin-top: 0;
}

.mailmagazine__contents .hs-form .hs-error-msgs label {
    margin-bottom: 0;
    font-weight: 300;
    font-size: 1.2rem;
    line-height: 1.5;
    color: #d93a3a;
}

.mailmagazine__contents .hs-form .input {
    width: 100%;
    margin: 0;
}

.mailmagazine__contents .hs-form .input .hs-input {
    display: block;
    width: 100%;
}

.mailmagazine__contents .hs-form .input .hs-input[type=email] {
    height: 6.328125vw;
    background: #e8e8e8;
    padding: 2.34375vw;
    font-size: 1.4rem;
    line-height: 1.5;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .mailmagazine__contents .hs-form .input .hs-input[type=email] {
        height: 6.8rem;
        padding: 2.4rem;
        font-size: 1.3rem;
        line-height: 1.5384615385;
    }
}

.mailmagazine__contents .hs-form .input .hs-input[type=email]::-moz-placeholder {
    color: #a1a1a1;
}

.mailmagazine__contents .hs-form .input .hs-input[type=email]::placeholder {
    color: #a1a1a1;
}

.mailmagazine__contents .hs-form .input .hs-input[type=email].error {
    background: #f1e5e5;
    border-bottom: solid 1px #d93a3a;
}

.mailmagazine__contents .hs-form .hs_email {
    margin-bottom: 6.4rem;
}

.mailmagazine__contents .hs-form .hs-form-booleancheckbox label {
    position: relative;
    margin-bottom: 0;
    display: flex;
    align-items: center;
}

.mailmagazine__contents .hs-form .hs-form-booleancheckbox label>span {
    display: flex;
    margin-left: 2.1rem;
    font-weight: 600;
    font-size: 1.6rem;
    line-height: 1.5625;
}

@media only screen and (max-width: 767px) {
    .mailmagazine__contents .hs-form .hs-form-booleancheckbox label>span {
        margin-left: 1rem;
        font-size: 1.4rem;
        line-height: 1.7857142857;
    }
}

.mailmagazine__contents .hs-form .hs-form-booleancheckbox .hs-input {
    position: relative;
    width: 2rem;
    height: 2rem;
    display: inline-block;
}

@media only screen and (max-width: 767px) {
    .mailmagazine__contents .hs-form .hs-form-booleancheckbox .hs-input {
        width: 1.6rem;
        height: 1.6rem;
    }
}

.mailmagazine__contents .hs-form .hs-form-booleancheckbox .hs-input::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 2rem;
    height: 2rem;
    content: "";
    display: block;
    border: solid 1px #a1a1a1;
    background-color: #fff;
    border-radius: 0.4rem;
}

@media only screen and (max-width: 767px) {
    .mailmagazine__contents .hs-form .hs-form-booleancheckbox .hs-input::before {
        width: 1.6rem;
        height: 1.6rem;
    }
}

.mailmagazine__contents .hs-form .hs-form-booleancheckbox .hs-input::after {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.2rem;
    height: 0.9rem;
    margin: auto;
    content: "";
    background-image: url("assets/img/contact/icon-check.svg");
    background-repeat: no-repeat;
    background-size: contain;
    opacity: 0;
}

@media only screen and (max-width: 767px) {
    .mailmagazine__contents .hs-form .hs-form-booleancheckbox .hs-input::after {
        width: 0.9rem;
        height: 0.6rem;
    }
}

.mailmagazine__contents .hs-form .hs-form-booleancheckbox .hs-input:checked::after {
    opacity: 1;
}

.mailmagazine__contents .hs-form .hs-richtext {
    margin-bottom: 1.5625vw;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .mailmagazine__contents .hs-form .hs-richtext {
        margin-bottom: 2rem;
    }
}

.mailmagazine__contents .hs-form .hs-richtext h3 {
    display: block;
    margin-bottom: 1.1rem;
    font-size: 1.6rem;
    font-weight: 600;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .mailmagazine__contents .hs-form .hs-richtext h3 {
        margin-bottom: 1rem;
        font-size: 1.5rem;
        line-height: 1.4666666667;
    }
}

.mailmagazine__contents .hs-form .hs-richtext p {
    font-size: 1.2rem;
    line-height: 2;
}

.mailmagazine__contents .hs-form .hs_submit {
    margin-top: 8.125vw;
}

@media only screen and (max-width: 767px) {
    .mailmagazine__contents .hs-form .hs_submit {
        margin-top: 5.6rem;
    }
}

@media only screen and (max-width: 767px) {
    .mailmagazine__contents .hs-form .actions {
        text-align: center;
    }
}

.mailmagazine__contents .hs-form .actions .hs-button {
    width: 23rem;
    height: 5.3rem;
    border-radius: 5.3rem;
    background-color: #1a1a1a;
    color: #fff;
    font-weight: 600;
    font-size: 1.2rem;
    text-align: center;
}

.mailmagazine__contents .grecaptcha-badge {
    display: none;
}

.mailmagazine__contents .submitted-message {
    font-size: 1.4rem;
    line-height: 2;
}

.mailmagazine__recaptcha {
    font-size: 1.4rem;
    line-height: 1.1428571429;
    letter-spacing: -0.02em;
    color: #a1a1a1;
}

@media only screen and (max-width: 767px) {
    .mailmagazine__recaptcha {
        font-size: 1rem;
        line-height: 1.4;
        text-align: center;
    }
}

.mailmagazine__recaptcha ._link {
    text-decoration: underline;
    transition: opacity 0.2s;
}

@media (any-hover: hover) {
    .mailmagazine__recaptcha ._link:hover {
        opacity: 0.6;
    }
}

.mailmagazine-thanks {
    color: #1a1a1a;
}

.mailmagazine-thanks__heading {
    margin-bottom: 3.2rem;
    padding-bottom: 0.8rem;
    border-bottom: solid 2px #1a1a1a;
    font-weight: 600;
    font-size: 3.2rem;
    line-height: 1.5;
    color: #1a1a1a;
}

@media only screen and (max-width: 767px) {
    .mailmagazine-thanks__heading {
        font-size: 2.2rem;
        border-bottom-width: 1px;
    }
}

.mailmagazine-thanks__message {
    margin-bottom: 8.125vw;
}

@media only screen and (max-width: 767px) {
    .mailmagazine-thanks__message {
        margin-bottom: 7.2rem;
    }
}

.mailmagazine-thanks__message p {
    font-size: 1.4rem;
    line-height: 2;
}

@media only screen and (max-width: 767px) {
    .mailmagazine-thanks__message p {
        font-size: 1.2rem;
    }
}

.mailmagazine-thanks__message p:not(:first-child) {
    margin-top: 1em;
}

.mailmagazine-thanks__link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 23rem;
    height: 5.3rem;
    border-radius: 5.3rem;
    background-color: #1a1a1a;
    color: #fff;
    font-size: 1.2rem;
    text-align: center;
}

@media only screen and (max-width: 767px) {
    .mailmagazine-thanks__link {
        margin: 0 auto;
    }
}

@keyframes splide-loading {
    0% {
        transform: rotateZ(0);
    }
    100% {
        transform: rotateZ(360deg);
    }
}

.splide__track--draggable {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

.splide__track--fade>.splide__list>.splide__slide {
    margin: 0 !important;
    opacity: 0;
    z-index: 0;
}

.splide__track--fade>.splide__list>.splide__slide.is-active {
    opacity: 1;
    z-index: 1;
}

.splide--rtl {
    direction: rtl;
}

.splide__track--ttb>.splide__list {
    display: block;
}

.splide__container {
    box-sizing: border-box;
    position: relative;
}

.splide__list {
    backface-visibility: hidden;
    display: flex;
    height: 100%;
    margin: 0 !important;
    padding: 0 !important;
}

.splide.is-initialized:not(.is-active) .splide__list {
    display: block;
}

.splide__pagination {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0;
    pointer-events: none;
}

.splide__pagination li {
    display: inline-block;
    line-height: 1;
    list-style-type: none;
    margin: 0;
    pointer-events: auto;
}

.splide:not(.is-overflow) .splide__pagination {
    display: none;
}

.splide__progress__bar {
    width: 0;
}

.splide {
    position: relative;
    visibility: hidden;
}

.splide.is-initialized,
.splide.is-rendered {
    visibility: visible;
}

.splide__slide {
    backface-visibility: hidden;
    box-sizing: border-box;
    flex-shrink: 0;
    list-style-type: none !important;
    margin: 0;
    position: relative;
}

.splide__slide img {
    vertical-align: bottom;
}

.splide__spinner {
    animation: splide-loading 1s infinite linear;
    border: 2px solid #999;
    border-left-color: transparent;
    border-radius: 50%;
    bottom: 0;
    contain: strict;
    display: inline-block;
    height: 20px;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
    width: 20px;
}

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

.splide__toggle__pause {
    display: none;
}

.splide__toggle.is-active .splide__toggle__play {
    display: none;
}

.splide__toggle.is-active .splide__toggle__pause {
    display: inline;
}

.splide__track {
    /* overflow-x: scroll; */
    position: relative;
    z-index: 0;
}

.broken_link,
a.broken_link {
    text-decoration: line-through;
}


/*# sourceMappingURL=base.css.