/*!
 * ress.css • v3.0.1
 * MIT License
 * github.com/filipelinhares/ress
 */
html {
    box-sizing: border-box;
    -webkit-text-size-adjust: 100%;
    word-break: normal;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4
}

*,
::after,
::before {
    background-repeat: no-repeat;
    box-sizing: inherit
}

::after,
::before {
    text-decoration: inherit;
    vertical-align: inherit
}

* {
    margin: 0;
    padding: 0
}

hr {
    height: 0;
    overflow: visible
}

details,
main {
    display: block
}

summary {
    display: list-item
}

small {
    font-size: 80%
}

[hidden] {
    display: none
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}

a {
    background-color: rgba(0, 0, 0, 0);
    color: inherit;
    text-decoration: none
}

a:active,
a:hover {
    outline-width: 0
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace
}

pre {
    font-size: 1em
}

b,
strong {
    font-weight: bolder
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

input {
    border-radius: 0
}

[disabled] {
    cursor: default
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

textarea {
    overflow: auto;
    resize: vertical
}

button,
input,
optgroup,
select,
textarea {
    font: inherit
}

optgroup {
    font-weight: 700
}

button {
    overflow: visible
}

button,
select {
    text-transform: none
}

[role=button],
[type=button],
[type=reset],
[type=submit],
button {
    color: inherit;
    cursor: pointer
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
    border-style: none;
    padding: 0
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button:-moz-focusring {
    outline: 1px dotted ButtonText
}

[type=reset],
[type=submit],
button,
html [type=button] {
    -webkit-appearance: button
}

button,
input,
select,
textarea {
    background-color: rgba(0, 0, 0, 0);
    border-style: none
}

select {
    background-color: #fff;
    border: #707070 solid 1px;
    border-radius: 3px;
    display: inline-block;
    outline: 0;
    padding: .2em .5em;
    width: 100%
}

select::-ms-expand {
    display: none
}

select::-ms-value {
    color: currentColor
}

legend {
    border: 0;
    color: inherit;
    display: table;
    max-width: 100%;
    max-width: 100%;
    white-space: normal
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    color: inherit;
    font: inherit
}

img {
    border-style: none
}

progress {
    vertical-align: baseline
}

[aria-busy=true] {
    cursor: progress
}

[aria-controls] {
    cursor: pointer
}

[aria-disabled] {
    cursor: default
}

abbr,
address,
article,
aside,
audio,
b,
blockquote,
body,
canvas,
caption,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
p,
pre,
q,
samp,
section,
small,
span,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
ul,
var,
video {
    background: rgba(0, 0, 0, 0);
    border: 0;
    border-collapse: collapse;
    font-size: 100%;
    font-weight: inherit;
    margin: 0;
    outline: 0;
    padding: 0;
    vertical-align: baseline
}

*,
::after,
::before {
    box-sizing: border-box
}

html {
    overflow: auto !important
}

body,
html {
    margin: 0;
    padding: 0;
    scroll-behavior: smooth
}

body {
    color: #000;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-size: min(16px, 1.1111111111vw);
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background-color: #f6f6f6;
    overflow-wrap: break-word
}

h2 {
    margin: 0
}

li {
    list-style: none
}

option,
select {
    color: #535a64
}

img {
    height: auto;
    pointer-events: none;
    vertical-align: bottom;
    width: 100%
}

em {
    font-style: initial
}

address {
    font-style: normal
}

strong {
    font-weight: 700
}

sup {
    font-size: .7em
}

span svg {
    height: auto;
    line-height: 1;
    vertical-align: middle
}

.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 linear infinite;
    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 {
    clip: rect(0 0 0 0);
    border: 0;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.splide__toggle.is-active .splide__toggle__play,
.splide__toggle__pause {
    display: none
}

.splide__toggle.is-active .splide__toggle__pause {
    display: inline
}

.splide__track {
    overflow: hidden;
    position: relative;
    z-index: 0
}

@keyframes splide-loading {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(1turn)
    }
}

.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__arrow {
    align-items: center;
    background: #ccc;
    border: 0;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    height: 2em;
    justify-content: center;
    opacity: .7;
    padding: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 2em;
    z-index: 1
}

.splide__arrow svg {
    fill: #000;
    height: 1.2em;
    width: 1.2em
}

.splide__arrow:hover:not(:disabled) {
    opacity: .9
}

.splide__arrow:disabled {
    opacity: .3
}

.splide__arrow:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: 3px
}

.splide__arrow--prev {
    left: 1em
}

.splide__arrow--prev svg {
    transform: scaleX(-1)
}

.splide__arrow--next {
    right: 1em
}

.splide.is-focus-in .splide__arrow:focus {
    outline: 3px solid #0bf;
    outline-offset: 3px
}

.splide__pagination {
    bottom: .5em;
    left: 0;
    padding: 0 1em;
    position: absolute;
    right: 0;
    z-index: 1
}

.splide__pagination__page {
    background: #ccc;
    border: 0;
    border-radius: 50%;
    display: inline-block;
    height: 8px;
    margin: 3px;
    opacity: .7;
    padding: 0;
    position: relative;
    transition: transform .2s linear;
    width: 8px
}

.splide__pagination__page.is-active {
    background: #fff;
    transform: scale(1.4);
    z-index: 1
}

.splide__pagination__page:hover {
    cursor: pointer;
    opacity: .9
}

.splide__pagination__page:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: 3px
}

.splide.is-focus-in .splide__pagination__page:focus {
    outline: 3px solid #0bf;
    outline-offset: 3px
}

.splide__progress__bar {
    background: #ccc;
    height: 3px
}

.splide__slide {
    -webkit-tap-highlight-color: transparent
}

.splide__slide:focus {
    outline: 0
}

@supports (outline-offset:-3px) {
    .splide__slide:focus-visible {
        outline: 3px solid #0bf;
        outline-offset: -3px
    }
}

@supports (outline-offset:-3px) {
    .splide.is-focus-in .splide__slide:focus {
        outline: 3px solid #0bf;
        outline-offset: -3px
    }
}

.splide__toggle {
    cursor: pointer
}

.splide__toggle:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: 3px
}

.splide.is-focus-in .splide__toggle:focus {
    outline: 3px solid #0bf;
    outline-offset: 3px
}

.splide__track--nav>.splide__list>.splide__slide {
    border: 3px solid transparent;
    cursor: pointer
}

.splide__track--nav>.splide__list>.splide__slide.is-active {
    border: 3px solid #000
}

.splide__arrows--rtl .splide__arrow--prev {
    left: auto;
    right: 1em
}

.splide__arrows--rtl .splide__arrow--prev svg {
    transform: scaleX(1)
}

.splide__arrows--rtl .splide__arrow--next {
    left: 1em;
    right: auto
}

.splide__arrows--rtl .splide__arrow--next svg {
    transform: scaleX(-1)
}

.splide__arrows--ttb .splide__arrow {
    left: 50%;
    transform: translate(-50%)
}

.splide__arrows--ttb .splide__arrow--prev {
    top: 1em
}

.splide__arrows--ttb .splide__arrow--prev svg {
    transform: rotate(-90deg)
}

.splide__arrows--ttb .splide__arrow--next {
    bottom: 1em;
    top: auto
}

.splide__arrows--ttb .splide__arrow--next svg {
    transform: rotate(90deg)
}

.splide__pagination--ttb {
    bottom: 0;
    display: flex;
    flex-direction: column;
    left: auto;
    padding: 1em 0;
    right: .5em;
    top: 0
}

.c-breadcrumb {
    background-color: #2b3139;
    color: #fff;
    padding-bottom: 2.5641025641vw;
    padding-top: 2.5641025641vw
}

.c-breadcrumb__list {
    display: flex;
    font-size: 3.0769230769vw;
    gap: 2.0512820513vw
}

.c-breadcrumb__item {
    align-items: center;
    display: flex
}

.c-breadcrumb__item:not(:last-child)::after {
    content: "/";
    font-size: 3.0769230769vw;
    margin-left: 2.0512820513vw
}

.c-breadcrumb__link {
    background: linear-gradient(225deg, #fff 50%, transparent 50%) repeat-x 200% 100%/200% 0;
    text-decoration: none;
    transition: color .2s ease;
    transition: background-position .3s ease-out, background-size 0s ease-out .3s
}

.c-breadcrumb__link:hover {
    background-position: 100% 100%;
    background-size: 200% 1px;
    transition: background-position .3s ease-out
}

.c-breadcrumb__current {
    font-weight: 500
}

.c-button {
    display: flex;
    flex-wrap: wrap;
    gap: min(10px, .6944444444vw);
    margin-left: auto;
    margin-right: auto;
    width: -moz-max-content;
    width: max-content
}

.c-button__link--fill {
    align-items: center;
    background-color: #000;
    border: 1px solid #000;
    border: 1px solid transparent;
    border-radius: 3em;
    color: #fff;
    display: flex;
    font-size: 4.1025641026vw;
    font-weight: 700;
    gap: 6.4102564103vw;
    justify-content: space-between;
    line-height: 2;
    padding-left: 10.2564102564vw;
    position: relative;
    transition: all .3s ease-out;
    width: 100%
}

.c-button__link--fill::before {
    background-color: #fff;
    content: "";
    height: calc(100% + 2px);
    position: absolute;
    right: 12.3076923077vw;
    top: -1px;
    transition: all .3s ease-out;
    width: 1px;
    z-index: 1
}

.c-button__link--fill::after {
    background-color: #fff;
    content: "";
    height: 12.3076923077vw;
    margin-bottom: auto;
    margin-top: auto;
    width: 12.3076923077vw;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 2.3076923077vw;
    mask-size: 2.3076923077vw;
    -webkit-mask-image: url(../images/common/icon_arrow.svg);
    mask-image: url(../images/common/icon_arrow.svg);
    transition: all .3s ease-out
}

.c-button__link--fill.is-download::after {
    -webkit-mask-image: url(../images/common/icon_download.svg);
    mask-image: url(../images/common/icon_download.svg)
}

.c-button__link--white {
    align-items: center;
    background-color: rgba(255, 255, 255, 0);
    border: 1px solid #000;
    border-color: #fff;
    border-radius: 3em;
    color: #fff;
    display: flex;
    font-size: 4.1025641026vw;
    font-weight: 700;
    gap: 6.4102564103vw;
    justify-content: space-between;
    line-height: 2;
    padding-left: 10.2564102564vw;
    position: relative;
    transition: all .3s ease-out;
    width: 100%
}

.c-button__link--white::before {
    background-color: #fff;
    content: "";
    height: calc(100% + 2px);
    position: absolute;
    right: 12.3076923077vw;
    top: -1px;
    transition: all .3s ease-out;
    width: 1px;
    z-index: 1
}

.c-button__link--white::after {
    background-color: #fff;
    content: "";
    height: 12.3076923077vw;
    margin-bottom: auto;
    margin-top: auto;
    width: 12.3076923077vw;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 2.3076923077vw;
    mask-size: 2.3076923077vw;
    -webkit-mask-image: url(../images/common/icon_arrow.svg);
    mask-image: url(../images/common/icon_arrow.svg);
    transition: all .3s ease-out
}

.c-button__link--white.is-download::after {
    -webkit-mask-image: url(../images/common/icon_download.svg);
    mask-image: url(../images/common/icon_download.svg)
}

.c-button__link--black {
    align-items: center;
    border: 1px solid #000;
    border-color: #000;
    border-radius: 3em;
    color: #000;
    display: flex;
    font-size: 4.1025641026vw;
    font-weight: 700;
    gap: 6.4102564103vw;
    justify-content: space-between;
    line-height: 2;
    padding-left: 10.2564102564vw;
    position: relative;
    transition: all .3s ease-out;
    width: 100%
}

.c-button__link--black::before {
    background-color: #fff;
    content: "";
    height: calc(100% + 2px);
    position: absolute;
    right: 12.3076923077vw;
    top: -1px;
    transition: all .3s ease-out;
    width: 1px;
    z-index: 1
}

.c-button__link--black::after {
    background-color: #fff;
    content: "";
    height: 12.3076923077vw;
    margin-bottom: auto;
    margin-top: auto;
    width: 12.3076923077vw;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 2.3076923077vw;
    mask-size: 2.3076923077vw;
    -webkit-mask-image: url(../images/common/icon_arrow.svg);
    mask-image: url(../images/common/icon_arrow.svg);
    transition: all .3s ease-out
}

.c-button__link--black.is-download::after {
    -webkit-mask-image: url(../images/common/icon_download.svg);
    mask-image: url(../images/common/icon_download.svg)
}

.c-button__link--black::before {
    background-color: #000
}

.c-button__link--black::after {
    background-color: #000
}

.c-button .text-sm {
    font-size: 3.5897435897vw;
    font-weight: 400
}

.c-button-text {
    background: linear-gradient(225deg, #000 50%, transparent 50%) repeat-x 200% 100%/200% 1px;
    transition: background-position .3s ease-out
}

a:hover .c-button-text {
    background-position: 100% 100%
}

.c-button-arrow {
    border: none;
    cursor: pointer;
    display: block;
    height: 7.6923076923vw;
    position: relative;
    width: 7.6923076923vw
}

.c-button-arrow::after,
.c-button-arrow::before {
    border-radius: 50%;
    content: "";
    display: block;
    height: 7.6923076923vw;
    width: 7.6923076923vw
}

.c-button-arrow::before {
    background-color: #fff;
    border: 1px solid #ccc
}

.c-button-arrow::after {
    -webkit-mask-image: url(../images/common/icon_arrow.svg);
    mask-image: url(../images/common/icon_arrow.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 2.0512820513vw;
    background-color: #000;
    mask-size: 2.0512820513vw
}

.c-button-arrow::after,
.c-button-arrow::before {
    inset: 0;
    position: absolute
}

.c-button-arrow.is-prev {
    scale: -1 1
}

.c-heading {
    align-items: start;
    display: flex
}

.c-heading--lv2 {
    font-size: 7.1794871795vw;
    font-weight: 700;
    line-height: 1.5;
    padding-left: 5.641025641vw;
    position: relative
}

.c-heading--lv2::before {
    content: "";
    display: block;
    height: 3.5897435897vw;
    left: 0;
    position: absolute;
    top: .35em;
    width: 3.5897435897vw;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-image: url(../images/common/icon_title.svg);
    background-color: #000;
    mask-image: url(../images/common/icon_title.svg)
}

.c-heading--onlytext {
    display: block;
    padding-left: 0 !important
}

.c-heading--onlytext::before {
    display: none
}

.c-heading--lv3 {
    font-size: 6.1538461538vw;
    font-weight: 600;
    letter-spacing: .04em;
    text-align: center
}

.c-heading--lv4 {
    font-size: 5.1282051282vw;
    font-weight: 600;
    letter-spacing: .04em;
    text-align: center
}

.c-heading--lv5 {
    font-size: 4.1025641026vw
}

.c-heading__description {
    font-size: 4.1025641026vw;
    line-height: 2;
    margin-top: 5.1282051282vw
}

.c-heading--white {
    color: #fff
}

.c-heading--white::before {
    background-color: #fff
}

.c-text {
    color: #000;
    font-size: 4.1025641026vw;
    line-height: 2
}

h2+.c-text,
h3+.c-text,
h4+.c-text,
h5+.c-text {
    margin-top: 4.1025641026vw
}

.c-text strong {
    font-weight: 600
}

.c-text a {
    font-weight: 600;
    text-decoration: underline
}

.c-text__caption {
    font-size: 2.5641025641vw;
    line-height: 2
}

.c-title__text {
    align-items: baseline;
    display: flex;
    font-size: 3.5897435897vw;
    font-weight: 700;
    gap: 2.0512820513vw;
    line-height: 1.5;
    position: relative;
    width: -moz-max-content;
    width: max-content
}

.c-title__text::before {
    content: "";
    display: block;
    height: 3.5897435897vw;
    width: 3.5897435897vw;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-image: url(../images/common/icon_title.svg);
    background-color: #000;
    mask-image: url(../images/common/icon_title.svg)
}

.c-title__english {
    font-size: 12.3076923077vw;
    font-weight: 400;
    letter-spacing: .04em;
    line-height: 1;
    margin-top: 2.0512820513vw
}

.c-pagetitle {
    flex: 1
}

.c-pagetitle__container {
    background-image: url(../images/common/pagetitle_bg-sp.svg);
    background-position: left top;
    background-repeat: no-repeat;
    background-size: 100%;
    padding: 11.5384615385vw 0
}

.c-pagetitle__img {
    width: 100%
}

.c-wrap-inner:has(.c-pagetitle__img) {
    display: flex;
    flex-direction: column;
    gap: 7.6923076923vw
}

.c-pagetitle__english {
    align-items: baseline;
    display: flex;
    font-family: Lato, sans-serif;
    font-size: 3.0769230769vw;
    font-style: normal;
    font-weight: 400;
    gap: 2.0512820513vw;
    letter-spacing: .04em;
    line-height: 1.5;
    position: relative;
    width: -moz-max-content;
    width: max-content
}

.c-pagetitle__english::before {
    content: "";
    display: block;
    height: 2.5641025641vw;
    width: 2.5641025641vw;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-image: url(../images/common/icon_title.svg);
    background-color: #000;
    mask-image: url(../images/common/icon_title.svg)
}

.c-pagetitle__text {
    font-size: 9.2307692308vw;
    font-weight: 700;
    line-height: 1.5;
    margin-top: 0
}

.c-pagetitle__title {
    font-size: 7.1794871795vw;
    font-weight: 700;
    line-height: 1.5;
    margin-top: 0;
    position: relative
}

.c-pagetitle__title::before {
    content: "";
    display: block;
    height: 2.5641025641vw;
    left: -3.8461538462vw;
    position: absolute;
    top: 0;
    width: 2.5641025641vw;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-image: url(../images/common/icon_title.svg);
    background-color: #000;
    mask-image: url(../images/common/icon_title.svg)
}

.c-pagetitle__description {
    font-size: 4.1025641026vw;
    line-height: 2;
    margin-top: 2.5641025641vw
}

.c-wrap-inner {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    width: 89.7435897436vw
}

.c-wrap-column {
    display: flex;
    flex-direction: column;
    gap: 17.9487179487vw;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    width: 89.7435897436vw
}

.c-pagination {
    align-items: center;
    display: flex;
    gap: 3.0769230769vw;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    width: -moz-max-content;
    width: max-content
}

.c-pagination__list {
    align-items: center;
    display: flex;
    gap: 2.0512820513vw;
    justify-content: center;
    width: -moz-max-content;
    width: max-content
}

.c-pagination__item {
    display: flex;
    font-family: Lato, sans-serif;
    font-size: 4.1025641026vw;
    font-style: normal;
    font-weight: 400;
    height: -moz-max-content;
    height: max-content;
    line-height: 1;
    position: relative;
    width: -moz-max-content;
    width: max-content
}

.c-pagination__link {
    align-items: center;
    background-color: #fff;
    border-radius: 50%;
    display: flex;
    height: 10.2564102564vw;
    justify-content: center;
    position: relative;
    transition: all .3s ease-out;
    width: 10.2564102564vw
}

.c-pagination__link.is-current {
    background-color: #000;
    color: #fff
}

.c-pagination__arrow {
    border-right: 1.5px solid #000;
    border-top: 1.5px solid #000;
    cursor: pointer;
    display: block;
    height: 2.5641025641vw;
    rotate: 45deg;
    width: 2.5641025641vw
}

.c-pagination__arrow::after,
.c-pagination__arrow::before {
    inset: 0;
    position: absolute
}

.c-pagination__arrow.is-prev {
    rotate: 225deg
}

.c-img {
    margin-left: auto;
    margin-right: auto;
    position: relative
}

.c-img--column2 {
    display: flex;
    flex-wrap: wrap;
    gap: 2.5641025641vw;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    width: 69.2307692308vw
}

.c-img--column3 {
    display: flex;
    flex-wrap: wrap;
    gap: 2.5641025641vw;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    width: 100%
}

.c-img__picture {
    flex: 1;
    width: 100%
}

.c-img__caption {
    font-size: 3.0769230769vw;
    line-height: 2;
    margin-top: 2.5641025641vw
}

.c-table {
    width: 100%
}

.c-table__wrap {
    border-top: 1px solid #ccc;
    table-layout: fixed;
    width: 100%
}

.c-table__tr {
    border-bottom: 1px solid #ccc;
    text-align: center;
    vertical-align: middle;
    width: 100%
}

.c-table__th {
    background-color: #e3e7ec;
    font-size: 4.1025641026vw;
    font-weight: 600;
    line-height: 1.5;
    vertical-align: middle
}

.c-table__th+.c-table__th {
    border-left: 1px solid #ccc
}

.c-table__td {
    line-height: 2;
    position: relative;
    vertical-align: middle
}

.c-table__td+.c-table__td {
    border-left: 1px solid #ccc
}

tr .c-table__td:nth-child(1) {
    background-color: #fff
}

.c-table__td.is-none::after {
    background-color: #000;
    content: "";
    display: block;
    height: .2564102564vw;
    inset: 0;
    margin: auto;
    position: absolute;
    width: 5.1282051282vw
}

.c-table__caption {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-top: 5.1282051282vw
}

.c-box {
    display: grid;
    gap: 2.5641025641vw;
    grid-template-rows: 9.2307692308vw 50.2564102564vw auto;
    position: relative
}

.c-box__heading {
    font-size: 5.641025641vw;
    font-weight: 700
}

.c-box--picture .c-box__heading {
    font-size: 5.1282051282vw
}

.c-box__text {
    font-size: 3.8461538462vw;
    line-height: 2;
    padding-top: 2.5641025641vw
}

.c-box--picture .c-box__text {
    padding-top: 1.2820512821vw
}

.c-box--column2 {
    display: flex;
    flex-direction: column;
    gap: 7.6923076923vw
}

.c-box--picture {
    display: flex;
    flex-direction: column;
    gap: 5.1282051282vw
}

.c-box--picture+.c-box--picture {
    margin-top: 7.6923076923vw
}

:where(.c-box) :nth-last-child(1).c-button {
    margin-top: auto
}

.c-outline__head {
    background: #000;
    border-radius: 6px;
    color: #fff;
    font-family: Lato, sans-serif;
    font-style: normal;
    font-weight: 400;
    letter-spacing: .04em;
    padding: 3.7179487179vw 5.1282051282vw;
    transition: all .3s ease
}

.is-active .c-outline__head {
    border-radius: 6px 6px 0 0
}

.c-outline__heading {
    font-family: Lato, sans-serif;
    font-style: normal;
    font-weight: 400
}

.c-outline__body {
    background: #fff;
    border-radius: 0 0 6px 6px;
    color: #000;
    padding: 5.1282051282vw
}

.c-outline__item {
    font-size: 3.5897435897vw;
    line-height: 2;
    position: relative
}

:where(ol)>.c-outline__item {
    padding-left: 3.0769230769vw
}

:where(ol)>.c-outline__item+.c-outline__item {
    margin-top: 2.5641025641vw
}

:where(ol)>.c-outline__item::before {
    background-color: #000;
    border-radius: 50%;
    content: "";
    display: block;
    height: 1.5384615385vw;
    left: 0;
    line-height: 1;
    position: absolute;
    top: .75em;
    width: 1.5384615385vw
}

:where(ul)>.c-outline__item {
    padding-left: 8.2051282051vw
}

:where(ul)>.c-outline__item+.c-outline__item {
    margin-top: 2.0512820513vw
}

:where(ul)>.c-outline__item::before {
    display: block;
    font-family: Lato, sans-serif;
    font-size: 4.6153846154vw;
    font-style: normal;
    font-weight: 400;
    font-weight: 400;
    left: 0;
    letter-spacing: .04em;
    line-height: 1.5;
    min-width: 7.1794871795vw;
    position: absolute;
    text-align: center;
    top: .1em
}

:where(ul)>.c-outline__item:nth-child(1)::before {
    content: "1."
}

:where(ul)>.c-outline__item:nth-child(2)::before {
    content: "2."
}

:where(ul)>.c-outline__item:nth-child(3)::before {
    content: "3."
}

:where(ul)>.c-outline__item:nth-child(4)::before {
    content: "4."
}

:where(ul)>.c-outline__item:nth-child(5)::before {
    content: "5."
}

:where(ul)>.c-outline__item:nth-child(6)::before {
    content: "6."
}

:where(ul)>.c-outline__item:nth-child(7)::before {
    content: "7."
}

:where(ul)>.c-outline__item:nth-child(8)::before {
    content: "8."
}

:where(ul)>.c-outline__item:nth-child(9)::before {
    content: "9."
}

:where(ul)>.c-outline__item:nth-child(10)::before {
    content: "10."
}

:where(ul)>.c-outline__item:nth-child(11)::before {
    content: "11."
}

:where(ul)>.c-outline__item:nth-child(12)::before {
    content: "12."
}

:where(ul)>.c-outline__item:nth-child(13)::before {
    content: "13."
}

:where(ul)>.c-outline__item:nth-child(14)::before {
    content: "14."
}

:where(ul)>.c-outline__item:nth-child(15)::before {
    content: "15."
}

:where(ul)>.c-outline__item:nth-child(16)::before {
    content: "16."
}

:where(ul)>.c-outline__item:nth-child(17)::before {
    content: "17."
}

:where(ul)>.c-outline__item:nth-child(18)::before {
    content: "18."
}

:where(ul)>.c-outline__item:nth-child(19)::before {
    content: "19."
}

:where(ul)>.c-outline__item:nth-child(20)::before {
    content: "20."
}

:where(ul)>.c-outline__item:nth-child(21)::before {
    content: "21."
}

:where(ul)>.c-outline__item:nth-child(22)::before {
    content: "22."
}

:where(ul)>.c-outline__item:nth-child(23)::before {
    content: "23."
}

:where(ul)>.c-outline__item:nth-child(24)::before {
    content: "24."
}

:where(ul)>.c-outline__item:nth-child(25)::before {
    content: "25."
}

:where(ul)>.c-outline__item:nth-child(26)::before {
    content: "26."
}

:where(ul)>.c-outline__item:nth-child(27)::before {
    content: "27."
}

:where(ul)>.c-outline__item:nth-child(28)::before {
    content: "28."
}

:where(ul)>.c-outline__item:nth-child(29)::before {
    content: "29."
}

:where(ul)>.c-outline__item:nth-child(30)::before {
    content: "30."
}

.c-outline__list .c-outline__list {
    margin-top: 2.5641025641vw;
    padding-left: 1.5384615385vw
}

.c-outline__list .c-outline__list .c-outline__item {
    font-size: 3.0769230769vw
}

.c-outline__list .c-outline__list .c-outline__item::before {
    background-color: rgba(0, 0, 0, 0)
}

.c-outline .js-accordion-trigger {
    cursor: pointer;
    padding-right: 8.2051282051vw;
    position: relative
}

.c-outline .js-accordion-trigger::after,
.c-outline .js-accordion-trigger::before {
    background-color: #fff;
    bottom: 0;
    content: "";
    display: block;
    height: 1px;
    margin: auto;
    position: absolute;
    right: 5.1282051282vw;
    top: 0;
    transition: rotate .3s ease-in-out;
    width: 3.5897435897vw
}

.c-outline .js-accordion-trigger::after {
    rotate: 90deg
}

.c-outline .js-accordion.is-active .js-accordion-trigger::after,
.c-outline .js-accordion.is-active .js-accordion-trigger::before {
    rotate: 180deg
}

.c-outline .js-accordion-inner {
    max-height: 0;
    overflow: hidden;
    transition: max-height .3s ease-in-out;
    width: 100%
}

.c-movie {
    border-radius: 2.0512820513vw;
    overflow: hidden;
    position: relative;
    width: 100%
}

.c-movie__box {
    aspect-ratio: 800/450;
    background-color: #000;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
    position: relative;
    width: 100%
}

.c-movie__box iframe {
    border: none;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.c-movie__thumbnail {
    height: 100%;
    inset: 0;
    margin: auto;
    position: absolute;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    z-index: 1
}

.c-movie__button {
    background-color: rgba(0, 0, 0, .5);
    border: none;
    cursor: pointer;
    height: 100%;
    inset: 0;
    margin: auto;
    position: absolute;
    transition: all .3s ease;
    width: 100%;
    z-index: 2
}

.c-movie__button::before {
    background-image: url(../images/common/icon_play.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 2.5307692308vw;
    border: 1px solid #fff;
    border-radius: 50%;
    content: "";
    height: 12.8205128205vw;
    inset: 0;
    margin: auto;
    position: absolute;
    width: 12.8205128205vw
}

.c-movie__button:focus {
    outline: 2px solid #535a64;
    outline-offset: 2px
}

#satori__creative_container {
    margin-left: auto;
    margin-right: auto;
    padding: auto 20px 20px 20px
}

.l-section {
    margin-left: auto;
    margin-right: auto;
    max-width: 89.7435897436vw;
    padding-bottom: 17.9487179487vw;
    padding-top: 12.8205128205vw;
    position: relative;
    width: 100%
}

.l-section+.l-section {
    border-top: 1px solid #000
}

:where(.l-section)>:not(:first-child):not(:where(.l-section)) {
    margin-top: 5.1282051282vw
}

.c-pagetitle__container+.l-section {
    padding-top: 0
}

.l-section__box {
    margin-top: 10.2564102564vw;
    position: relative;
    width: 100%
}

:where(.l-section__box)>:not(:first-child) {
    margin-top: 4.1025641026vw
}

.l-section__title--lv1 {
    font-size: 7.1794871795vw;
    font-weight: 600;
    line-height: 1.5
}

.l-section__title--lv2 {
    font-size: 6.1538461538vw;
    font-weight: 600;
    line-height: 1.5
}

.l-section__title--lv3 {
    font-size: 5.1282051282vw;
    font-weight: 600;
    line-height: 1.5
}

.l-section__title--lv4 {
    font-size: 4.6153846154vw;
    font-weight: 600;
    line-height: 1.5
}

.l-section__title--center {
    font-size: 6.1538461538vw;
    font-weight: 600;
    line-height: 1.5;
    text-align: center
}

:where(.l-section__title--center)+* {
    margin-top: 5.1282051282vw
}

.l-section__item {
    font-size: 4.1025641026vw;
    line-height: 2;
    position: relative
}

:where(ol)>.l-section__item {
    padding-left: 3.0769230769vw
}

:where(ol)>.l-section__item+.l-section__item {
    margin-top: 2.5641025641vw
}

:where(ol)>.l-section__item::before {
    background-color: #000;
    border-radius: 50%;
    content: "";
    display: block;
    height: 1.5384615385vw;
    left: 0;
    line-height: 1;
    position: absolute;
    top: .75em;
    width: 1.5384615385vw
}

:where(ul)>.l-section__item {
    padding-left: 8.2051282051vw
}

:where(ul)>.l-section__item+.l-section__item {
    margin-top: 2.0512820513vw
}

:where(ul)>.l-section__item::before {
    display: block;
    font-family: Lato, sans-serif;
    font-size: 4.6153846154vw;
    font-style: normal;
    font-weight: 400;
    font-weight: 400;
    left: 0;
    letter-spacing: .04em;
    line-height: 1.5;
    min-width: 7.1794871795vw;
    position: absolute;
    text-align: center;
    top: .1em
}

:where(ul)>.l-section__item:nth-child(1)::before {
    content: "1."
}

:where(ul)>.l-section__item:nth-child(2)::before {
    content: "2."
}

:where(ul)>.l-section__item:nth-child(3)::before {
    content: "3."
}

:where(ul)>.l-section__item:nth-child(4)::before {
    content: "4."
}

:where(ul)>.l-section__item:nth-child(5)::before {
    content: "5."
}

:where(ul)>.l-section__item:nth-child(6)::before {
    content: "6."
}

:where(ul)>.l-section__item:nth-child(7)::before {
    content: "7."
}

:where(ul)>.l-section__item:nth-child(8)::before {
    content: "8."
}

:where(ul)>.l-section__item:nth-child(9)::before {
    content: "9."
}

:where(ul)>.l-section__item:nth-child(10)::before {
    content: "10."
}

:where(ul)>.l-section__item:nth-child(11)::before {
    content: "11."
}

:where(ul)>.l-section__item:nth-child(12)::before {
    content: "12."
}

:where(ul)>.l-section__item:nth-child(13)::before {
    content: "13."
}

:where(ul)>.l-section__item:nth-child(14)::before {
    content: "14."
}

:where(ul)>.l-section__item:nth-child(15)::before {
    content: "15."
}

:where(ul)>.l-section__item:nth-child(16)::before {
    content: "16."
}

:where(ul)>.l-section__item:nth-child(17)::before {
    content: "17."
}

:where(ul)>.l-section__item:nth-child(18)::before {
    content: "18."
}

:where(ul)>.l-section__item:nth-child(19)::before {
    content: "19."
}

:where(ul)>.l-section__item:nth-child(20)::before {
    content: "20."
}

:where(ul)>.l-section__item:nth-child(21)::before {
    content: "21."
}

:where(ul)>.l-section__item:nth-child(22)::before {
    content: "22."
}

:where(ul)>.l-section__item:nth-child(23)::before {
    content: "23."
}

:where(ul)>.l-section__item:nth-child(24)::before {
    content: "24."
}

:where(ul)>.l-section__item:nth-child(25)::before {
    content: "25."
}

:where(ul)>.l-section__item:nth-child(26)::before {
    content: "26."
}

:where(ul)>.l-section__item:nth-child(27)::before {
    content: "27."
}

:where(ul)>.l-section__item:nth-child(28)::before {
    content: "28."
}

:where(ul)>.l-section__item:nth-child(29)::before {
    content: "29."
}

:where(ul)>.l-section__item:nth-child(30)::before {
    content: "30."
}

.l-section-data {
    display: grid;
    gap: 1.0256410256vw 2.5641025641vw;
    grid-template-columns: max-content 1fr;
    width: 100%
}

.l-section-data__item {
    display: contents
}

.l-section-data__label {
    font-size: 4.1025641026vw;
    font-weight: 600;
    text-align: right;
    white-space: nowrap
}

.l-section-data__value {
    font-size: 4.1025641026vw
}

.l-main {
    padding-top: 12.8205128205vw
}

.l-header {
    align-items: center;
    background-color: rgba(0, 0, 0, .8);
    color: #fff;
    display: flex;
    height: 12.8205128205vw;
    justify-content: space-between;
    left: 0;
    padding-left: 5.1282051282vw;
    padding-right: 5.1282051282vw;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 101
}

.l-header__logo {
    display: block;
    line-height: 1;
    width: 26.2051282051vw
}

.l-header__box {
    display: flex;
    gap: 5.1282051282vw;
    width: 100%
}

.l-header__link {
    align-items: center;
    border: 1px solid #fff;
    border-radius: 3em;
    display: flex;
    font-size: 3.5897435897vw;
    font-weight: 700;
    height: 10.2564102564vw;
    justify-content: center;
    width: 42.3076923077vw
}

.l-header__link:where(.is-trial) {
    background-color: #fff;
    color: #000
}

.l-header-menu__button {
    font-family: Lato, sans-serif;
    font-size: 2.5641025641vw;
    font-style: normal;
    font-weight: 400;
    height: -moz-max-content;
    height: max-content;
    line-height: 1.5;
    padding-top: 3.0769230769vw;
    position: relative;
    transition: all .3s ease-in-out;
    width: 8.2051282051vw
}

.is-open .l-header-menu__button {
    color: rgba(255, 255, 255, 0)
}

.l-header-menu__button::before {
    border-bottom: 1px solid #fff;
    border-top: 1px solid #fff;
    content: "";
    display: block;
    height: 1.5384615385vw;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    scale: 1;
    top: 0;
    transition: all .3s ease-in-out;
    width: 100%
}

.is-open .l-header-menu__button::before {
    opacity: 0;
    scale: 0
}

.l-header-menu__button::after {
    background-image: url(../images/common/icon_close.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 5.6948717949vw;
    left: 0;
    margin: auto;
    opacity: 0;
    position: absolute;
    right: 0;
    scale: 0;
    top: 1.2820512821vw;
    transition: all .3s ease-in-out;
    width: 5.6948717949vw
}

.is-open .l-header-menu__button::after {
    opacity: 1;
    scale: 1
}

.l-header-nav {
    position: relative;
    width: 100%
}

.l-header-nav__item {
    width: 100%
}

.l-header-nav__link {
    font-weight: 700;
    position: relative;
    width: 100%
}

.l-footer {
    background-color: #000;
    color: #fff;
    width: 100%
}

.l-footer__inner {
    margin: 0 auto;
    padding-bottom: 17.9487179487vw;
    padding-top: 17.9487179487vw;
    width: 89.7435897436vw
}

.l-footer__logo {
    display: block;
    line-height: 1;
    width: 28.9512820513vw
}

.l-footer__container {
    display: flex;
    gap: 7.6923076923vw
}

.l-footer__subtitle {
    font-size: 3.8461538462vw;
    font-weight: 700;
    line-height: 2
}

.l-footer__list {
    margin-top: 3.0769230769vw
}

.l-footer__item {
    font-size: 3.3333333333vw;
    line-height: 2
}

.l-footer__item+.l-footer__item {
    margin-top: 2.0512820513vw
}

.l-footer__copyright {
    border-top: 1px solid rgba(255, 255, 255, .2);
    color: rgba(255, 255, 255, .5);
    display: block;
    font-family: Lato, sans-serif;
    font-size: 2.5641025641vw;
    font-style: normal;
    font-weight: 400;
    font-weight: 400;
    letter-spacing: .04em;
    line-height: 1;
    margin-top: 10.2564102564vw;
    padding-top: 5.1282051282vw;
    width: 100%
}

.l-footer .c-button-text:hover {
    background: linear-gradient(225deg, #fff 50%, transparent 50%) repeat-x 100% 100%/200% 1px
}

.l-news {
    align-items: center;
    background-color: #fff;
    display: flex;
    flex-direction: column;
    height: 100vh;
    justify-content: center;
    position: fixed;
    right: 0;
    top: 0;
    transition: translate .3s ease-in-out;
    translate: 86.11111111vw;
    width: 86.11111111vw;
    z-index: 11
}

.l-news.is-active {
    translate: 0
}

.l-news__button {
    align-items: center;
    background-color: rgba(0, 0, 0, .8);
    border: 1px solid #6b6b6b;
    border-radius: 1.5384615385vw 0 0 1.5384615385vw;
    bottom: 20lvh;
    color: #fff;
    cursor: pointer;
    display: flex;
    font-size: 3.5897435897vw;
    font-weight: 500;
    gap: 2.5641025641vw;
    height: -moz-max-content;
    height: max-content;
    justify-content: center;
    left: -10.2564102564vw;
    line-height: 1.1;
    margin: auto;
    outline: 0;
    padding-bottom: 5.1282051282vw;
    padding-top: 4.1025641026vw;
    position: absolute;
    width: 10.2564102564vw;
    writing-mode: vertical-rl
}

.l-news__button::after {
    content: "";
    display: block;
    display: block;
    height: 2.9487179487vw;
    width: 2.9487179487vw;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-image: url(../images/common/icon_plus.svg);
    background-color: #fff;
    mask-image: url(../images/common/icon_plus.svg);
    transition: rotate .3s ease-out
}

.is-active .l-news__button::after {
    rotate: 180deg;
    -webkit-mask-image: url(../images/common/icon_minus.svg);
    mask-image: url(../images/common/icon_minus.svg)
}

.l-news__inner {
    height: -moz-max-content;
    height: max-content;
    width: 78.2051282051vw
}

.l-news__slider {
    margin-top: 10.2564102564vw
}

.l-news__item {
    width: 78.2051282051vw
}

.l-news__item a {
    display: block;
    height: 100%;
    transition: opacity .3s ease-out;
    width: 100%
}

.l-news__item a:hover {
    opacity: .8
}

.l-news .splide__pagination {
    gap: 1.5384615385vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 3.8461538462vw;
    position: relative
}

.l-news .splide__pagination li {
    height: .5128205128vw;
    width: 5.1282051282vw
}

.l-news .splide__pagination__page {
    border-radius: 0;
    height: 100%;
    margin: 0;
    opacity: 1;
    transform: scale(1);
    width: 100%
}

.l-news .splide__pagination__page.is-active {
    background-color: #000;
    transform: scale(1)
}

.l-news__arrow {
    background-color: #fff;
    background-image: url(../images/common/icon_arrow.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 2.0512820513vw;
    border: 1px solid #ccc;
    border-radius: 50%;
    cursor: pointer;
    display: block;
    height: 7.6923076923vw;
    position: absolute;
    width: 7.6923076923vw;
    z-index: 1
}

.l-news__arrow.is-next {
    right: 0
}

.l-news__arrow.is-prev {
    scale: -1 1
}

.l-search {
    background: linear-gradient(to bottom, #535a64 0, #68727f 100%);
    color: #fff;
    padding-bottom: 17.9487179487vw;
    padding-top: 12.8205128205vw
}

.l-search__title {
    align-items: center;
    display: flex;
    font-size: 7.1794871795vw;
    font-weight: 700;
    gap: 2.0512820513vw;
    justify-content: center;
    line-height: 1.5;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
    width: -moz-max-content;
    width: max-content
}

.l-search__title-caption {
    font-size: 3.5897435897vw;
    font-weight: 400;
    line-height: 1
}

.l-search__list {
    align-items: center;
    display: flex;
    gap: 3.8461538462vw;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    width: 89.7435897436vw
}

.l-search__item {
    width: 100%
}

.l-search__item-title {
    font-size: 3.5897435897vw;
    line-height: 2
}

.l-search__select {
    margin-top: 1.2820512821vw;
    position: relative;
    width: 100%
}

.l-search__select::after {
    background-color: #000;
    bottom: 0;
    content: "";
    display: block;
    height: 2.8205128205vw;
    margin: auto;
    position: absolute;
    right: 4.1025641026vw;
    top: 0;
    width: 2.8205128205vw;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-image: url(../images/common/icon_arrow.svg);
    mask-image: url(../images/common/icon_arrow.svg);
    pointer-events: none;
    rotate: 90deg
}

.l-search__select select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    border-radius: 1.5384615385vw;
    cursor: pointer;
    font-size: 3.5897435897vw;
    padding: 1.2820512821vw 3.8461538462vw;
    position: relative;
    width: 100%
}

.l-search .c-button {
    margin-top: 10.2564102564vw
}

.l-search-option {
    margin-left: auto;
    margin-right: auto;
    margin-top: 10.2564102564vw;
    text-align: center;
    width: 100%
}

.l-search-option__title {
    font-size: 4.6153846154vw;
    font-weight: 700;
    line-height: 1.5
}

.l-search-option__list {
    display: flex;
    flex-wrap: wrap;
    gap: 2.0512820513vw 7.6923076923vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5.1282051282vw;
    width: 89.7435897436vw
}

.l-search-option__input {
    display: none
}

.l-search-option__label {
    cursor: pointer;
    font-size: 3.5897435897vw;
    line-height: 2;
    padding-left: 7.6923076923vw;
    position: relative
}

.l-search-option__label::after,
.l-search-option__label::before {
    bottom: 0;
    content: "";
    display: block;
    height: 5.1282051282vw;
    left: 0;
    margin: auto;
    position: absolute;
    top: 0;
    width: 5.1282051282vw
}

.l-search-option__label::before {
    background-color: #fff;
    border: 1px solid #000;
    border-radius: .7692307692vw;
    transition: background-color .3s ease-in-out
}

.l-search-option__label::after {
    background-color: #fff;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-image: url(../images/common/icon_check.svg);
    mask-image: url(../images/common/icon_check.svg)
}

input:checked+.l-search-option__label::before {
    background-color: #000
}

.l-case {
    background-image: url(../images/common/footer-start_bg.jpg);
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    padding-bottom: 15.3846153846vw;
    padding-top: 15.3846153846vw;
    text-align: center;
    width: 100%
}

.l-case .c-heading::before {
    background-color: #fff
}

.l-case__subtitle {
    background: linear-gradient(152deg, #222 0, #222 50%, #000 50.1%, #000 100%);
    color: #fff;
    display: block;
    font-size: 5.1282051282vw;
    font-weight: 600;
    line-height: 1.5;
    margin-top: 7.6923076923vw;
    padding: 5.1282051282vw;
    width: 100%
}

.l-case__list {
    background: linear-gradient(152deg, #222 0, #222 50%, #000 50.1%, #000 100%);
    display: flex;
    flex-wrap: wrap;
    gap: 2.5641025641vw;
    justify-content: center;
    margin-top: 7.6923076923vw;
    padding: 5.1282051282vw;
    width: 100%
}

.l-case__item {
    display: flex;
    font-size: 5.1282051282vw;
    font-weight: 700;
    gap: 6.1538461538vw;
    line-height: 1.5;
    text-align: left;
    width: 100%
}

.l-case__item span {
    position: relative
}

.l-case__item span+span::before {
    background-color: #fff;
    bottom: 0;
    content: "";
    display: block;
    height: 60%;
    left: 0;
    left: -3.0769230769vw;
    margin: auto;
    position: absolute;
    top: 0;
    width: 1px
}

.l-case__description {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-top: 2.5641025641vw
}

.l-case .c-button {
    margin-top: 7.6923076923vw
}

.l-case-list {
    display: flex;
    flex-wrap: wrap;
    gap: 2.5641025641vw;
    width: 100%
}

.l-case-list__item {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    padding: 5.1282051282vw;
    text-align: center;
    width: 100%
}

.l-case-list__title {
    font-size: 5.1282051282vw;
    font-weight: 600;
    line-height: 1.5
}

.l-case-list__subtitle {
    align-items: center;
    background-color: #535a64;
    border-radius: 1.5384615385vw;
    color: #fff;
    display: flex;
    font-size: 4.6153846154vw;
    font-weight: 600;
    gap: 7.6923076923vw;
    justify-content: center;
    margin-top: 3.0769230769vw;
    padding: 2.5641025641vw;
    width: 100%
}

.l-case-list__subtitle span {
    position: relative
}

.l-case-list__subtitle span+span::before {
    background-color: #fff;
    bottom: 0;
    content: "";
    display: block;
    height: 60%;
    left: 0;
    left: -3.8461538462vw;
    margin: auto;
    position: absolute;
    top: 0;
    width: 1px
}

.l-case-list+.c-button {
    margin-top: 7.6923076923vw
}

.l-sort {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 5.1282051282vw;
    justify-content: space-between;
    width: 100%
}

.l-sort__number {
    font-size: 4.1025641026vw;
    line-height: 2
}

.l-sort__select {
    position: relative;
    width: 44.8717948718vw
}

.l-sort__select::after {
    background-color: #535a64;
    bottom: 0;
    content: "";
    display: block;
    height: 2.8205128205vw;
    margin: auto;
    position: absolute;
    right: 4.1025641026vw;
    top: 0;
    width: 2.8205128205vw;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-image: url(../images/common/icon_arrow.svg);
    mask-image: url(../images/common/icon_arrow.svg);
    pointer-events: none;
    rotate: 90deg
}

.l-sort select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    border-radius: 1.5384615385vw;
    cursor: pointer;
    font-size: 3.5897435897vw;
    padding: 1.2820512821vw 3.8461538462vw;
    position: relative;
    width: 100%
}

.l-sort__list {
    display: flex;
    gap: 5.1282051282vw;
    width: 100%
}

.l-sort__item {
    display: flex;
    width: 100%
}

.l-sort__link {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    display: flex;
    flex-direction: column;
    position: relative;
    position: relative;
    width: 100%
}

.l-sort__link::after,
.l-sort__link::before {
    border-radius: 50%;
    content: "";
    display: block;
    height: 7.6923076923vw;
    width: 7.6923076923vw
}

.l-sort__link::before {
    background-color: #fff;
    border: 1px solid #ccc
}

.l-sort__link::after {
    -webkit-mask-image: url(../images/common/icon_arrow.svg);
    mask-image: url(../images/common/icon_arrow.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 2.0512820513vw;
    background-color: #000;
    mask-size: 2.0512820513vw
}

.l-sort__link::after,
.l-sort__link::before {
    bottom: 3.8461538462vw;
    position: absolute;
    right: 3.8461538462vw
}

.l-sort__img {
    align-items: center;
    display: flex;
    justify-content: center;
    width: 100%
}

.l-sort__box {
    border-top: 1px solid #000;
    display: flex;
    flex-direction: column;
    padding: 0 5.1282051282vw;
    width: 100%
}

.l-sort__subtitle {
    display: -webkit-box;
    font-size: 4.6153846154vw;
    font-weight: 600;
    margin-left: auto;
    margin-right: auto;
    margin-top: 7.6923076923vw;
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden
}

.l-sort__tag-list {
    display: flex;
    flex-wrap: wrap;
    gap: 2.0512820513vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 3.5897435897vw;
    width: 100%
}

.l-sort__tag {
    background-color: #f6f6f6;
    border-radius: 3em;
    color: #535a64;
    display: block;
    font-size: 3.0769230769vw;
    line-height: 1;
    padding: 1.2820512821vw 2.0512820513vw;
    width: -moz-max-content;
    width: max-content
}

.l-sort__caption {
    color: #535a64;
    font-size: 3.0769230769vw;
    line-height: 2;
    margin-top: 3.5897435897vw
}

.l-card {
    align-items: stretch;
    display: flex;
    flex-wrap: wrap;
    gap: 5.1282051282vw;
    margin-top: 7.6923076923vw;
    width: 100%
}

.l-card__item {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    padding: 5.1282051282vw 7.6923076923vw;
    position: relative
}

.is-center .l-card__item {
    padding: min(30px, 2.0833333333vw)
}

.l-card__box {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 3.8461538462vw;
    margin-bottom: 2.5641025641vw;
    width: 100%
}

.l-card__inner {
    margin-top: 2.5641025641vw
}

.l-card__inner>* {
    margin-top: 2.5641025641vw
}

.l-card__inner+.l-card__inner {
    margin-top: 3.8461538462vw
}

.l-card__img {
    width: 11.5384615385vw
}

.l-card__box .l-card__img {
    width: 23.0769230769vw
}

:where(.is-center) .l-card__img {
    margin-left: auto;
    margin-right: auto;
    text-align: center
}

.l-card__title {
    flex: 1;
    font-size: 5.1282051282vw;
    font-weight: 700;
    line-height: 1.5;
    margin-top: 3.8461538462vw
}

.l-card__box .l-card__title {
    margin-top: 0
}

:where(.is-center) .l-card__title {
    margin-left: auto;
    margin-right: auto;
    text-align: center
}

.l-card__subtitle {
    font-size: 3.5897435897vw;
    font-weight: 600;
    line-height: 2
}

.l-card__description {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-top: 2.5641025641vw
}

.l-card .c-button {
    margin-top: 5.1282051282vw
}

.l-card-task {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    width: 100%
}

.l-card__item:has(.l-card-task) {
    flex: none;
    padding: 6.4102564103vw;
    width: 100%
}

.l-card-task__img {
    left: 0;
    position: absolute;
    top: 0;
    width: 11.5384615385vw
}

.l-card-task__subtitle {
    align-items: center;
    background-color: #000;
    border-radius: 1.0256410256vw 1.0256410256vw 0 0;
    color: #fff;
    display: flex;
    font-size: 3.5897435897vw;
    height: 7.1794871795vw;
    justify-content: center;
    position: relative;
    width: 100%
}

.l-card-task+.l-card-task__subtitle {
    margin-top: 12.3076923077vw
}

.l-card-task+.l-card-task__subtitle::before {
    border: 8.7179487179vw solid transparent;
    border-bottom: 0 solid transparent;
    border-top: 5.641025641vw solid #535a64;
    content: "";
    display: block;
    height: 0;
    left: 0;
    margin: 0 auto 0;
    position: absolute;
    right: 0;
    top: -9.2307692308vw;
    width: 0
}

.l-card-task__box {
    background-color: #f6f6f6;
    border-radius: 0 0 1.0256410256vw 1.0256410256vw;
    padding: 3.8461538462vw 5.1282051282vw 5.1282051282vw;
    position: relative;
    width: 100%
}

.l-card-task__box .l-card-task__img {
    left: 5.1282051282vw;
    top: 3.8461538462vw
}

.l-card-task__title {
    font-size: 5.1282051282vw;
    font-weight: 600;
    line-height: 1.5
}

.l-card-task__description {
    font-size: 4.1025641026vw;
    line-height: 2;
    margin-top: 2.3076923077vw
}

.l-card-banner {
    margin-left: auto;
    margin-right: auto;
    margin-top: 7.6923076923vw;
    width: 100%
}

.l-card-banner__item {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    padding: 7.6923076923vw 5.1282051282vw;
    position: relative;
    width: 100%
}

.l-card-banner__item+.l-card-banner__item {
    margin-top: 5.1282051282vw
}

.l-card-banner__subtitle {
    font-size: 5.1282051282vw;
    font-weight: 600
}

.l-card-banner__text {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-top: 1.2820512821vw
}

.l-card-banner__img {
    border-radius: 1.5384615385vw;
    overflow: hidden;
    width: 100%
}

.l-card-banner .c-button {
    margin-top: 5.1282051282vw
}

.l-card-review {
    display: flex;
    margin-bottom: 5.1282051282vw;
    position: relative;
    width: 100%
}

.l-card__item:has(.l-card-review) {
    flex: none
}

.l-card-review__img {
    width: 23.0769230769vw
}

.l-card-review__box {
    display: flex;
    flex-direction: column
}

.l-card-review__title {
    font-size: 4.1025641026vw;
    font-weight: 600;
    line-height: 2
}

.l-card-review__star {
    background-position: 0 center, 4.6153846154vw center, 9.2307692308vw center, 13.8461538462vw center, 18.4615384615vw center;
    background-repeat: no-repeat;
    background-size: auto 100%;
    height: 3.9205128205vw;
    width: 100%
}

.l-card-review__star.is-star1 {
    background-image: url(../images/common/icon_star-fill.svg), url(../images/common/icon_star-stroke.svg), url(../images/common/icon_star-stroke.svg), url(../images/common/icon_star-stroke.svg), url(../images/common/icon_star-stroke.svg)
}

.l-card-review__star.is-star2 {
    background-image: url(../images/common/icon_star-fill.svg), url(../images/common/icon_star-fill.svg), url(../images/common/icon_star-stroke.svg), url(../images/common/icon_star-stroke.svg), url(../images/common/icon_star-stroke.svg)
}

.l-card-review__star.is-star3 {
    background-image: url(../images/common/icon_star-fill.svg), url(../images/common/icon_star-fill.svg), url(../images/common/icon_star-fill.svg), url(../images/common/icon_star-stroke.svg), url(../images/common/icon_star-stroke.svg)
}

.l-card-review__star.is-star4 {
    background-image: url(../images/common/icon_star-fill.svg), url(../images/common/icon_star-fill.svg), url(../images/common/icon_star-fill.svg), url(../images/common/icon_star-fill.svg), url(../images/common/icon_star-stroke.svg)
}

.l-card-review__star.is-star5 {
    background-image: url(../images/common/icon_star-fill.svg), url(../images/common/icon_star-fill.svg), url(../images/common/icon_star-fill.svg), url(../images/common/icon_star-fill.svg), url(../images/common/icon_star-fill.svg)
}

.l-card-review__list {
    display: flex;
    flex-wrap: wrap;
    gap: 2.0512820513vw;
    width: 100%
}

.l-card-review__item {
    background-color: #f6f6f6;
    font-size: 3.5897435897vw;
    line-height: 2;
    padding-left: 2.5641025641vw;
    padding-right: 2.5641025641vw
}

.l-card-link {
    width: 100%
}

.l-card__item:has(.l-card-link) {
    flex: none;
    overflow: hidden;
    padding: 0
}

.l-card-link__img {
    overflow: hidden;
    width: 100%
}

.l-card-link__img img {
    transition: scale .3s ease-out
}

.l-card-link__box {
    padding: 5.1282051282vw 5.1282051282vw 3.8461538462vw;
    width: 100%
}

.l-card-link__tag-list {
    display: flex;
    flex-wrap: wrap;
    gap: 2.0512820513vw;
    margin-bottom: 3.5897435897vw;
    width: 100%
}

.l-card-link__tag {
    background-color: #f6f6f6;
    border-radius: 3em;
    color: #535a64;
    display: block;
    font-size: 3.0769230769vw;
    line-height: 1;
    padding: 1.2820512821vw 2.0512820513vw;
    width: -moz-max-content;
    width: max-content
}

.l-card-link__subtitle {
    display: block;
    font-size: 4.6153846154vw;
    font-weight: 700;
    margin-top: 2.0512820513vw
}

.l-card-link__title {
    display: block;
    font-size: 5.1282051282vw;
    font-weight: 700;
    line-height: 1.5;
    margin-top: 2.0512820513vw
}

.l-card-link__description {
    display: block;
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-top: 2.0512820513vw
}

.l-card-link__button {
    align-items: center;
    display: flex;
    margin-left: auto;
    margin-top: 5.3846153846vw;
    min-height: 10.2564102564vw;
    padding-right: 14.1025641026vw;
    position: relative;
    position: relative;
    width: -moz-max-content;
    width: max-content
}

.l-card-link__button::after,
.l-card-link__button::before {
    border-radius: 50%;
    content: "";
    display: block;
    height: 7.6923076923vw;
    width: 7.6923076923vw
}

.l-card-link__button::before {
    background-color: #fff;
    border: 1px solid #ccc
}

.l-card-link__button::after {
    -webkit-mask-image: url(../images/common/icon_arrow.svg);
    mask-image: url(../images/common/icon_arrow.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 2.0512820513vw;
    background-color: #000;
    mask-size: 2.0512820513vw
}

.l-card-link__button::after,
.l-card-link__button::before {
    bottom: 0;
    height: 10.2564102564vw;
    position: absolute;
    right: 0;
    top: 0;
    transition: background-color .3s ease-out;
    width: 10.2564102564vw
}

.l-card-scroll .l-card__img {
    margin-left: auto;
    margin-right: auto
}

.l-card-scroll .l-card__title {
    text-align: center
}

.l-card-section {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    width: 100%
}

.l-card-section__title {
    border-bottom: 1px solid #000;
    font-size: 5.1282051282vw;
    font-weight: 600;
    line-height: 1.5;
    padding: 3.8461538462vw 5.1282051282vw;
    width: 100%
}

.l-card-section__list {
    padding: 5.1282051282vw 5.1282051282vw;
    width: 100%
}

.l-card-section__item {
    align-items: baseline;
    display: flex;
    gap: 2.0512820513vw;
    width: 100%
}

.l-card-section__item+.l-card-section__item {
    margin-top: 3.8461538462vw
}

.l-card-section__subtitle {
    align-items: center;
    background-color: #f6f6f6;
    display: flex;
    font-size: 3.5897435897vw;
    font-weight: 600;
    justify-content: center;
    line-height: 2;
    text-align: center;
    width: 100%
}

.l-card-section__text {
    font-size: 3.5897435897vw;
    line-height: 2
}

.l-card-list {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    padding: 5.1282051282vw;
    width: 100%
}

.l-card-list__item {
    font-size: 3.5897435897vw;
    font-weight: 600;
    line-height: 2;
    padding-left: 1.5em;
    position: relative
}

.l-card-list__item::before {
    background-color: #000;
    border-radius: 50%;
    content: "";
    display: block;
    height: 1.5384615385vw;
    left: 0;
    line-height: 1;
    position: absolute;
    top: .75em;
    width: 1.5384615385vw
}

.l-card-list__item+.l-card-list__item {
    margin-top: 2.5641025641vw
}

.l-card-check {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 7.6923076923vw;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    width: 100%
}

.l-card-check__card {
    display: flex;
    flex-wrap: wrap;
    gap: 2.5641025641vw;
    width: 100%
}

.l-card-check__card-item {
    align-items: center;
    background-color: #fff;
    border-radius: 1.5384615385vw;
    display: flex;
    flex-direction: column;
    gap: 2.5641025641vw;
    height: 31.2820512821vw;
    justify-content: center;
    text-align: center;
    width: 28.2051282051vw
}

.l-card-check__card-img {
    width: 11.5384615385vw
}

.l-card-check__card-text {
    font-size: 4.6153846154vw;
    font-weight: 700;
    line-height: 1.5
}

.l-card-check__list {
    height: -moz-max-content;
    height: max-content;
    width: 100%
}

.l-card-check__item {
    align-items: center;
    background-color: #535a64;
    border-radius: 1.0256410256vw;
    color: #fff;
    display: flex;
    font-size: 3.5897435897vw;
    gap: 2.0512820513vw;
    height: 10.2564102564vw;
    line-height: 2;
    padding-left: 5.1282051282vw;
    padding-right: 5.1282051282vw;
    width: 100%
}

.l-card-check__item+.l-card-check__item {
    margin-top: 2.0512820513vw
}

.l-card-check__item::before {
    background-image: url(../images/common/circle_check.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 4.9230769231vw;
    width: 4.9230769231vw
}

.l-pickup {
    background-image: url(../images/index/case_bg.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    padding-bottom: 17.9487179487vw;
    padding-top: 17.9487179487vw;
    width: 100%
}

.l-pickup__description {
    font-size: 4.1025641026vw;
    line-height: 2;
    margin-top: 10.2564102564vw
}

.l-pickup .c-title__text::before {
    background-color: #fff
}

.l-pickup__list {
    display: flex;
    gap: 5.1282051282vw;
    margin-top: 7.6923076923vw;
    width: -moz-max-content;
    width: max-content
}

.l-pickup__item {
    width: 79.4871794872vw
}

.l-pickup__link {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    color: #000;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    padding-bottom: 5.1282051282vw;
    position: relative;
    position: relative;
    width: 100%
}

.l-pickup__link::after,
.l-pickup__link::before {
    border-radius: 50%;
    content: "";
    display: block;
    height: 7.6923076923vw;
    width: 7.6923076923vw
}

.l-pickup__link::before {
    background-color: #fff;
    border: 1px solid #ccc
}

.l-pickup__link::after {
    -webkit-mask-image: url(../images/common/icon_arrow.svg);
    mask-image: url(../images/common/icon_arrow.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 2.0512820513vw;
    background-color: #000;
    mask-size: 2.0512820513vw
}

.l-pickup__link::after,
.l-pickup__link::before {
    bottom: 3.8461538462vw;
    position: absolute;
    right: 3.8461538462vw
}

.l-pickup__img {
    background-position: center top;
    background-repeat: no-repeat;
    background-size: 100%;
    height: 53.8461538462vw;
    width: 100%
}

.is-item1 .l-pickup__img {
    background-image: url(../images/index/case_img1.jpg)
}

.is-item2 .l-pickup__img {
    background-image: url(../images/index/case_img2.jpg)
}

.is-item3 .l-pickup__img {
    background-image: url(../images/index/case_img3.jpg)
}

.l-pickup__subtitle {
    font-size: 4.6153846154vw;
    font-weight: 600;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5.1282051282vw;
    width: 69.2307692308vw
}

.l-pickup__text {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-left: auto;
    margin-right: auto;
    margin-top: 2.5641025641vw;
    width: 69.2307692308vw
}

.l-pickup__tag-list {
    margin-left: auto;
    margin-right: auto;
    margin-top: 5.1282051282vw;
    width: 69.2307692308vw
}

.l-pickup__tag {
    background-color: #f6f6f6;
    border-radius: 3em;
    color: #535a64;
    display: block;
    font-size: 3.0769230769vw;
    line-height: 1;
    padding: 1.2820512821vw 2.0512820513vw;
    width: -moz-max-content;
    width: max-content
}

.l-pickup .c-button {
    margin-top: 7.6923076923vw
}

.l-faq {
    background: linear-gradient(180deg, #535a64 0, #68727f 100%);
    color: #fff
}

.l-faq__container {
    padding: 12.8205128205vw 0 17.9487179487vw;
    position: relative
}

.l-faq__item {
    border-bottom: solid 1px #ccc;
    display: block;
    padding: 7.6923076923vw 0;
    width: 100%
}

.l-faq__q {
    align-items: start;
    display: grid;
    gap: 3.8461538462vw;
    grid-template-columns: 6.6666666667vw 1fr
}

.l-faq__q:before {
    content: "Q";
    display: block;
    font-family: Lato;
    font-size: 8.2051282051vw;
    font-weight: 400;
    line-height: 1
}

.l-faq__heading--lv3 {
    font-size: 5.1282051282vw;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 3.8461538462vw
}

.l-faq__a {
    align-items: start;
    display: grid;
    gap: 3.8461538462vw;
    grid-template-columns: 6.6666666667vw 1fr
}

.l-faq__a:before {
    content: "A";
    display: block;
    font-family: Lato;
    font-size: 8.2051282051vw;
    font-weight: 400;
    line-height: 1;
    text-align: center
}

.l-faq__answer {
    font-size: 3.5897435897vw;
    line-height: 2
}

.l-faq__answer a {
    text-decoration: underline
}

.l-faq__list--tag {
    display: flex;
    margin-top: 2.5641025641vw;
    flex-wrap: wrap; // 折り返し
    gap: 0.5em; // タグ間のすき間
}

.l-faq__tag {
    border: solid 1px #f6f6f6;
    border-radius: 3em;
    color: #f6f6f6;
    display: block;
    font-size: 3.0769230769vw;
    line-height: 1;
    padding: 1.2820512821vw 2.0512820513vw;
    width: -moz-max-content;
    width: max-content
}

.l-faq__subtitle {
    width: 41.0256410256vw
}

.l-faq__text {
    font-weight: 600
}

.l-faq .c-button {
    margin-top: 7.6923076923vw
}

.l-faq .js-accordion-trigger {
    cursor: pointer;
    padding-right: 8.2051282051vw;
    position: relative
}

.l-faq .js-accordion-trigger::after,
.l-faq .js-accordion-trigger::before {
    background-color: #fff;
    bottom: 0;
    content: "";
    display: block;
    height: 1px;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
    transition: rotate .3s ease-in-out;
    width: 2.5641025641vw
}

.l-faq .js-accordion-trigger::after {
    rotate: 90deg
}

.l-faq .js-accordion.is-active .js-accordion-trigger::after,
.l-faq .js-accordion.is-active .js-accordion-trigger::before {
    rotate: 180deg
}

.l-faq .js-accordion-inner {
    max-height: 0;
    overflow: hidden;
    transition: max-height .3s ease-in-out;
    width: 100%
}

.l-share-aside {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 2.5641025641vw;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    margin-top: 12.8205128205vw;
    width: -moz-max-content;
    width: max-content
}

.l-share-aside__title {
    font-size: 3.5897435897vw;
    line-height: 2;
    text-align: center;
    width: 100%
}

.l-share-aside__list {
    align-items: center;
    display: flex;
    gap: 3.5897435897vw;
    width: -moz-max-content;
    width: max-content
}

.l-share-aside__item {
    display: block;
    height: 10.2564102564vw;
    width: 10.2564102564vw
}

.l-start {
    background-image: url(../images/common/footer-start_bg.jpg);
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    padding-bottom: 17.9487179487vw;
    padding-top: 17.9487179487vw;
    text-align: center;
    width: 100%
}

.l-start__inner {
    margin: 0 auto;
    width: 100%
}

.l-start__title {
    font-size: 7.1794871795vw;
    font-weight: 700;
    line-height: 1.5
}

.l-start__text {
    font-size: 4.6153846154vw;
    line-height: 1.9;
    margin-top: 5.1282051282vw
}

.l-start__list {
    margin-top: 7.6923076923vw
}

.p-top__subtitle {
    font-size: 6.1538461538vw;
    font-weight: 600;
    line-height: 1.5;
    margin-left: auto;
    margin-right: auto;
    width: -moz-max-content;
    width: max-content
}

.p-top__subtitle strong {
    font-family: Lato, sans-serif;
    font-size: 11.2820512821vw;
    font-style: normal;
    font-weight: 400;
    font-weight: 400;
    line-height: .7
}

.p-top__description {
    font-size: 4.1025641026vw;
    line-height: 2;
    margin-top: 7.6923076923vw
}

.p-top__text {
    line-height: 2
}

.p-top__caption {
    font-size: 2.5641025641vw;
    line-height: 2
}

.p-top__container {
    background-position: left top;
    background-repeat: no-repeat;
    background-size: 100%;
    padding-bottom: 17.9487179487vw;
    padding-top: 17.9487179487vw;
    position: relative;
    width: 100%
}

.p-top__container.is-container1 {
    background-image: url(../images/index/container1_bg1-sp.svg)
}

.p-top__container.is-container2 {
    background-image: url(../images/index/container2_bg1-sp.svg), url(../images/index/container2_bg2-sp.svg);
    background-position: left top, left bottom
}

.p-top__container.is-container3 {
    background-image: url(../images/index/container3_bg1-sp.svg)
}

.p-top__container.is-container4 {
    background-image: url(../images/index/container4_bg1-sp.svg), url(../images/index/container4_bg2-sp.svg);
    background-position: left top, left bottom
}

.p-top-kv {
    align-items: center;
    background-image: url(../images/index/kv_bg-sp.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    display: flex;
    flex-direction: column;
    height: 145.641025641vw;
    justify-content: center;
    padding-top: 8.9743589744vw;
    text-align: center;
    width: 100%
}

.p-top-kv__title {
    margin-left: auto;
    margin-right: auto;
    width: 33.3333333333vw
}

.p-top-kv__description {
    font-size: 7.1794871795vw;
    font-weight: 600;
    line-height: 1.5;
    margin-top: 5.1282051282vw
}

.p-top-kv__text {
    font-size: 4.6153846154vw;
    line-height: 1.9;
    margin-top: 3.8461538462vw
}

.p-top-kv .c-button {
    margin-top: 7.6923076923vw
}

.p-top-record {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    width: 89.7435897436vw
}

.p-top-record__column {
    width: 100%
}

.p-top-record .p-top__text {
    margin-top: 5.641025641vw
}

.p-top-record .p-top__caption {
    margin-top: 2.5641025641vw
}

.p-top-record__button-list {
    display: flex;
    gap: 2.5641025641vw;
    width: 100%
}

.p-top-record__button {
    height: 58.4615384615vw;
    width: 43.5897435897vw
}

.p-top-record__button a {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    display: block;
    display: block;
    height: 100%;
    padding-top: 5.1282051282vw;
    position: relative;
    position: relative;
    text-align: center;
    width: 100%
}

.p-top-record__button a::after,
.p-top-record__button a::before {
    border-radius: 50%;
    content: "";
    display: block;
    height: 7.6923076923vw;
    width: 7.6923076923vw
}

.p-top-record__button a::before {
    background-color: #fff;
    border: 1px solid #ccc
}

.p-top-record__button a::after {
    -webkit-mask-image: url(../images/common/icon_arrow.svg);
    mask-image: url(../images/common/icon_arrow.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 2.0512820513vw;
    background-color: #000;
    mask-size: 2.0512820513vw
}

.p-top-record__button a::after,
.p-top-record__button a::before {
    bottom: 3.0769230769vw;
    position: absolute;
    right: 3.0769230769vw
}

.p-top-record__button-text {
    font-size: 4.6153846154vw;
    font-weight: 600;
    line-height: 1.5
}

.p-top-record__button-img {
    margin-left: auto;
    margin-right: auto;
    margin-top: 4.1025641026vw
}

.is-button1 .p-top-record__button-img {
    width: 24.1025641026vw
}

.is-button2 .p-top-record__button-img {
    width: 30vw
}

.p-top-record__list {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    display: flex;
    flex-wrap: wrap;
    gap: 2.5641025641vw;
    margin-top: 7.6923076923vw;
    padding: 5.1282051282vw;
    width: 100%
}

.p-top-record__item {
    width: 38.4615384615vw
}

.p-top-record .c-button {
    margin-top: 7.6923076923vw
}

.p-top-features {
    border-top: 1px solid #000;
    margin-top: 17.9487179487vw;
    padding-top: 17.9487179487vw
}

.p-top-features .p-top__text {
    margin-top: 8.4615384615vw
}

.p-top-features__list {
    display: flex;
    flex-direction: column;
    gap: 2.5641025641vw;
    margin-top: 7.6923076923vw;
    width: 100%
}

.p-top-features__item {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    padding: 20vw 7.6923076923vw 5.1282051282vw;
    position: relative;
    width: 100%
}

.p-top-features__item::before {
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 11.2820512821vw;
    left: 7.6923076923vw;
    position: absolute;
    top: 5.1282051282vw;
    width: 11.2820512821vw
}

.p-top-features__item.is-item1::before {
    background-image: url(../images/index/features_icon1.svg)
}

.p-top-features__item.is-item2::before {
    background-image: url(../images/index/features_icon2.svg)
}

.p-top-features__item.is-item3::before {
    background-image: url(../images/index/features_icon3.svg)
}

.p-top-features__item.is-item4::before {
    background-image: url(../images/index/features_icon4.svg)
}

.p-top-features__item.is-item5::before {
    background-image: url(../images/index/features_icon5.svg)
}

.p-top-features__item.is-item6::before {
    background-image: url(../images/index/features_icon6.svg)
}

.p-top-features__caption {
    font-weight: 600;
    line-height: 1.5
}

.p-top-features__subtitle {
    font-size: 5.1282051282vw;
    font-weight: 600
}

.p-top-features__text {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-top: 2.5641025641vw
}

.p-top-features .c-button {
    margin-top: 7.6923076923vw
}

.p-top-challenges {
    background-image: url(../images/index/challenges_bg-sp.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    padding-bottom: 17.9487179487vw;
    padding-top: 17.9487179487vw;
    width: 100%
}

.p-top-challenges .c-title__text::before {
    background-color: #fff
}

.p-top-challenges__list {
    margin-top: 8.4615384615vw
}

.p-top-challenges__item {
    background-color: rgba(255, 255, 255, .15);
    border-radius: 1.5384615385vw;
    padding: 5.1282051282vw 5.1282051282vw 5.1282051282vw 21.5384615385vw;
    position: relative;
    width: 100%
}

.p-top-challenges__item::after {
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 11.2820512821vw;
    margin: auto auto 0;
    width: 11.2820512821vw
}

.p-top-challenges__item.is-item1::after {
    background-image: url(../images/index/challenges_icon1.svg)
}

.p-top-challenges__item.is-item2::after {
    background-image: url(../images/index/challenges_icon2.svg)
}

.p-top-challenges__item.is-item3::after {
    background-image: url(../images/index/challenges_icon3.svg)
}

.p-top-challenges__item.is-item4::after {
    background-image: url(../images/index/challenges_icon4.svg)
}

.p-top-challenges__subtitle {
    font-size: 5.1282051282vw;
    font-weight: 600
}

.p-top-challenges__text {
    line-height: 2
}

.p-top-step__list {
    margin-top: 7.6923076923vw;
    width: 100%
}

.p-top-step__item {
    background: linear-gradient(to right, #f6f6f6 0, #ebebeb 100%);
    border-top: 1px solid #000;
    padding: 7.4358974359vw 5.1282051282vw 11.5384615385vw;
    position: relative;
    width: 100%
}

.p-top-step__item::before {
    background-color: #000;
    color: #fff;
    content: "STEP";
    display: block;
    font-family: Lato, sans-serif;
    font-size: 3.5897435897vw;
    font-style: normal;
    font-weight: 400;
    font-weight: 400;
    left: 0;
    letter-spacing: .04em;
    line-height: 1;
    padding: 1.0256410256vw 4.6153846154vw 1.2820512821vw;
    position: absolute;
    top: 0;
    width: -moz-max-content;
    width: max-content
}

.p-top-step__nth {
    font-family: Lato, sans-serif;
    font-size: 7.6923076923vw;
    font-style: normal;
    font-weight: 400;
    font-weight: 400;
    letter-spacing: .04em;
    line-height: 1
}

.p-top-step__subtitle {
    font-size: 5.1282051282vw;
    font-weight: 600;
    line-height: 1.5;
    text-align: center
}

.p-top-step__text {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-top: 2.5641025641vw;
    text-align: center
}

.p-top-step__box {
    display: flex;
    gap: 1.2820512821vw;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    margin-top: 3.8461538462vw;
    width: -moz-max-content;
    width: max-content
}

.p-top-step__caption {
    align-items: center;
    background-color: #fff;
    border-radius: 50%;
    display: flex;
    font-size: 3.5897435897vw;
    font-weight: 600;
    height: 25.641025641vw;
    justify-content: center;
    line-height: 1.5;
    text-align: center;
    width: 25.641025641vw
}

.p-top-step .c-button {
    margin-top: 7.6923076923vw
}

.p-top-scene {
    background: linear-gradient(to bottom, #535a64 0, #68727f 100%);
    color: #fff;
    padding-bottom: 17.9487179487vw;
    padding-top: 17.9487179487vw;
    width: 100%
}

.p-top-scene .c-title__text::before {
    background-color: #fff
}

.p-top-scene .c-button {
    margin-top: 7.6923076923vw
}

.p-top-scene .p-top__description {
    text-align: left
}

.p-top-scene__container {
    margin-top: 7.6923076923vw;
    width: 100%
}

.p-top-scene__tab-list {
    display: flex;
    gap: 1.2820512821vw;
    width: 100%
}

.p-top-scene__tab {
    align-items: center;
    background-color: #000;
    border-radius: 1.5384615385vw;
    color: #fff;
    cursor: pointer;
    display: flex;
    font-size: 3.5897435897vw;
    height: 8.7179487179vw;
    justify-content: center;
    transition: all .2s ease-out;
    width: -moz-max-content;
    width: max-content
}

.p-top-scene__tab.is-active {
    background-color: #fff;
    color: #000
}

.p-top-scene__content {
    margin-top: 5.1282051282vw;
    width: 100%
}

.p-top-scene__box {
    align-items: stretch;
    background-color: #fff;
    border-radius: 1.5384615385vw;
    color: #000;
    display: none;
    justify-content: space-between;
    overflow: hidden;
    position: relative;
    transition: opacity .3s ease-out, transform .3s ease-out;
    width: 100%
}

.p-top-scene__box.is-active {
    display: flex;
    opacity: 0;
    transform: translateY(5.1282051282vw)
}

.p-top-scene__box.is-active.is-active--animated {
    opacity: 1;
    transform: translateY(0)
}

.p-top-scene__inner {
    padding: 7.6923076923vw 5.1282051282vw 5.1282051282vw
}

.p-top-scene__nth {
    font-family: Lato, sans-serif;
    font-size: 3.0769230769vw;
    font-style: normal;
    font-weight: 400;
    font-weight: 400;
    letter-spacing: .04em;
    line-height: 1
}

.p-top-scene__subtitle {
    font-size: 6.1538461538vw;
    font-weight: 600
}

.p-top-scene__discription {
    font-size: 4.6153846154vw;
    font-weight: 600;
    margin-top: 5.1282051282vw
}

.p-top-scene__list {
    display: flex;
    flex-wrap: wrap;
    gap: 2.0512820513vw;
    margin-top: 2.5641025641vw;
    width: 100%
}

.p-top-scene__item {
    align-items: center;
    background-color: #f6f6f6;
    display: flex;
    font-size: 3.5897435897vw;
    line-height: 2;
    padding-left: 5.1282051282vw;
    padding-right: 2.5641025641vw;
    position: relative;
    width: -moz-max-content;
    width: max-content
}

.p-top-scene__item::before {
    background-color: #000;
    border-radius: 50%;
    bottom: 0;
    content: "";
    display: block;
    height: .3em;
    left: .6em;
    margin: auto;
    position: absolute;
    top: 0;
    width: .3em
}

.p-top-scene__summary {
    background-color: #535a64;
    border-radius: 1.5384615385vw;
    color: #fff;
    display: flex;
    font-size: 4.6153846154vw;
    font-weight: 600;
    gap: 7.6923076923vw;
    justify-content: center;
    line-height: 1.5;
    margin-top: 5.1282051282vw;
    padding: 1.5384615385vw;
    width: 100%
}

.p-top-scene__summary-text {
    position: relative
}

.p-top-scene__summary-text+.p-top-scene__summary-text::before {
    background-color: #fff;
    bottom: 0;
    content: "";
    display: block;
    height: 80%;
    left: -3.8461538462vw;
    margin: auto;
    position: absolute;
    top: 0;
    width: 1px
}

.p-top-scene__aside {
    background-color: #f6f6f6;
    width: 100%
}

.p-top-scene__aside-list {
    display: flex;
    flex-direction: column;
    width: -moz-max-content;
    width: max-content
}

.p-top-scene__aside-title {
    background-color: #fff;
    border-radius: 3em;
    color: #535a64;
    font-size: 3.0769230769vw;
    line-height: 1;
    padding: 2.0512820513vw 2.5641025641vw;
    width: -moz-max-content;
    width: max-content
}

.p-top-scene__aside-text {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-top: 1.2820512821vw
}

.p-top-key4 {
    width: 100%
}

.p-top-key4__item {
    position: relative;
    text-align: center;
    z-index: 1
}

.p-top-key4__item::before {
    background-color: #fff;
    border-radius: 50%;
    content: "";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    z-index: -1
}

.p-top-key4__nth {
    border: 1px solid #ccc;
    border-radius: 3em;
    display: block;
    font-family: Lato, sans-serif;
    font-size: 3.0769230769vw;
    font-style: normal;
    font-weight: 400;
    letter-spacing: .04em;
    line-height: 1;
    margin-left: auto;
    margin-right: auto;
    padding: 1.2820512821vw 2.0512820513vw;
    width: -moz-max-content;
    width: max-content
}

.p-top-key4__img {
    height: 12.3076923077vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 3.5897435897vw;
    width: 12.3076923077vw
}

.p-top-key4__subtitle {
    font-size: 5.1282051282vw;
    font-weight: 600;
    margin-left: auto;
    margin-right: auto;
    margin-top: 2.5641025641vw;
    width: -moz-max-content;
    width: max-content
}

.p-top-key4__text {
    font-size: 3.5897435897vw;
    line-height: 2
}

.p-top-edition {
    border-top: 1px solid #000;
    margin-top: 17.9487179487vw;
    padding-top: 17.9487179487vw;
    width: 100%
}

.p-top-edition__list {
    display: flex;
    gap: 5.1282051282vw;
    margin-top: 10.2564102564vw;
    width: -moz-max-content;
    width: max-content
}

.p-top-edition__item {
    background-color: #fff;
    border: 1px solid #fff;
    border-radius: 1.5384615385vw;
    display: flex;
    flex-direction: column;
    gap: 5.1282051282vw;
    min-height: 115.641025641vw;
    overflow: hidden;
    padding-bottom: 5.1282051282vw;
    position: relative;
    width: 79.4871794872vw
}

.p-top-edition__item.is-item1 {
    border-color: #000
}

.p-top-edition__item .c-button {
    margin-top: 5.1282051282vw
}

.p-top-edition__summary {
    background-color: #000;
    color: #fff;
    font-size: 3.5897435897vw;
    line-height: 2;
    padding: 1.2820512821vw 5.1282051282vw;
    text-align: center;
    width: 100%
}

.p-top-edition__img {
    margin-left: auto;
    margin-right: auto;
    margin-top: 2.5641025641vw;
    width: 28.2051282051vw
}

.p-top-edition__subtitle {
    font-size: 5.1282051282vw;
    font-weight: 600;
    letter-spacing: .04em;
    margin-top: 5.1282051282vw;
    text-align: center
}

.p-top-edition__text {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    width: 64.1025641026vw;
    z-index: 1
}

.p-top-edition>.c-button {
    margin-top: 10.2564102564vw
}

.p-top-learn__list {
    display: flex;
    gap: 5.1282051282vw;
    margin-top: 10.2564102564vw;
    width: -moz-max-content;
    width: max-content
}

.p-top-learn__item {
    display: flex;
    flex-direction: column;
    padding-left: 5.1282051282vw;
    padding-right: 5.1282051282vw;
    width: 89.7435897436vw
}

.p-top-learn__item+.p-top-learn__item {
    border-left: 1px solid #000
}

.p-top-learn__tag {
    background-color: #fff;
    border-radius: 3em;
    font-size: 3.0769230769vw;
    font-weight: 600;
    line-height: 1;
    padding: 1.2820512821vw 2.0512820513vw;
    width: -moz-max-content;
    width: max-content
}

.p-top-learn__subtitle {
    font-size: 5.1282051282vw;
    font-weight: 600;
    margin-top: 2.5641025641vw
}

.p-top-learn__img {
    margin-top: 2.5641025641vw;
    overflow: hidden;
    width: 100%
}

.p-top-learn__link {
    align-items: center;
    display: flex;
    font-size: 4.6153846154vw;
    font-weight: 600;
    justify-content: space-between;
    margin-top: 5.1282051282vw;
    min-height: 7.6923076923vw;
    position: relative;
    width: 100%
}

.p-top-learn__link::after,
.p-top-learn__link::before {
    border-radius: 50%;
    content: "";
    display: block;
    height: 7.6923076923vw;
    width: 7.6923076923vw
}

.p-top-learn__link::before {
    background-color: #fff;
    border: 1px solid #ccc
}

.p-top-learn__link::after {
    -webkit-mask-image: url(../images/common/icon_arrow.svg);
    mask-image: url(../images/common/icon_arrow.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 2.0512820513vw;
    background-color: #000;
    mask-size: 2.0512820513vw
}

.p-top-learn__link::after,
.p-top-learn__link::before {
    bottom: 0;
    position: absolute;
    right: 0;
    top: 0
}

:where(.p-top-learn__item:has(.p-top-learn__img:hover)) .p-top-learn__link::before {
    background-color: #000
}

:where(.p-top-learn__item:has(.p-top-learn__img:hover)) .p-top-learn__link::after {
    background-color: #fff
}

:where(.p-top-learn__item:has(.p-top-learn__img:hover)) .p-top-learn__link .c-button-text {
    background-position: 100% 100%
}

.p-top-learn__text {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-top: 1.2820512821vw
}

.p-top-learn .c-button {
    margin-top: 10.2564102564vw
}

.p-top-search .c-wrap-inner {
    border-top: 1px solid #000;
    margin-top: 17.9487179487vw;
    padding-top: 17.9487179487vw
}

.p-top-events {
    margin-top: 17.9487179487vw
}

.p-top-events__text {
    line-height: 2;
    margin-top: 10.2564102564vw
}

.p-top-events__slider {
    margin-top: 7.6923076923vw
}

.p-top-events__item {
    width: 89.7435897436vw
}

.p-top-events__link {
    display: block;
    height: 100%;
    overflow: hidden;
    width: 100%
}

.p-top-events__link:hover img {
    scale: 1.05
}

.p-top-events__arrow {
    position: absolute;
    z-index: 1
}

.p-top-events__arrow.is-next {
    right: 0
}

.p-top-events__pagination {
    align-items: center;
    display: flex;
    gap: 1.5384615385vw;
    justify-content: center;
    margin-top: 5.1282051282vw
}

.p-top-events .splide__pagination {
    gap: 1.5384615385vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5.1282051282vw;
    position: relative
}

.p-top-events .splide__pagination li {
    height: .5128205128vw;
    width: 5.1282051282vw
}

.p-top-events .splide__pagination__page {
    border-radius: 0;
    height: 100%;
    margin: 0;
    opacity: 1;
    transform: scale(1);
    width: 100%
}

.p-top-events .splide__pagination__page.is-active {
    background-color: #000;
    transform: scale(1)
}

.p-top-news {
    margin-top: 35.8974358974vw;
    padding-bottom: 17.9487179487vw
}

.p-top-news .c-button {
    margin-top: 10.2564102564vw
}

.p-top-news__item+.p-top-news__item {
    margin-top: 2.5641025641vw
}

.p-top-news__link {
    align-items: center;
    background-color: #fff;
    border-radius: 1.5384615385vw;
    display: flex;
    flex-wrap: wrap;
    gap: 1.2820512821vw 2.8205128205vw;
    padding: 5.1282051282vw;
    position: relative;
    position: relative
}

.p-top-news__link::after,
.p-top-news__link::before {
    border-radius: 50%;
    content: "";
    display: block;
    height: 7.6923076923vw;
    width: 7.6923076923vw
}

.p-top-news__link::before {
    background-color: #fff;
    border: 1px solid #ccc
}

.p-top-news__link::after {
    -webkit-mask-image: url(../images/common/icon_arrow.svg);
    mask-image: url(../images/common/icon_arrow.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 2.0512820513vw;
    background-color: #000;
    mask-size: 2.0512820513vw
}

.p-top-news__link::after,
.p-top-news__link::before {
    bottom: 0;
    margin: auto;
    position: absolute;
    top: 0
}

.p-top-news__date {
    font-family: Lato, sans-serif;
    font-size: 3.0769230769vw;
    font-style: normal;
    font-weight: 400;
    font-weight: 400;
    letter-spacing: .04em;
    line-height: 1;
    opacity: .5
}

.p-top-news__tag {
    background-color: #f6f6f6;
    border-radius: 3em;
    color: #535a64;
    display: block;
    font-size: 3.0769230769vw;
    line-height: 1;
    padding: 1.2820512821vw 2.0512820513vw;
    width: -moz-max-content;
    width: max-content
}

.p-top-news__subtitle {
    font-size: 4.6153846154vw;
    font-weight: 600
}

.p-top-news__caption {
    font-size: 3.5897435897vw;
    line-height: 2;
    opacity: .5;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
    -webkit-text-overflow: ellipsis;
    -o-text-overflow: ellipsis
}

.p-top-start {
    background-image: url(../images/common/footer-start_bg.jpg);
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    padding-bottom: 17.9487179487vw;
    padding-top: 17.9487179487vw;
    text-align: center;
    width: 100%
}

.p-top-start__inner {
    margin: 0 auto;
    width: 100%
}

.p-top-start__title {
    font-size: 7.1794871795vw;
    font-weight: 700;
    line-height: 1.5
}

.p-top-start__text {
    font-size: 4.6153846154vw;
    line-height: 1.9;
    margin-top: 5.1282051282vw
}

.p-top-start__list {
    margin-top: 7.6923076923vw
}

.p-overview__subtitle {
    font-size: 6.1538461538vw;
    font-weight: 600;
    line-height: 1.5;
    margin-left: auto;
    margin-right: auto;
    width: -moz-max-content;
    width: max-content
}

.p-overview__subtitle strong {
    font-family: Lato, sans-serif;
    font-size: 11.2820512821vw;
    font-style: normal;
    font-weight: 400;
    font-weight: 400;
    line-height: .7
}

.p-overview__description {
    font-size: 4.1025641026vw;
    line-height: 2;
    margin-top: 7.6923076923vw
}

.p-overview__text {
    line-height: 2;
    margin-top: 5.1282051282vw
}

.c-heading--white+.p-overview__text {
    color: #fff
}

.p-overview__caption {
    font-size: 2.5641025641vw;
    line-height: 2
}

.p-overview__container {
    border-top: solid 1px #000;
    margin-top: 17.9487179487vw;
    padding-top: 12.8205128205vw;
    position: relative
}

.p-overview__container--dark {
    background-image: url(../images/common/footer-start_bg.jpg);
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 13.0769230769vw 0 17.9487179487vw
}

.p-overview-reason {
    background-image: url(../images/overview/reason_bg-sp.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    padding-bottom: 17.9487179487vw;
    padding-top: 17.9487179487vw;
    width: 100%
}

.p-overview-reason .c-heading {
    margin: 0 auto;
    text-align: center;
    width: -moz-fit-content;
    width: fit-content
}

.p-overview-reason__grid01 {
    margin-bottom: 7.6923076923vw
}

.p-overview-reason__sub {
    margin-top: 5.1282051282vw;
    padding: 0 6.4102564103vw
}

.p-overview-reason__lead {
    font-size: 4.1025641026vw;
    line-height: 2;
    margin-top: 5.1282051282vw
}

.p-overview-reason__list {
    display: flex;
    gap: 1.2820512821vw;
    margin-top: 8.4615384615vw
}

.p-overview-reason__button-list {
    display: flex;
    display: grid;
    gap: 2.5641025641vw;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, auto);
    width: 100%
}

.p-overview-reason__button {
    text-align: center
}

.p-overview-reason__button.is-button1 {
    grid-area: 1/1/2/2;
    padding: 0 6.6666666667vw 0 7.4358974359vw
}

.p-overview-reason__button.is-button2 {
    grid-area: 1/2/2/3;
    padding-right: 8.2051282051vw
}

.p-overview-reason__button.is-button3 {
    grid-area: 2/1/3/3
}

.p-overview-reason__button a {
    border-radius: 1.5384615385vw;
    display: block;
    display: block;
    height: 100%;
    padding-top: 5.1282051282vw;
    position: relative;
    text-align: center;
    width: 100%
}

.p-overview-reason__button-text {
    font-size: 3.5897435897vw;
    font-weight: 700;
    line-height: 1.5
}

.p-overview-reason__button-img {
    margin-left: auto;
    margin-right: auto;
    margin-top: 4.1025641026vw
}

.is-button1 .p-overview-reason__button-img {
    display: block;
    margin-top: 2.5641025641vw;
    width: 24.1025641026vw
}

.is-button2 .p-overview-reason__button-img {
    display: block;
    margin-left: 0;
    margin-right: auto;
    margin-top: 5.1282051282vw;
    width: 30.7692307692vw
}

.is-button3 .p-overview-reason__button-img {
    display: block;
    margin-top: 2.5641025641vw;
    width: 100%
}

.p-overview-reason__list {
    display: flex;
    flex-wrap: wrap;
    gap: 1.2820512821vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5.1282051282vw;
    width: 100%
}

.p-overview-reason__item {
    align-items: center;
    backdrop-filter: blur(6px);
    background-color: rgba(255, 255, 255, .1);
    border-radius: 1.5384615385vw;
    box-shadow: inset 1px 1px 5px 1px rgba(255, 255, 255, .3), inset .5px .5px 0 1px rgba(255, 255, 255, .6);
    display: flex;
    flex-direction: column;
    gap: 1.2820512821vw;
    height: 28.2051282051vw;
    justify-content: center;
    width: 28.9743589744vw;
    padding: 1em;
}

.p-overview-reason__num {
    font-family: Lato, sans-serif;
    font-size: 5.2564102564vw;
    font-style: normal;
    font-weight: 400;
    letter-spacing: .04em;
    line-height: 1
}

.p-overview-reason__num span {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 4.1025641026vw;
    font-weight: 600
}

.p-overview-reason__text {
    font-size: 3.3897435897vw;
    font-weight: 600;
    line-height: 2;
    line-height: 1.2
}

.p-overview-why {
    background-image: url(../images/common/container_bg1-sp.svg);
    background-position: left top;
    background-repeat: no-repeat;
    background-size: 100%
}

.p-overview-why__container {
    padding-top: 17.9487179487vw
}

.p-overview-why .p-overview__container--scroll {
    translate: none
}

.p-overview-why__client {
    display: grid;
    gap: 2.5641025641vw;
    grid-template-columns: repeat(8, 28.2051282051vw);
    margin: 7.6923076923vw 0;
    padding-left: 2.5641025641vw
}

.p-overview-why__client-marquee {
    overflow: hidden;
    position: relative
}

.p-overview-why__client-track {
    animation: client-marquee var(--marquee-duration, 40s) linear infinite;
    animation-direction: var(--marquee-direction, normal);
    display: flex;
    width: -moz-max-content;
    width: max-content;
    will-change: transform
}

@keyframes client-marquee {
    from {
        transform: translateX(0)
    }

    to {
        transform: translateX(-50%)
    }
}

.p-overview-why__list {
    display: flex;
    gap: 5.1282051282vw;
    margin-top: 0;
    padding-right: 15.3846153846vw;
    width: -moz-max-content;
    width: max-content
}

.p-overview-why__item {
    background-color: #fff;
    border: 1px solid #fff;
    border-radius: 1.5384615385vw;
    display: flex;
    flex-direction: column;
    min-height: 115.641025641vw;
    overflow: hidden;
    position: relative;
    width: 79.4871794872vw
}

.p-overview-why__item.is-item1 {
    border-color: #000
}

.p-overview-why__item .c-button {
    margin-top: 5.1282051282vw
}

.p-overview-why__summary {
    background-color: #000;
    color: #fff;
    font-size: 3.5897435897vw;
    line-height: 2;
    min-height: 10vw;
    opacity: 0;
    padding: 1.2820512821vw 5.1282051282vw;
    text-align: center;
    width: 100%
}

.is-item1 .p-overview-why__summary {
    opacity: 1
}

.p-overview-why__img {
    margin-left: auto;
    margin-right: auto;
    margin-top: 2.5641025641vw;
    width: 28.2051282051vw
}

.p-overview-why__subtitle {
    font-size: 5.1282051282vw;
    font-weight: 600;
    letter-spacing: .04em;
    margin-top: 5.1282051282vw;
    text-align: center
}

.p-overview-why__text {
    background: #f6f6f6;
    font-size: 3.5897435897vw;
    margin: 2.5641025641vw 2.5641025641vw 3.8461538462vw;
    padding: 2.5641025641vw 3.8461538462vw
}

.p-overview-why>.c-button {
    margin-top: 10.2564102564vw
}

.p-overview-why__point {
    margin: 0 5.1282051282vw
}

.p-overview-why__ng {
    align-items: center;
    display: grid;
    font-size: 3.5897435897vw;
    gap: 2.5641025641vw;
    grid-template-columns: 4.8717948718vw 1fr;
    margin-top: 2.5641025641vw
}

.p-overview-why__ng::before {
    background: url(../images/overview/why_icon_ng.svg) center center/contain no-repeat;
    content: "";
    height: 4.8717948718vw;
    width: 4.8717948718vw
}

.p-overview-why__good::before {
    background: url(../images/overview/why_icon_good.svg) center center/contain no-repeat;
    content: "";
    height: 4.8717948718vw;
    width: 4.8717948718vw
}

.p-overview-why .c-heading--lv5 {
    display: block;
    line-height: 2
}

.p-overview-why .c-button {
    margin-top: 7.6923076923vw
}

.p-overview-scale {
    background-image: url(../images/common/container_bg10-sp.svg);
    background-position: left top;
    background-repeat: no-repeat;
    background-size: 100%
}

.p-overview-scale__container {
    border-top: solid 1px #000;
    margin-top: 17.9487179487vw;
    padding: 12.8205128205vw 0 12.8205128205vw;
    position: relative
}

.p-overview-scale__content {
    margin-top: 7.6923076923vw
}

.p-overview-scale .c-heading--lv3 {
    margin: 0 auto;
    width: -moz-fit-content;
    width: fit-content
}

.p-overview-scale__list {
    display: flex;
    gap: 2.5641025641vw;
    margin-top: 5.1282051282vw;
    padding-right: 15.3846153846vw;
    width: -moz-max-content;
    width: max-content
}

.p-overview-scale__item {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    padding: 20vw 5.1282051282vw 5.1282051282vw;
    position: relative;
    width: 61.5384615385vw
}

.p-overview-scale__item::before {
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 11.2820512821vw;
    left: 50%;
    position: absolute;
    top: 5.1282051282vw;
    transform: translateX(-50%);
    width: 11.2820512821vw
}

.p-overview-scale__item.is-item1::before {
    background-image: url(../images/overview/realization_icon1.svg)
}

.p-overview-scale__item.is-item2::before {
    background-image: url(../images/overview/realization_icon2.svg)
}

.p-overview-scale__item.is-item3::before {
    background-image: url(../images/overview/realization_icon3.svg)
}

.p-overview-scale__item.is-item4::before {
    background-image: url(../images/overview/realization_icon4.svg)
}

.p-overview-scale__item.is-item5::before {
    background-image: url(../images/overview/realization_icon5.svg)
}

.p-overview-scale__item.is-item6::before {
    background-image: url(../images/overview/realization_icon6.svg)
}

.p-overview-scale__item.is-item7::before {
    background-image: url(../images/overview/realization_icon7.svg)
}

.p-overview-scale__item.is-item8::before {
    background-image: url(../images/overview/realization_icon8.svg)
}

.p-overview-scale__item02 {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    position: relative;
    width: 79.4871794872vw
}

.p-overview-scale__item02::before {
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 11.2820512821vw;
    left: 50%;
    position: absolute;
    top: 5.1282051282vw;
    transform: translateX(-50%);
    width: 11.2820512821vw
}

.p-overview-scale__item02.is-item1::before {
    background-image: url(../images/overview/realization_icon1.svg)
}

.p-overview-scale__item02.is-item2::before {
    background-image: url(../images/overview/realization_icon2.svg)
}

.p-overview-scale__item02.is-item3::before {
    background-image: url(../images/overview/realization_icon3.svg)
}

.p-overview-scale__item02.is-item4::before {
    background-image: url(../images/overview/realization_icon4.svg)
}

.p-overview-scale__item02.is-item5::before {
    background-image: url(../images/overview/realization_icon5.svg)
}

.p-overview-scale__item02.is-item6::before {
    background-image: url(../images/overview/realization_icon6.svg)
}

.p-overview-scale__item02.is-item7::before {
    background-image: url(../images/overview/realization_icon7.svg)
}

.p-overview-scale__item02.is-item8::before {
    background-image: url(../images/overview/realization_icon8.svg)
}

.p-overview-scale__head {
    border-bottom: solid 1px #000;
    padding: 5.1282051282vw 3.8461538462vw;
    position: relative
}

.p-overview-scale__body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    max-height: 100%;
    padding: 5.1282051282vw 3.8461538462vw
}

.p-overview-scale__company {
    font-size: 4.6153846154vw;
    font-weight: 700
}

.p-overview-scale__data {
    color: #535a64;
    font-size: 3.0769230769vw
}

.p-overview-scale__point {
    background: #535a64;
    border-radius: 1.0256410256vw;
    color: #fff;
    font-size: 4.1025641026vw;
    font-weight: 700;
    padding: 2.5641025641vw 5.1282051282vw;
    position: absolute;
    right: 3.8461538462vw;
    top: 5.1282051282vw
}

.p-overview-scale__caption {
    font-weight: 600;
    line-height: 1.5
}

.p-overview-scale__subtitle {
    font-size: 5.1282051282vw;
    font-weight: 600;
    text-align: center
}

.p-overview-scale__text {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-top: 2.5641025641vw
}

.p-overview-scale__badge {
    border: solid 1px #535a64;
    border-radius: 3em;
    color: #535a64;
    display: block;
    font-size: 3.0769230769vw;
    line-height: 1;
    margin: 0 0 1.7948717949vw;
    padding: 1.2820512821vw 2.0512820513vw;
    width: -moz-max-content;
    width: max-content
}

.p-overview-scale .is-dark {
    background-color: #535a64;
    color: #fff
}

.p-overview-scale__issue {
    font-size: 3.5897435897vw;
    margin-bottom: 3.5897435897vw
}

.p-overview-scale__solution {
    font-size: 3.5897435897vw;
    font-weight: 700;
    line-height: 2;
    margin-bottom: 5.1282051282vw
}

.p-overview-scale__cost {
    background: #f6f6f6;
    font-size: 3.5897435897vw;
    font-weight: 700;
    padding: 2.5641025641vw 1.5384615385vw
}

.p-overview-scale__tag {
    background-color: #f6f6f6;
    border-radius: 3em;
    color: #535a64;
    display: block;
    font-size: 3.0769230769vw;
    line-height: 1;
    margin: 3.8461538462vw auto;
    padding: 1.2820512821vw 2.0512820513vw;
    width: -moz-max-content;
    width: max-content
}

.p-overview-scale .c-button {
    margin-top: 7.6923076923vw
}

.p-overview-cost {
    background-image: url(../images/common/container_bg11-sp.svg);
    background-position: left center;
    background-repeat: no-repeat;
    background-size: 100%
}

.p-overview-cost__container {
    border-top: solid 1px #000;
    margin-top: 17.9487179487vw;
    padding: 12.8205128205vw 0 12.8205128205vw;
    position: relative
}

.p-overview-cost__dummy {
    aspect-ratio: 350/500;
    background: #d9d9d9;
    margin-top: 5.1282051282vw;
    opacity: .5;
    width: 100%
}

.p-overview-effect .p-overview__container--scroll {
    translate: none
}

.p-overview-effect__list {
    display: flex;
    gap: 5.1282051282vw;
    margin-top: 7.6923076923vw;
    padding-right: 15.3846153846vw;
    width: -moz-max-content;
    width: max-content
}

.p-overview-effect__item {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    position: relative;
    width: 79.4871794872vw
}

.p-overview-effect__list--point {
    display: flex;
    flex-wrap: wrap;
    gap: 1.2820512821vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5.1282051282vw;
    width: 100%
}

.p-overview-effect__point {
    align-items: center;
    backdrop-filter: blur(6px);
    background-color: rgba(255, 255, 255, .1);
    border-radius: 1.5384615385vw;
    box-shadow: inset 1px 1px 5px 1px rgba(255, 255, 255, .3), inset .5px .5px 0 1px rgba(255, 255, 255, .6);
    color: #fff;
    display: flex;
    flex-direction: column;
    gap: 2.5641025641vw;
    height: 35.8974358974vw;
    justify-content: center;
    padding: min(20px, 1.3888888889vw);
    width: 44.1025641026vw
}

.p-overview-effect__badge {
    border: solid 1px #f6f6f6;
    border-radius: 3em;
    color: #535a64;
    color: #fff;
    display: block;
    font-size: 3.0769230769vw;
    font-style: normal;
    letter-spacing: normal;
    line-height: 1;
    padding: 1.2820512821vw 2.0512820513vw;
    width: -moz-max-content;
    width: max-content
}

.p-overview-effect__num {
    font-family: Lato, sans-serif;
    font-size: 10.2564102564vw;
    font-style: normal;
    font-weight: 400;
    letter-spacing: .04em;
    line-height: 1;
    text-align: center
}

.p-overview-effect__num span {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 4.1025641026vw;
    font-weight: 600;
    letter-spacing: normal
}

.p-overview-effect__text {
    font-size: 3.5897435897vw;
    font-weight: 600;
    line-height: 2;
    line-height: 1.2
}

.p-overview-effect__head {
    align-items: center;
    border-bottom: solid 1px #000;
    display: flex;
    justify-content: center;
    position: relative
}

.p-overview-effect__body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    max-height: 100%;
    padding: 5.1282051282vw
}

.p-overview-effect__company {
    margin-bottom: 3.8461538462vw
}

.p-overview-effect__heading--lv3 {
    font-size: 4.6153846154vw;
    font-weight: 700
}

.p-overview-effect__heading--lv4 {
    font-size: 4.1025641026vw;
    font-weight: 700;
    line-height: 2
}

.p-overview-effect__tag-list {
    margin-left: auto;
    margin-right: auto;
    margin-top: 1.2820512821vw;
    width: 69.2307692308vw
}

.p-overview-effect__tag {
    background-color: #f6f6f6;
    border-radius: 3em;
    color: #535a64;
    display: block;
    font-size: 3.0769230769vw;
    line-height: 1;
    padding: 1.2820512821vw 2.0512820513vw;
    width: -moz-max-content;
    width: max-content
}

.p-overview-effect__solution {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-top: 1.2820512821vw
}

.p-overview-effect .c-button {
    margin-top: 7.6923076923vw
}

.p-overview-features {
    background-image: url(../images/common/container_bg12-sp.svg);
    background-position: right top;
    background-repeat: no-repeat;
    background-size: 100%
}

.p-overview-features__container {
    padding-top: 12.8205128205vw;
    position: relative
}

.p-overview-features__list {
    display: grid;
    gap: 2.5641025641vw;
    grid-template-columns: repeat(4, auto);
    grid-template-rows: repeat(2, auto);
    margin-top: 7.6923076923vw;
    padding-right: 15.3846153846vw;
    width: -moz-max-content;
    width: max-content
}

.p-overview-features__item {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    padding: 19.2307692308vw 5.1282051282vw 5.1282051282vw;
    position: relative;
    width: 61.5384615385vw
}

.p-overview-features__item::before {
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 11.2820512821vw;
    left: 5.1282051282vw;
    position: absolute;
    top: 5.1282051282vw;
    width: 11.2820512821vw
}

.p-overview-features__item.is-item1::before {
    background-image: url(../images/overview/features_icon1.svg)
}

.p-overview-features__item.is-item2::before {
    background-image: url(../images/overview/features_icon2.svg)
}

.p-overview-features__item.is-item3::before {
    background-image: url(../images/overview/features_icon3.svg)
}

.p-overview-features__item.is-item4::before {
    background-image: url(../images/overview/features_icon4.svg)
}

.p-overview-features__item.is-item5::before {
    background-image: url(../images/overview/features_icon5.svg)
}

.p-overview-features__item.is-item6::before {
    background-image: url(../images/overview/features_icon6.svg)
}

.p-overview-features__item.is-item7::before {
    background-image: url(../images/overview/features_icon7.svg)
}

.p-overview-features__item.is-item8::before {
    background-image: url(../images/overview/features_icon8.svg)
}

.p-overview-features__subtitle {
    font-size: 5.1282051282vw;
    font-weight: 600
}

.p-overview-features__text {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-top: 2.5641025641vw
}

.p-overview-features__list--point {
    display: flex;
    flex-direction: column;
    gap: 2.0512820513vw;
    margin-top: 5.641025641vw;
    width: 100%
}

.p-overview-features__point {
    background-color: #f6f6f6;
    font-size: 3.5897435897vw;
    max-width: 100%;
    padding: 1.2820512821vw 2.5641025641vw 1.2820512821vw 5.1282051282vw;
    position: relative;
    width: -moz-max-content;
    width: max-content
}

.p-overview-features__point::before {
    background-color: #000;
    border-radius: 50%;
    bottom: 0;
    content: "";
    display: block;
    height: .3em;
    left: 2.5641025641vw;
    margin: auto;
    position: absolute;
    top: 0;
    width: .3em
}

.p-overview-features .c-button {
    margin-top: 7.6923076923vw
}

.p-overview-search {
    background-image: url(../images/common/container_bg13-sp.svg);
    background-position: left top;
    background-repeat: no-repeat;
    background-size: 100%
}

.p-overview-search__container {
    padding: 12.8205128205vw 0 17.9487179487vw
}

.p-overview-search__list {
    margin-left: auto;
    margin-right: auto;
    margin-top: 7.6923076923vw;
    width: 100%
}

.p-overview-search__item {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    padding: 7.6923076923vw 5.1282051282vw;
    position: relative;
    width: 100%
}

.p-overview-search__item+.p-overview-search__item {
    margin-top: 5.1282051282vw
}

.p-overview-search__subtitle {
    font-size: 5.1282051282vw;
    font-weight: 600
}

.p-overview-search__text {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-top: 1.2820512821vw
}

.p-overview-search__img {
    border-radius: 1.5384615385vw;
    width: 100%
}

.p-overview-search .c-button {
    margin-top: 5.1282051282vw
}

.p-overview-document {
    background-image: url(../images/common/container_bg14-sp.svg);
    background-position: right top;
    background-repeat: no-repeat;
    background-size: 100%
}

.p-overview-document__container {
    padding: 12.8205128205vw 0 0;
    position: relative
}

.p-overview-document__check-list {
    display: flex;
    flex-wrap: wrap;
    gap: 2.0512820513vw;
    margin-top: 7.6923076923vw;
    width: 100%
}

.p-overview-document__check {
    align-items: center;
    display: flex;
    font-size: 3.5897435897vw;
    gap: 2.0512820513vw;
    position: relative;
    width: -moz-max-content;
    width: max-content
}

.p-overview-document__check::before {
    background-image: url(../images/support/icon_check.svg);
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 4.9230769231vw;
    width: 4.9230769231vw
}

.p-overview-document__column {
    display: flex;
    flex-wrap: wrap;
    gap: 7.6923076923vw;
    margin-top: 7.6923076923vw;
    width: 100%
}

.p-overview-document__box {
    border-bottom: solid 1px #000;
    display: block;
    padding-bottom: 7.6923076923vw;
    width: 100%
}

.p-overview-document__box:last-child {
    border: none;
    padding-bottom: 0
}

.p-overview-document__title--lv3 {
    font-size: 6.1538461538vw;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 3.8461538462vw
}

.p-overview-document__title--lv4 {
    font-size: 4.1025641026vw;
    font-weight: 600;
    line-height: 1.5;
    margin-top: 2.5641025641vw
}

.p-overview-document__list--point {
    display: flex;
    flex-wrap: wrap;
    gap: 2.0512820513vw;
    margin-top: 1.2820512821vw;
    width: 100%
}

.p-overview-document__point {
    background-color: #fff;
    font-size: 3.5897435897vw;
    max-width: 100%;
    padding: 1.2820512821vw 2.5641025641vw 1.2820512821vw 5.1282051282vw;
    position: relative;
    width: -moz-max-content;
    width: max-content
}

.p-overview-document__point::before {
    background-color: #000;
    border-radius: 50%;
    bottom: 0;
    content: "";
    display: block;
    height: .3em;
    left: 2.5641025641vw;
    margin: auto;
    position: absolute;
    top: 0;
    width: .3em
}

.p-overview-document__subtitle {
    width: 41.0256410256vw
}

.p-overview-document__text {
    font-weight: 600
}

.p-overview-document .c-button {
    margin-top: 3.8461538462vw
}

.p-overview-community {
    background-image: url(../images/common/container_bg15-sp.svg);
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 100%
}

.p-overview-community__container {
    border-top: solid 1px #000;
    margin-top: 17.9487179487vw;
    padding: 12.8205128205vw 0 17.9487179487vw;
    position: relative
}

.p-overview-community__list {
    display: flex;
    flex-wrap: wrap;
    gap: 2.5641025641vw;
    margin-top: 7.6923076923vw;
    width: 100%
}

.p-overview-community__item {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    padding: 5.1282051282vw 7.6923076923vw;
    position: relative;
    width: 100%
}

.p-overview-community__item::before {
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: inline-block;
    height: 11.2820512821vw;
    margin-right: 3.8461538462vw;
    vertical-align: middle;
    width: 11.2820512821vw
}

.p-overview-community__item.is-item1::before {
    background-image: url(../images/overview/community_icon1.svg)
}

.p-overview-community__item.is-item2::before {
    background-image: url(../images/overview/community_icon2.svg)
}

.p-overview-community__item.is-item3::before {
    background-image: url(../images/overview/community_icon3.svg)
}

.p-overview-community__item.is-item4::before {
    background-image: url(../images/overview/community_icon4.svg)
}

.p-overview-community__item.is-item5::before {
    background-image: url(../images/overview/community_icon5.svg)
}

.p-overview-community__item.is-item6::before {
    background-image: url(../images/overview/community_icon6.svg)
}

.p-overview-community__item.is-item7::before {
    background-image: url(../images/overview/community_icon7.svg)
}

.p-overview-community__item.is-item8::before {
    background-image: url(../images/overview/community_icon8.svg)
}

.p-overview-community__subtitle {
    display: inline-block;
    font-size: 5.1282051282vw;
    font-weight: 600;
    vertical-align: middle
}

.p-overview-community__text {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-top: 2.5641025641vw
}

.p-overview-community .c-button {
    margin-top: 3.0769230769vw
}

.p-overview-start {
    background-image: url(../images/common/footer-start_bg-sp.jpg);
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    padding-bottom: 17.9487179487vw;
    padding-top: 17.9487179487vw;
    text-align: center;
    width: 100%
}

.p-overview-start__inner {
    margin: 0 auto;
    width: 100%
}

.p-overview-start__title {
    font-size: 7.1794871795vw;
    font-weight: 700;
    line-height: 1.5
}

.p-overview-start__text {
    font-size: 4.6153846154vw;
    line-height: 1.9;
    margin-top: 5.1282051282vw
}

.p-overview-start__list {
    margin-top: 7.6923076923vw
}

.p-cases__column {
    display: flex;
    flex-wrap: wrap;
    gap: 5.1282051282vw;
    margin-top: 7.6923076923vw;
    width: 100%
}

.p-cases__section {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    padding-bottom: 5.1282051282vw;
    width: 100%
}

.p-cases__title {
    align-items: center;
    display: flex;
    font-size: 6.1538461538vw;
    font-weight: 700;
    gap: 2.5641025641vw;
    line-height: 1.5;
    padding: 3.8461538462vw 5.1282051282vw;
    width: 100%
}

.p-cases__title::before {
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 11.5384615385vw;
    width: 11.5384615385vw
}

.p-cases__box {
    border-top: 1px solid #000;
    display: flex;
    flex-direction: column;
    padding: 5.1282051282vw;
    width: 100%
}

.p-cases__subtitle {
    font-size: 5.1282051282vw;
    font-weight: 600
}

.p-cases__description {
    font-size: 3.5897435897vw;
    line-height: 2
}

.p-cases__list {
    display: flex;
    flex-direction: column;
    gap: 2.0512820513vw;
    margin-top: 5.641025641vw;
    width: 100%
}

.p-cases__item {
    background-color: #f6f6f6;
    font-size: 3.5897435897vw;
    max-width: 100%;
    padding: 1.0256410256vw 2.5641025641vw 1.0256410256vw 5.1282051282vw;
    position: relative;
    width: -moz-max-content;
    width: max-content
}

.p-cases__item::before {
    background-color: #000;
    border-radius: 50%;
    bottom: 0;
    content: "";
    display: block;
    height: .3em;
    left: 2.5641025641vw;
    margin: auto;
    position: absolute;
    top: 0;
    width: .3em
}

.p-cases-kv {
    background-image: url(../images/success/kv_bg-sp.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    height: 153.0769230769vw;
    padding-bottom: 17.9487179487vw;
    padding-top: 12.8205128205vw;
    text-align: center;
    width: 100%
}

.p-cases-kv__title {
    font-size: 7.1794871795vw;
    font-weight: 700;
    line-height: 1.5
}

.p-cases-kv__description {
    font-size: 4.1025641026vw;
    line-height: 2;
    margin-top: 5.1282051282vw
}

.p-cases-kv__list {
    display: flex;
    flex-wrap: wrap;
    gap: 1.2820512821vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5.1282051282vw;
    width: 100%
}

.p-cases-kv__item {
    align-items: center;
    backdrop-filter: blur(6px);
    background-color: rgba(255, 255, 255, .1);
    border-radius: 1.5384615385vw;
    box-shadow: inset 1px 1px 5px 1px rgba(255, 255, 255, .3), inset .5px .5px 0 1px rgba(255, 255, 255, .6);
    display: flex;
    flex-direction: column;
    gap: 2.5641025641vw;
    height: 28.2051282051vw;
    justify-content: center;
    width: 44.1025641026vw
}

.p-cases-kv__num {
    font-family: Lato, sans-serif;
    font-size: 10.2564102564vw;
    font-style: normal;
    font-weight: 400;
    line-height: 1
}

.p-cases-kv__num span {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 4.1025641026vw;
    font-weight: 600
}

.p-cases-kv__text {
    font-size: 3.5897435897vw;
    font-weight: 600;
    line-height: 2;
    line-height: 1.2
}

.p-cases-container {
    background-repeat: no-repeat;
    padding-bottom: 17.9487179487vw;
    padding-top: 12.8205128205vw;
    position: relative;
    width: 100%
}

.p-cases-container.is-container1 {
    background-image: url(../images/common/container_bg3-sp.svg);
    background-position: right top;
    background-size: 100%
}

.p-cases-container.is-container2 {
    background-image: url(../images/common/container_bg4-sp.svg), url(../images/common/container_bg5-sp.svg);
    background-position: right top, right 0 bottom 89.7435897436vw;
    background-size: 100%
}

.p-cases-pickup {
    background-image: url(../images/index/case_bg.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    padding-bottom: 15.1282051282vw;
    padding-top: 15.1282051282vw;
    width: 100%
}

.p-cases-pickup .c-title__english {
    font-size: 7.1794871795vw
}

.p-cases-pickup__column {
    padding-left: 5.1282051282vw;
    padding-right: 5.1282051282vw;
    width: 100%
}

.p-cases-pickup__description {
    font-size: 4.1025641026vw;
    line-height: 2;
    margin-top: 5.1282051282vw
}

.p-cases-pickup .c-title__text::before {
    background-color: #fff
}

.p-cases-pickup__container {
    margin-top: min(56px, 3.8888888889vw);
    position: relative
}

.p-cases-pickup__list {
    display: flex;
    gap: 5.1282051282vw;
    width: -moz-max-content;
    width: max-content
}

.p-cases-pickup__item {
    width: 79.4871794872vw
}

.p-cases-pickup__link {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    color: #000;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    padding-bottom: 17.9487179487vw;
    position: relative;
    position: relative;
    width: 100%
}

.p-cases-pickup__link::after,
.p-cases-pickup__link::before {
    border-radius: 50%;
    content: "";
    display: block;
    height: 7.6923076923vw;
    width: 7.6923076923vw
}

.p-cases-pickup__link::before {
    background-color: #fff;
    border: 1px solid #ccc
}

.p-cases-pickup__link::after {
    -webkit-mask-image: url(../images/common/icon_arrow.svg);
    mask-image: url(../images/common/icon_arrow.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 2.0512820513vw;
    background-color: #000;
    mask-size: 2.0512820513vw
}

.p-cases-pickup__link::after,
.p-cases-pickup__link::before {
    bottom: 3.8461538462vw;
    position: absolute;
    right: 3.8461538462vw
}

.p-cases-pickup__img {
    background-position: center top;
    background-repeat: no-repeat;
    background-size: 100%;
    height: 53.8461538462vw;
    width: 100%
}

.is-item1 .p-cases-pickup__img {
    background-image: url(../images/index/case_img1.jpg)
}

.is-item2 .p-cases-pickup__img {
    background-image: url(../images/index/case_img2.jpg)
}

.is-item3 .p-cases-pickup__img {
    background-image: url(../images/index/case_img3.jpg)
}

.p-cases-pickup__subtitle {
    display: -webkit-box;
    font-size: 4.6153846154vw;
    font-weight: 600;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5.1282051282vw;
    width: 69.2307692308vw;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden
}

.p-cases-pickup__text {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-left: auto;
    margin-right: auto;
    margin-top: 2.5641025641vw;
    width: 69.2307692308vw
}

.p-cases-pickup__tag-list {
    margin-left: auto;
    margin-right: auto;
    margin-top: 5.1282051282vw;
    width: 69.2307692308vw
}

.p-cases-pickup__tag {
    background-color: #f6f6f6;
    border-radius: 3em;
    color: #535a64;
    display: block;
    font-size: 3.0769230769vw;
    line-height: 1;
    padding: 1.2820512821vw 2.0512820513vw;
    width: -moz-max-content;
    width: max-content
}

.p-cases-pickup__arrow {
    background-color: #fff;
    background-image: url(../images/common/icon_arrow.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 2.0512820513vw;
    border: 1px solid #ccc;
    border-radius: 50%;
    display: block;
    height: 7.6923076923vw;
    position: absolute;
    width: 7.6923076923vw;
    z-index: 1
}

.p-cases-pickup__arrow.is-next {
    right: 0
}

.p-cases-pickup__arrow.is-prev {
    scale: -1 1
}

.p-cases-pickup__pagination {
    align-items: center;
    display: flex;
    gap: 1.5384615385vw;
    justify-content: center;
    margin-top: 5.1282051282vw
}

.p-cases-pickup .splide__pagination {
    display: flex !important;
    gap: 1.5384615385vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5.1282051282vw;
    position: relative
}

.p-cases-pickup .splide__pagination li {
    height: .5128205128vw;
    width: 5.1282051282vw
}

.p-cases-pickup .splide__pagination__page {
    background-color: #000;
    border-radius: 0;
    height: 100%;
    margin: 0;
    opacity: 1;
    transform: scale(1);
    width: 100%
}

.p-cases-pickup .splide__pagination__page.is-active {
    background-color: #fff;
    transform: scale(1)
}

.p-cases-about .is-section1 .p-cases__title::before {
    background-image: url(../images/success/about_icon1.svg)
}

.p-cases-about .is-section2 .p-cases__title::before {
    background-image: url(../images/success/about_icon2.svg)
}

.p-cases-result .p-cases__section.is-section1 .p-cases__title::before {
    background-image: url(../images/success/result_icon1.svg)
}

.p-cases-result .p-cases__section.is-section2 .p-cases__title::before {
    background-image: url(../images/success/result_icon2.svg)
}

.p-cases-result .p-cases__section.is-section3 .p-cases__title::before {
    background-image: url(../images/success/result_icon3.svg)
}

.p-cases-company {
    border-top: 1px solid #000;
    margin-top: 17.9487179487vw;
    padding-top: 12.8205128205vw
}

.p-cases-company__list {
    display: flex;
    gap: 5.1282051282vw;
    margin-top: 7.6923076923vw;
    width: -moz-max-content;
    width: max-content
}

.p-cases-company__item {
    display: flex;
    width: 79.4871794872vw
}

.p-cases-company__link {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    display: flex;
    flex-direction: column;
    position: relative;
    position: relative;
    width: 100%
}

.p-cases-company__link::after,
.p-cases-company__link::before {
    border-radius: 50%;
    content: "";
    display: block;
    height: 7.6923076923vw;
    width: 7.6923076923vw
}

.p-cases-company__link::before {
    background-color: #fff;
    border: 1px solid #ccc
}

.p-cases-company__link::after {
    -webkit-mask-image: url(../images/common/icon_arrow.svg);
    mask-image: url(../images/common/icon_arrow.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 2.0512820513vw;
    background-color: #000;
    mask-size: 2.0512820513vw
}

.p-cases-company__link::after,
.p-cases-company__link::before {
    bottom: 3.8461538462vw;
    position: absolute;
    right: 3.8461538462vw
}

.p-cases-company__img {
    align-items: center;
    display: flex;
    justify-content: center;
    width: 100%
}

.p-cases-company__box {
    border-top: 1px solid #000;
    display: flex;
    flex-direction: column;
    padding: 0 5.1282051282vw;
    width: 100%
}

.p-cases-company__subtitle {
    display: -webkit-box;
    font-size: 4.6153846154vw;
    font-weight: 600;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5.1282051282vw;
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden
}

.p-cases-company__tag-list {
    display: flex;
    flex-wrap: wrap;
    gap: 2.0512820513vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5.1282051282vw;
    width: 69.2307692308vw
}

.p-cases-company__tag {
    background-color: #f6f6f6;
    border-radius: 3em;
    color: #535a64;
    display: block;
    font-size: 3.0769230769vw;
    line-height: 1;
    padding: 1.2820512821vw 2.0512820513vw;
    width: -moz-max-content;
    width: max-content
}

.p-cases-company .c-button {
    margin-top: 5.1282051282vw
}

.p-partner-kv {
    background-image: url(../images/partner/kv_bg-sp.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    height: 110vw;
    padding-bottom: 17.9487179487vw;
    padding-top: 12.8205128205vw;
    text-align: center;
    width: 100%
}
.p-partner-kv.partner-li-kv {
    background-image: url(../images/partner/partner-list-kv_bg-sp.jpg);
}

.p-partner-kv__title {
    font-size: 7.1794871795vw;
    font-weight: 700;
    line-height: 1.5
}

.p-partner-kv__description {
    font-size: 4.1025641026vw;
    line-height: 2;
    margin-top: 5.1282051282vw
}

.p-partner-kv .c-button {
    margin-top: 7.6923076923vw
}

.p-partner-search {
    background-image: url(../images/common/container_bg3-sp.svg);
    background-position: right top;
    background-repeat: no-repeat;
    background-size: 100%;
    padding-bottom: 17.9487179487vw;
    padding-top: 12.8205128205vw
}

.p-partner-search__list {
    display: flex;
    flex-wrap: wrap;
    gap: 2.5641025641vw;
    margin-top: 7.6923076923vw;
    width: 100%
}

.p-partner-search__item {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    padding: 5.1282051282vw 7.6923076923vw;
    width: 100%
}

.p-partner-search__box {
    position: relative;
    width: 100%
}

.p-partner-search__title {
    font-size: 5.1282051282vw;
    font-weight: 700;
    line-height: 1.5
}

.p-partner-search__description {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-top: 2.5641025641vw
}

.p-partner-search .c-button {
    margin-top: 2.5641025641vw
}

.p-partner-container {
    background-image: url(../images/common/container_bg1-sp.svg), url(../images/common/container_bg2-sp.svg);
    background-position: center top, right bottom;
    background-repeat: no-repeat;
    background-size: 100%;
    padding-bottom: 17.9487179487vw;
    padding-top: 12.8205128205vw;
    position: relative;
    width: 100%
}

.p-partner-about__column {
    display: flex;
    flex-wrap: wrap;
    gap: 5.1282051282vw;
    margin-top: 7.6923076923vw;
    width: 100%
}

.p-partner-about__section {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    width: 100%
}

.p-partner-about__title {
    display: block;
    font-size: 6.1538461538vw;
    font-weight: 700;
    line-height: 1.5;
    padding: 3.8461538462vw 5.1282051282vw;
    width: 100%
}

.p-partner-about__box {
    border-top: 1px solid #000;
    display: flex;
    flex-direction: column;
    padding: 5.1282051282vw;
    width: 100%
}

.p-partner-about__description {
    font-size: 3.5897435897vw;
    line-height: 2
}

.p-partner-about__list {
    display: flex;
    flex-direction: column;
    gap: 2.0512820513vw;
    margin-top: 3.8461538462vw;
    width: 100%
}

.p-partner-about__item {
    background-color: #f6f6f6;
    font-size: 3.5897435897vw;
    max-width: 100%;
    padding: 1.2820512821vw 2.5641025641vw 1.2820512821vw 5.1282051282vw;
    position: relative;
    width: -moz-max-content;
    width: max-content
}

.p-partner-about__item::before {
    background-color: #000;
    border-radius: 50%;
    bottom: 0;
    content: "";
    display: block;
    height: .3em;
    left: 2.5641025641vw;
    margin: auto;
    position: absolute;
    top: 0;
    width: .3em
}

.p-partner-about .c-button {
    margin-top: 7.6923076923vw
}

.p-partner-benefit {
    border-top: 1px solid #000;
    margin-top: 17.9487179487vw;
    padding-top: 12.8205128205vw
}

.p-partner-benefit__list {
    display: flex;
    flex-wrap: wrap;
    gap: 2.5641025641vw;
    margin-top: 7.6923076923vw;
    width: 100%
}

.p-partner-benefit__item {
    background-color: #fff;
    background-position: 7.6923076923vw 5.1282051282vw;
    background-repeat: no-repeat;
    background-size: 11.5384615385vw;
    border-radius: 1.5384615385vw;
    padding: 20.5128205128vw 7.6923076923vw 5.1282051282vw;
    position: relative
}

.p-partner-benefit__item.is-item1 {
    background-image: url(../images/partner/benefit_icon1.svg)
}

.p-partner-benefit__item.is-item2 {
    background-image: url(../images/partner/benefit_icon2.svg)
}

.p-partner-benefit__item.is-item3 {
    background-image: url(../images/partner/benefit_icon3.svg)
}

.p-partner-benefit__title {
    font-size: 5.1282051282vw;
    font-weight: 700;
    line-height: 1.5
}

.p-partner-benefit__description {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-top: 2.5641025641vw
}

.p-partner-benefit .c-button {
    margin-top: 7.6923076923vw
}

.p-support-kv {
    background-image: url(../images/support/kv_bg-sp.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    height: 257.1794871795vw;
    padding-bottom: 17.9487179487vw;
    padding-top: 12.8205128205vw;
    text-align: center;
    width: 100%
}

.p-support-kv__title {
    font-size: 7.1794871795vw;
    font-weight: 700;
    line-height: 1.5
}

.p-support-kv__description {
    font-size: 4.1025641026vw;
    line-height: 2;
    margin-top: 5.1282051282vw
}

.p-support-kv__list {
    display: flex;
    flex-wrap: wrap;
    gap: 2.5641025641vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5.1282051282vw;
    width: 100%
}

.p-support-kv__item {
    backdrop-filter: blur(10px);
    background-color: rgba(255, 255, 255, .1);
    border-radius: 1.5384615385vw;
    box-shadow: inset 1px 1px 5px 1px rgba(255, 255, 255, .3), inset .5px .5px 0 1px rgba(255, 255, 255, .6);
    display: block;
    padding: 5.1282051282vw 7.6923076923vw 5.1282051282vw 21.5384615385vw;
    position: relative;
    text-align: left;
    width: 100%
}

.p-support-kv__num {
    font-family: Lato, sans-serif;
    font-size: 10.2564102564vw;
    font-style: normal;
    font-weight: 400;
    line-height: 1
}

.p-support-kv__subtitle {
    font-size: 5.1282051282vw;
    font-weight: 600;
    line-height: 1.5
}

.p-support-kv__text {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-top: 2.5641025641vw
}

.p-support-kv .c-button {
    margin-top: 7.6923076923vw
}

.p-support-container {
    background-repeat: no-repeat;
    background-size: 100%;
    padding-bottom: 17.9487179487vw;
    padding-top: 12.8205128205vw;
    width: 100%
}

.p-support-container.is-container1 {
    background-image: url(../images/common/container_bg6-sp.svg), url(../images/common/container_bg7-sp.svg), url(../images/common/container_bg8-sp.svg);
    background-position: left top, left 445.8974358974vw, left bottom;
    background-size: 100%
}

.p-support-container.is-container2 {
    background-image: url(../images/common/container_bg3-sp.svg), url(../images/common/container_bg9-sp.svg);
    background-position: left top, left bottom;
    background-size: 100%
}

.p-support-container .c-wrap-inner+.c-wrap-inner {
    border-top: 1px solid #000;
    margin-top: 17.9487179487vw;
    padding-top: 12.8205128205vw
}

.p-support-service__check-list {
    display: flex;
    flex-wrap: wrap;
    gap: 2.0512820513vw;
    margin-top: 7.6923076923vw;
    width: 100%
}

.p-support-service__check {
    align-items: center;
    display: flex;
    font-size: 3.5897435897vw;
    gap: 2.0512820513vw;
    position: relative;
    width: -moz-max-content;
    width: max-content
}

.p-support-service__check::before {
    background-image: url(../images/support/icon_check.svg);
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 4.9230769231vw;
    width: 4.9230769231vw
}

.p-support-service__column {
    display: flex;
    flex-wrap: wrap;
    gap: 5.1282051282vw;
    margin-top: 7.6923076923vw;
    width: 100%
}

.p-support-service__box {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    display: block;
    padding: 5.1282051282vw 5.1282051282vw 7.6923076923vw;
    width: 100%
}

.p-support-service__title {
    font-size: 5.1282051282vw;
    font-weight: 600;
    line-height: 1.5;
    text-align: center
}

.p-support-service__list {
    margin-top: 2.5641025641vw;
    width: 100%
}

.p-support-service__item {
    align-items: center;
    border-bottom: 1px solid #ccc;
    display: flex;
    font-size: 3.5897435897vw;
    gap: 7.6923076923vw;
    height: 12.3076923077vw;
    line-height: 2;
    padding-left: 2.5641025641vw;
    width: 100%
}

.p-support-service__subtitle {
    width: 41.0256410256vw
}

.p-support-service__text {
    font-weight: 600
}

.p-support-service .c-button {
    margin-top: 7.6923076923vw
}

.p-support-tool__column {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    display: flex;
    flex-wrap: wrap;
    gap: 5.1282051282vw;
    margin-top: 5.1282051282vw;
    padding: 6.4102564103vw;
    width: 100%
}

.p-support-tool__box {
    background-position: left top;
    background-repeat: no-repeat;
    background-size: 11.5384615385vw;
    padding-left: 17.6923076923vw;
    position: relative;
    width: 100%
}

.is-column1 .p-support-tool__box {
    background-image: url(../images/support/tool_icon1.svg)
}

.is-column2 .p-support-tool__box {
    background-image: url(../images/support/tool_icon2.svg)
}

.is-column3 .p-support-tool__box {
    background-image: url(../images/support/tool_icon3.svg)
}

.p-support-tool__text {
    font-family: Lato, sans-serif;
    font-size: 3.0769230769vw;
    font-style: normal;
    font-weight: 400;
    letter-spacing: .04em;
    line-height: 1
}

.p-support-tool__title {
    font-size: 5.1282051282vw;
    font-weight: 600;
    line-height: 1.5;
    margin-top: 2.3076923077vw
}

.p-support-tool__point {
    align-items: center;
    background-color: #535a64;
    border-radius: 1.5384615385vw;
    color: #fff;
    display: flex;
    font-size: 4.6153846154vw;
    font-weight: 600;
    gap: 7.6923076923vw;
    justify-content: center;
    margin-top: 2.3076923077vw;
    padding: 1.6666666667vw;
    width: 100%
}

.p-support-tool__point span {
    position: relative
}

.p-support-tool__point span+span::before {
    background-color: #fff;
    bottom: 0;
    content: "";
    display: block;
    height: 60%;
    left: 0;
    left: -3.8461538462vw;
    margin: auto;
    position: absolute;
    top: 0;
    width: 1px
}

.p-support-tool__list {
    display: flex;
    flex: 1;
    flex-wrap: wrap;
    gap: 2.0512820513vw;
    height: -moz-max-content;
    height: max-content
}

.p-support-tool__item {
    background-color: #f6f6f6;
    font-size: 3.5897435897vw;
    max-width: 100%;
    padding: 1.0256410256vw 2.5641025641vw 1.0256410256vw 5.1282051282vw;
    position: relative;
    width: -moz-max-content;
    width: max-content
}

.p-support-tool__item::before {
    background-color: #000;
    border-radius: 50%;
    bottom: 0;
    content: "";
    display: block;
    height: .3em;
    left: 2.5641025641vw;
    margin: auto;
    position: absolute;
    top: 0;
    width: .3em
}

.p-support-tool .c-button {
    margin-top: 7.6923076923vw
}

.p-support-worries__list {
    display: flex;
    flex-wrap: wrap;
    gap: 5.1282051282vw;
    margin-top: 5.1282051282vw;
    width: 100%
}

.p-support-worries__item {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    padding: 6.4102564103vw;
    width: 100%
}

.p-support-worries__inner {
    position: relative;
    width: 100%
}

.is-summary .p-support-worries__inner {
    background-color: #f6f6f6;
    border-radius: 0 0 1.5384615385vw 1.5384615385vw;
    padding: 3.8461538462vw 5.1282051282vw 5.1282051282vw
}

.p-support-worries__img {
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain
}

.p-support-worries .is-item1 .p-support-worries__img {
    background-image: url(../images/support/worries_icon1.svg)
}

.p-support-worries .is-item1 .p-support-worries__box .p-support-worries__img {
    background-image: url(../images/support/worries_box_icon1.svg)
}

.p-support-worries .is-item2 .p-support-worries__img {
    background-image: url(../images/support/worries_icon2.svg)
}

.p-support-worries .is-item2 .p-support-worries__box .p-support-worries__img {
    background-image: url(../images/support/worries_box_icon2.svg)
}

.p-support-worries__title {
    font-size: 5.1282051282vw;
    font-weight: 600;
    line-height: 1.5
}

.p-support-worries__text {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-top: 2.5641025641vw
}

.p-support-worries__summary {
    background-color: #000;
    border-radius: 1.5384615385vw 1.5384615385vw 0 0;
    color: #fff;
    font-size: 3.5897435897vw;
    line-height: 2;
    text-align: center;
    width: 100%
}

.p-support-worries__box {
    padding-top: 10.2564102564vw;
    position: relative;
    width: 100%
}

.p-support-worries__box::before {
    border: 6.6666666667vw solid transparent;
    border-top: 4.6153846154vw solid #535a64;
    content: "";
    display: block;
    height: 0;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 2.5641025641vw;
    width: 0
}

.p-support-function {
    background-image: url(../images/support/function_bg-sp.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    padding-bottom: 17.9487179487vw;
    padding-top: 17.9487179487vw;
    width: 100%
}

.p-support-function .c-heading::before {
    background-color: #fff
}

.p-support-function__list {
    margin-top: 8.4615384615vw
}

.p-support-function__item {
    backdrop-filter: blur(3px);
    background-color: rgba(255, 255, 255, .1);
    border-radius: 1.5384615385vw;
    box-shadow: inset 1px 1px 5px 1px rgba(255, 255, 255, .3), inset .5px .5px 0 1px rgba(255, 255, 255, .6);
    padding: 5.1282051282vw 5.1282051282vw 5.1282051282vw 21.5384615385vw;
    position: relative;
    width: 100%
}

.p-support-function__item::after {
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 11.2820512821vw;
    margin: auto auto 0;
    width: 11.2820512821vw
}

.p-support-function__item.is-item1::after {
    background-image: url(../images/support/function_icon1.svg)
}

.p-support-function__item.is-item2::after {
    background-image: url(../images/support/function_icon2.svg)
}

.p-support-function__item.is-item3::after {
    background-image: url(../images/support/function_icon3.svg)
}

.p-support-function__item.is-item4::after {
    background-image: url(../images/support/function_icon4.svg)
}

.p-support-function__subtitle {
    font-size: 5.1282051282vw;
    font-weight: 600
}

.p-support-function__text {
    line-height: 2
}

.p-support-add__column {
    display: flex;
    flex-wrap: wrap;
    gap: 5.1282051282vw;
    margin-top: 7.6923076923vw;
    width: 100%
}

.p-support-add__section {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    padding-bottom: 5.1282051282vw;
    width: 100%
}

.p-support-add__title {
    align-items: center;
    display: flex;
    font-size: 6.1538461538vw;
    font-weight: 700;
    gap: 2.5641025641vw;
    line-height: 1.5;
    padding: 3.8461538462vw 5.1282051282vw;
    width: 100%
}

.p-support-add__title::before {
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: 11.5384615385vw;
    width: 11.5384615385vw
}

.is-section1 .p-support-add__title::before {
    background-image: url(../images/support/add_icon1.svg)
}

.is-section2 .p-support-add__title::before {
    background-image: url(../images/support/add_icon2.svg)
}

.p-support-add__box {
    border-top: 1px solid #000;
    display: flex;
    flex-direction: column;
    padding: 5.1282051282vw;
    width: 100%
}

.p-support-add__subtitle {
    font-size: 5.1282051282vw;
    font-weight: 600
}

.p-support-add__description {
    font-size: 3.5897435897vw;
    line-height: 2
}

.p-support-add__list {
    display: flex;
    flex-direction: column;
    gap: 2.0512820513vw;
    margin-top: 5.641025641vw;
    width: 100%
}

.p-support-add__item {
    background-color: #f6f6f6;
    font-size: 3.5897435897vw;
    max-width: 100%;
    padding: 1.2820512821vw 2.5641025641vw 1.2820512821vw 5.1282051282vw;
    position: relative;
    width: -moz-max-content;
    width: max-content
}

.p-support-add__item::before {
    background-color: #000;
    border-radius: 50%;
    bottom: 0;
    content: "";
    display: block;
    height: .3em;
    left: 2.5641025641vw;
    margin: auto;
    position: absolute;
    top: 0;
    width: .3em
}

.p-support-case__list {
    display: flex;
    flex-wrap: wrap;
    gap: 2.5641025641vw;
    margin-top: 7.6923076923vw;
    width: 100%
}

.p-support-case__item {
    background-color: #fff;
    border-radius: 1.5384615385vw;
    padding: 5.1282051282vw;
    text-align: center;
    width: 100%
}

.p-support-case__title {
    font-size: 5.1282051282vw;
    font-weight: 600;
    line-height: 1.5
}

.p-support-case__subtitle {
    align-items: center;
    background-color: #535a64;
    border-radius: 1.5384615385vw;
    color: #fff;
    display: flex;
    font-size: 4.6153846154vw;
    font-weight: 600;
    gap: 7.6923076923vw;
    justify-content: center;
    margin-top: 3.0769230769vw;
    padding: 2.5641025641vw;
    width: 100%
}

.p-support-case__subtitle span {
    position: relative
}

.p-support-case__subtitle span+span::before {
    background-color: #fff;
    bottom: 0;
    content: "";
    display: block;
    height: 60%;
    left: 0;
    left: -3.8461538462vw;
    margin: auto;
    position: absolute;
    top: 0;
    width: 1px
}

.p-support-case .c-button {
    margin-top: 7.6923076923vw
}

.p-blog__wrap {
    border-top: 1px solid #000;
    margin-top: 17.9487179487vw;
    padding-bottom: 17.9487179487vw;
    padding-top: 12.8205128205vw
}

.p-blog .c-wrap-column {
    padding-bottom: 17.9487179487vw
}

.p-blog-list {
    display: flex;
    flex-direction: column;
    gap: 5.1282051282vw;
    width: 100%
}

.p-blog-list__item {
    display: flex;
    gap: 2.5641025641vw;
    width: 100%
}

.p-blog-list__link {
    align-items: center;
    background-color: #fff;
    border-radius: 1.5384615385vw;
    display: flex;
    flex-wrap: wrap;
    gap: 2.5641025641vw;
    padding: 5.1282051282vw;
    position: relative;
    width: 100%
}

.p-blog-list__img {
    display: block;
    width: 25.641025641vw
}

.p-blog-list__detail {
    align-items: center;
    display: flex;
    gap: 2.8205128205vw;
    width: -moz-max-content;
    width: max-content
}

.p-blog-list__date {
    font-family: Lato, sans-serif;
    font-size: 3.0769230769vw;
    font-style: normal;
    font-weight: 400;
    letter-spacing: .04em;
    line-height: 1.5;
    opacity: .5
}

.p-blog-list__tag {
    background-color: #f6f6f6;
    border-radius: 3em;
    color: #535a64;
    font-size: 3.0769230769vw;
    padding: 1.0256410256vw 2.0512820513vw
}

.p-blog-list__text-box {
    display: block;
    display: -webkit-box;
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    text-overflow: ellipsis
}

.p-blog-list__text {
    font-size: 4.6153846154vw;
    font-weight: 600;
    line-height: 2
}

.p-blog-detail {
    align-items: center;
    display: flex;
    font-size: 3.0769230769vw;
    gap: 2.8205128205vw;
    letter-spacing: .04em;
    line-height: 1;
    width: 100%
}

.p-blog-detail+* {
    margin-top: 5.1282051282vw
}

.p-blog-detail__date {
    font-family: Lato, sans-serif;
    font-style: normal;
    font-weight: 400;
    opacity: .5
}

.p-blog-detail__tag {
    background-color: #fff;
    border-radius: 3em;
    color: #535a64;
    padding: 2.0512820513vw
}

.p-blog-nav {
    width: 100%
}

.p-blog-nav+.p-blog-nav {
    margin-top: 12.8205128205vw
}

.p-blog-nav__title {
    border-bottom: 1px solid #ccc;
    display: block;
    font-size: 4.6153846154vw;
    font-weight: 600;
    line-height: 1.5;
    padding-bottom: 2.5641025641vw;
    width: 100%
}

.p-blog-nav__list {
    display: flex;
    flex-direction: column;
    gap: 5.1282051282vw;
    margin-top: 5.1282051282vw;
    width: 100%
}

.p-blog-nav__date {
    display: block;
    font-family: Lato, sans-serif;
    font-size: 3.0769230769vw;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
    opacity: .5;
    width: 100%
}

.p-blog-nav__text {
    font-size: 3.5897435897vw;
    font-weight: 600;
    line-height: 1.5;
    margin-top: 2.0512820513vw
}

.p-blog-banner {
    display: flex;
    flex-wrap: wrap;
    gap: 2.5641025641vw;
    width: 100%
}

.p-blog-banner__item {
    display: flex;
    width: 100%
}

.p-blog-banner__link {
    align-items: center;
    background-color: #fff;
    border-radius: 1.5384615385vw;
    display: flex;
    flex-wrap: wrap;
    gap: 2.5641025641vw;
    padding: 5.1282051282vw;
    position: relative;
    width: 100%
}

.p-blog-banner__img {
    width: 25.641025641vw
}

.p-blog-banner__date {
    font-family: Lato, sans-serif;
    font-size: 3.0769230769vw;
    font-style: normal;
    font-weight: 400;
    letter-spacing: .04em;
    line-height: 1.5;
    opacity: .5
}

.p-blog-banner__tag {
    background-color: #f6f6f6;
    border-radius: 3em;
    color: #535a64;
    font-size: 3.0769230769vw;
    padding: 2.0512820513vw
}

.p-blog-banner__text-wrap {
    display: block;
    width: 100%
}

.p-blog-banner__text {
    font-size: 3.5897435897vw;
    font-weight: 600;
    line-height: 1.5
}

.p-blog-edition__list {
    display: flex;
    gap: 5.1282051282vw;
    margin-top: 10.2564102564vw;
    width: -moz-max-content;
    width: max-content
}

.p-blog-edition__item {
    background-color: #fff;
    border: 1px solid #fff;
    border-radius: 1.5384615385vw;
    display: flex;
    flex-direction: column;
    gap: 5.1282051282vw;
    min-height: 115.641025641vw;
    overflow: hidden;
    padding-bottom: 5.1282051282vw;
    position: relative;
    width: 79.4871794872vw
}

.p-blog-edition__item.is-item1 {
    border-color: #000
}

.p-blog-edition__item .c-button {
    margin-top: 5.1282051282vw
}

.p-blog-edition__summary {
    background-color: #000;
    color: #fff;
    font-size: 3.5897435897vw;
    line-height: 2;
    padding: 1.2820512821vw 5.1282051282vw;
    text-align: center;
    width: 100%
}

.p-blog-edition__img {
    margin-left: auto;
    margin-right: auto;
    margin-top: 2.5641025641vw;
    width: 28.2051282051vw
}

.p-blog-edition__subtitle {
    font-size: 5.1282051282vw;
    font-weight: 600;
    letter-spacing: .04em;
    margin-top: 5.1282051282vw;
    text-align: center
}

.p-blog-edition__text {
    font-size: 3.5897435897vw;
    line-height: 2;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    width: 64.1025641026vw;
    z-index: 1
}

.p-blog-edition>.c-button {
    margin-top: 10.2564102564vw
}

.p-partnerDetail .c-wrap-column {
    padding-bottom: 17.9487179487vw
}

.p-partnerDetail .l-section {
    border-top: 1px solid #000
}

.p-partnerDetail-profile {
    width: 100%
}

.p-partnerDetail-profile__img {
    width: 100%
}

.p-partnerDetail-profile__logo {
    margin-top: 5.1282051282vw;
    width: 100%
}

.p-partnerDetail-profile__list {
    display: flex;
    flex-wrap: wrap;
    gap: 2.0512820513vw;
    margin-top: 5.1282051282vw;
    width: 100%
}

.p-partnerDetail-profile__item {
    background-color: #fff;
    display: block;
    font-size: 3.5897435897vw;
    line-height: 1;
    padding: 1.2820512821vw 2.5641025641vw;
    width: -moz-max-content;
    width: max-content
}

.p-partnerDetail-banner {
    margin-top: 12.8205128205vw
}

.p-partnerDetail-banner__item+.p-partnerDetail-banner__item {
    margin-top: 2.5641025641vw
}

.p-partnerDetail-banner__item a {
    display: block;
    height: 100%;
    width: 100%
}

.p-partnerDetail-logo {
    align-items: center;
    background-color: #fff;
    display: flex;
    justify-content: center;
    padding: 5.1282051282vw;
    width: 100%
}

.p-partnerDetail-logo img {
    height: 9.1717948718vw;
    margin-left: auto;
    margin-right: auto;
    width: auto
}

.has-black-background-color {
    background-color: #000
}

.has-black-color {
    color: #000
}

.has-red-background-color {
    background-color: #ff0404
}

.has-red-color {
    color: #ff0404
}

.has-green-background-color {
    background-color: #287547
}

.has-green-color {
    color: #287547
}

.has-light-green-background-color {
    background-color: #35a662
}

.has-light-green-color {
    color: #35a662
}

.has-white-background-color {
    background-color: #fff
}

.has-white-color {
    color: #fff
}

.grid {
    display: grid;
    gap: 7.6923076923vw
}

.grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr))
}

.grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr))
}

.grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr))
}

.grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr))
}

.gap-0 {
    gap: 0
}

.gap-x-0x {
    -moz-column-gap: 0;
    column-gap: 0
}

.gap-10 {
    gap: 2.5641025641vw
}

.gap-x-10x {
    -moz-column-gap: 2.5641025641vw;
    column-gap: 2.5641025641vw
}

.gap-20 {
    gap: 5.1282051282vw
}

.gap-x-20x {
    -moz-column-gap: 5.1282051282vw;
    column-gap: 5.1282051282vw
}

.gap-30 {
    gap: 7.6923076923vw
}

.gap-x-30x {
    -moz-column-gap: 7.6923076923vw;
    column-gap: 7.6923076923vw
}

.gap-40 {
    gap: 10.2564102564vw
}

.gap-x-40x {
    -moz-column-gap: 10.2564102564vw;
    column-gap: 10.2564102564vw
}

.gap-50 {
    gap: 12.8205128205vw
}

.gap-x-50x {
    -moz-column-gap: 12.8205128205vw;
    column-gap: 12.8205128205vw
}

.gap-60 {
    gap: 15.3846153846vw
}

.gap-x-60x {
    -moz-column-gap: 15.3846153846vw;
    column-gap: 15.3846153846vw
}

.none {
    display: none !important
}

.block {
    display: block !important
}

.inline {
    display: inline !important
}

.inline-block {
    display: inline-block !important
}

.flex {
    display: flex !important
}

.flex-wrap {
    flex-wrap: wrap !important
}

.w-0p {
    width: 0% !important
}

.w-5p {
    width: 5% !important
}

.w-10p {
    width: 10% !important
}

.w-15p {
    width: 15% !important
}

.w-20p {
    width: 20% !important
}

.w-25p {
    width: 25% !important
}

.w-30p {
    width: 30% !important
}

.w-35p {
    width: 35% !important
}

.w-40p {
    width: 40% !important
}

.w-45p {
    width: 45% !important
}

.w-50p {
    width: 50% !important
}

.w-55p {
    width: 55% !important
}

.w-60p {
    width: 60% !important
}

.w-65p {
    width: 65% !important
}

.w-70p {
    width: 70% !important
}

.w-75p {
    width: 75% !important
}

.w-80p {
    width: 80% !important
}

.w-85p {
    width: 85% !important
}

.w-90p {
    width: 90% !important
}

.w-95p {
    width: 95% !important
}

.w-100p {
    width: 100% !important
}

.w-max {
    width: 100%
}

.w-full {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-left: calc(50vw - 50%);
    padding-right: calc(50vw - 50%)
}

.max-w-886 {
    margin-left: auto;
    margin-right: auto;
    max-width: 1000px
}

.centering {
    margin-left: auto;
    margin-right: auto
}

.text-left {
    text-align: left !important
}

.text-center {
    text-align: center !important
}

.text-right {
    text-align: right !important
}

.text-justify {
    text-align: justify !important
}

.uppearcase {
    text-transform: uppercase
}

.nowrap {
    white-space: nowrap
}

.text-indent {
    padding-left: 1.5em;
    text-indent: -1.5em
}

.border-none {
    border: none !important
}

.border-bottom-none {
    border-bottom: none !important
}

.px-0 {
    padding-left: 0 !important;
    padding-right: 0 !important
}

.m-0 {
    margin: 0 !important
}

.mt-0 {
    margin-top: 0 !important
}

.mb-0 {
    margin-bottom: 0 !important
}

.ml-0 {
    margin-left: 0 !important
}

.p-0 {
    padding: 0 !important
}

.pt-0 {
    padding-top: 0 !important
}

.pb-0 {
    padding-bottom: 0 !important
}

.m-10 {
    margin: 2.5641025641vw !important
}

.mt-10 {
    margin-top: 5.1282051282vw !important
}

.mb-10 {
    margin-bottom: 2.5641025641vw !important
}

.ml-10 {
    margin-left: 2.5641025641vw !important
}

.p-10 {
    padding: 2.5641025641vw !important
}

.pt-10 {
    padding-top: 2.5641025641vw !important
}

.pb-10 {
    padding-bottom: 2.5641025641vw !important
}

.m-20 {
    margin: 5.1282051282vw !important
}

.mt-20 {
    margin-top: 10.2564102564vw !important
}

.mb-20 {
    margin-bottom: 5.1282051282vw !important
}

.ml-20 {
    margin-left: 5.1282051282vw !important
}

.p-20 {
    padding: 5.1282051282vw !important
}

.pt-20 {
    padding-top: 5.1282051282vw !important
}

.pb-20 {
    padding-bottom: 5.1282051282vw !important
}

.m-30 {
    margin: 7.6923076923vw !important
}

.mt-30 {
    margin-top: 15.3846153846vw !important
}

.mb-30 {
    margin-bottom: 7.6923076923vw !important
}

.ml-30 {
    margin-left: 7.6923076923vw !important
}

.p-30 {
    padding: 7.6923076923vw !important
}

.pt-30 {
    padding-top: 7.6923076923vw !important
}

.pb-30 {
    padding-bottom: 7.6923076923vw !important
}

.m-40 {
    margin: 10.2564102564vw !important
}

.mt-40 {
    margin-top: 20.5128205128vw !important
}

.mb-40 {
    margin-bottom: 10.2564102564vw !important
}

.ml-40 {
    margin-left: 10.2564102564vw !important
}

.p-40 {
    padding: 10.2564102564vw !important
}

.pt-40 {
    padding-top: 10.2564102564vw !important
}

.pb-40 {
    padding-bottom: 10.2564102564vw !important
}

.m-50 {
    margin: 12.8205128205vw !important
}

.mt-50 {
    margin-top: 25.641025641vw !important
}

.mb-50 {
    margin-bottom: 12.8205128205vw !important
}

.ml-50 {
    margin-left: 12.8205128205vw !important
}

.p-50 {
    padding: 12.8205128205vw !important
}

.pt-50 {
    padding-top: 12.8205128205vw !important
}

.pb-50 {
    padding-bottom: 12.8205128205vw !important
}

.m-60 {
    margin: 15.3846153846vw !important
}

.mt-60 {
    margin-top: 30.7692307692vw !important
}

.mb-60 {
    margin-bottom: 15.3846153846vw !important
}

.ml-60 {
    margin-left: 15.3846153846vw !important
}

.p-60 {
    padding: 15.3846153846vw !important
}

.pt-60 {
    padding-top: 15.3846153846vw !important
}

.pb-60 {
    padding-bottom: 15.3846153846vw !important
}

.m-70 {
    margin: 17.9487179487vw !important
}

.mt-70 {
    margin-top: 35.8974358974vw !important
}

.mb-70 {
    margin-bottom: 17.9487179487vw !important
}

.ml-70 {
    margin-left: 17.9487179487vw !important
}

.p-70 {
    padding: 17.9487179487vw !important
}

.pt-70 {
    padding-top: 17.9487179487vw !important
}

.pb-70 {
    padding-bottom: 17.9487179487vw !important
}

.m-80 {
    margin: 20.5128205128vw !important
}

.mt-80 {
    margin-top: 41.0256410256vw !important
}

.mb-80 {
    margin-bottom: 20.5128205128vw !important
}

.ml-80 {
    margin-left: 20.5128205128vw !important
}

.p-80 {
    padding: 20.5128205128vw !important
}

.pt-80 {
    padding-top: 20.5128205128vw !important
}

.pb-80 {
    padding-bottom: 20.5128205128vw !important
}

.m-90 {
    margin: 23.0769230769vw !important
}

.mt-90 {
    margin-top: 46.1538461538vw !important
}

.mb-90 {
    margin-bottom: 23.0769230769vw !important
}

.ml-90 {
    margin-left: 23.0769230769vw !important
}

.p-90 {
    padding: 23.0769230769vw !important
}

.pt-90 {
    padding-top: 23.0769230769vw !important
}

.pb-90 {
    padding-bottom: 23.0769230769vw !important
}

.m-100 {
    margin: 25.641025641vw !important
}

.mt-100 {
    margin-top: 51.2820512821vw !important
}

.mb-100 {
    margin-bottom: 25.641025641vw !important
}

.ml-100 {
    margin-left: 25.641025641vw !important
}

.p-100 {
    padding: 25.641025641vw !important
}

.pt-100 {
    padding-top: 25.641025641vw !important
}

.pb-100 {
    padding-bottom: 25.641025641vw !important
}

.m-110 {
    margin: 28.2051282051vw !important
}

.mt-110 {
    margin-top: 56.4102564103vw !important
}

.mb-110 {
    margin-bottom: 28.2051282051vw !important
}

.ml-110 {
    margin-left: 28.2051282051vw !important
}

.p-110 {
    padding: 28.2051282051vw !important
}

.pt-110 {
    padding-top: 28.2051282051vw !important
}

.pb-110 {
    padding-bottom: 28.2051282051vw !important
}

.m-120 {
    margin: 30.7692307692vw !important
}

.mt-120 {
    margin-top: 61.5384615385vw !important
}

.mb-120 {
    margin-bottom: 30.7692307692vw !important
}

.ml-120 {
    margin-left: 30.7692307692vw !important
}

.p-120 {
    padding: 30.7692307692vw !important
}

.pt-120 {
    padding-top: 30.7692307692vw !important
}

.pb-120 {
    padding-bottom: 30.7692307692vw !important
}

.m-130 {
    margin: 33.3333333333vw !important
}

.mt-130 {
    margin-top: 66.6666666667vw !important
}

.mb-130 {
    margin-bottom: 33.3333333333vw !important
}

.ml-130 {
    margin-left: 33.3333333333vw !important
}

.p-130 {
    padding: 33.3333333333vw !important
}

.pt-130 {
    padding-top: 33.3333333333vw !important
}

.pb-130 {
    padding-bottom: 33.3333333333vw !important
}

.m-140 {
    margin: 35.8974358974vw !important
}

.mt-140 {
    margin-top: 71.7948717949vw !important
}

.mb-140 {
    margin-bottom: 35.8974358974vw !important
}

.ml-140 {
    margin-left: 35.8974358974vw !important
}

.p-140 {
    padding: 35.8974358974vw !important
}

.pt-140 {
    padding-top: 35.8974358974vw !important
}

.pb-140 {
    padding-bottom: 35.8974358974vw !important
}

.m-150 {
    margin: 38.4615384615vw !important
}

.mt-150 {
    margin-top: 76.9230769231vw !important
}

.mb-150 {
    margin-bottom: 38.4615384615vw !important
}

.ml-150 {
    margin-left: 38.4615384615vw !important
}

.p-150 {
    padding: 38.4615384615vw !important
}

.pt-150 {
    padding-top: 38.4615384615vw !important
}

.pb-150 {
    padding-bottom: 38.4615384615vw !important
}

.m-160 {
    margin: 41.0256410256vw !important
}

.mt-160 {
    margin-top: 82.0512820513vw !important
}

.mb-160 {
    margin-bottom: 41.0256410256vw !important
}

.ml-160 {
    margin-left: 41.0256410256vw !important
}

.p-160 {
    padding: 41.0256410256vw !important
}

.pt-160 {
    padding-top: 41.0256410256vw !important
}

.pb-160 {
    padding-bottom: 41.0256410256vw !important
}

.mt-1em {
    margin-top: 1em !important
}

.mb-1em {
    margin-bottom: 1em !important
}

.pt-1em {
    padding-top: 1em !important
}

.pb-1em {
    padding-bottom: 1em !important
}

.mt-2em {
    margin-top: 2em !important
}

.mb-2em {
    margin-bottom: 2em !important
}

.pt-2em {
    padding-top: 2em !important
}

.pb-2em {
    padding-bottom: 2em !important
}

.mt-3em {
    margin-top: 3em !important
}

.mb-3em {
    margin-bottom: 3em !important
}

.pt-3em {
    padding-top: 3em !important
}

.pb-3em {
    padding-bottom: 3em !important
}

.mt-4em {
    margin-top: 4em !important
}

.mb-4em {
    margin-bottom: 4em !important
}

.pt-4em {
    padding-top: 4em !important
}

.pb-4em {
    padding-bottom: 4em !important
}

.mt-5em {
    margin-top: 5em !important
}

.mb-5em {
    margin-bottom: 5em !important
}

.pt-5em {
    padding-top: 5em !important
}

.pb-5em {
    padding-bottom: 5em !important
}

.mt-6em {
    margin-top: 6em !important
}

.mb-6em {
    margin-bottom: 6em !important
}

.pt-6em {
    padding-top: 6em !important
}

.pb-6em {
    padding-bottom: 6em !important
}

.mt-7em {
    margin-top: 7em !important
}

.mb-7em {
    margin-bottom: 7em !important
}

.pt-7em {
    padding-top: 7em !important
}

.pb-7em {
    padding-bottom: 7em !important
}

.mt-8em {
    margin-top: 8em !important
}

.mb-8em {
    margin-bottom: 8em !important
}

.pt-8em {
    padding-top: 8em !important
}

.pb-8em {
    padding-bottom: 8em !important
}

.mt-9em {
    margin-top: 9em !important
}

.mb-9em {
    margin-bottom: 9em !important
}

.pt-9em {
    padding-top: 9em !important
}

.pb-9em {
    padding-bottom: 9em !important
}

.mt-10em {
    margin-top: 10em !important
}

.mb-10em {
    margin-bottom: 10em !important
}

.pt-10em {
    padding-top: 10em !important
}

.pb-10em {
    padding-bottom: 10em !important
}

.pr-0 {
    padding-right: 0 !important
}

.spacer-s {
    margin-top: 7.6923076923vw !important
}

.spacer {
    margin-top: 15.3846153846vw !important
}

.spacer-l {
    padding-top: 25.641025641vw !important
}

.aspect-auto {
    aspect-ratio: auto
}

.aspect-video {
    aspect-ratio: 16/9
}

.visually-hidden {
    border: none !important;
    display: block !important;
    height: 4px !important;
    left: 0 !important;
    margin: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: fixed !important;
    top: 0 !important;
    visibility: visible !important;
    width: 4px !important
}

.clearfix::after {
    clear: both;
    content: "";
    display: block
}

.extend-x {
    margin: 0 -6%
}

.u-fontweight_bold {
    font-weight: 700
}

.u-ta_l {
    text-align: left
}

.u-fz_110p {
    font-size: 110%
}

.u-fz_125p {
    font-size: 125%
}

@keyframes purun {
    0% {
        transform: scale(1, 1) translate(0, 0)
    }

    15% {
        transform: scale(.9, .9) translate(0, 5%)
    }

    30% {
        transform: scale(1.3, .8) translate(0, 10%)
    }

    50% {
        transform: scale(.8, 1.1) translate(0, -10%)
    }

    100% {
        transform: scale(1, 1) translate(0, 0)
    }
}

@media (min-width:768px) {
    body {
        margin-top: min(60px, 4.1666666667vw)
    }

    a {
        transition: opacity .3s ease-out
    }

    .c-breadcrumb {
        padding-bottom: min(14px, .9722222222vw);
        padding-top: min(14px, .9722222222vw)
    }

    .c-breadcrumb__list {
        font-size: min(12px, .8333333333vw);
        gap: min(8px, .5555555556vw)
    }

    .c-breadcrumb__item:not(:last-child)::after {
        font-size: min(12px, .8333333333vw);
        margin-left: min(8px, .5555555556vw)
    }

    .c-button {
        gap: min(15px, 1.0416666667vw)
    }

    .c-button__link--fill {
        font-size: min(16px, 1.1111111111vw);
        gap: min(25px, 1.7361111111vw);
        padding-left: min(40px, 2.7777777778vw);
        width: -moz-max-content;
        width: max-content
    }

    .c-button__link--fill::before {
        right: min(48px, 3.3333333333vw)
    }

    .c-button__link--fill::after {
        height: min(48px, 3.3333333333vw);
        width: min(48px, 3.3333333333vw);
        -webkit-mask-size: min(11px, .7638888889vw);
        mask-size: min(11px, .7638888889vw)
    }

    .c-button__link--fill:hover {
        background-color: #fff;
        border: 1px solid #000;
        color: #000
    }

    .c-button__link--fill:hover::after,
    .c-button__link--fill:hover::before {
        background-color: #000
    }

    .c-button__link--white {
        font-size: min(16px, 1.1111111111vw);
        gap: min(25px, 1.7361111111vw);
        padding-left: min(40px, 2.7777777778vw);
        width: -moz-max-content;
        width: max-content
    }

    .c-button__link--white::before {
        right: min(48px, 3.3333333333vw)
    }

    .c-button__link--white::after {
        height: min(48px, 3.3333333333vw);
        width: min(48px, 3.3333333333vw);
        -webkit-mask-size: min(11px, .7638888889vw);
        mask-size: min(11px, .7638888889vw)
    }

    .c-button__link--white:hover {
        background-color: #fff;
        border-color: #000;
        color: #000
    }

    .c-button__link--white:hover::after,
    .c-button__link--white:hover::before {
        background-color: #000
    }

    .c-button__link--black {
        font-size: min(16px, 1.1111111111vw);
        gap: min(25px, 1.7361111111vw);
        padding-left: min(40px, 2.7777777778vw);
        width: -moz-max-content;
        width: max-content
    }

    .c-button__link--black::before {
        right: min(48px, 3.3333333333vw)
    }

    .c-button__link--black::after {
        height: min(48px, 3.3333333333vw);
        width: min(48px, 3.3333333333vw);
        -webkit-mask-size: min(11px, .7638888889vw);
        mask-size: min(11px, .7638888889vw)
    }

    .c-button__link--black:hover {
        background-color: #000;
        border: 1px solid transparent;
        color: #fff
    }

    .c-button__link--black:hover::after,
    .c-button__link--black:hover::before {
        background-color: #fff
    }

    .c-button .text-sm {
        font-size: min(14px, .9722222222vw)
    }

    .c-button-arrow::after,
    .c-button-arrow::before {
        height: min(40px, 2.7777777778vw);
        transition: background-color .3s ease-out;
        width: min(40px, 2.7777777778vw)
    }

    .c-button-arrow::after {
        -webkit-mask-size: min(8px, .5555555556vw);
        mask-size: min(8px, .5555555556vw)
    }

    .c-button-arrow:hover::before {
        background-color: #000
    }

    .c-button-arrow:hover::after {
        background-color: #fff
    }

    .c-button-arrow {
        height: min(40px, 2.7777777778vw);
        width: min(40px, 2.7777777778vw)
    }

    .c-heading--lv2 {
        font-size: min(40px, 2.7777777778vw);
        gap: min(8px, .5555555556vw);
        padding-left: min(22px, 1.5277777778vw)
    }

    .c-heading--lv2::before {
        height: min(14px, .9722222222vw);
        width: min(14px, .9722222222vw)
    }

    .c-heading--lv3 {
        font-size: min(28px, 1.9444444444vw)
    }

    .c-heading--lv4 {
        font-size: min(24px, 1.6666666667vw)
    }

    .c-heading--lv5 {
        font-size: min(16px, 1.1111111111vw)
    }

    .c-heading__description {
        font-size: min(16px, 1.1111111111vw);
        margin-top: min(18px, 1.25vw)
    }

    .c-text {
        font-size: min(16px, 1.1111111111vw)
    }

    h2+.c-text,
    h3+.c-text,
    h4+.c-text,
    h5+.c-text {
        margin-top: min(16px, 1.1111111111vw)
    }

    .c-text a {
        transition: opacity .3s ease-out
    }

    .c-text a:hover {
        opacity: .4
    }

    .c-text__caption {
        font-size: min(10px, .6944444444vw)
    }

    .c-title__text {
        font-size: min(14px, .9722222222vw);
        gap: min(8px, .5555555556vw)
    }

    .c-title__text::before {
        height: min(14px, .9722222222vw);
        width: min(14px, .9722222222vw)
    }

    .c-title__english {
        font-size: min(70px, 4.8611111111vw);
        font-weight: 400;
        margin-top: min(12px, .8333333333vw)
    }

    .c-pagetitle__container {
        background-image: url(../images/common/pagetitle_bg.svg);
        background-size: contain;
        padding: min(120px, 8.3333333333vw) 0 min(105px, 7.2916666667vw)
    }

    .c-pagetitle__img {
        width: min(520px, 36.1111111111vw)
    }

    .c-wrap-inner:has(.c-pagetitle__img) {
        align-items: center;
        flex-direction: row;
        gap: min(60px, 4.1666666667vw)
    }

    .c-pagetitle__english {
        font-size: min(14px, .9722222222vw);
        gap: min(8px, .5555555556vw)
    }

    .c-pagetitle__english::before {
        height: min(14px, .9722222222vw);
        width: min(14px, .9722222222vw)
    }

    .c-pagetitle__text {
        font-size: min(48px, 3.3333333333vw);
        margin-top: min(12px, .8333333333vw)
    }

    .c-pagetitle__title {
        font-size: min(40px, 2.7777777778vw);
        margin-top: min(12px, .8333333333vw)
    }

    .c-pagetitle__title::before {
        height: min(14px, .9722222222vw);
        left: max(-22px, -1.5277777778vw);
        top: min(12px, .8333333333vw);
        width: min(14px, .9722222222vw)
    }

    .c-pagetitle__description {
        font-size: min(16px, 1.1111111111vw);
        margin-top: min(18px, 1.25vw)
    }

    .c-wrap-inner {
        width: min(1200px, 83.3333333333vw)
    }

    .c-wrap-column {
        flex-direction: row-reverse;
        gap: min(60px, 4.1666666667vw);
        width: min(1200px, 83.3333333333vw)
    }

    .c-wrap-column__inner {
        width: min(880px, 61.1111111111vw)
    }

    .c-wrap-column__nav {
        height: -moz-max-content;
        height: max-content;
        left: 0;
        position: sticky;
        top: min(100px, 6.9444444444vw);
        width: min(260px, 18.0555555556vw)
    }

    .c-pagination {
        gap: min(20px, 1.3888888889vw)
    }

    .c-pagination__list {
        gap: min(8px, .5555555556vw)
    }

    .c-pagination__item {
        font-size: min(16px, 1.1111111111vw)
    }

    .c-pagination__link {
        height: min(40px, 2.7777777778vw);
        transition: all .3s ease-out;
        width: min(40px, 2.7777777778vw)
    }

    .c-pagination__link:hover {
        background-color: #000;
        color: #fff
    }

    .c-pagination__arrow {
        height: min(10px, .6944444444vw);
        transition: opacity .3s ease-out;
        width: min(10px, .6944444444vw)
    }

    .c-pagination__arrow:hover {
        opacity: .4
    }

    .c-img {
        max-width: 65.9090909091%;
        width: min(800px, 55.5555555556vw)
    }

    .c-img--column2 {
        gap: min(40px, 2.7777777778vw);
        width: 100%
    }

    .c-img--column2 .c-img {
        width: calc(50% - min(40px, 2.7777777778vw))
    }

    .c-img--column3 {
        gap: min(20px, 1.3888888889vw)
    }

    .c-img--column3 .c-img {
        width: calc(33.3333333333% - min(20px, 1.3888888889vw))
    }

    .c-img__caption {
        font-size: min(12px, .8333333333vw);
        margin-top: min(10px, .6944444444vw)
    }

    .c-table__th {
        font-size: min(20px, 1.3888888889vw);
        height: min(70px, 4.8611111111vw)
    }

    .c-table__td {
        font-size: min(16px, 1.1111111111vw);
        min-height: min(72px, 5vw);
        padding: min(20px, 1.3888888889vw) min(12px, .8333333333vw)
    }

    .c-table__td.is-none::after {
        height: min(1px, .0694444444vw);
        width: min(20px, 1.3888888889vw)
    }

    .c-table__caption {
        font-size: min(14px, .9722222222vw);
        margin-top: min(20px, 1.3888888889vw)
    }

    .c-box {
        gap: min(14px, .9722222222vw);
        grid-template-rows: min(36px, 2.5vw) min(270px, 18.75vw) auto
    }

    .c-box__heading {
        font-size: min(24px, 1.6666666667vw)
    }

    .c-box--picture .c-box__heading {
        font-size: min(28px, 1.9444444444vw)
    }

    .c-box__text {
        font-size: min(16px, 1.1111111111vw);
        padding-top: min(6px, .4166666667vw)
    }

    .c-box--picture .c-box__text {
        padding-top: min(20px, 1.3888888889vw)
    }

    .c-box--column2 {
        display: grid;
        gap: min(120px, 8.3333333333vw);
        grid-template-columns: repeat(2, 1fr);
        padding: 0 min(60px, 4.1666666667vw)
    }

    .c-box--column2>.c-box:last-child:before {
        background: #000;
        content: "";
        display: block;
        height: 100%;
        left: max(-60px, -4.1666666667vw);
        position: absolute;
        top: 0;
        width: 1px
    }

    .c-box--picture {
        display: grid;
        gap: 0 min(60px, 4.1666666667vw);
        grid-template-columns: 480fr 754fr;
        grid-template-rows: repeat(2, auto)
    }

    .c-box--picture .c-box__main {
        grid-area: 1/2/2/3
    }

    .c-box--picture .c-box__sub {
        grid-area: 1/1/3/2
    }

    .c-box--picture .c-box__btn {
        align-content: end;
        grid-area: 2/2/3/3
    }

    .c-box--picture .c-box__btn .c-button {
        margin-left: 0
    }

    .c-box--picture+.c-box--picture {
        margin-top: min(60px, 4.1666666667vw)
    }

    .c-box--picture-rv {
        grid-template-columns: 754fr 480fr
    }

    .c-box--picture-rv .c-box__main {
        grid-area: 1/1/2/2
    }

    .c-box--picture-rv .c-box__sub {
        grid-area: 1/2/3/3
    }

    .c-box--picture-rv .c-box__btn {
        align-content: end;
        grid-area: 2/1/3/2
    }

    .c-box--picture-rv .c-box__btn .c-button {
        margin-left: 0
    }

    .c-outline__head {
        padding: min(14px, .9722222222vw) min(40px, 2.7777777778vw)
    }

    .c-outline__heading {
        font-size: min(20px, 1.3888888889vw)
    }

    .c-outline__body {
        padding: min(20px, 1.3888888889vw) min(40px, 2.7777777778vw)
    }

    .c-outline__item {
        font-size: min(16px, 1.1111111111vw)
    }

    :where(ol)>.c-outline__item {
        padding-left: min(12px, .8333333333vw)
    }

    :where(ol)>.c-outline__item+.c-outline__item {
        margin-top: min(8px, .5555555556vw)
    }

    :where(ol)>.c-outline__item::before {
        height: min(6px, .4166666667vw);
        width: min(6px, .4166666667vw)
    }

    :where(ul)>.c-outline__item {
        padding-left: min(36px, 2.5vw)
    }

    :where(ul)>.c-outline__item+.c-outline__item {
        margin-top: min(8px, .5555555556vw)
    }

    :where(ul)>.c-outline__item::before {
        font-size: min(20px, 1.3888888889vw);
        min-width: min(32px, 2.2222222222vw)
    }

    .c-outline__list .c-outline__list {
        margin-top: min(8px, .5555555556vw);
        padding-left: min(4px, .2777777778vw)
    }

    .c-outline__list .c-outline__list .c-outline__item {
        font-size: min(14px, .9722222222vw)
    }

    .c-outline .js-accordion-trigger {
        padding-right: min(84px, 5.8333333333vw)
    }

    .c-outline .js-accordion-trigger::after,
    .c-outline .js-accordion-trigger::before {
        right: min(40px, 2.7777777778vw);
        width: min(20px, 1.3888888889vw)
    }

    .c-movie {
        border-radius: min(8px, .5555555556vw)
    }

    .c-movie__box {
        height: min(450px, 31.25vw);
        width: min(800px, 55.5555555556vw)
    }

    .c-movie__button:hover::before {
        opacity: .5
    }

    .c-movie__button::before {
        background-size: min(22.64px, 1.5722222222vw);
        height: min(80px, 5.5555555556vw);
        transition: all .3s ease;
        width: min(80px, 5.5555555556vw)
    }

    // #satori__creative_container {
    //     width: min(800px, 55.5555555556vw)
    // }

    .l-section {
        max-width: min(1200px, 83.3333333333vw);
        padding-bottom: min(100px, 6.9444444444vw);
        padding-top: min(100px, 6.9444444444vw)
    }

    :where(.l-section)>:not(:first-child):not(:where(.l-section)) {
        margin-top: min(20px, 1.3888888889vw)
    }

    .l-section__box {
        margin-top: min(50px, 3.4722222222vw)
    }

    :where(.l-section__box)>:not(:first-child) {
        margin-top: min(16px, 1.1111111111vw)
    }

    .l-section__title--lv1 {
        font-size: min(40px, 2.7777777778vw)
    }

    .l-section__title--lv2 {
        font-size: min(28px, 1.9444444444vw)
    }

    .l-section__title--lv3 {
        font-size: min(24px, 1.6666666667vw)
    }

    .l-section__title--lv4 {
        font-size: min(20px, 1.3888888889vw)
    }

    .l-section__title--center {
        font-size: min(28px, 1.9444444444vw)
    }

    :where(.l-section__title--center)+* {
        margin-top: min(24px, 1.6666666667vw)
    }

    .l-section__item {
        font-size: min(16px, 1.1111111111vw)
    }

    :where(ol)>.l-section__item {
        padding-left: min(12px, .8333333333vw)
    }

    :where(ol)>.l-section__item+.l-section__item {
        margin-top: min(8px, .5555555556vw)
    }

    :where(ol)>.l-section__item::before {
        height: min(6px, .4166666667vw);
        width: min(6px, .4166666667vw)
    }

    :where(ul)>.l-section__item {
        padding-left: min(36px, 2.5vw)
    }

    :where(ul)>.l-section__item+.l-section__item {
        margin-top: min(8px, .5555555556vw)
    }

    :where(ul)>.l-section__item::before {
        font-size: min(20px, 1.3888888889vw);
        min-width: min(32px, 2.2222222222vw)
    }

    .l-section-data {
        gap: min(4px, .2777777778vw) min(10px, .6944444444vw)
    }

    .l-section-data__label {
        font-size: min(16px, 1.1111111111vw)
    }

    .l-section-data__value {
        font-size: min(16px, 1.1111111111vw)
    }

    .l-main {
        padding-top: 0;
        min-height: calc(100vh - 428px);
        margin-top: min(60px, 4.1666666667vw);
    }

    .l-header {
        gap: min(30px, 2.0833333333vw);
        height: min(60px, 4.1666666667vw);
        padding-left: min(40px, 2.7777777778vw);
        padding-right: min(40px, 2.7777777778vw)
    }

    .l-header__logo {
        width: min(98.8px, 6.8611111111vw)
    }

    .l-header__box {
        gap: min(8px, .5555555556vw);
        width: -moz-max-content;
        width: max-content
    }

    .l-header__link {
        font-size: min(12px, .8333333333vw);
        height: min(24px, 1.6666666667vw);
        padding-left: min(16px, 1.1111111111vw);
        padding-right: min(16px, 1.1111111111vw);
        transition: all .3s ease-out;
        width: -moz-max-content;
        width: max-content
    }

    .l-header__link:hover {
        background-color: #fff;
        border-color: #fff;
        color: #000
    }

    .l-header__link:where(.is-trial):hover {
        background-color: #000;
        color: #fff
    }

    .l-header-menu {
        align-items: center;
        display: flex;
        gap: min(30px, 2.0833333333vw);
        justify-content: space-between;
        margin-left: auto;
        width: -moz-max-content;
        width: max-content
    }

    .l-header-menu__button {
        display: none
    }

    .l-header-nav {
        display: flex;
        gap: min(22px, 1.5277777778vw);
        width: -moz-max-content;
        width: max-content
    }

    .l-header-nav::before {
        background-color: #fff;
        content: "";
        height: min(0, 0);
        left: 0;
        position: fixed;
        top: min(0, 0);
        transition: top .3s ease-in-out;
        width: 100vw
    }

    .l-header-nav:has(.is-active)::before {
        height: min(80px, 5.5555555556vw);
        top: min(60px, 4.1666666667vw)
    }

    .l-header-nav__item {
        width: -moz-max-content;
        width: max-content
    }

    .l-header-nav__link {
        font-size: min(13px, .9027777778vw);
        width: -moz-max-content;
        width: max-content
    }

    .l-header-nav__link::before {
        background-color: #fff;
        bottom: -3px;
        content: "";
        display: block;
        height: 1px;
        left: 0;
        position: absolute;
        transition: width .3s ease-in-out;
        width: 0%
    }

    .l-header-nav__link:hover::before {
        width: 100%
    }

    .l-header-nav__link.js-megamenu-trigger {
        padding-right: min(20px, 1.3888888889vw)
    }

    .l-header-nav__link.js-megamenu-trigger::after {
        bottom: 0;
        content: "";
        display: block;
        height: min(10px, .6944444444vw);
        margin-bottom: auto;
        margin-top: auto;
        position: absolute;
        right: 0;
        rotate: 90deg;
        top: 0;
        width: min(10px, .6944444444vw);
        -webkit-mask-position: center;
        mask-position: center;
        -webkit-mask-size: contain;
        mask-size: contain;
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-image: url(../images/common/icon_arrow.svg);
        background-color: #fff;
        mask-image: url(../images/common/icon_arrow.svg);
        transition: rotate .3s ease-in-out
    }

    :where(.l-header-nav__item):has(.is-active) .l-header-nav__link.js-megamenu-trigger::after {
        rotate: -90deg
    }

    .l-header-nav__box {
        bottom: max(-72px, -5vw);
        color: #000;
        display: none;
        font-size: min(13px, .9027777778vw);
        gap: min(20px, 1.3888888889vw);
        left: 0;
        position: absolute;
        width: -moz-max-content;
        width: max-content
    }

    .l-header-nav__box.is-active {
        display: flex
    }

    .l-footer__inner {
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        padding-bottom: min(40px, 2.7777777778vw);
        padding-top: min(40px, 2.7777777778vw);
        width: min(1200px, 83.3333333333vw)
    }

    .l-footer__logo {
        width: min(169.37px, 11.7618055556vw)
    }

    .l-footer__container {
        align-items: flex-start;
        display: flex;
        gap: min(60px, 4.1666666667vw);
        justify-content: space-between;
        width: -moz-max-content;
        width: max-content
    }

    .l-footer__box {
        width: -moz-max-content;
        width: max-content
    }

    .l-footer__subtitle {
        font-size: min(15px, 1.0416666667vw)
    }

    .l-footer__list {
        margin-top: min(12px, .8333333333vw)
    }

    .l-footer__item {
        font-size: min(13px, .9027777778vw)
    }

    .l-footer__item+.l-footer__item {
        margin-top: min(4px, .2777777778vw)
    }

    .l-footer__copyright {
        font-size: min(10px, .6944444444vw);
        margin-top: min(40px, 2.7777777778vw);
        padding-top: min(20px, 1.3888888889vw)
    }

    .l-news__button {
        border-radius: min(6px, .4166666667vw) 0 0 min(6px, .4166666667vw);
        bottom: min(100px, 6.9444444444vw);
        font-size: min(14px, .9722222222vw);
        gap: min(10px, .6944444444vw);
        left: max(-40px, -2.7777777778vw);
        padding-bottom: min(20px, 1.3888888889vw);
        padding-top: min(16px, 1.1111111111vw);
        transition: all .3s ease-out;
        width: min(40px, 2.7777777778vw)
    }

    .l-news__button:hover {
        background-color: #fff;
        color: #000
    }

    .l-news__button:hover::after {
        background-color: #000
    }

    .l-news__button::after {
        height: min(11.5px, .7986111111vw);
        width: min(11.5px, .7986111111vw)
    }

    .l-news__inner {
        width: min(900px, 62.5vw)
    }

    .l-news__slider {
        margin-top: min(60px, 4.1666666667vw)
    }

    .l-news__item {
        width: min(900px, 62.5vw)
    }

    .l-news .splide__pagination {
        gap: min(6px, .4166666667vw);
        margin-top: min(26px, 1.8055555556vw)
    }

    .l-news .splide__pagination li {
        height: min(2px, .1388888889vw);
        width: min(20px, 1.3888888889vw)
    }

    .l-news__arrow {
        background-size: min(8px, .5555555556vw);
        bottom: max(-30px, -2.0833333333vw);
        height: min(40px, 2.7777777778vw);
        width: min(40px, 2.7777777778vw)
    }

    .l-news__arrow.is-prev {
        right: min(50px, 3.4722222222vw)
    }

    .l-search {
        padding-bottom: min(120px, 8.3333333333vw);
        padding-top: min(100px, 6.9444444444vw)
    }

    .l-search__title {
        font-size: min(40px, 2.7777777778vw);
        gap: min(8px, .5555555556vw)
    }

    .l-search__title-caption {
        font-size: min(16px, 1.1111111111vw)
    }

    .l-search__list {
        gap: min(20px, 1.3888888889vw);
        margin-top: min(40px, 2.7777777778vw);
        max-width: 100%;
        width: -moz-max-content;
        width: max-content
    }

    .l-search__item {
        width: min(285px, 19.7916666667vw)
    }

    .l-search__item-title {
        font-size: min(16px, 1.1111111111vw)
    }

    .l-search__select {
        margin-top: min(10px, .6944444444vw)
    }

    .l-search__select::after {
        height: min(10px, .6944444444vw);
        right: min(14px, .9722222222vw);
        width: min(10px, .6944444444vw)
    }

    .l-search__select select {
        border-radius: min(6px, .4166666667vw);
        font-size: min(16px, 1.1111111111vw);
        padding: min(10px, .6944444444vw) min(20px, 1.3888888889vw)
    }

    .l-search .c-button {
        margin-top: min(44px, 3.0555555556vw)
    }

    .l-search-option {
        margin-top: min(48px, 3.3333333333vw)
    }

    .l-search-option__title {
        font-size: min(20px, 1.3888888889vw)
    }

    .l-search-option__list {
        gap: min(8px, .5555555556vw) min(30px, 2.0833333333vw);
        margin-top: min(20px, 1.3888888889vw);
        width: min(740px, 51.3888888889vw)
    }

    .l-search-option__label {
        font-size: min(16px, 1.1111111111vw);
        padding-left: min(30px, 2.0833333333vw)
    }

    .l-search-option__label::after,
    .l-search-option__label::before {
        height: min(20px, 1.3888888889vw);
        width: min(20px, 1.3888888889vw)
    }

    .l-search-option__label::before {
        border-radius: min(3px, .2083333333vw)
    }

    .l-search-option__label::after {
        -webkit-mask-size: min(13px, .9027777778vw);
        mask-size: min(13px, .9027777778vw)
    }

    .l-case {
        padding-bottom: min(120px, 8.3333333333vw);
        padding-top: min(103px, 7.1527777778vw)
    }

    .l-case__subtitle {
        background: linear-gradient(135deg, #222 0, #222 50%, #000 50.1%, #000 100%);
        font-size: min(24px, 1.6666666667vw);
        margin-top: min(50px, 3.4722222222vw);
        padding: min(12px, .8333333333vw)
    }

    .l-case__list {
        background: linear-gradient(135deg, #222 0, #222 50%, #000 50.1%, #000 100%);
        gap: min(7px, .4861111111vw) min(79px, 5.4861111111vw);
        margin-top: min(50px, 3.4722222222vw);
        padding: min(12px, .8333333333vw) min(100px, 6.9444444444vw)
    }

    .l-case__item {
        font-size: min(24px, 1.6666666667vw);
        gap: min(24px, 1.6666666667vw);
        width: min(370px, 25.6944444444vw)
    }

    .l-case__item span+span::before {
        left: max(-12px, -.8333333333vw)
    }

    .l-case__description {
        font-size: min(16px, 1.1111111111vw);
        margin-top: min(22px, 1.5277777778vw)
    }

    .l-case .c-button {
        margin-top: min(42px, 2.9166666667vw)
    }

    .l-case-list {
        gap: min(20px, 1.3888888889vw)
    }

    .l-case-list__item {
        border-radius: min(6px, .4166666667vw);
        padding: min(29px, 2.0138888889vw) min(24px, 1.6666666667vw) min(26px, 1.8055555556vw);
        width: min(285px, 19.7916666667vw)
    }

    .l-case-list__item::before {
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain;
        content: "";
        display: block;
        margin: auto
    }

    .l-case-list__item.is-item1::before {
        background-image: url(../images/support/case_icon1.svg)
    }

    .l-case-list__item.is-item2::before {
        background-image: url(../images/support/case_icon2.svg)
    }

    .l-case-list__item.is-item3::before {
        background-image: url(../images/support/case_icon3.svg)
    }

    .l-case-list__item.is-item4::before {
        background-image: url(../images/support/case_icon4.svg)
    }

    .l-case-list__title {
        font-size: min(24px, 1.6666666667vw);
        margin-top: min(10px, .6944444444vw)
    }

    .l-case-list__subtitle {
        border-radius: min(6px, .4166666667vw);
        font-size: min(20px, 1.3888888889vw);
        gap: min(24px, 1.6666666667vw);
        margin-top: min(14px, .9722222222vw);
        padding: min(5px, .3472222222vw)
    }

    .l-case-list__subtitle span+span::before {
        left: max(-15px, -1.0416666667vw)
    }

    .l-case-list+.c-button {
        margin-top: min(50px, 3.4722222222vw)
    }

    .l-sort {
        gap: min(30px, 2.0833333333vw)
    }

    .l-sort__number {
        font-size: min(16px, 1.1111111111vw)
    }

    .l-sort__select {
        width: min(285px, 19.7916666667vw)
    }

    .l-sort__select::after {
        height: min(10px, .6944444444vw);
        right: min(14px, .9722222222vw);
        width: min(10px, .6944444444vw)
    }

    .l-sort select {
        border-radius: min(6px, .4166666667vw);
        font-size: min(16px, 1.1111111111vw);
        padding: min(10px, .6944444444vw) min(20px, 1.3888888889vw)
    }

    .l-sort__list {
        flex-wrap: wrap;
        gap: min(20px, 1.3888888889vw);
        width: 100%
    }

    .l-sort__item {
        width: min(386px, 26.8055555556vw)
    }

    .l-sort__link::after,
    .l-sort__link::before {
        height: min(40px, 2.7777777778vw);
        transition: background-color .3s ease-out;
        width: min(40px, 2.7777777778vw)
    }

    .l-sort__link::after {
        -webkit-mask-size: min(8px, .5555555556vw);
        mask-size: min(8px, .5555555556vw)
    }

    .l-sort__link:hover::before {
        background-color: #000
    }

    .l-sort__link:hover::after {
        background-color: #fff
    }

    .l-sort__link {
        border-radius: min(6px, .4166666667vw);
        min-height: min(330px, 22.9166666667vw)
    }

    .l-sort__link::after,
    .l-sort__link::before {
        bottom: min(15px, 1.0416666667vw);
        right: min(20px, 1.3888888889vw)
    }

    .l-sort__img {
        height: min(90px, 6.25vw)
    }

    .l-sort__box {
        padding: min(30px, 2.0833333333vw) min(30px, 2.0833333333vw) min(40px, 2.7777777778vw)
    }

    .l-sort__subtitle {
        font-size: min(20px, 1.3888888889vw);
        margin-top: min(16px, 1.1111111111vw);
        width: min(326px, 22.6388888889vw)
    }

    .l-sort__tag-list {
        gap: min(8px, .5555555556vw);
        margin-top: min(30px, 2.0833333333vw);
        width: min(326px, 22.6388888889vw)
    }

    .l-sort__tag {
        font-size: min(12px, .8333333333vw);
        padding: min(8px, .5555555556vw)
    }

    .l-sort__caption {
        font-size: min(12px, .8333333333vw);
        margin-top: min(16px, 1.1111111111vw)
    }

    .l-card {
        gap: min(40px, 2.7777777778vw) min(20px, 1.3888888889vw);
        margin-top: min(50px, 3.4722222222vw)
    }

    .l-card__item {
        border-radius: min(6px, .4166666667vw);
        flex: 1;
        min-width: min(285px, 19.7916666667vw);
        padding: min(30px, 2.0833333333vw) min(40px, 2.7777777778vw)
    }

    .l-card__box {
        gap: min(20px, 1.3888888889vw) min(40px, 2.7777777778vw);
        margin-bottom: min(20px, 1.3888888889vw)
    }

    :where(.l-card__box) .l-card__img {
        width: min(100px, 6.9444444444vw)
    }

    :where(.l-card__box) .l-card__title {
        margin-top: 0
    }

    .l-card__inner {
        margin-top: min(8px, .5555555556vw)
    }

    .l-card__inner>* {
        margin-top: min(8px, .5555555556vw)
    }

    .l-card__inner+.l-card__inner {
        margin-top: min(15px, 1.0416666667vw)
    }

    .l-card__img {
        width: min(48px, 3.3333333333vw)
    }

    .l-card__box .l-card__img {
        width: min(100px, 6.9444444444vw)
    }

    .l-card__title {
        font-size: min(24px, 1.6666666667vw);
        margin-top: min(8px, .5555555556vw)
    }

    :where(.is-center) .l-card__title {
        margin-top: min(10px, .6944444444vw)
    }

    .l-card__subtitle {
        font-size: min(16px, 1.1111111111vw)
    }

    .l-card__description {
        font-size: min(14px, .9722222222vw);
        margin-top: min(3px, .2083333333vw)
    }

    :where(.l-card__box)+.l-card__description {
        font-size: min(16px, 1.1111111111vw)
    }

    :where(.is-center) .l-card__description {
        margin-top: min(10px, .6944444444vw)
    }

    .l-card .c-button {
        margin-left: 0;
        margin-top: min(20px, 1.3888888889vw)
    }

    .l-card-task {
        gap: min(20px, 1.3888888889vw) min(40px, 2.7777777778vw);
        padding-left: min(72px, 5vw);
        width: min(490px, 34.0277777778vw)
    }

    .l-card__item:has(.l-card-task) {
        padding: min(32px, 2.2222222222vw) min(20px, 1.3888888889vw);
        width: min(590px, 40.9722222222vw)
    }

    .l-card__item:has(.l-card-task) .l-card__description {
        font-size: min(16px, 1.1111111111vw);
        margin-top: min(9px, .625vw)
    }

    .l-card-task__img {
        width: min(48px, 3.3333333333vw)
    }

    .l-card-task__subtitle {
        border-radius: min(4px, .2777777778vw) min(4px, .2777777778vw) 0 0;
        font-size: min(14px, .9722222222vw);
        height: min(39px, 2.7083333333vw)
    }

    .l-card-task+.l-card-task__subtitle {
        margin-top: min(58px, 4.0277777778vw)
    }

    .l-card-task+.l-card-task__subtitle::before {
        border-width: min(22px, 1.5277777778vw) min(34px, 2.3611111111vw) 0;
        top: max(-38px, -2.6388888889vw)
    }

    .l-card-task__box {
        border-radius: 0 0 min(4px, .2777777778vw) min(4px, .2777777778vw);
        padding: min(20px, 1.3888888889vw) min(30px, 2.0833333333vw) min(20px, 1.3888888889vw) min(102px, 7.0833333333vw)
    }

    .l-card-task__box .l-card-task__img {
        left: min(30px, 2.0833333333vw);
        top: min(20px, 1.3888888889vw)
    }

    .l-card-task__title {
        font-size: min(24px, 1.6666666667vw)
    }

    .l-card-task__description {
        font-size: min(16px, 1.1111111111vw);
        margin-top: min(9px, .625vw)
    }

    .l-card-banner {
        margin-top: min(64px, 4.4444444444vw);
        width: min(1000px, 69.4444444444vw)
    }

    .l-card-banner__item {
        border-radius: min(6px, .4166666667vw);
        display: flex;
        flex-direction: column;
        height: min(240px, 16.6666666667vw);
        justify-content: center;
        padding: min(50px, 3.4722222222vw) min(64px, 4.4444444444vw);
        width: min(632px, 43.8888888889vw)
    }

    .l-card-banner__item+.l-card-banner__item {
        margin-top: min(20px, 1.3888888889vw)
    }

    .l-card-banner__subtitle {
        font-size: min(24px, 1.6666666667vw)
    }

    .l-card-banner__text {
        font-size: min(16px, 1.1111111111vw);
        margin-top: min(4px, .2777777778vw)
    }

    .l-card-banner__img {
        border-radius: min(6px, .4166666667vw);
        height: 100%;
        position: absolute;
        right: max(-368px, -25.5555555556vw);
        top: 0;
        width: min(360px, 25vw)
    }

    .l-card-banner__img img {
        height: 100%;
        transition: scale .3s ease-out;
        -o-object-fit: cover;
        object-fit: cover
    }

    .l-card-banner__img:hover img,
    :where(.l-card-banner__item:has(.c-button__link--fill:hover)) .l-card-banner__img img {
        scale: 1.05
    }

    .l-card-banner .c-button {
        margin-left: 0;
        margin-top: min(20px, 1.3888888889vw)
    }

    .l-card-banner__item:has(.l-card-banner__img:hover) .c-button__link--fill {
        background-color: #fff;
        border-color: #000;
        color: #000
    }

    .l-card-banner__item:has(.l-card-banner__img:hover) .c-button__link--fill::before {
        background-color: #000
    }

    .l-card-banner__item:has(.l-card-banner__img:hover) .c-button__link--fill::after {
        background-color: #000
    }

    .l-card-review {
        flex-direction: column;
        gap: min(9px, .625vw);
        justify-content: center;
        margin-bottom: min(20px, 1.3888888889vw);
        min-height: min(100px, 6.9444444444vw);
        padding-left: min(140px, 9.7222222222vw)
    }

    .l-card__item:has(.l-card-review) {
        width: min(590px, 40.9722222222vw)
    }

    :where(.l-card__item:has(.l-card-review)) .l-card__description {
        font-size: min(16px, 1.1111111111vw);
        margin-top: min(9px, .625vw)
    }

    .l-card-review__img {
        bottom: 0;
        left: 0;
        margin-bottom: auto;
        margin-top: auto;
        position: absolute;
        top: 0;
        width: min(100px, 6.9444444444vw)
    }

    .l-card-review__box {
        gap: min(9px, .625vw)
    }

    .l-card-review__title {
        font-size: min(16px, 1.1111111111vw)
    }

    .l-card-review__star {
        background-position: 0 center, min(18px, 1.25vw) center, min(36px, 2.5vw) center, min(54px, 3.75vw) center, min(72px, 5vw) center;
        height: min(15.29px, 1.0618055556vw)
    }

    .l-card-review__list {
        gap: min(8px, .5555555556vw)
    }

    .l-card-review__item {
        font-size: min(14px, .9722222222vw);
        padding-left: min(10px, .6944444444vw);
        padding-right: min(10px, .6944444444vw)
    }

    .l-card__item:has(.l-card-link) {
        width: min(386px, 26.8055555556vw)
    }

    a:hover .l-card-link__img img {
        scale: 1.05
    }

    .l-card-link__box {
        padding: min(30px, 2.0833333333vw) min(30px, 2.0833333333vw) min(15px, 1.0416666667vw)
    }

    .l-card-link__tag-list {
        gap: min(8px, .5555555556vw);
        margin-bottom: min(16px, 1.1111111111vw)
    }

    .l-card-link__tag {
        font-size: min(12px, .8333333333vw);
        padding: min(5px, .3472222222vw) min(8px, .5555555556vw)
    }

    .l-card-link__subtitle {
        font-size: min(20px, 1.3888888889vw);
        margin-top: min(8px, .5555555556vw)
    }

    .l-card-link__title {
        font-size: min(24px, 1.6666666667vw);
        margin-top: min(8px, .5555555556vw)
    }

    .l-card-link__description {
        font-size: min(14px, .9722222222vw);
        margin-top: min(8px, .5555555556vw)
    }

    .l-card-link__button::after,
    .l-card-link__button::before {
        height: min(40px, 2.7777777778vw);
        transition: background-color .3s ease-out;
        width: min(40px, 2.7777777778vw)
    }

    .l-card-link__button::after {
        -webkit-mask-size: min(8px, .5555555556vw);
        mask-size: min(8px, .5555555556vw)
    }

    .l-card-link__button:hover::before {
        background-color: #000
    }

    .l-card-link__button:hover::after {
        background-color: #fff
    }

    .l-card-link__button {
        margin-top: min(21px, 1.4583333333vw);
        min-height: min(40px, 2.7777777778vw);
        padding-right: min(55px, 3.8194444444vw)
    }

    .l-card-link__button::after,
    .l-card-link__button::before {
        height: min(40px, 2.7777777778vw);
        width: min(40px, 2.7777777778vw)
    }

    a:hover .l-card-link__button::before {
        background-color: #000
    }

    a:hover .l-card-link__button::after {
        background-color: #fff
    }

    .l-card-scroll .l-card__description {
        margin-top: min(12px, .8333333333vw)
    }

    .l-card-section {
        border-radius: min(6px, .4166666667vw)
    }

    .l-card-section__title {
        font-size: min(24px, 1.6666666667vw);
        padding: min(15px, 1.0416666667vw) min(50px, 3.4722222222vw)
    }

    .l-card-section__list {
        padding: min(20px, 1.3888888889vw) min(50px, 3.4722222222vw)
    }

    .l-card-section__item {
        gap: min(20px, 1.3888888889vw)
    }

    .l-card-section__item+.l-card-section__item {
        margin-top: min(8px, .5555555556vw)
    }

    .l-card-section__subtitle {
        font-size: min(14px, .9722222222vw);
        width: min(107px, 7.4305555556vw)
    }

    .l-card-section__text {
        flex: 1;
        font-size: min(16px, 1.1111111111vw);
        translate: 0 min(1px, .0694444444vw)
    }

    .l-card-list {
        border-radius: min(6px, .4166666667vw);
        padding: min(40px, 2.7777777778vw)
    }

    .l-card-list__item {
        font-size: min(16px, 1.1111111111vw)
    }

    .l-card-list__item::before {
        height: min(6px, .4166666667vw);
        width: min(6px, .4166666667vw)
    }

    .l-card-list__item+.l-card-list__item {
        margin-top: min(10px, .6944444444vw)
    }

    .l-card-check {
        flex-direction: row;
        gap: min(40px, 2.7777777778vw)
    }

    .l-card-check__card {
        gap: min(20px, 1.3888888889vw);
        width: min(810px, 56.25vw)
    }

    .l-card-check__card-item {
        border-radius: min(6px, .4166666667vw);
        gap: min(8px, .5555555556vw);
        height: min(146px, 10.1388888889vw);
        width: min(146px, 10.1388888889vw)
    }

    .l-card-check__card-img {
        width: min(48px, 3.3333333333vw)
    }

    .l-card-check__card-text {
        font-size: min(20px, 1.3888888889vw)
    }

    .l-card-check__list {
        width: min(350px, 24.3055555556vw)
    }

    .l-card-check__item {
        border-radius: min(4px, .2777777778vw);
        font-size: min(15px, 1.0416666667vw);
        gap: min(10px, .6944444444vw);
        height: min(48px, 3.3333333333vw);
        padding-left: min(20px, 1.3888888889vw);
        padding-right: min(20px, 1.3888888889vw)
    }

    .l-card-check__item+.l-card-check__item {
        margin-top: min(8px, .5555555556vw)
    }

    .l-card-check__item::before {
        height: min(19.2px, 1.3333333333vw);
        width: min(19.2px, 1.3333333333vw)
    }

    .l-pickup {
        padding-bottom: min(120px, 8.3333333333vw);
        padding-top: min(103px, 7.1527777778vw)
    }

    .l-pickup__column {
        display: flex;
        gap: min(59px, 4.0972222222vw)
    }

    .l-pickup__description {
        flex: 1;
        font-size: min(16px, 1.1111111111vw);
        margin-top: auto
    }

    .l-pickup__list {
        gap: min(22px, 1.5277777778vw);
        margin-top: min(56px, 3.8888888889vw);
        width: 100%
    }

    .l-pickup__item {
        display: flex;
        width: min(386px, 26.8055555556vw)
    }

    .l-pickup__link::after,
    .l-pickup__link::before {
        height: min(40px, 2.7777777778vw);
        transition: background-color .3s ease-out;
        width: min(40px, 2.7777777778vw)
    }

    .l-pickup__link::after {
        -webkit-mask-size: min(8px, .5555555556vw);
        mask-size: min(8px, .5555555556vw)
    }

    .l-pickup__link:hover::before {
        background-color: #000
    }

    .l-pickup__link:hover::after {
        background-color: #fff
    }

    .l-pickup__link {
        border-radius: min(6px, .4166666667vw);
        padding-bottom: min(30px, 2.0833333333vw)
    }

    .l-pickup__link::after,
    .l-pickup__link::before {
        bottom: min(15px, 1.0416666667vw);
        right: min(15px, 1.0416666667vw)
    }

    .l-pickup__img {
        background-position: center;
        height: min(257px, 17.8472222222vw);
        transition: background-size .3s ease-out
    }

    .p-top-case__link:hover .l-pickup__img {
        background-size: 105%
    }

    .l-pickup__subtitle {
        font-size: min(18px, 1.25vw);
        margin-bottom: auto;
        margin-top: min(30px, 2.0833333333vw);
        width: min(326px, 22.6388888889vw)
    }

    .l-pickup__text {
        font-size: min(14px, .9722222222vw);
        margin-top: min(8px, .5555555556vw);
        width: min(326px, 22.6388888889vw)
    }

    .l-pickup__tag-list {
        margin-top: min(16px, 1.1111111111vw);
        width: min(326px, 22.6388888889vw)
    }

    .l-pickup__tag {
        font-size: min(12px, .8333333333vw);
        padding: min(8px, .5555555556vw)
    }

    .l-pickup .c-button {
        margin-top: min(50px, 3.4722222222vw)
    }

    .l-faq__container {
        padding: min(110px, 7.6388888889vw) 0 min(120px, 8.3333333333vw)
    }

    .l-faq__item {
        padding: min(30px, 2.0833333333vw) 0
    }

    .l-faq__q {
        font-size: 24;
        gap: min(24px, 1.6666666667vw);
        grid-template-columns: min(26px, 1.8055555556vw) 1fr
    }

    .l-faq__q:before {
        font-size: min(32px, 2.2222222222vw)
    }

    .l-faq__heading--lv3 {
        font-size: min(24px, 1.6666666667vw);
        margin-bottom: 0
    }

    .l-faq__a {
        font-size: 24;
        gap: min(24px, 1.6666666667vw);
        grid-template-columns: min(26px, 1.8055555556vw) 1fr;
        margin-top: min(15px, 1.0416666667vw);
        padding-left: min(50px, 3.4722222222vw)
    }

    .l-faq__a:before {
        font-size: min(32px, 2.2222222222vw)
    }

    .l-faq__answer {
        font-size: min(16px, 1.1111111111vw)
    }

    .l-faq__answer a {
        transition: opacity .3s ease-out
    }

    .l-faq__answer a:hover {
        opacity: .4
    }

    .l-faq__list--tag {
        margin-top: min(10px, .6944444444vw)
    }

    .l-faq__tag {
        font-size: min(12px, .8333333333vw);
        padding: min(8px, .5555555556vw)
    }

    .l-faq__subtitle {
        width: min(160px, 11.1111111111vw)
    }

    .l-faq .c-button {
        margin-top: min(50px, 3.4722222222vw)
    }

    .l-faq .js-accordion-trigger {
        padding-right: min(84px, 5.8333333333vw)
    }

    .l-faq .js-accordion-trigger::after,
    .l-faq .js-accordion-trigger::before {
        right: min(42px, 2.9166666667vw);
        width: min(30px, 2.0833333333vw)
    }

    .l-share-aside {
        gap: min(11px, .7638888889vw);
        margin-top: min(50px, 3.4722222222vw)
    }

    .l-share-aside__title {
        font-size: min(14px, .9722222222vw);
        width: -moz-max-content;
        width: max-content
    }

    .l-share-aside__list {
        gap: min(14px, .9722222222vw)
    }

    .l-share-aside__item {
        height: min(40px, 2.7777777778vw);
        width: min(40px, 2.7777777778vw)
    }

    .l-start {
        padding-bottom: min(110px, 7.6388888889vw);
        padding-top: min(103px, 7.1527777778vw)
    }

    .l-start__inner {
        width: min(1200px, 83.3333333333vw)
    }

    .l-start__title {
        font-size: min(40px, 2.7777777778vw)
    }

    .l-start__text {
        font-size: min(22px, 1.5277777778vw);
        line-height: 2;
        margin-top: min(10px, .6944444444vw)
    }

    .l-start__list {
        margin-top: min(37px, 2.5694444444vw)
    }

    .p-top__subtitle {
        font-size: min(30px, 2.0833333333vw)
    }

    .p-top__subtitle strong {
        font-size: min(50px, 3.4722222222vw);
        line-height: .85
    }

    .p-top__description {
        font-size: min(16px, 1.1111111111vw);
        margin-top: min(20px, 1.3888888889vw);
        text-align: center
    }

    .p-top__caption {
        font-size: min(10px, .6944444444vw)
    }

    .p-top__container.is-container1 {
        background-image: url(../images/index/container1_bg1.svg), url(../images/index/container1_bg2.svg), url(../images/index/container1_bg3.svg), url(../images/index/container1_bg4.svg);
        background-position: left top, right max(-440px, -30.5555555556vw), right bottom, right 0 bottom min(327px, 22.7083333333vw);
        background-repeat: no-repeat;
        background-size: min(532px, 36.9444444444vw), 100% min(833px, 57.8472222222vw), 100% min(703px, 48.8194444444vw), 100% min(746px, 51.8055555556vw);
        padding-bottom: min(117px, 8.125vw);
        padding-top: min(140px, 9.7222222222vw)
    }

    .p-top__container.is-container2 {
        background-image: url(../images/index/container2_bg1.svg), url(../images/index/container2_bg2.svg);
        background-position: right top, left bottom;
        background-repeat: no-repeat;
        background-size: min(611px, 42.4305555556vw), min(738px, 51.25vw);
        padding-bottom: min(129px, 8.9583333333vw);
        padding-top: min(110px, 7.6388888889vw)
    }

    .p-top__container.is-container3 {
        background-image: url(../images/index/container3_bg1.svg), url(../images/index/container3_bg2.svg);
        background-position: right min(146px, 10.1388888889vw), left 0 bottom min(138px, 9.5833333333vw);
        background-repeat: no-repeat;
        background-size: 100% min(414px, 28.75vw), 100% min(849px, 58.9583333333vw);
        padding-bottom: min(120px, 8.3333333333vw);
        padding-top: min(115px, 7.9861111111vw)
    }

    .p-top__container.is-container4 {
        background-image: url(../images/index/container4_bg1.svg), url(../images/index/container4_bg2.svg), url(../images/index/container4_bg3.svg), url(../images/index/container4_bg4.svg);
        background-position: left top, right min(897px, 62.2916666667vw), left min(1140px, 79.1666666667vw), left 0 bottom min(91px, 6.3194444444vw);
        background-repeat: no-repeat;
        background-size: 100% min(697px, 48.4027777778vw), min(527px, 36.5972222222vw), 100% min(967px, 67.1527777778vw), min(233px, 16.1805555556vw);
        padding-bottom: min(120px, 8.3333333333vw);
        padding-top: min(115px, 7.9861111111vw)
    }

    .p-top-kv {
        background-image: url(../images/index/kv_bg.jpg);
        height: min(560px, 38.8888888889vw);
        padding-top: min(21px, 1.4583333333vw)
    }

    .p-top-kv__title {
        width: min(185.4px, 12.875vw)
    }

    .p-top-kv__description {
        font-size: min(40px, 2.7777777778vw);
        margin-top: min(32.21px, 2.2368055556vw)
    }

    .p-top-kv__text {
        font-size: min(22px, 1.5277777778vw);
        line-height: 2;
        margin-top: min(8px, .5555555556vw)
    }

    .p-top-kv .c-button {
        margin-top: min(37px, 2.5694444444vw)
    }

    .p-top-record {
        width: min(1200px, 83.3333333333vw)
    }

    .p-top-record__column {
        display: flex;
        gap: min(90px, 6.25vw)
    }

    .p-top-record__box {
        width: min(380px, 26.3888888889vw)
    }

    .p-top-record .p-top__text {
        margin-top: min(33px, 2.2916666667vw)
    }

    .p-top-record .p-top__caption {
        margin-top: min(20px, 1.3888888889vw)
    }

    .p-top-record__button-list {
        gap: min(10px, .6944444444vw);
        margin-top: min(42px, 2.9166666667vw);
        width: min(730px, 50.6944444444vw)
    }

    .p-top-record__button {
        height: min(346px, 24.0277777778vw);
        width: min(360px, 25vw)
    }

    .p-top-record__button a::after,
    .p-top-record__button a::before {
        height: min(40px, 2.7777777778vw);
        transition: background-color .3s ease-out;
        width: min(40px, 2.7777777778vw)
    }

    .p-top-record__button a::after {
        -webkit-mask-size: min(8px, .5555555556vw);
        mask-size: min(8px, .5555555556vw)
    }

    .p-top-record__button a:hover::before {
        background-color: #000
    }

    .p-top-record__button a:hover::after {
        background-color: #fff
    }

    .p-top-record__button a {
        border-radius: min(6px, .4166666667vw);
        padding-top: min(48px, 3.3333333333vw)
    }

    .p-top-record__button a::after,
    .p-top-record__button a::before {
        bottom: min(17px, 1.1805555556vw);
        right: min(17px, 1.1805555556vw)
    }

    .p-top-record__button-text {
        font-size: min(20px, 1.3888888889vw)
    }

    .p-top-record__button-img {
        margin-top: min(31px, 2.1527777778vw);
        transition: scale .3s ease-out
    }

    a:hover .p-top-record__button-img {
        scale: 1.05
    }

    .is-button1 .p-top-record__button-img {
        width: min(153px, 10.625vw)
    }

    .is-button2 .p-top-record__button-img {
        width: min(220px, 15.2777777778vw)
    }

    .p-top-record__list {
        border-radius: min(6px, .4166666667vw);
        gap: min(34px, 2.3611111111vw) min(80px, 5.5555555556vw);
        margin-top: min(100px, 6.9444444444vw);
        padding: min(52px, 3.6111111111vw) min(120px, 8.3333333333vw)
    }

    .p-top-record__item {
        width: min(180px, 12.5vw)
    }

    .p-top-record .c-button {
        margin-top: min(40px, 2.7777777778vw)
    }

    .p-top-features {
        display: grid;
        grid-template-columns: 1fr auto;
        grid-template-rows: auto 1fr;
        margin-top: min(100px, 6.9444444444vw);
        padding-top: min(90px, 6.25vw)
    }

    .p-top-features .c-title {
        grid-column: 1/2;
        grid-row: 1/2
    }

    .p-top-features .p-top__text {
        margin-top: min(17px, 1.1805555556vw)
    }

    .p-top-features__list {
        flex-direction: row;
        flex-wrap: wrap;
        gap: min(8px, .5555555556vw);
        grid-column: 1/3;
        grid-row: 2/3;
        margin-top: min(55px, 3.8194444444vw)
    }

    .p-top-features__item {
        border-radius: min(6px, .4166666667vw);
        padding: min(85px, 5.9027777778vw) min(40px, 2.7777777778vw) min(22px, 1.5277777778vw) min(40px, 2.7777777778vw);
        width: min(394px, 27.3611111111vw)
    }

    .p-top-features__item::before {
        height: min(48px, 3.3333333333vw);
        left: min(33px, 2.2916666667vw);
        top: min(25px, 1.7361111111vw);
        width: min(48px, 3.3333333333vw)
    }

    .p-top-features__subtitle {
        font-size: min(24px, 1.6666666667vw)
    }

    .p-top-features__text {
        font-size: min(14px, .9722222222vw);
        margin-top: min(3px, .2083333333vw)
    }

    .p-top-features .c-button {
        grid-column: 2/3;
        grid-row: 1/2;
        height: -moz-max-content;
        height: max-content;
        margin-bottom: auto;
        margin-right: min(17px, 1.1805555556vw);
        margin-top: auto
    }

    .p-top-challenges {
        background-image: url(../images/index/challenges_bg.jpg);
        padding-bottom: min(120px, 8.3333333333vw);
        padding-top: min(103px, 7.1527777778vw)
    }

    .p-top-challenges__list {
        display: flex;
        gap: min(20px, 1.3888888889vw);
        margin-top: min(53px, 3.6805555556vw)
    }

    .p-top-challenges__item {
        border-radius: min(6px, .4166666667vw);
        display: flex;
        flex-direction: column;
        gap: min(12px, .8333333333vw);
        height: min(335px, 23.2638888889vw);
        padding: min(35px, 2.4305555556vw) min(30px, 2.0833333333vw) min(31px, 2.1527777778vw);
        width: min(285px, 19.7916666667vw)
    }

    .p-top-challenges__item::after {
        height: min(48px, 3.3333333333vw);
        width: min(48px, 3.3333333333vw)
    }

    .p-top-challenges__subtitle {
        font-size: min(20px, 1.3888888889vw)
    }

    .p-top-challenges__text {
        font-size: min(14px, .9722222222vw)
    }

    .p-top-step__list {
        display: flex;
        margin-top: min(52px, 3.6111111111vw)
    }

    .p-top-step__item {
        height: min(316px, 21.9444444444vw);
        padding: min(29px, 2.0138888889vw) min(17px, 1.1805555556vw) min(35px, 2.4305555556vw);
        width: 33.3333333333%
    }

    .p-top-step__item::before {
        font-size: min(14px, .9722222222vw);
        padding: min(4px, .2777777778vw) min(18px, 1.25vw) min(5px, .3472222222vw)
    }

    .p-top-step__nth {
        font-size: min(30px, 2.0833333333vw)
    }

    .p-top-step__subtitle {
        font-size: min(24px, 1.6666666667vw)
    }

    .p-top-step__text {
        font-size: min(14px, .9722222222vw);
        margin-top: min(6px, .4166666667vw)
    }

    .p-top-step__box {
        gap: min(5px, .3472222222vw);
        margin-top: min(14px, .9722222222vw)
    }

    .p-top-step__caption {
        font-size: min(14px, .9722222222vw);
        height: min(100px, 6.9444444444vw);
        width: min(100px, 6.9444444444vw)
    }

    .p-top-step .c-button {
        margin-top: min(40px, 2.7777777778vw)
    }

    .p-top-scene {
        padding-bottom: min(118px, 8.1944444444vw);
        padding-top: min(106px, 7.3611111111vw)
    }

    .p-top-scene__title {
        grid-column: 1/2;
        grid-row: 1/2
    }

    .p-top-scene .c-wrap-inner {
        align-items: center;
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto 1fr
    }

    .p-top-scene .c-button {
        grid-column: 2/3;
        grid-row: 1/2;
        height: -moz-max-content;
        height: max-content;
        margin-right: min(17px, 1.1805555556vw);
        margin-top: min(10px, .6944444444vw)
    }

    .p-top-scene__container {
        grid-column: 1/3;
        grid-row: 2/3;
        margin-top: min(57px, 3.9583333333vw)
    }

    .p-top-scene__tab-list {
        gap: min(5px, .3472222222vw)
    }

    .p-top-scene__tab {
        border-radius: min(6px, .4166666667vw);
        font-size: min(14px, .9722222222vw);
        height: min(34px, 2.3611111111vw);
        width: min(107px, 7.4305555556vw)
    }

    .p-top-scene__tab:hover {
        background-color: #fff;
        color: #000
    }

    .p-top-scene__content {
        margin-top: min(20px, 1.3888888889vw)
    }

    .p-top-scene__box {
        border-radius: min(6px, .4166666667vw)
    }

    .p-top-scene__box.is-active {
        transform: translateY(min(20px, 1.3888888889vw))
    }

    .p-top-scene__inner {
        flex: 1;
        padding: min(40px, 2.7777777778vw) min(72px, 5vw) min(50px, 3.4722222222vw)
    }

    .p-top-scene__nth {
        font-size: min(14px, .9722222222vw);
        left: min(29px, 2.0138888889vw);
        position: absolute;
        rotate: 90deg;
        top: min(34px, 2.3611111111vw);
        transform-origin: left bottom
    }

    .p-top-scene__subtitle {
        font-size: min(30px, 2.0833333333vw)
    }

    .p-top-scene__discription {
        font-size: min(20px, 1.3888888889vw);
        margin-top: min(14px, .9722222222vw)
    }

    .p-top-scene__list {
        gap: min(8px, .5555555556vw);
        margin-top: min(16px, 1.1111111111vw);
        width: min(550px, 38.1944444444vw)
    }

    .p-top-scene__item {
        font-size: min(14px, .9722222222vw);
        padding-left: min(20px, 1.3888888889vw);
        padding-right: min(10px, .6944444444vw)
    }

    .p-top-scene__summary {
        border-radius: min(6px, .4166666667vw);
        font-size: min(20px, 1.3888888889vw);
        gap: min(30px, 2.0833333333vw);
        justify-content: flex-start;
        margin-top: min(26px, 1.8055555556vw);
        padding: min(5px, .3472222222vw) min(20px, 1.3888888889vw);
        width: -moz-max-content;
        width: max-content
    }

    .p-top-scene__summary-text+.p-top-scene__summary-text::before {
        left: max(-15px, -1.0416666667vw)
    }

    .p-top-scene__aside {
        align-items: center;
        display: flex;
        flex-direction: column;
        justify-content: center;
        width: min(334px, 23.1944444444vw)
    }

    .p-top-scene__aside-list {
        gap: min(20px, 1.3888888889vw);
        min-width: min(260px, 18.0555555556vw)
    }

    .p-top-scene__aside-title {
        font-size: min(12px, .8333333333vw);
        padding: min(8px, .5555555556vw)
    }

    .p-top-scene__aside-text {
        font-size: min(14px, .9722222222vw);
        margin-top: min(3px, .2083333333vw)
    }

    .p-top-key4 {
        display: flex;
        justify-content: space-between
    }

    .p-top-key4__list {
        display: flex;
        flex-wrap: wrap;
        gap: min(63px, 4.375vw) min(100px, 6.9444444444vw);
        margin-top: min(35px, 2.4305555556vw);
        width: min(950px, 65.9722222222vw)
    }

    .p-top-key4__item {
        display: block;
        width: min(320px, 22.2222222222vw)
    }

    .p-top-key4__item.is-item2 {
        margin-right: auto
    }

    .p-top-key4__item.is-item3 {
        margin-left: auto
    }

    .p-top-key4__item::before {
        height: min(320px, 22.2222222222vw);
        top: max(-44px, -3.0555555556vw);
        width: min(320px, 22.2222222222vw)
    }

    .p-top-key4__nth {
        font-size: min(12px, .8333333333vw);
        padding: min(5px, .3472222222vw) min(8px, .5555555556vw)
    }

    .p-top-key4__img {
        height: min(48px, 3.3333333333vw);
        margin-top: min(20px, 1.3888888889vw);
        width: min(48px, 3.3333333333vw)
    }

    .p-top-key4__subtitle {
        font-size: min(24px, 1.6666666667vw);
        margin-top: min(20px, 1.3888888889vw)
    }

    .p-top-key4__text {
        font-size: min(14px, .9722222222vw);
        margin-top: min(3px, .2083333333vw)
    }

    .p-top-edition {
        margin-top: min(167px, 11.5972222222vw);
        padding-top: min(94px, 6.5277777778vw)
    }

    .p-top-edition__list {
        gap: min(8px, .5555555556vw);
        margin-top: min(38px, 2.6388888889vw);
        width: 100%
    }

    .p-top-edition__item {
        border-radius: min(6px, .4166666667vw);
        gap: min(22px, 1.5277777778vw);
        min-height: min(445px, 30.9027777778vw);
        padding-bottom: min(32px, 2.2222222222vw);
        width: min(394px, 27.3611111111vw)
    }

    .p-top-edition__item::before {
        bottom: min(9px, .625vw);
        color: #f6f6f6;
        display: block;
        font-family: Lato, sans-serif;
        font-size: min(60px, 4.1666666667vw);
        font-style: normal;
        font-weight: 400;
        letter-spacing: .04em;
        position: absolute;
        right: min(5px, .3472222222vw);
        z-index: 0
    }

    .p-top-edition__item.is-item1::before {
        content: "01"
    }

    .p-top-edition__item.is-item2::before {
        content: "02"
    }

    .p-top-edition__item.is-item3::before {
        content: "03"
    }

    .p-top-edition__item .c-button {
        margin-top: 0
    }

    .p-top-edition__summary {
        font-size: min(14px, .9722222222vw);
        padding: min(5px, .3472222222vw) min(20px, 1.3888888889vw)
    }

    .p-top-edition__img {
        height: min(120px, 8.3333333333vw);
        margin-top: auto;
        transform: translateY(min(9px, .625vw));
        width: min(120px, 8.3333333333vw)
    }

    .p-top-edition__subtitle {
        font-size: min(24px, 1.6666666667vw);
        margin-top: min(12px, .8333333333vw)
    }

    .p-top-edition__text {
        font-size: min(14px, .9722222222vw);
        width: min(260px, 18.0555555556vw)
    }

    .p-top-edition>.c-button {
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-top-learn__list {
        gap: 0;
        margin-top: min(54px, 3.75vw);
        width: 100%
    }

    .p-top-learn__item {
        padding-left: min(36px, 2.5vw);
        padding-right: min(36px, 2.5vw);
        width: min(393px, 27.2916666667vw)
    }

    .p-top-learn__item.is-item1 {
        padding-left: min(17px, 1.1805555556vw)
    }

    .p-top-learn__item.is-item2 {
        width: min(414px, 28.75vw)
    }

    .p-top-learn__item.is-item3 {
        padding-right: min(17px, 1.1805555556vw)
    }

    .p-top-learn__tag {
        font-size: min(12px, .8333333333vw);
        padding: min(8px, .5555555556vw)
    }

    .p-top-learn__subtitle {
        font-size: min(24px, 1.6666666667vw);
        margin-top: min(11px, .7638888889vw)
    }

    .p-top-learn__img {
        margin-top: min(18px, 1.25vw)
    }

    .p-top-learn__img img {
        transition: scale .3s ease-out
    }

    .p-top-learn__img:hover img,
    :where(.p-top-learn__item:has(.p-top-learn__link:hover)) .p-top-learn__img img {
        scale: 1.05
    }

    .p-top-learn__link::after,
    .p-top-learn__link::before {
        height: min(40px, 2.7777777778vw);
        transition: background-color .3s ease-out;
        width: min(40px, 2.7777777778vw)
    }

    .p-top-learn__link::after {
        -webkit-mask-size: min(8px, .5555555556vw);
        mask-size: min(8px, .5555555556vw)
    }

    .p-top-learn__link:hover::before {
        background-color: #000
    }

    .p-top-learn__link:hover::after {
        background-color: #fff
    }

    .p-top-learn__link {
        font-size: min(18px, 1.25vw);
        margin-top: min(18px, 1.25vw);
        min-height: min(40px, 2.7777777778vw)
    }

    .p-top-learn__text {
        font-size: min(14px, .9722222222vw);
        margin-top: min(4px, .2777777778vw)
    }

    .p-top-learn .c-button {
        margin-top: min(42px, 2.9166666667vw)
    }

    .p-top-search .c-wrap-inner {
        margin-top: min(100px, 6.9444444444vw);
        padding-top: min(90px, 6.25vw)
    }

    .p-top-events {
        margin-top: min(110px, 7.6388888889vw)
    }

    .p-top-events__text {
        margin-top: min(20px, 1.3888888889vw)
    }

    .p-top-events__slider {
        margin-top: min(52px, 3.6111111111vw)
    }

    .p-top-events__item {
        width: min(600px, 41.6666666667vw)
    }

    .p-top-events__link img {
        transition: scale .3s ease-out
    }

    .p-top-events__arrow {
        top: min(30px, 2.0833333333vw)
    }

    .p-top-events__arrow.is-prev {
        right: min(50px, 3.4722222222vw)
    }

    .p-top-events__pagination {
        gap: min(6px, .4166666667vw);
        margin-top: min(32px, 2.2222222222vw)
    }

    .p-top-events .splide__pagination {
        gap: min(6px, .4166666667vw);
        margin-top: min(26px, 1.8055555556vw)
    }

    .p-top-events .splide__pagination li {
        height: min(2px, .1388888889vw);
        width: min(20px, 1.3888888889vw)
    }

    .p-top-news {
        margin-top: min(125px, 8.6805555556vw);
        padding-bottom: 0
    }

    .p-top-news .c-wrap-inner {
        display: grid;
        grid-template-columns: 1fr min(740px, 51.3888888889vw);
        grid-template-rows: auto 1fr;
        justify-content: space-between
    }

    .p-top-news__text {
        grid-column: 1/2;
        grid-row: 1/2
    }

    .p-top-news .c-button {
        grid-column: 1/2;
        grid-row: 2/3;
        height: -moz-max-content;
        height: max-content;
        margin-left: 0;
        margin-top: min(53px, 3.6805555556vw)
    }

    .p-top-news__list {
        grid-column: 2/3;
        grid-row: 1/3;
        width: min(740px, 51.3888888889vw)
    }

    .p-top-news__item+.p-top-news__item {
        margin-top: min(9px, .625vw)
    }

    .p-top-news__link::after,
    .p-top-news__link::before {
        height: min(40px, 2.7777777778vw);
        transition: background-color .3s ease-out;
        width: min(40px, 2.7777777778vw)
    }

    .p-top-news__link::after {
        -webkit-mask-size: min(8px, .5555555556vw);
        mask-size: min(8px, .5555555556vw)
    }

    .p-top-news__link:hover::before {
        background-color: #000
    }

    .p-top-news__link:hover::after {
        background-color: #fff
    }

    .p-top-news__link {
        border-radius: min(6px, .4166666667vw);
        gap: min(8px, .5555555556vw) min(11px, .7638888889vw);
        padding: min(30px, 2.0833333333vw) min(40px, 2.7777777778vw) min(30px, 2.0833333333vw) min(100px, 6.9444444444vw)
    }

    .p-top-news__link::after,
    .p-top-news__link::before {
        left: min(30px, 2.0833333333vw)
    }

    .p-top-news__date {
        font-size: min(12px, .8333333333vw)
    }

    .p-top-news__tag {
        font-size: min(12px, .8333333333vw);
        padding: min(8px, .5555555556vw)
    }

    .p-top-news__subtitle {
        font-size: min(20px, 1.3888888889vw)
    }

    .p-top-news__caption {
        font-size: min(14px, .9722222222vw)
    }

    .p-top-start {
        padding-bottom: min(110px, 7.6388888889vw);
        padding-top: min(103px, 7.1527777778vw)
    }

    .p-top-start__inner {
        width: min(1200px, 83.3333333333vw)
    }

    .p-top-start__title {
        font-size: min(40px, 2.7777777778vw)
    }

    .p-top-start__text {
        font-size: min(22px, 1.5277777778vw);
        line-height: 2;
        margin-top: min(10px, .6944444444vw)
    }

    .p-top-start__list {
        margin-top: min(37px, 2.5694444444vw)
    }

    .p-overview__subtitle {
        font-size: min(30px, 2.0833333333vw)
    }

    .p-overview__subtitle strong {
        font-size: min(50px, 3.4722222222vw);
        line-height: .85
    }

    .p-overview__description {
        font-size: min(16px, 1.1111111111vw);
        margin-top: min(20px, 1.3888888889vw);
        text-align: center
    }

    .p-overview__text {
        margin-top: min(16px, 1.1111111111vw)
    }

    .p-overview__caption {
        font-size: min(10px, .6944444444vw)
    }

    .p-overview__container {
        margin-top: min(100px, 6.9444444444vw);
        padding-top: min(90px, 6.25vw)
    }

    .p-overview__container--dark {
        background-image: url(../images/common/footer-start_bg.jpg);
        padding: min(108px, 7.5vw) min(120px, 8.3333333333vw)
    }

    .p-overview-reason {
        background-image: url(../images/overview/reason_bg.jpg);
        padding-bottom: min(120px, 8.3333333333vw);
        padding-top: min(103px, 7.1527777778vw)
    }

    .p-overview-reason .c-heading {
        margin: 0;
        text-align: left
    }

    .p-overview-reason__grid01 {
        align-items: end;
        display: grid;
        gap: min(160px, 11.1111111111vw);
        grid-template-columns: 745fr 293fr;
        margin-bottom: min(50px, 3.4722222222vw)
    }

    .p-overview-reason__sub {
        margin-top: 0;
        padding: 0
    }

    .p-overview-reason__lead {
        font-size: min(22px, 1.5277777778vw);
        margin-top: min(10px, .6944444444vw)
    }

    .p-overview-reason__list {
        gap: min(16px, 1.1111111111vw);
        margin-top: min(40px, 2.7777777778vw)
    }

    .p-overview-reason__button-list {
        gap: min(12px, .8333333333vw) min(18px, 1.25vw);
        grid-template-columns: 115fr 165fr;
        margin-top: min(42px, 2.9166666667vw)
    }

    .p-overview-reason__button.is-button1 {
        padding: 0
    }

    .p-overview-reason__button.is-button2 {
        padding-right: 0
    }

    .p-overview-reason__button a {
        border-radius: min(6px, .4166666667vw);
        padding-top: min(48px, 3.3333333333vw)
    }

    .p-overview-reason__button-text {
        font-size: min(15px, 1.0416666667vw)
    }

    .p-overview-reason__button-img {
        margin-top: min(8px, .5555555556vw)
    }

    .is-button1 .p-overview-reason__button-img {
        margin-top: min(14px, .9722222222vw);
        width: 100%
    }

    .is-button2 .p-overview-reason__button-img {
        margin-top: min(14px, .9722222222vw);
        width: 100%
    }

    .is-button3 .p-overview-reason__button-img {
        margin-top: min(14px, .9722222222vw)
    }

    .p-overview-reason__list {
        gap: min(17px, 1.1805555556vw);
        margin-top: min(40px, 2.7777777778vw)
    }

    .p-overview-reason__item {
        border-radius: min(6px, .4166666667vw);
        gap: min(13px, .9027777778vw);
        height: min(115px, 7.9861111111vw);
        width: min(237px, 16.4583333333vw)
    }

    .p-overview-reason__num {
        font-size: min(38px, 3.4722222222vw)
    }

    .p-overview-reason__num span {
        font-size: min(18px, 1.25vw)
    }

    .p-overview-reason__text {
        font-size: min(14px, .9722222222vw)
    }

    .p-overview-why {
        background-image: url(../images/common/container_bg1.svg);
        background-size: contain
    }

    .p-overview-why__container {
        padding-top: min(94px, 6.5277777778vw)
    }

    .p-overview-why__client {
        gap: min(57px, 3.9583333333vw);
        grid-template-columns: repeat(8, min(180px, 12.5vw));
        margin: min(50px, 3.4722222222vw) 0;
        padding-left: min(57px, 3.9583333333vw)
    }

    .p-overview-why__list {
        gap: min(8px, .5555555556vw);
        margin-top: min(38px, 2.6388888889vw);
        padding-right: 0;
        width: 100%
    }

    .p-overview-why__item {
        border-radius: min(6px, .4166666667vw);
        min-height: min(445px, 30.9027777778vw);
        padding-bottom: 0;
        width: min(394px, 27.3611111111vw)
    }

    .p-overview-why__item.is-item1 {
        order: 2
    }

    .p-overview-why__item.is-item2 {
        order: 1
    }

    .p-overview-why__item.is-item3 {
        order: 3
    }

    .p-overview-why__item .c-button {
        margin-top: 0
    }

    .p-overview-why__summary {
        font-size: min(14px, .9722222222vw);
        min-height: min(39px, 2.7083333333vw);
        padding: min(5px, .3472222222vw) min(20px, 1.3888888889vw)
    }

    .p-overview-why__img {
        height: min(120px, 8.3333333333vw);
        margin: min(30px, 2.0833333333vw) auto;
        transform: translateY(min(9px, .625vw));
        width: min(120px, 8.3333333333vw)
    }

    .p-overview-why__subtitle {
        font-size: min(24px, 1.6666666667vw);
        margin-top: min(12px, .8333333333vw)
    }

    .p-overview-why__text {
        font-size: min(14px, .9722222222vw);
        margin: min(24px, 1.6666666667vw) min(16px, 1.1111111111vw) min(20px, 1.3888888889vw);
        padding: min(12px, .8333333333vw) min(47px, 3.2638888889vw) min(14px, .9722222222vw)
    }

    .p-overview-why>.c-button {
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-overview-why__point {
        margin: 0 min(52px, 3.6111111111vw)
    }

    .p-overview-why__ng {
        font-size: min(16px, 1.1111111111vw);
        gap: min(10px, .6944444444vw);
        grid-template-columns: min(19px, 1.3194444444vw) 1fr;
        margin-top: min(18px, 1.25vw)
    }

    .p-overview-why__ng::before {
        height: min(19px, 1.3194444444vw);
        width: min(19px, 1.3194444444vw)
    }

    .p-overview-why__good::before {
        height: min(19px, 1.3194444444vw);
        width: min(19px, 1.3194444444vw)
    }

    .p-overview-why .c-heading--lv5 {
        margin-bottom: min(4px, .2777777778vw)
    }

    .p-overview-why .c-button {
        margin-top: min(49px, 3.4027777778vw)
    }

    .p-overview-scale {
        background-image: url(../images/common/container_bg10.svg);
        background-size: contain
    }

    .p-overview-scale__container {
        margin-top: min(100px, 6.9444444444vw);
        padding: min(90px, 6.25vw) 0 min(100px, 6.9444444444vw)
    }

    .p-overview-scale__content {
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-overview-scale__list {
        flex-direction: row;
        flex-wrap: wrap;
        gap: min(20px, 1.3888888889vw);
        grid-column: 1/3;
        grid-row: 2/3;
        margin-top: min(30px, 2.0833333333vw);
        padding-right: min(0, 0)
    }

    .p-overview-scale__item {
        border-radius: min(6px, .4166666667vw);
        padding: min(85px, 5.9027777778vw) min(30px, 2.0833333333vw) min(33px, 2.2916666667vw) min(30px, 2.0833333333vw);
        width: min(285px, 19.7916666667vw)
    }

    .p-overview-scale__item::before {
        height: min(48px, 3.3333333333vw);
        top: min(25px, 1.7361111111vw);
        width: min(48px, 3.3333333333vw)
    }

    .p-overview-scale__item02 {
        border-radius: min(6px, .4166666667vw);
        display: flex;
        flex-direction: column;
        width: min(386px, 26.8055555556vw)
    }

    .p-overview-scale__item02::before {
        height: min(48px, 3.3333333333vw);
        top: min(25px, 1.7361111111vw);
        width: min(48px, 3.3333333333vw)
    }

    .p-overview-scale__head {
        padding: min(30px, 2.0833333333vw)
    }

    .p-overview-scale__body {
        padding: min(30px, 2.0833333333vw)
    }

    .p-overview-scale__company {
        font-size: min(20px, 1.3888888889vw)
    }

    .p-overview-scale__data {
        font-size: min(12px, .8333333333vw)
    }

    .p-overview-scale__point {
        border-radius: min(4px, .2777777778vw);
        font-size: min(20px, 1.3888888889vw);
        padding: min(5px, .3472222222vw) min(20px, 1.3888888889vw);
        right: min(30px, 2.0833333333vw);
        top: min(30px, 2.0833333333vw)
    }

    .p-overview-scale__subtitle {
        font-size: min(24px, 1.6666666667vw)
    }

    .is-item8 .p-overview-scale__subtitle {
        letter-spacing: -.06em
    }

    .p-overview-scale__text {
        font-size: min(14px, .9722222222vw);
        margin-top: min(12px, .8333333333vw)
    }

    .p-overview-scale__badge {
        font-size: min(12px, .8333333333vw);
        margin: 0 0 min(4px, .2777777778vw);
        padding: min(8px, .5555555556vw)
    }

    .p-overview-scale__issue {
        font-size: min(14px, .9722222222vw);
        margin-bottom: min(10px, .6944444444vw)
    }

    .p-overview-scale__solution {
        font-size: min(14px, .9722222222vw);
        margin-bottom: min(20px, 1.3888888889vw)
    }

    .p-overview-scale__cost {
        font-size: min(16px, 1.1111111111vw);
        margin-top: auto;
        padding: min(10px, .6944444444vw)
    }

    .p-overview-scale__tag {
        font-size: min(12px, .8333333333vw);
        margin: min(20px, 1.3888888889vw) auto;
        padding: min(8px, .5555555556vw)
    }

    .p-overview-scale .c-button {
        margin-top: min(42px, 2.9166666667vw)
    }

    .p-overview-cost {
        background-image: url(../images/common/container_bg11.svg);
        background-position: left center;
        background-size: contain
    }

    .p-overview-cost__container {
        margin-top: min(100px, 6.9444444444vw);
        padding: min(90px, 6.25vw) 0 min(100px, 6.9444444444vw)
    }

    .p-overview-cost__dummy {
        aspect-ratio: 12/5;
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-overview-effect__list {
        flex-direction: row;
        flex-wrap: wrap;
        gap: min(20px, 1.3888888889vw);
        grid-column: 1/3;
        grid-row: 2/3;
        margin-top: min(30px, 2.0833333333vw);
        padding-right: 0
    }

    .p-overview-effect__item {
        border-radius: min(6px, .4166666667vw);
        display: flex;
        flex-direction: column;
        width: min(386px, 26.8055555556vw)
    }

    .p-overview-effect__list--point {
        gap: min(20px, 1.3888888889vw);
        margin-top: min(40px, 2.7777777778vw);
        width: min(1200px, 83.3333333333vw)
    }

    .p-overview-effect__point {
        border-radius: min(6px, .4166666667vw);
        gap: min(13px, .9027777778vw);
        height: min(146px, 10.1388888889vw);
        padding: min(20px, 1.3888888889vw) min(17px, 1.1805555556vw);
        width: min(285px, 19.7916666667vw)
    }

    .p-overview-effect__badge {
        font-size: min(12px, .8333333333vw);
        margin-bottom: min(4px, .2777777778vw);
        padding: min(8px, .5555555556vw)
    }

    .p-overview-effect__num {
        font-size: min(50px, 3.4722222222vw)
    }

    .p-overview-effect__num span {
        font-size: min(18px, 1.25vw)
    }

    .p-overview-effect__text {
        font-size: min(14px, .9722222222vw)
    }

    .p-overview-effect__head {
        min-height: min(90px, 6.25vw);
        padding: min(10px, .6944444444vw) 0
    }

    .p-overview-effect__logo {
        width: min(320px, 22.2222222222vw)
    }

    .p-overview-effect__body {
        padding: min(30px, 2.0833333333vw) min(40px, 2.7777777778vw)
    }

    .p-overview-effect__company {
        margin-bottom: 0
    }

    .p-overview-effect__heading--lv3 {
        font-size: min(20px, 1.3888888889vw)
    }

    .p-overview-effect__heading--lv4 {
        font-size: min(16px, 1.1111111111vw);
        margin-top: min(14px, .9722222222vw)
    }

    .p-overview-effect__tag-list {
        margin-top: min(8px, .5555555556vw);
        width: min(326px, 22.6388888889vw)
    }

    .p-overview-effect__tag {
        font-size: min(12px, .8333333333vw);
        padding: min(8px, .5555555556vw)
    }

    .p-overview-effect__solution {
        font-size: min(14px, .9722222222vw);
        margin-top: min(8px, .5555555556vw)
    }

    .p-overview-effect .c-button {
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-overview-features {
        background-image: url(../images/common/container_bg12.svg);
        background-size: min(770px, 53.4722222222vw)
    }

    .p-overview-features__container {
        padding-top: min(110px, 7.6388888889vw)
    }

    .p-overview-features__list {
        flex-direction: row;
        flex-wrap: wrap;
        gap: min(8px, .5555555556vw);
        margin-top: min(55px, 3.8194444444vw);
        padding-right: 0
    }

    .p-overview-features__item {
        border-radius: min(6px, .4166666667vw);
        padding: min(85px, 5.9027777778vw) min(40px, 2.7777777778vw) min(22px, 1.5277777778vw) min(40px, 2.7777777778vw);
        width: min(285px, 19.7916666667vw)
    }

    .p-overview-features__item::before {
        height: min(48px, 3.3333333333vw);
        left: min(40px, 2.7777777778vw);
        top: min(25px, 1.7361111111vw);
        width: min(48px, 3.3333333333vw)
    }

    .p-overview-features__subtitle {
        font-size: min(24px, 1.6666666667vw)
    }

    .p-overview-features__text {
        font-size: min(14px, .9722222222vw);
        margin-top: min(3px, .2083333333vw)
    }

    .p-overview-features__list--point {
        gap: min(8px, .5555555556vw);
        margin-top: min(22px, 1.5277777778vw)
    }

    .p-overview-features__point {
        font-size: min(14px, .9722222222vw);
        padding: min(4px, .2777777778vw) min(10px, .6944444444vw) min(4px, .2777777778vw) min(20px, 1.3888888889vw)
    }

    .p-overview-features__point::before {
        left: min(10px, .6944444444vw)
    }

    .p-overview-features .c-button {
        margin-top: min(42px, 2.9166666667vw)
    }

    .p-overview-search {
        background-image: url(../images/common/container_bg13.svg);
        background-position: left top;
        background-size: 100% min(968px, 67.2222222222vw)
    }

    .p-overview-search__container {
        padding: min(110px, 7.6388888889vw) 0 min(120px, 8.3333333333vw)
    }

    .p-overview-search__list {
        margin-top: min(64px, 4.4444444444vw);
        width: min(1000px, 69.4444444444vw)
    }

    .p-overview-search__item {
        border-radius: min(6px, .4166666667vw);
        display: flex;
        flex-direction: column;
        height: min(240px, 16.6666666667vw);
        padding: min(50px, 3.4722222222vw) min(64px, 4.4444444444vw);
        width: min(632px, 43.8888888889vw)
    }

    .p-overview-search__item+.p-overview-search__item {
        margin-top: min(20px, 1.3888888889vw)
    }

    .p-overview-search__subtitle {
        font-size: min(24px, 1.6666666667vw)
    }

    .p-overview-search__text {
        font-size: min(16px, 1.1111111111vw);
        margin-top: min(4px, .2777777778vw)
    }

    .p-overview-search__img {
        border-radius: min(6px, .4166666667vw);
        overflow: hidden;
        position: absolute;
        right: max(-368px, -25.5555555556vw);
        top: 0;
        width: min(360px, 25vw)
    }

    .p-overview-search__img img {
        transition: scale .3s ease-out
    }

    .p-overview-search__img:hover img,
    :where(.p-top-search__item:has(.c-button__link--fill:hover)) .p-overview-search__img img {
        scale: 1.05
    }

    .p-overview-search .c-button {
        margin-left: 0;
        margin-top: min(20px, 1.3888888889vw)
    }

    .p-overview-document {
        background-image: url(../images/common/container_bg14.svg);
        background-position: left top;
        background-size: 100% min(607px, 42.1527777778vw)
    }

    .p-overview-document__container {
        padding: min(118px, 8.1944444444vw) 0 0
    }

    .p-overview-document__check-list {
        gap: min(8px, .5555555556vw) min(18px, 1.25vw);
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-overview-document__check {
        font-size: min(16px, 1.1111111111vw);
        gap: min(10px, .6944444444vw)
    }

    .p-overview-document__check::before {
        height: min(19.2px, 1.3333333333vw);
        width: min(19.2px, 1.3333333333vw)
    }

    .p-overview-document__column {
        gap: min(60px, 4.1666666667vw) 0;
        margin-top: min(44px, 3.0555555556vw)
    }

    .p-overview-document__box {
        border-bottom: none;
        display: grid;
        gap: 0 min(30px, 2.0833333333vw);
        grid-template-columns: min(250px, 17.3611111111vw) 1fr;
        grid-template-rows: repeat(3, auto);
        padding-bottom: 0;
        width: min(590px, 40.9722222222vw)
    }

    .p-overview-document__box:nth-child(odd) {
        padding-right: min(40px, 2.7777777778vw)
    }

    .p-overview-document__box:nth-child(even) {
        border-left: solid 1px #000;
        padding-left: min(40px, 2.7777777778vw)
    }

    .p-overview-document__box .is-item1 {
        display: flex;
        flex-direction: column;
        grid-area: 1/2/2/3;
        height: min(92px, 6.3888888889vw);
        justify-content: center
    }

    .p-overview-document__box .is-item2 {
        grid-area: 1/1/3/2
    }

    .p-overview-document__box .is-item3 {
        grid-area: 3/1/4/3;
        height: min(110px, 7.6388888889vw);
        margin-top: min(30px, 2.0833333333vw)
    }

    .p-overview-document__box .is-item4 {
        grid-area: 2/2/3/3
    }

    .p-overview-document__title--lv3 {
        font-size: min(24px, 1.6666666667vw);
        margin-bottom: 0
    }

    .p-overview-document__title--lv4 {
        font-size: min(18px, 1.25vw);
        margin-top: 0
    }

    .p-overview-document__list--point {
        gap: min(8px, .5555555556vw);
        margin-top: min(22px, 1.5277777778vw)
    }

    .p-overview-document__point {
        font-size: min(14px, .9722222222vw);
        padding: min(4px, .2777777778vw) min(10px, .6944444444vw) min(4px, .2777777778vw) min(20px, 1.3888888889vw)
    }

    .p-overview-document__point::before {
        left: min(10px, .6944444444vw)
    }

    .p-overview-document__subtitle {
        width: min(160px, 11.1111111111vw)
    }

    .p-overview-document .c-button {
        margin-left: 0;
        margin-top: 0
    }

    .p-overview-community {
        background-image: url(../images/common/container_bg15.svg);
        background-position: right bottom;
        background-size: min(843px, 58.5416666667vw)
    }

    .p-overview-community__container {
        margin-top: min(100px, 6.9444444444vw);
        padding: min(90px, 6.25vw) 0 min(111px, 7.7083333333vw)
    }

    .p-overview-community__list {
        flex-direction: row;
        flex-wrap: wrap;
        gap: min(8px, .5555555556vw);
        margin-top: min(55px, 3.8194444444vw)
    }

    .p-overview-community__item {
        border-radius: min(6px, .4166666667vw);
        padding: min(30px, 2.0833333333vw) min(40px, 2.7777777778vw);
        width: min(386px, 26.8055555556vw)
    }

    .p-overview-community__item::before {
        display: block;
        height: min(48px, 3.3333333333vw);
        margin-bottom: min(8px, .5555555556vw);
        margin-right: min(15px, 1.0416666667vw);
        width: min(48px, 3.3333333333vw)
    }

    .p-overview-community__subtitle {
        font-size: min(24px, 1.6666666667vw)
    }

    .p-overview-community__text {
        font-size: min(14px, .9722222222vw);
        margin-top: min(3px, .2083333333vw)
    }

    .p-overview-community .c-button {
        margin-left: 0;
        margin-top: min(20px, 1.3888888889vw)
    }

    .p-overview-start {
        background-image: url(../images/common/footer-start_bg.jpg);
        padding-bottom: min(110px, 7.6388888889vw);
        padding-top: min(103px, 7.1527777778vw)
    }

    .p-overview-start__inner {
        width: min(1200px, 83.3333333333vw)
    }

    .p-overview-start__title {
        font-size: min(40px, 2.7777777778vw)
    }

    .p-overview-start__text {
        font-size: min(22px, 1.5277777778vw);
        line-height: 2;
        margin-top: min(10px, .6944444444vw)
    }

    .p-overview-start__list {
        margin-top: min(37px, 2.5694444444vw)
    }

    .p-cases__column {
        gap: min(20px, 1.3888888889vw);
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-cases__section {
        border-radius: min(6px, .4166666667vw);
        padding-bottom: min(30px, 2.0833333333vw);
        width: min(590px, 40.9722222222vw)
    }

    .p-cases__title {
        font-size: min(28px, 1.9444444444vw);
        gap: min(10px, .6944444444vw);
        padding: min(14px, .9722222222vw) min(40px, 2.7777777778vw)
    }

    .p-cases__title::before {
        height: min(40px, 2.7777777778vw);
        width: min(40px, 2.7777777778vw)
    }

    .p-cases__box {
        padding: min(30px, 2.0833333333vw) min(40px, 2.7777777778vw)
    }

    .p-cases__subtitle {
        font-size: min(24px, 1.6666666667vw)
    }

    .p-cases__description {
        font-size: min(16px, 1.1111111111vw);
        margin-top: min(9px, .625vw)
    }

    .p-cases__list {
        gap: min(8px, .5555555556vw);
        margin-top: min(22px, 1.5277777778vw)
    }

    .p-cases__item {
        font-size: min(14px, .9722222222vw);
        padding: min(4px, .2777777778vw) min(10px, .6944444444vw) min(4px, .2777777778vw) min(20px, 1.3888888889vw)
    }

    .p-cases__item::before {
        left: min(10px, .6944444444vw)
    }

    .p-cases-kv {
        background-image: url(../images/success/kv_bg.jpg);
        height: min(530px, 36.8055555556vw);
        padding-top: min(97px, 6.7361111111vw)
    }

    .p-cases-kv__title {
        font-size: min(40px, 2.7777777778vw)
    }

    .p-cases-kv__description {
        font-size: min(22px, 1.5277777778vw);
        margin-top: min(10px, .6944444444vw)
    }

    .p-cases-kv__list {
        gap: min(20px, 1.3888888889vw);
        margin-top: min(40px, 2.7777777778vw);
        width: min(1200px, 83.3333333333vw)
    }

    .p-cases-kv__item {
        border-radius: min(6px, .4166666667vw);
        gap: min(13px, .9027777778vw);
        height: min(115px, 7.9861111111vw);
        width: min(285px, 19.7916666667vw)
    }

    .p-cases-kv__num {
        font-size: min(50px, 3.4722222222vw)
    }

    .p-cases-kv__num span {
        font-size: min(18px, 1.25vw)
    }

    .p-cases-kv__text {
        font-size: min(14px, .9722222222vw)
    }

    .p-cases-container {
        padding-bottom: min(115px, 7.9861111111vw);
        padding-top: min(108px, 7.5vw)
    }

    .p-cases-container.is-container1 {
        background-image: url(../images/common/container_bg3.svg);
        background-size: min(943px, 65.4861111111vw)
    }

    .p-cases-container.is-container2 {
        background-image: url(../images/common/container_bg4.svg), url(../images/common/container_bg5.svg);
        background-position: left top, left 0 bottom min(854px, 59.3055555556vw);
        background-size: 100% min(607px, 42.1527777778vw), 100% min(422px, 29.3055555556vw)
    }

    .p-cases-pickup {
        padding-bottom: min(120px, 8.3333333333vw);
        padding-top: min(103px, 7.1527777778vw)
    }

    .p-cases-pickup .c-title__english {
        font-size: min(48px, 3.3333333333vw)
    }

    .p-cases-pickup__column {
        display: flex;
        gap: min(40px, 2.7777777778vw);
        padding-left: 0;
        padding-right: 0
    }

    .p-cases-pickup__description {
        flex: 1;
        font-size: min(16px, 1.1111111111vw);
        margin-top: auto
    }

    .p-cases-pickup__list {
        gap: min(22px, 1.5277777778vw);
        width: 100%
    }

    .p-cases-pickup__item {
        display: flex;
        width: min(386px, 26.8055555556vw)
    }

    .p-cases-pickup__link::after,
    .p-cases-pickup__link::before {
        height: min(40px, 2.7777777778vw);
        transition: background-color .3s ease-out;
        width: min(40px, 2.7777777778vw)
    }

    .p-cases-pickup__link::after {
        -webkit-mask-size: min(8px, .5555555556vw);
        mask-size: min(8px, .5555555556vw)
    }

    .p-cases-pickup__link:hover::before {
        background-color: #000
    }

    .p-cases-pickup__link:hover::after {
        background-color: #fff
    }

    .p-cases-pickup__link {
        border-radius: min(6px, .4166666667vw);
        padding-bottom: min(80px, 5.5555555556vw)
    }

    .p-cases-pickup__link::after,
    .p-cases-pickup__link::before {
        bottom: min(15px, 1.0416666667vw);
        right: min(20px, 1.3888888889vw)
    }

    .p-cases-pickup__img {
        background-position: center;
        height: min(257px, 17.8472222222vw);
        transition: background-size .3s ease-out
    }

    a:hover .p-cases-pickup__img {
        background-size: 105%
    }

    .p-cases-pickup__subtitle {
        font-size: min(18px, 1.25vw);
        margin-top: min(16px, 1.1111111111vw);
        width: min(326px, 22.6388888889vw)
    }

    .p-cases-pickup__text {
        font-size: min(14px, .9722222222vw);
        margin-top: min(8px, .5555555556vw);
        width: min(326px, 22.6388888889vw)
    }

    .p-cases-pickup__tag-list {
        margin-top: min(30px, 2.0833333333vw);
        width: min(326px, 22.6388888889vw)
    }

    .p-cases-pickup__tag {
        font-size: min(12px, .8333333333vw);
        padding: min(8px, .5555555556vw)
    }

    .p-cases-pickup__arrow {
        background-size: min(8px, .5555555556vw);
        height: min(40px, 2.7777777778vw);
        top: min(30px, 2.0833333333vw);
        width: min(40px, 2.7777777778vw)
    }

    .p-cases-pickup__arrow.is-prev {
        right: min(50px, 3.4722222222vw)
    }

    .p-cases-pickup__pagination {
        gap: min(6px, .4166666667vw);
        margin-top: min(32px, 2.2222222222vw)
    }

    .p-cases-pickup .splide__pagination {
        gap: min(6px, .4166666667vw);
        margin-top: min(26px, 1.8055555556vw)
    }

    .p-cases-pickup .splide__pagination li {
        height: min(2px, .1388888889vw);
        width: min(20px, 1.3888888889vw)
    }

    .p-cases-result .p-cases__section {
        flex: 1;
        width: auto
    }

    .p-cases-company {
        margin-top: min(100px, 6.9444444444vw);
        padding-top: min(88px, 6.1111111111vw)
    }

    .p-cases-company__list {
        flex-wrap: wrap;
        gap: min(20px, 1.3888888889vw);
        margin-top: min(50px, 3.4722222222vw);
        width: 100%
    }

    .p-cases-company__item {
        width: min(386px, 26.8055555556vw)
    }

    .p-cases-company__link::after,
    .p-cases-company__link::before {
        height: min(40px, 2.7777777778vw);
        transition: background-color .3s ease-out;
        width: min(40px, 2.7777777778vw)
    }

    .p-cases-company__link::after {
        -webkit-mask-size: min(8px, .5555555556vw);
        mask-size: min(8px, .5555555556vw)
    }

    .p-cases-company__link:hover::before {
        background-color: #000
    }

    .p-cases-company__link:hover::after {
        background-color: #fff
    }

    .p-cases-company__link {
        border-radius: min(6px, .4166666667vw);
        height: min(330px, 22.9166666667vw)
    }

    .p-cases-company__link::after,
    .p-cases-company__link::before {
        bottom: min(15px, 1.0416666667vw);
        right: min(20px, 1.3888888889vw)
    }

    .p-cases-company__img {
        height: min(90px, 6.25vw)
    }

    .p-cases-company__box {
        padding: min(30px, 2.0833333333vw) min(30px, 2.0833333333vw) min(76px, 5.2777777778vw)
    }

    .p-cases-company__subtitle {
        font-size: min(20px, 1.3888888889vw);
        margin-top: min(16px, 1.1111111111vw);
        width: min(326px, 22.6388888889vw)
    }

    .p-cases-company__tag-list {
        gap: min(8px, .5555555556vw);
        margin-top: min(30px, 2.0833333333vw);
        width: min(326px, 22.6388888889vw)
    }

    .p-cases-company__tag {
        font-size: min(12px, .8333333333vw);
        padding: min(8px, .5555555556vw)
    }

    .p-cases-company .c-button {
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-partner-kv {
        background-image: url(../images/partner/kv_bg.jpg);
        height: min(418px, 29.0277777778vw);
        padding-top: min(97px, 6.7361111111vw)
    }
    .p-partner-kv.partner-li-kv {
        background-image: url(../images/partner/partner-list-kv_bg.jpg);
    }

    .p-partner-kv__title {
        font-size: min(40px, 2.7777777778vw)
    }

    .p-partner-kv__description {
        font-size: min(22px, 1.5277777778vw);
        margin-top: min(10px, .6944444444vw)
    }

    .p-partner-kv .c-button {
        margin-top: min(40px, 2.7777777778vw)
    }

    .p-partner-search {
        background-image: url(../images/common/container_bg3.svg);
        background-size: min(934px, 64.8611111111vw);
        padding-bottom: min(120px, 8.3333333333vw);
        padding-top: min(108px, 7.5vw)
    }

    .p-partner-search__list {
        gap: min(40px, 2.7777777778vw) min(20px, 1.3888888889vw);
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-partner-search__item {
        border-radius: min(6px, .4166666667vw);
        padding: min(32px, 2.2222222222vw) min(67px, 4.6527777778vw) min(40px, 2.7777777778vw);
        width: min(590px, 40.9722222222vw)
    }

    .p-partner-search__box {
        background-position: min(13px, .9027777778vw) min(3px, .2083333333vw);
        background-repeat: no-repeat;
        background-size: min(100px, 6.9444444444vw);
        min-height: min(103px, 7.1527777778vw);
        padding-left: min(153px, 10.625vw)
    }

    .is-item1 .p-partner-search__box {
        background-image: url(../images/partner/search_icon1.svg)
    }

    .is-item2 .p-partner-search__box {
        background-image: url(../images/partner/search_icon2.svg)
    }

    .is-item3 .p-partner-search__box {
        background-image: url(../images/partner/search_icon3.svg)
    }

    .is-item4 .p-partner-search__box {
        background-image: url(../images/partner/search_icon4.svg)
    }

    .p-partner-search__title {
        font-size: min(24px, 1.6666666667vw)
    }

    .p-partner-search__description {
        font-size: min(16px, 1.1111111111vw);
        margin-top: min(9px, .625vw)
    }

    .p-partner-search .c-button {
        margin-top: min(20px, 1.3888888889vw)
    }

    .p-partner-container {
        background-image: url(../images/common/container_bg1.svg), url(../images/common/container_bg2.svg);
        background-size: contain, min(960px, 66.6666666667vw);
        padding-bottom: min(120px, 8.3333333333vw);
        padding-top: min(100px, 6.9444444444vw)
    }

    .p-partner-about__column {
        gap: min(20px, 1.3888888889vw);
        margin-top: min(46px, 3.1944444444vw)
    }

    .p-partner-about__section {
        border-radius: min(6px, .4166666667vw);
        width: min(590px, 40.9722222222vw)
    }

    .p-partner-about__title {
        align-items: center;
        display: flex;
        font-size: min(28px, 1.9444444444vw);
        height: min(112px, 7.7777777778vw);
        padding: min(14px, .9722222222vw) min(40px, 2.7777777778vw)
    }

    .p-partner-about__box {
        padding: min(30px, 2.0833333333vw) min(40px, 2.7777777778vw)
    }

    .p-partner-about__description {
        font-size: min(16px, 1.1111111111vw)
    }

    .p-partner-about__list {
        gap: min(8px, .5555555556vw);
        margin-top: min(22px, 1.5277777778vw)
    }

    .p-partner-about__item {
        font-size: min(14px, .9722222222vw);
        padding: min(4px, .2777777778vw) min(10px, .6944444444vw) min(4px, .2777777778vw) min(20px, 1.3888888889vw)
    }

    .p-partner-about__item::before {
        left: min(10px, .6944444444vw)
    }

    .p-partner-about .c-button {
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-partner-benefit {
        margin-top: min(100px, 6.9444444444vw);
        padding-top: min(88px, 6.1111111111vw)
    }

    .p-partner-benefit__list {
        gap: min(20px, 1.3888888889vw);
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-partner-benefit__item {
        background-position: min(40px, 2.7777777778vw) min(30px, 2.0833333333vw);
        background-size: min(48px, 3.3333333333vw);
        border-radius: min(6px, .4166666667vw);
        flex: 1;
        padding: min(86px, 5.9722222222vw) min(32px, 2.2222222222vw) min(30px, 2.0833333333vw) min(40px, 2.7777777778vw)
    }

    .p-partner-benefit__title {
        font-size: min(24px, 1.6666666667vw)
    }

    .p-partner-benefit__description {
        font-size: min(14px, .9722222222vw);
        margin-top: min(3px, .2083333333vw)
    }

    .p-partner-benefit .c-button {
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-support-kv {
        background-image: url(../images/support/kv_bg.jpg);
        height: min(746px, 51.8055555556vw);
        padding-top: min(97px, 6.7361111111vw)
    }

    .p-support-kv__title {
        font-size: min(40px, 2.7777777778vw)
    }

    .p-support-kv__description {
        font-size: min(22px, 1.5277777778vw);
        margin-top: min(10px, .6944444444vw)
    }

    .p-support-kv__list {
        gap: min(21px, 1.4583333333vw);
        margin-top: min(40px, 2.7777777778vw);
        width: min(1200px, 83.3333333333vw)
    }

    .p-support-kv__item {
        border-radius: min(6px, .4166666667vw);
        height: min(218px, 15.1388888889vw);
        padding: min(25px, 1.7361111111vw) min(40px, 2.7777777778vw) min(20px, 1.3888888889vw);
        width: min(386px, 26.8055555556vw)
    }

    .p-support-kv__num {
        font-size: min(30px, 2.0833333333vw)
    }

    .p-support-kv__subtitle {
        font-size: min(24px, 1.6666666667vw);
        margin-top: min(15px, 1.0416666667vw)
    }

    .p-support-kv__text {
        font-size: min(14px, .9722222222vw);
        margin-top: min(5px, .3472222222vw)
    }

    .p-support-kv .c-button {
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-support-container {
        padding-bottom: min(134px, 9.3055555556vw);
        padding-top: min(108px, 7.5vw)
    }

    .p-support-container.is-container1 {
        background-image: url(../images/common/container_bg6.svg), url(../images/common/container_bg7.svg), url(../images/common/container_bg8.svg);
        background-position: left top, left min(1205px, 83.6805555556vw), left bottom;
        background-size: 100% min(786px, 54.5833333333vw), 100% min(968px, 67.2222222222vw), min(817px, 56.7361111111vw)
    }

    .p-support-container.is-container2 {
        background-image: url(../images/common/container_bg3.svg), url(../images/common/container_bg9.svg);
        background-position: right top, right bottom;
        background-size: min(943px, 65.4861111111vw), min(843px, 58.5416666667vw)
    }

    .p-support-container .c-wrap-inner+.c-wrap-inner {
        margin-top: min(100px, 6.9444444444vw);
        padding-top: min(88px, 6.1111111111vw)
    }

    .p-support-service__check-list {
        gap: min(8px, .5555555556vw) min(18px, 1.25vw);
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-support-service__check {
        font-size: min(16px, 1.1111111111vw);
        gap: min(10px, .6944444444vw)
    }

    .p-support-service__check::before {
        height: min(19.2px, 1.3333333333vw);
        width: min(19.2px, 1.3333333333vw)
    }

    .p-support-service__column {
        gap: min(20px, 1.3888888889vw);
        margin-top: min(44px, 3.0555555556vw)
    }

    .p-support-service__box {
        border-radius: min(6px, .4166666667vw);
        padding: min(30px, 2.0833333333vw) min(40px, 2.7777777778vw);
        width: min(590px, 40.9722222222vw)
    }

    .p-support-service__title {
        font-size: min(24px, 1.6666666667vw)
    }

    .p-support-service__list {
        margin-top: min(14px, .9722222222vw)
    }

    .p-support-service__item {
        font-size: min(16px, 1.1111111111vw);
        gap: min(20px, 1.3888888889vw);
        height: min(52px, 3.6111111111vw);
        padding-left: min(113px, 7.8472222222vw)
    }

    .p-support-service__subtitle {
        width: min(160px, 11.1111111111vw)
    }

    .p-support-service .c-button {
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-support-tool__column {
        border-radius: min(6px, .4166666667vw);
        gap: min(40px, 2.7777777778vw);
        margin-top: min(50px, 3.4722222222vw);
        padding: min(40px, 2.7777777778vw) min(50px, 3.4722222222vw)
    }

    .p-support-tool__column+.p-support-tool__column {
        margin-top: min(20px, 1.3888888889vw)
    }

    .p-support-tool__box {
        background-size: min(48px, 3.3333333333vw);
        padding-left: min(72px, 5vw);
        width: min(310px, 21.5277777778vw)
    }

    .is-column1 .p-support-tool__box {
        background-size: min(40px, 2.7777777778vw)
    }

    .p-support-tool__text {
        font-size: min(14px, .9722222222vw)
    }

    .p-support-tool__title {
        font-size: min(24px, 1.6666666667vw);
        margin-top: min(5px, .3472222222vw)
    }

    .p-support-tool__point {
        border-radius: min(6px, .4166666667vw);
        font-size: min(20px, 1.3888888889vw);
        gap: min(30px, 2.0833333333vw);
        margin-top: min(14px, .9722222222vw);
        max-width: 100%;
        padding: min(5px, .3472222222vw) min(20px, 1.3888888889vw);
        width: -moz-max-content;
        width: max-content
    }

    .p-support-tool__point span+span::before {
        left: max(-15px, -1.0416666667vw)
    }

    .p-support-tool__list {
        gap: min(8px, .5555555556vw)
    }

    .p-support-tool__item {
        font-size: min(14px, .9722222222vw);
        padding: min(4px, .2777777778vw) min(10px, .6944444444vw) min(4px, .2777777778vw) min(20px, 1.3888888889vw)
    }

    .p-support-tool__item::before {
        left: min(10px, .6944444444vw)
    }

    .p-support-tool .c-button {
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-support-worries__list {
        gap: min(20px, 1.3888888889vw);
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-support-worries__item {
        border-radius: min(6px, .4166666667vw);
        padding: min(32px, 2.2222222222vw) min(20px, 1.3888888889vw) min(20px, 1.3888888889vw);
        width: min(590px, 40.9722222222vw)
    }

    .p-support-worries__inner {
        padding: 0 min(30px, 2.0833333333vw) min(20px, 1.3888888889vw) min(210px, 14.5833333333vw)
    }

    .is-summary .p-support-worries__inner {
        border-radius: 0 0 min(6px, .4166666667vw) min(6px, .4166666667vw);
        padding: min(19px, 1.3194444444vw) min(30px, 2.0833333333vw) min(20px, 1.3888888889vw) min(210px, 14.5833333333vw)
    }

    .p-support-worries__img {
        height: min(60px, 4.1666666667vw);
        left: min(30px, 2.0833333333vw);
        position: absolute;
        width: min(140px, 9.7222222222vw)
    }

    .p-support-worries__title {
        font-size: min(24px, 1.6666666667vw)
    }

    .p-support-worries__text {
        font-size: min(16px, 1.1111111111vw);
        margin-top: min(9px, .625vw)
    }

    .p-support-worries__summary {
        border-radius: min(6px, .4166666667vw) min(6px, .4166666667vw) 0 0;
        font-size: min(14px, .9722222222vw);
        padding-bottom: min(6px, .4166666667vw);
        padding-top: min(5px, .3472222222vw)
    }

    .p-support-worries__box {
        padding-top: min(40px, 2.7777777778vw)
    }

    .p-support-worries__box::before {
        border-left-width: min(26px, 1.8055555556vw);
        border-right-width: min(26px, 1.8055555556vw);
        border-top-width: min(18px, 1.25vw);
        top: min(5px, .3472222222vw)
    }

    .p-support-function {
        background-image: url(../images/support/function_bg.jpg);
        padding-bottom: min(120px, 8.3333333333vw);
        padding-top: min(103px, 7.1527777778vw)
    }

    .p-support-function__list {
        display: flex;
        gap: min(20px, 1.3888888889vw);
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-support-function__item {
        border-radius: min(6px, .4166666667vw);
        display: flex;
        flex-direction: column;
        gap: min(9px, .625vw);
        height: min(250px, 17.3611111111vw);
        padding: min(35px, 2.4305555556vw) min(30px, 2.0833333333vw) min(31px, 2.1527777778vw);
        width: min(285px, 19.7916666667vw)
    }

    .p-support-function__item::after {
        height: min(48px, 3.3333333333vw);
        width: min(48px, 3.3333333333vw)
    }

    .p-support-function__subtitle {
        font-size: min(20px, 1.3888888889vw)
    }

    .p-support-function__text {
        font-size: min(14px, .9722222222vw)
    }

    .p-support-add__column {
        gap: min(20px, 1.3888888889vw);
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-support-add__section {
        border-radius: min(6px, .4166666667vw);
        padding-bottom: min(30px, 2.0833333333vw);
        width: min(590px, 40.9722222222vw)
    }

    .p-support-add__title {
        font-size: min(28px, 1.9444444444vw);
        gap: min(10px, .6944444444vw);
        padding: min(14px, .9722222222vw) min(40px, 2.7777777778vw)
    }

    .p-support-add__title::before {
        height: min(40px, 2.7777777778vw);
        width: min(40px, 2.7777777778vw)
    }

    .p-support-add__box {
        padding: min(30px, 2.0833333333vw) min(40px, 2.7777777778vw)
    }

    .p-support-add__subtitle {
        font-size: min(24px, 1.6666666667vw)
    }

    .p-support-add__description {
        font-size: min(16px, 1.1111111111vw)
    }

    .p-support-add__list {
        gap: min(8px, .5555555556vw);
        margin-top: min(22px, 1.5277777778vw)
    }

    .p-support-add__item {
        font-size: min(14px, .9722222222vw);
        padding: min(4px, .2777777778vw) min(10px, .6944444444vw) min(4px, .2777777778vw) min(20px, 1.3888888889vw)
    }

    .p-support-add__item::before {
        left: min(10px, .6944444444vw)
    }

    .p-support-case__list {
        gap: min(20px, 1.3888888889vw);
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-support-case__item {
        border-radius: min(6px, .4166666667vw);
        padding: min(29px, 2.0138888889vw) min(24px, 1.6666666667vw) min(26px, 1.8055555556vw);
        width: min(285px, 19.7916666667vw)
    }

    .p-support-case__item::before {
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain;
        content: "";
        display: block;
        margin: auto
    }

    .p-support-case__item.is-item1::before {
        background-image: url(../images/support/case_icon1.svg)
    }

    .p-support-case__item.is-item2::before {
        background-image: url(../images/support/case_icon2.svg)
    }

    .p-support-case__item.is-item3::before {
        background-image: url(../images/support/case_icon3.svg)
    }

    .p-support-case__item.is-item4::before {
        background-image: url(../images/support/case_icon4.svg)
    }

    .p-support-case__title {
        font-size: min(24px, 1.6666666667vw);
        margin-top: min(10px, .6944444444vw)
    }

    .p-support-case__subtitle {
        border-radius: min(6px, .4166666667vw);
        font-size: min(20px, 1.3888888889vw);
        gap: min(24px, 1.6666666667vw);
        margin-top: min(14px, .9722222222vw);
        padding: min(5px, .3472222222vw)
    }

    .p-support-case__subtitle span+span::before {
        left: max(-15px, -1.0416666667vw)
    }

    .p-support-case .c-button {
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-blog__wrap {
        margin-top: min(100px, 6.9444444444vw);
        padding-bottom: min(100px, 6.9444444444vw);
        padding-top: min(100px, 6.9444444444vw)
    }

    .p-blog .c-wrap-column {
        padding-bottom: min(100px, 6.9444444444vw)
    }

    .p-blog-list {
        gap: min(20px, 1.3888888889vw)
    }

    .p-blog-list__item {
        gap: min(10px, .6944444444vw)
    }

    .p-blog-list__link {
        gap: min(8px, .5555555556vw);
        padding: min(30px, 2.0833333333vw) min(30px, 2.0833333333vw) min(30px, 2.0833333333vw) min(310px, 21.5277777778vw);
        position: relative
    }

    .p-blog-list__link::after,
    .p-blog-list__link::before {
        border-radius: 50%;
        content: "";
        display: block;
        height: 7.6923076923vw;
        width: 7.6923076923vw
    }

    .p-blog-list__link::before {
        background-color: #fff;
        border: 1px solid #ccc
    }

    .p-blog-list__link::after {
        -webkit-mask-image: url(../images/common/icon_arrow.svg);
        mask-image: url(../images/common/icon_arrow.svg);
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-position: center;
        -webkit-mask-size: 2.0512820513vw;
        background-color: #000;
        mask-size: 2.0512820513vw
    }

    .p-blog-list__link::after,
    .p-blog-list__link::before {
        bottom: 0;
        left: min(30px, 2.0833333333vw);
        margin: auto;
        position: absolute;
        top: 0
    }

    .p-blog-list__img {
        bottom: 0;
        height: -moz-max-content;
        height: max-content;
        left: min(100px, 6.9444444444vw);
        margin: auto;
        position: absolute;
        top: 0;
        width: min(180px, 12.5vw)
    }

    .p-blog-list__detail {
        gap: min(11px, .7638888889vw);
        width: 100%
    }

    .p-blog-list__date {
        font-size: min(12px, .8333333333vw)
    }

    .p-blog-list__tag {
        font-size: min(12px, .8333333333vw);
        padding: min(4px, .2777777778vw) min(8px, .5555555556vw)
    }

    .p-blog-list__text {
        font-size: min(20px, 1.3888888889vw)
    }

    .p-blog-detail {
        font-size: min(12px, .8333333333vw);
        gap: min(11px, .7638888889vw)
    }

    .p-blog-detail+* {
        margin-top: min(24px, 1.6666666667vw)
    }

    .p-blog-detail__tag {
        padding: min(8px, .5555555556vw)
    }

    .p-blog-nav+.p-blog-nav {
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-blog-nav__title {
        font-size: min(20px, 1.3888888889vw);
        padding-bottom: min(10px, .6944444444vw)
    }

    .p-blog-nav__list {
        gap: min(16px, 1.1111111111vw);
        margin-top: min(30px, 2.0833333333vw)
    }

    .p-blog-nav__date {
        font-size: min(12px, .8333333333vw)
    }

    .p-blog-nav__text {
        font-size: min(14px, .9722222222vw);
        margin-top: min(8px, .5555555556vw)
    }

    .p-blog-banner {
        gap: min(20px, 1.3888888889vw)
    }

    .p-blog-banner__item {
        width: min(386px, 26.8055555556vw)
    }

    .p-blog-banner__link {
        border-radius: min(6px, .4166666667vw);
        display: block;
        gap: min(8px, .5555555556vw) min(11px, .7638888889vw);
        padding: min(20px, 1.3888888889vw) min(20px, 1.3888888889vw) min(20px, 1.3888888889vw) min(154px, 10.6944444444vw)
    }

    .p-blog-banner__img {
        left: min(20px, 1.3888888889vw);
        position: absolute;
        top: min(20px, 1.3888888889vw);
        width: min(120px, 8.3333333333vw)
    }

    .p-blog-banner__date {
        font-size: min(12px, .8333333333vw)
    }

    .p-blog-banner__tag {
        font-size: min(12px, .8333333333vw);
        padding: min(8px, .5555555556vw)
    }

    .p-blog-banner__text-wrap {
        margin-top: min(8px, .5555555556vw)
    }

    .p-blog-banner__text {
        font-size: min(14px, .9722222222vw);
        margin-top: min(8px, .5555555556vw)
    }

    .p-blog-edition__list {
        gap: min(8px, .5555555556vw);
        margin-top: min(38px, 2.6388888889vw);
        width: 100%
    }

    .p-blog-edition__item {
        border-radius: min(6px, .4166666667vw);
        gap: min(22px, 1.5277777778vw);
        min-height: min(445px, 30.9027777778vw);
        padding-bottom: min(32px, 2.2222222222vw);
        width: min(394px, 27.3611111111vw)
    }

    .p-blog-edition__item::before {
        bottom: min(9px, .625vw);
        color: #f6f6f6;
        display: block;
        font-family: Lato, sans-serif;
        font-size: min(60px, 4.1666666667vw);
        font-style: normal;
        font-weight: 400;
        letter-spacing: .04em;
        position: absolute;
        right: min(5px, .3472222222vw);
        z-index: 0
    }

    .p-blog-edition__item.is-item1::before {
        content: "01"
    }

    .p-blog-edition__item.is-item2::before {
        content: "02"
    }

    .p-blog-edition__item.is-item3::before {
        content: "03"
    }

    .p-blog-edition__item .c-button {
        margin-top: 0
    }

    .p-blog-edition__summary {
        font-size: min(14px, .9722222222vw);
        padding: min(5px, .3472222222vw) min(20px, 1.3888888889vw)
    }

    .p-blog-edition__img {
        height: min(120px, 8.3333333333vw);
        margin-top: auto;
        transform: translateY(min(9px, .625vw));
        width: min(120px, 8.3333333333vw)
    }

    .p-blog-edition__subtitle {
        font-size: min(24px, 1.6666666667vw);
        margin-top: min(12px, .8333333333vw)
    }

    .p-blog-edition__text {
        font-size: min(14px, .9722222222vw);
        width: min(260px, 18.0555555556vw)
    }

    .p-blog-edition>.c-button {
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-partnerDetail .c-wrap-column {
        flex-direction: row
    }

    .p-partnerDetail .c-wrap-column {
        padding-bottom: min(100px, 6.9444444444vw)
    }

    .p-partnerDetail-profile__logo {
        margin-top: min(20px, 1.3888888889vw)
    }

    .p-partnerDetail-profile__list {
        gap: min(8px, .5555555556vw);
        margin-top: min(20px, 1.3888888889vw)
    }

    .p-partnerDetail-profile__item {
        font-size: min(14px, .9722222222vw);
        padding: min(5px, .3472222222vw) min(10px, .6944444444vw)
    }

    .p-partnerDetail-banner {
        margin-top: min(40px, 2.7777777778vw)
    }

    .p-partnerDetail-banner__item+.p-partnerDetail-banner__item {
        margin-top: min(10px, .6944444444vw)
    }

    .p-partnerDetail-logo {
        padding: min(20px, 1.3888888889vw)
    }

    .p-partnerDetail-logo img {
        height: min(35.77px, 2.4840277778vw)
    }

    .grid {
        gap: 30px
    }

    .pc-grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .pc-grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .gap-0 {
        gap: 0
    }

    .pc-gap-0 {
        gap: 0 !important
    }

    .gap-x-0x {
        -moz-column-gap: 0;
        column-gap: 0
    }

    .pc-gap-x-0 {
        -moz-column-gap: 0 !important;
        column-gap: 0 !important
    }

    .gap-10 {
        gap: 10px
    }

    .pc-gap-10 {
        gap: 10px !important
    }

    .gap-x-10x {
        -moz-column-gap: 10px;
        column-gap: 10px
    }

    .pc-gap-x-10 {
        -moz-column-gap: 10px !important;
        column-gap: 10px !important
    }

    .gap-20 {
        gap: 20px
    }

    .pc-gap-20 {
        gap: 20px !important
    }

    .gap-x-20x {
        -moz-column-gap: 20px;
        column-gap: 20px
    }

    .pc-gap-x-20 {
        -moz-column-gap: 20px !important;
        column-gap: 20px !important
    }

    .gap-30 {
        gap: 30px
    }

    .pc-gap-30 {
        gap: 30px !important
    }

    .gap-x-30x {
        -moz-column-gap: 30px;
        column-gap: 30px
    }

    .pc-gap-x-30 {
        -moz-column-gap: 30px !important;
        column-gap: 30px !important
    }

    .gap-40 {
        gap: 40px
    }

    .pc-gap-40 {
        gap: 40px !important
    }

    .gap-x-40x {
        -moz-column-gap: 40px;
        column-gap: 40px
    }

    .pc-gap-x-40 {
        -moz-column-gap: 40px !important;
        column-gap: 40px !important
    }

    .gap-50 {
        gap: 50px
    }

    .pc-gap-50 {
        gap: 50px !important
    }

    .gap-x-50x {
        -moz-column-gap: 50px;
        column-gap: 50px
    }

    .pc-gap-x-50 {
        -moz-column-gap: 50px !important;
        column-gap: 50px !important
    }

    .gap-60 {
        gap: 60px
    }

    .pc-gap-60 {
        gap: 60px !important
    }

    .gap-x-60x {
        -moz-column-gap: 60px;
        column-gap: 60px
    }

    .pc-gap-x-60 {
        -moz-column-gap: 60px !important;
        column-gap: 60px !important
    }

    .pc-block {
        display: block !important
    }

    .pc-table-cell {
        display: table-cell !important
    }

    .is-sp,
    .sp-only {
        display: none !important
    }

    .m-0 {
        margin: 0 !important
    }

    .mt-0 {
        margin-top: 0 !important
    }

    .mb-0 {
        margin-bottom: 0 !important
    }

    .ml-0 {
        margin-left: 0 !important
    }

    .pc-mt-0 {
        margin-top: 0 !important
    }

    .pc-mb-0 {
        margin-bottom: 0 !important
    }

    .p-0 {
        padding: 0 !important
    }

    .pt-0 {
        padding-top: 0 !important
    }

    .pb-0 {
        padding-bottom: 0 !important
    }

    .pc-pt-0 {
        padding-top: 0 !important
    }

    .pc-pb-0 {
        padding-bottom: 0 !important
    }

    .m-10 {
        margin: 10px !important
    }

    .mt-10 {
        margin-top: 10px !important
    }

    .mb-10 {
        margin-bottom: 10px !important
    }

    .ml-10 {
        margin-left: 10px !important
    }

    .pc-mt-10 {
        margin-top: 10px !important
    }

    .pc-mb-10 {
        margin-bottom: 10px !important
    }

    .p-10 {
        padding: 10px !important
    }

    .pt-10 {
        padding-top: 10px !important
    }

    .pb-10 {
        padding-bottom: 10px !important
    }

    .pc-pt-10 {
        padding-top: 10px !important
    }

    .pc-pb-10 {
        padding-bottom: 10px !important
    }

    .m-20 {
        margin: 20px !important
    }

    .mt-20 {
        margin-top: 20px !important
    }

    .mb-20 {
        margin-bottom: 20px !important
    }

    .ml-20 {
        margin-left: 20px !important
    }

    .pc-mt-20 {
        margin-top: 20px !important
    }

    .pc-mb-20 {
        margin-bottom: 20px !important
    }

    .p-20 {
        padding: 20px !important
    }

    .pt-20 {
        padding-top: 20px !important
    }

    .pb-20 {
        padding-bottom: 20px !important
    }

    .pc-pt-20 {
        padding-top: 20px !important
    }

    .pc-pb-20 {
        padding-bottom: 20px !important
    }

    .m-30 {
        margin: 30px !important
    }

    .mt-30 {
        margin-top: 30px !important
    }

    .mb-30 {
        margin-bottom: 30px !important
    }

    .ml-30 {
        margin-left: 30px !important
    }

    .pc-mt-30 {
        margin-top: 30px !important
    }

    .pc-mb-30 {
        margin-bottom: 30px !important
    }

    .p-30 {
        padding: 30px !important
    }

    .pt-30 {
        padding-top: 30px !important
    }

    .pb-30 {
        padding-bottom: 30px !important
    }

    .pc-pt-30 {
        padding-top: 30px !important
    }

    .pc-pb-30 {
        padding-bottom: 30px !important
    }

    .m-40 {
        margin: 40px !important
    }

    .mt-40 {
        margin-top: 40px !important
    }

    .mb-40 {
        margin-bottom: 40px !important
    }

    .ml-40 {
        margin-left: 40px !important
    }

    .pc-mt-40 {
        margin-top: 40px !important
    }

    .pc-mb-40 {
        margin-bottom: 40px !important
    }

    .p-40 {
        padding: 40px !important
    }

    .pt-40 {
        padding-top: 40px !important
    }

    .pb-40 {
        padding-bottom: 40px !important
    }

    .pc-pt-40 {
        padding-top: 40px !important
    }

    .pc-pb-40 {
        padding-bottom: 40px !important
    }

    .m-50 {
        margin: 50px !important
    }

    .mt-50 {
        margin-top: 50px !important
    }

    .mb-50 {
        margin-bottom: 50px !important
    }

    .ml-50 {
        margin-left: 50px !important
    }

    .pc-mt-50 {
        margin-top: 50px !important
    }

    .pc-mb-50 {
        margin-bottom: 50px !important
    }

    .p-50 {
        padding: 50px !important
    }

    .pt-50 {
        padding-top: 50px !important
    }

    .pb-50 {
        padding-bottom: 50px !important
    }

    .pc-pt-50 {
        padding-top: 50px !important
    }

    .pc-pb-50 {
        padding-bottom: 50px !important
    }

    .m-60 {
        margin: 60px !important
    }

    .mt-60 {
        margin-top: 60px !important
    }

    .mb-60 {
        margin-bottom: 60px !important
    }

    .ml-60 {
        margin-left: 60px !important
    }

    .pc-mt-60 {
        margin-top: 60px !important
    }

    .pc-mb-60 {
        margin-bottom: 60px !important
    }

    .p-60 {
        padding: 60px !important
    }

    .pt-60 {
        padding-top: 60px !important
    }

    .pb-60 {
        padding-bottom: 60px !important
    }

    .pc-pt-60 {
        padding-top: 60px !important
    }

    .pc-pb-60 {
        padding-bottom: 60px !important
    }

    .m-70 {
        margin: 70px !important
    }

    .mt-70 {
        margin-top: 70px !important
    }

    .mb-70 {
        margin-bottom: 70px !important
    }

    .ml-70 {
        margin-left: 70px !important
    }

    .pc-mt-70 {
        margin-top: 70px !important
    }

    .pc-mb-70 {
        margin-bottom: 70px !important
    }

    .p-70 {
        padding: 70px !important
    }

    .pt-70 {
        padding-top: 70px !important
    }

    .pb-70 {
        padding-bottom: 70px !important
    }

    .pc-pt-70 {
        padding-top: 70px !important
    }

    .pc-pb-70 {
        padding-bottom: 70px !important
    }

    .m-80 {
        margin: 80px !important
    }

    .mt-80 {
        margin-top: 80px !important
    }

    .mb-80 {
        margin-bottom: 80px !important
    }

    .ml-80 {
        margin-left: 80px !important
    }

    .pc-mt-80 {
        margin-top: 80px !important
    }

    .pc-mb-80 {
        margin-bottom: 80px !important
    }

    .p-80 {
        padding: 80px !important
    }

    .pt-80 {
        padding-top: 80px !important
    }

    .pb-80 {
        padding-bottom: 80px !important
    }

    .pc-pt-80 {
        padding-top: 80px !important
    }

    .pc-pb-80 {
        padding-bottom: 80px !important
    }

    .m-90 {
        margin: 90px !important
    }

    .mt-90 {
        margin-top: 90px !important
    }

    .mb-90 {
        margin-bottom: 90px !important
    }

    .ml-90 {
        margin-left: 90px !important
    }

    .pc-mt-90 {
        margin-top: 90px !important
    }

    .pc-mb-90 {
        margin-bottom: 90px !important
    }

    .p-90 {
        padding: 90px !important
    }

    .pt-90 {
        padding-top: 90px !important
    }

    .pb-90 {
        padding-bottom: 90px !important
    }

    .pc-pt-90 {
        padding-top: 90px !important
    }

    .pc-pb-90 {
        padding-bottom: 90px !important
    }

    .m-100 {
        margin: 100px !important
    }

    .mt-100 {
        margin-top: 100px !important
    }

    .mb-100 {
        margin-bottom: 100px !important
    }

    .ml-100 {
        margin-left: 100px !important
    }

    .pc-mt-100 {
        margin-top: 100px !important
    }

    .pc-mb-100 {
        margin-bottom: 100px !important
    }

    .p-100 {
        padding: 100px !important
    }

    .pt-100 {
        padding-top: 100px !important
    }

    .pb-100 {
        padding-bottom: 100px !important
    }

    .pc-pt-100 {
        padding-top: 100px !important
    }

    .pc-pb-100 {
        padding-bottom: 100px !important
    }

    .m-110 {
        margin: 110px !important
    }

    .mt-110 {
        margin-top: 110px !important
    }

    .mb-110 {
        margin-bottom: 110px !important
    }

    .ml-110 {
        margin-left: 110px !important
    }

    .pc-mt-110 {
        margin-top: 110px !important
    }

    .pc-mb-110 {
        margin-bottom: 110px !important
    }

    .p-110 {
        padding: 110px !important
    }

    .pt-110 {
        padding-top: 110px !important
    }

    .pb-110 {
        padding-bottom: 110px !important
    }

    .pc-pt-110 {
        padding-top: 110px !important
    }

    .pc-pb-110 {
        padding-bottom: 110px !important
    }

    .m-120 {
        margin: 120px !important
    }

    .mt-120 {
        margin-top: 120px !important
    }

    .mb-120 {
        margin-bottom: 120px !important
    }

    .ml-120 {
        margin-left: 120px !important
    }

    .pc-mt-120 {
        margin-top: 120px !important
    }

    .pc-mb-120 {
        margin-bottom: 120px !important
    }

    .p-120 {
        padding: 120px !important
    }

    .pt-120 {
        padding-top: 120px !important
    }

    .pb-120 {
        padding-bottom: 120px !important
    }

    .pc-pt-120 {
        padding-top: 120px !important
    }

    .pc-pb-120 {
        padding-bottom: 120px !important
    }

    .m-130 {
        margin: 130px !important
    }

    .mt-130 {
        margin-top: 130px !important
    }

    .mb-130 {
        margin-bottom: 130px !important
    }

    .ml-130 {
        margin-left: 130px !important
    }

    .pc-mt-130 {
        margin-top: 130px !important
    }

    .pc-mb-130 {
        margin-bottom: 130px !important
    }

    .p-130 {
        padding: 130px !important
    }

    .pt-130 {
        padding-top: 130px !important
    }

    .pb-130 {
        padding-bottom: 130px !important
    }

    .pc-pt-130 {
        padding-top: 130px !important
    }

    .pc-pb-130 {
        padding-bottom: 130px !important
    }

    .m-140 {
        margin: 140px !important
    }

    .mt-140 {
        margin-top: 140px !important
    }

    .mb-140 {
        margin-bottom: 140px !important
    }

    .ml-140 {
        margin-left: 140px !important
    }

    .pc-mt-140 {
        margin-top: 140px !important
    }

    .pc-mb-140 {
        margin-bottom: 140px !important
    }

    .p-140 {
        padding: 140px !important
    }

    .pt-140 {
        padding-top: 140px !important
    }

    .pb-140 {
        padding-bottom: 140px !important
    }

    .pc-pt-140 {
        padding-top: 140px !important
    }

    .pc-pb-140 {
        padding-bottom: 140px !important
    }

    .m-150 {
        margin: 150px !important
    }

    .mt-150 {
        margin-top: 150px !important
    }

    .mb-150 {
        margin-bottom: 150px !important
    }

    .ml-150 {
        margin-left: 150px !important
    }

    .pc-mt-150 {
        margin-top: 150px !important
    }

    .pc-mb-150 {
        margin-bottom: 150px !important
    }

    .p-150 {
        padding: 150px !important
    }

    .pt-150 {
        padding-top: 150px !important
    }

    .pb-150 {
        padding-bottom: 150px !important
    }

    .pc-pt-150 {
        padding-top: 150px !important
    }

    .pc-pb-150 {
        padding-bottom: 150px !important
    }

    .m-160 {
        margin: 160px !important
    }

    .mt-160 {
        margin-top: 160px !important
    }

    .mb-160 {
        margin-bottom: 160px !important
    }

    .ml-160 {
        margin-left: 160px !important
    }

    .pc-mt-160 {
        margin-top: 160px !important
    }

    .pc-mb-160 {
        margin-bottom: 160px !important
    }

    .p-160 {
        padding: 160px !important
    }

    .pt-160 {
        padding-top: 160px !important
    }

    .pb-160 {
        padding-bottom: 160px !important
    }

    .pc-pt-160 {
        padding-top: 160px !important
    }

    .pc-pb-160 {
        padding-bottom: 160px !important
    }

    .pc-mt-1em {
        margin-top: 1em !important
    }

    .pc-mb-1em {
        margin-bottom: 1em !important
    }

    .pc-pt-1em {
        padding-top: 1em !important
    }

    .pc-pb-1em {
        padding-bottom: 1em !important
    }

    .pc-mt-2em {
        margin-top: 2em !important
    }

    .pc-mb-2em {
        margin-bottom: 2em !important
    }

    .pc-pt-2em {
        padding-top: 2em !important
    }

    .pc-pb-2em {
        padding-bottom: 2em !important
    }

    .pc-mt-3em {
        margin-top: 3em !important
    }

    .pc-mb-3em {
        margin-bottom: 3em !important
    }

    .pc-pt-3em {
        padding-top: 3em !important
    }

    .pc-pb-3em {
        padding-bottom: 3em !important
    }

    .pc-mt-4em {
        margin-top: 4em !important
    }

    .pc-mb-4em {
        margin-bottom: 4em !important
    }

    .pc-pt-4em {
        padding-top: 4em !important
    }

    .pc-pb-4em {
        padding-bottom: 4em !important
    }

    .pc-mt-5em {
        margin-top: 5em !important
    }

    .pc-mb-5em {
        margin-bottom: 5em !important
    }

    .pc-pt-5em {
        padding-top: 5em !important
    }

    .pc-pb-5em {
        padding-bottom: 5em !important
    }

    .pc-mt-6em {
        margin-top: 6em !important
    }

    .pc-mb-6em {
        margin-bottom: 6em !important
    }

    .pc-pt-6em {
        padding-top: 6em !important
    }

    .pc-pb-6em {
        padding-bottom: 6em !important
    }

    .pc-mt-7em {
        margin-top: 7em !important
    }

    .pc-mb-7em {
        margin-bottom: 7em !important
    }

    .pc-pt-7em {
        padding-top: 7em !important
    }

    .pc-pb-7em {
        padding-bottom: 7em !important
    }

    .pc-mt-8em {
        margin-top: 8em !important
    }

    .pc-mb-8em {
        margin-bottom: 8em !important
    }

    .pc-pt-8em {
        padding-top: 8em !important
    }

    .pc-pb-8em {
        padding-bottom: 8em !important
    }

    .pc-mt-9em {
        margin-top: 9em !important
    }

    .pc-mb-9em {
        margin-bottom: 9em !important
    }

    .pc-pt-9em {
        padding-top: 9em !important
    }

    .pc-pb-9em {
        padding-bottom: 9em !important
    }

    .pc-mt-10em {
        margin-top: 10em !important
    }

    .pc-mb-10em {
        margin-bottom: 10em !important
    }

    .pc-pt-10em {
        padding-top: 10em !important
    }

    .pc-pb-10em {
        padding-bottom: 10em !important
    }

    .pc-pl-2em {
        padding-left: 2em !important
    }

    .spacer-s {
        margin-top: 30px !important
    }

    .spacer {
        margin-top: 60px !important
    }

    .spacer-l {
        padding-top: 100px !important
    }

    .u-ta_l-pc {
        text-align: left
    }
}

@media (min-width:768px)and (min-width:768px) {
    .l-case-list__item::before {
        height: min(48px, 3.3333333333vw);
        width: min(48px, 3.3333333333vw)
    }

    .p-support-case__item::before {
        height: min(48px, 3.3333333333vw);
        width: min(48px, 3.3333333333vw)
    }

    .p-blog-list__link::after,
    .p-blog-list__link::before {
        height: min(40px, 2.7777777778vw);
        transition: background-color .3s ease-out;
        width: min(40px, 2.7777777778vw)
    }

    .p-blog-list__link::after {
        -webkit-mask-size: min(8px, .5555555556vw);
        mask-size: min(8px, .5555555556vw)
    }

    .p-blog-list__link:hover::before {
        background-color: #000
    }

    .p-blog-list__link:hover::after {
        background-color: #fff
    }
}

@media (max-width:767.98px) {
    body {
        font-size: 4.1025641026vw
    }

    .c-button {
        flex-direction: column;
        gap: 3.8461538462vw;
        max-width: 89.7435897436vw;
        width: -moz-max-content;
        width: max-content
    }

    .c-pagetitle__img+.c-pagetitle {
        padding-left: 3.8461538462vw
    }

    .c-img--column2 {
        flex-direction: column
    }

    .c-img--column2:has(.c-img__caption) {
        gap: 5.1282051282vw
    }

    .c-img--column3 {
        flex-direction: column
    }

    .c-img--column3:has(.c-img__caption) {
        gap: 5.1282051282vw
    }

    .c-table__container {
        overflow-x: scroll;
        padding-left: 5.1282051282vw;
        padding-right: 15.3846153846vw;
        translate: -5.1282051282vw;
        width: calc(100% + 10.2564102564vw)
    }

    .c-table__wrap {
        width: -moz-max-content;
        width: max-content
    }

    .c-table__th {
        height: 12.0512820513vw;
        min-width: 64.1025641026vw
    }

    .c-table__td {
        font-size: 4.1025641026vw;
        min-height: 30.7692307692vw;
        padding: 2.5641025641vw 3.0769230769vw
    }

    .l-header__box {
        border-top: 1px solid rgba(255, 255, 255, .2);
        margin-top: 7.6923076923vw;
        padding-top: 5.1282051282vw
    }

    .l-header-menu {
        background-color: #000;
        color: #fff;
        height: 100dvh;
        inset: 0;
        overflow-y: auto;
        padding: 17.9487179487vw 5.1282051282vw 12.8205128205vw;
        position: fixed;
        transition: translate .3s ease-in-out;
        translate: 100vw;
        width: 100%;
        z-index: -1
    }

    .is-open .l-header-menu {
        translate: 0
    }

    .l-header-nav__item+.l-header-nav__item {
        margin-top: 3.8461538462vw
    }

    .l-header-nav__link {
        display: block;
        text-align: left
    }

    .l-header-nav__link.js-megamenu-trigger::after,
    .l-header-nav__link.js-megamenu-trigger::before {
        background-color: #fff;
        bottom: 0;
        content: "";
        display: block;
        height: 1px;
        margin: auto;
        position: absolute;
        right: 0;
        top: 0;
        transition: rotate .3s ease-in-out;
        width: 2.5641025641vw
    }

    .l-header-nav__link.js-megamenu-trigger::after {
        rotate: 90deg
    }

    .l-header-nav__item:has(.is-active) .l-header-nav__link.js-megamenu-trigger::after,
    .l-header-nav__item:has(.is-active) .l-header-nav__link.js-megamenu-trigger::before {
        rotate: 180deg
    }

    .l-header-nav__box {
        height: 0;
        max-height: -moz-max-content;
        max-height: max-content;
        overflow: hidden;
        padding: 0 5.1282051282vw;
        width: 100%
    }

    .l-header-nav__box.is-active {
        height: 50vh;
        padding: 2.5641025641vw 5.1282051282vw 5.1282051282vw;
        transition: all .5s linear
    }

    .l-header-nav__text {
        color: #fff;
        display: block;
        font-size: 3.5897435897vw;
        line-height: 2;
        width: 100%
    }

    .l-header-nav__text+.l-header-nav__text {
        margin-top: 2.0512820513vw
    }

    .l-footer__container {
        flex-direction: column;
        margin-top: 10.2564102564vw
    }

    .l-news__arrow {
        bottom: -13.3333333333vw;
        left: 0;
        margin-left: auto;
        margin-right: auto;
        right: 0
    }

    .l-news__arrow.is-next {
        translate: 6.4102564103vw
    }

    .l-news__arrow.is-prev {
        translate: -6.4102564103vw
    }

    .l-search__list {
        flex-direction: column;
        margin-top: 5.1282051282vw
    }

    .l-case .c-heading {
        text-align: left
    }

    .l-case__subtitle {
        text-align: left
    }

    .l-case .c-button__link--fill {
        width: 79.4871794872vw
    }

    .l-case-list__item.is-item1 .l-case-list__title::before {
        background-image: url(../images/support/case_icon1.svg)
    }

    .l-case-list__item.is-item2 .l-case-list__title::before {
        background-image: url(../images/support/case_icon2.svg)
    }

    .l-case-list__item.is-item3 .l-case-list__title::before {
        background-image: url(../images/support/case_icon3.svg)
    }

    .l-case-list__item.is-item4 .l-case-list__title::before {
        background-image: url(../images/support/case_icon4.svg)
    }

    .l-case-list__title {
        align-items: center;
        display: flex;
        gap: 3.8461538462vw;
        justify-content: center;
        margin-left: auto;
        margin-right: auto;
        width: -moz-max-content;
        width: max-content
    }

    .l-case-list__title::before {
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain;
        content: "";
        display: block;
        height: 11.5384615385vw;
        margin: auto;
        width: 11.5384615385vw
    }

    .l-sort__list {
        flex-direction: column
    }

    .l-sort__link {
        padding-bottom: 9.2307692308vw
    }

    .l-card__item {
        width: 100%
    }

    .l-card-task__title {
        min-height: 15.3846153846vw;
        padding-left: 15.3846153846vw
    }

    .l-card-banner__img {
        display: block;
        margin-top: 2.5641025641vw
    }

    .l-card-review {
        align-items: center;
        flex-wrap: wrap;
        gap: 3.8461538462vw 5.1282051282vw
    }

    .l-card__item:has(.l-card-review) {
        padding-left: 5.1282051282vw;
        padding-right: 5.1282051282vw
    }

    .l-card-review__box {
        flex: 1;
        gap: 2.3076923077vw
    }

    .l-card-scroll {
        overflow-x: scroll;
        padding-left: 5.1282051282vw;
        translate: -5.1282051282vw;
        width: calc(100% + 10.2564102564vw)
    }

    .l-card-scroll .l-card {
        flex-direction: row;
        gap: 2.5641025641vw;
        width: 228.2051282051vw
    }

    .l-card-scroll .l-card__item {
        width: 51.2820512821vw
    }

    .l-card-section__item {
        flex-direction: column
    }

    .l-card-section__text {
        width: 100%
    }

    .l-pickup__container {
        overflow-x: scroll;
        padding-left: 5.1282051282vw;
        padding-right: 5.1282051282vw;
        translate: -5.1282051282vw;
        width: 100vw
    }

    .l-pickup__list {
        padding-right: 10.2564102564vw
    }

    .l-start__text {
        padding-left: 5.1282051282vw;
        padding-right: 5.1282051282vw
    }

    .p-top-record__button-list {
        margin-top: 6.1538461538vw
    }

    .is-button2 .p-top-record__button-img {
        margin-top: 7.1794871795vw
    }

    .p-top-challenges__item+.p-top-challenges__item {
        margin-top: 2.5641025641vw
    }

    .p-top-challenges__item::after {
        left: 5.1282051282vw;
        position: absolute;
        top: 5.1282051282vw
    }

    .p-top-challenges__text {
        font-size: 3.5897435897vw;
        margin-top: 2.5641025641vw
    }

    .p-top-scene__tab {
        padding: 0 2.5641025641vw
    }

    .p-top-scene__box {
        flex-direction: column
    }

    .p-top-scene__aside {
        border-radius: 0 0 1.5384615385vw 1.5384615385vw;
        padding: 5.1282051282vw
    }

    .p-top-scene__aside-item+.p-top-scene__aside-item {
        margin-top: 2.5641025641vw
    }

    .p-top-key4__list {
        display: block;
        margin: 7.9487179487vw auto 0;
        translate: 1.7948717949vw
    }

    .p-top-key4__item {
        align-items: center;
        display: flex;
        flex-direction: column;
        height: 66.6666666667vw;
        justify-content: center;
        padding-bottom: 5.1282051282vw;
        width: 66.6666666667vw
    }

    .p-top-key4__item.is-item2,
    .p-top-key4__item.is-item4 {
        margin-left: auto
    }

    .p-top-key4__item+.p-top-key4__item {
        margin-top: 2.5641025641vw
    }

    .p-top-edition__container {
        overflow-x: scroll;
        padding-left: 5.1282051282vw;
        padding-right: 5.1282051282vw;
        translate: -5.1282051282vw;
        width: 100vw
    }

    .p-top-edition__list {
        padding-right: 10.2564102564vw
    }

    .p-top-learn__container {
        overflow-x: scroll;
        padding-left: 5.1282051282vw;
        padding-right: 5.1282051282vw;
        translate: -5.1282051282vw;
        width: 100vw
    }

    .p-top-learn__list {
        padding-right: 10.2564102564vw
    }

    .p-top-learn__item {
        padding-right: 0
    }

    .p-top-learn__item.is-item1 {
        padding-left: 0;
        width: 82.0512820513vw
    }

    .p-top-learn__item.is-item3 {
        padding-right: 0;
        width: 92.3076923077vw
    }

    .p-top-events__arrow {
        left: 0;
        margin: auto;
        right: 0;
        top: 12.8205128205vw
    }

    .p-top-events__arrow.is-next {
        translate: 5.1282051282vw
    }

    .p-top-events__arrow.is-prev {
        translate: -5.1282051282vw
    }

    .p-top-news__list {
        margin-top: 10.2564102564vw
    }

    .p-top-news__link::after,
    .p-top-news__link::before {
        right: 5.1282051282vw
    }

    .p-top-news__subtitle {
        width: 69.2307692308vw
    }

    .p-overview__container--scroll {
        overflow-x: scroll;
        padding-left: 5.1282051282vw;
        padding-right: 5.1282051282vw;
        translate: -5.1282051282vw;
        width: 100vw
    }

    .p-overview-search__img {
        display: block;
        margin-top: 2.5641025641vw
    }

    .p-cases .l-case {
        text-align: left
    }

    .p-cases-pickup .c-wrap-inner {
        width: 100%
    }

    .p-cases-pickup__container {
        margin-top: 7.6923076923vw;
        overflow-x: scroll;
        padding-left: 5.1282051282vw;
        padding-right: 5.1282051282vw;
        width: 100%
    }

    .p-cases-pickup__list {
        padding-right: 15.3846153846vw
    }

    .p-cases-pickup__arrow {
        left: 0;
        margin: auto;
        right: 0;
        top: 12.8205128205vw
    }

    .p-cases-pickup__arrow.is-next {
        translate: 5.1282051282vw
    }

    .p-cases-pickup__arrow.is-prev {
        translate: -5.1282051282vw
    }

    .p-cases-company__container {
        overflow-x: scroll;
        padding-left: 5.1282051282vw;
        translate: -5.1282051282vw;
        width: 100vw
    }

    .p-cases-company__list {
        padding-right: 15.3846153846vw
    }

    .p-cases-company__link {
        padding-bottom: 16.1538461538vw
    }

    .p-partner-kv .c-button__link--fill {
        width: 79.4871794872vw
    }

    .p-partner-search__title {
        align-items: center;
        display: flex;
        gap: 3.8461538462vw;
        width: 100%
    }

    .p-partner-search__title::before {
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain;
        content: "";
        display: block;
        height: 23.0769230769vw;
        width: 23.0769230769vw
    }

    .is-item1 .p-partner-search__title::before {
        background-image: url(../images/partner/search_icon1.svg)
    }

    .is-item2 .p-partner-search__title::before {
        background-image: url(../images/partner/search_icon2.svg)
    }

    .is-item3 .p-partner-search__title::before {
        background-image: url(../images/partner/search_icon3.svg)
    }

    .is-item4 .p-partner-search__title::before {
        background-image: url(../images/partner/search_icon4.svg)
    }

    .p-partner-benefit__item {
        width: 100%
    }

    .p-support-kv__num {
        left: 5.1282051282vw;
        position: absolute;
        top: 5.1282051282vw
    }

    .p-support-worries__img {
        height: 12.3076923077vw;
        margin-left: auto;
        margin-right: auto;
        width: 28.2051282051vw
    }

    .p-support-worries__title {
        margin-top: 3.8461538462vw
    }

    .p-support-function__item+.p-support-function__item {
        margin-top: 2.5641025641vw
    }

    .p-support-function__item::after {
        left: 5.1282051282vw;
        position: absolute;
        top: 5.1282051282vw
    }

    .p-support-function__text {
        font-size: 3.5897435897vw;
        margin-top: 2.5641025641vw
    }

    .p-support-case__item.is-item1 .p-support-case__title::before {
        background-image: url(../images/support/case_icon1.svg)
    }

    .p-support-case__item.is-item2 .p-support-case__title::before {
        background-image: url(../images/support/case_icon2.svg)
    }

    .p-support-case__item.is-item3 .p-support-case__title::before {
        background-image: url(../images/support/case_icon3.svg)
    }

    .p-support-case__item.is-item4 .p-support-case__title::before {
        background-image: url(../images/support/case_icon4.svg)
    }

    .p-support-case__title {
        align-items: center;
        display: flex;
        gap: 3.8461538462vw;
        justify-content: center;
        margin-left: auto;
        margin-right: auto;
        width: -moz-max-content;
        width: max-content
    }

    .p-support-case__title::before {
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain;
        content: "";
        display: block;
        height: 11.5384615385vw;
        margin: auto;
        width: 11.5384615385vw
    }

    .p-blog-list__text-box {
        padding-right: 10.2564102564vw;
        position: relative;
        position: relative
    }

    .p-blog-list__text-box::after,
    .p-blog-list__text-box::before {
        border-radius: 50%;
        content: "";
        display: block;
        height: 7.6923076923vw;
        width: 7.6923076923vw
    }

    .p-blog-list__text-box::before {
        background-color: #fff;
        border: 1px solid #ccc
    }

    .p-blog-list__text-box::after {
        -webkit-mask-image: url(../images/common/icon_arrow.svg);
        mask-image: url(../images/common/icon_arrow.svg);
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-position: center;
        -webkit-mask-size: 2.0512820513vw;
        background-color: #000;
        mask-size: 2.0512820513vw
    }

    .p-blog-list__text-box::after,
    .p-blog-list__text-box::before {
        bottom: 0;
        height: 7.6923076923vw;
        margin: auto;
        position: absolute;
        right: 0;
        top: 0;
        width: 7.6923076923vw
    }

    .p-blog-banner__img {
        margin-right: 1.0256410256vw
    }

    .p-blog-edition__list {
        padding-right: 10.2564102564vw
    }

    .sp-grid-cols-1 {
        grid-template-columns: repeat(1, minmax(0, 1fr))
    }

    .sp-grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .sp-gap-0 {
        gap: 0 !important
    }

    .sp-gap-x-0 {
        -moz-column-gap: 0 !important;
        column-gap: 0 !important
    }

    .sp-gap-10 {
        gap: 2.5641025641vw !important
    }

    .sp-gap-x-10 {
        -moz-column-gap: 2.5641025641vw !important;
        column-gap: 2.5641025641vw !important
    }

    .sp-gap-20 {
        gap: 5.1282051282vw !important
    }

    .sp-gap-x-20 {
        -moz-column-gap: 5.1282051282vw !important;
        column-gap: 5.1282051282vw !important
    }

    .sp-gap-30 {
        gap: 7.6923076923vw !important
    }

    .sp-gap-x-30 {
        -moz-column-gap: 7.6923076923vw !important;
        column-gap: 7.6923076923vw !important
    }

    .sp-gap-40 {
        gap: 10.2564102564vw !important
    }

    .sp-gap-x-40 {
        -moz-column-gap: 10.2564102564vw !important;
        column-gap: 10.2564102564vw !important
    }

    .sp-gap-50 {
        gap: 12.8205128205vw !important
    }

    .sp-gap-x-50 {
        -moz-column-gap: 12.8205128205vw !important;
        column-gap: 12.8205128205vw !important
    }

    .sp-gap-60 {
        gap: 15.3846153846vw !important
    }

    .sp-gap-x-60 {
        -moz-column-gap: 15.3846153846vw !important;
        column-gap: 15.3846153846vw !important
    }

    .sp-block {
        display: block !important
    }

    .is-pc,
    .pc-only {
        display: none !important
    }

    .sp-mt-0 {
        margin-top: 0 !important
    }

    .sp-mb-0 {
        margin-bottom: 0 !important
    }

    .sp-pt-0 {
        padding-top: 0 !important
    }

    .sp-pb-0 {
        padding-bottom: 0 !important
    }

    .sp-mt-10 {
        margin-top: 2.5641025641vw !important
    }

    .sp-mb-10 {
        margin-bottom: 2.5641025641vw !important
    }

    .sp-pt-10 {
        padding-top: 2.5641025641vw !important
    }

    .sp-pb-10 {
        padding-bottom: 2.5641025641vw !important
    }

    .sp-mt-20 {
        margin-top: 5.1282051282vw !important
    }

    .sp-mb-20 {
        margin-bottom: 5.1282051282vw !important
    }

    .sp-pt-20 {
        padding-top: 5.1282051282vw !important
    }

    .sp-pb-20 {
        padding-bottom: 5.1282051282vw !important
    }

    .sp-mt-30 {
        margin-top: 7.6923076923vw !important
    }

    .sp-mb-30 {
        margin-bottom: 7.6923076923vw !important
    }

    .sp-pt-30 {
        padding-top: 7.6923076923vw !important
    }

    .sp-pb-30 {
        padding-bottom: 7.6923076923vw !important
    }

    .sp-mt-40 {
        margin-top: 10.2564102564vw !important
    }

    .sp-mb-40 {
        margin-bottom: 10.2564102564vw !important
    }

    .sp-pt-40 {
        padding-top: 10.2564102564vw !important
    }

    .sp-pb-40 {
        padding-bottom: 10.2564102564vw !important
    }

    .sp-mt-50 {
        margin-top: 12.8205128205vw !important
    }

    .sp-mb-50 {
        margin-bottom: 12.8205128205vw !important
    }

    .sp-pt-50 {
        padding-top: 12.8205128205vw !important
    }

    .sp-pb-50 {
        padding-bottom: 12.8205128205vw !important
    }

    .sp-mt-60 {
        margin-top: 15.3846153846vw !important
    }

    .sp-mb-60 {
        margin-bottom: 15.3846153846vw !important
    }

    .sp-pt-60 {
        padding-top: 15.3846153846vw !important
    }

    .sp-pb-60 {
        padding-bottom: 15.3846153846vw !important
    }

    .sp-mt-70 {
        margin-top: 17.9487179487vw !important
    }

    .sp-mb-70 {
        margin-bottom: 17.9487179487vw !important
    }

    .sp-pt-70 {
        padding-top: 17.9487179487vw !important
    }

    .sp-pb-70 {
        padding-bottom: 17.9487179487vw !important
    }

    .sp-mt-80 {
        margin-top: 20.5128205128vw !important
    }

    .sp-mb-80 {
        margin-bottom: 20.5128205128vw !important
    }

    .sp-pt-80 {
        padding-top: 20.5128205128vw !important
    }

    .sp-pb-80 {
        padding-bottom: 20.5128205128vw !important
    }

    .sp-mt-90 {
        margin-top: 23.0769230769vw !important
    }

    .sp-mb-90 {
        margin-bottom: 23.0769230769vw !important
    }

    .sp-pt-90 {
        padding-top: 23.0769230769vw !important
    }

    .sp-pb-90 {
        padding-bottom: 23.0769230769vw !important
    }

    .sp-mt-100 {
        margin-top: 25.641025641vw !important
    }

    .sp-mb-100 {
        margin-bottom: 25.641025641vw !important
    }

    .sp-pt-100 {
        padding-top: 25.641025641vw !important
    }

    .sp-pb-100 {
        padding-bottom: 25.641025641vw !important
    }

    .sp-mt-110 {
        margin-top: 28.2051282051vw !important
    }

    .sp-mb-110 {
        margin-bottom: 28.2051282051vw !important
    }

    .sp-pt-110 {
        padding-top: 28.2051282051vw !important
    }

    .sp-pb-110 {
        padding-bottom: 28.2051282051vw !important
    }

    .sp-mt-120 {
        margin-top: 30.7692307692vw !important
    }

    .sp-mb-120 {
        margin-bottom: 30.7692307692vw !important
    }

    .sp-pt-120 {
        padding-top: 30.7692307692vw !important
    }

    .sp-pb-120 {
        padding-bottom: 30.7692307692vw !important
    }

    .sp-mt-130 {
        margin-top: 33.3333333333vw !important
    }

    .sp-mb-130 {
        margin-bottom: 33.3333333333vw !important
    }

    .sp-pt-130 {
        padding-top: 33.3333333333vw !important
    }

    .sp-pb-130 {
        padding-bottom: 33.3333333333vw !important
    }

    .sp-mt-140 {
        margin-top: 35.8974358974vw !important
    }

    .sp-mb-140 {
        margin-bottom: 35.8974358974vw !important
    }

    .sp-pt-140 {
        padding-top: 35.8974358974vw !important
    }

    .sp-pb-140 {
        padding-bottom: 35.8974358974vw !important
    }

    .sp-mt-150 {
        margin-top: 38.4615384615vw !important
    }

    .sp-mb-150 {
        margin-bottom: 38.4615384615vw !important
    }

    .sp-pt-150 {
        padding-top: 38.4615384615vw !important
    }

    .sp-pb-150 {
        padding-bottom: 38.4615384615vw !important
    }

    .sp-mt-160 {
        margin-top: 41.0256410256vw !important
    }

    .sp-mb-160 {
        margin-bottom: 41.0256410256vw !important
    }

    .sp-pt-160 {
        padding-top: 41.0256410256vw !important
    }

    .sp-pb-160 {
        padding-bottom: 41.0256410256vw !important
    }

    .sp-mt-1em {
        margin-top: .2564102564vw !important
    }

    .sp-mb-1em {
        margin-bottom: .2564102564vw !important
    }

    .sp-pt-1em {
        padding-top: 1em !important
    }

    .sp-pb-1em {
        padding-bottom: 1em !important
    }

    .sp-mt-2em {
        margin-top: .5128205128vw !important
    }

    .sp-mb-2em {
        margin-bottom: .5128205128vw !important
    }

    .sp-pt-2em {
        padding-top: 2em !important
    }

    .sp-pb-2em {
        padding-bottom: 2em !important
    }

    .sp-mt-3em {
        margin-top: .7692307692vw !important
    }

    .sp-mb-3em {
        margin-bottom: .7692307692vw !important
    }

    .sp-pt-3em {
        padding-top: 3em !important
    }

    .sp-pb-3em {
        padding-bottom: 3em !important
    }

    .sp-mt-4em {
        margin-top: 1.0256410256vw !important
    }

    .sp-mb-4em {
        margin-bottom: 1.0256410256vw !important
    }

    .sp-pt-4em {
        padding-top: 4em !important
    }

    .sp-pb-4em {
        padding-bottom: 4em !important
    }

    .sp-mt-5em {
        margin-top: 1.2820512821vw !important
    }

    .sp-mb-5em {
        margin-bottom: 1.2820512821vw !important
    }

    .sp-pt-5em {
        padding-top: 5em !important
    }

    .sp-pb-5em {
        padding-bottom: 5em !important
    }

    .sp-mt-6em {
        margin-top: 1.5384615385vw !important
    }

    .sp-mb-6em {
        margin-bottom: 1.5384615385vw !important
    }

    .sp-pt-6em {
        padding-top: 6em !important
    }

    .sp-pb-6em {
        padding-bottom: 6em !important
    }

    .sp-mt-7em {
        margin-top: 1.7948717949vw !important
    }

    .sp-mb-7em {
        margin-bottom: 1.7948717949vw !important
    }

    .sp-pt-7em {
        padding-top: 7em !important
    }

    .sp-pb-7em {
        padding-bottom: 7em !important
    }

    .sp-mt-8em {
        margin-top: 2.0512820513vw !important
    }

    .sp-mb-8em {
        margin-bottom: 2.0512820513vw !important
    }

    .sp-pt-8em {
        padding-top: 8em !important
    }

    .sp-pb-8em {
        padding-bottom: 8em !important
    }

    .sp-mt-9em {
        margin-top: 2.3076923077vw !important
    }

    .sp-mb-9em {
        margin-bottom: 2.3076923077vw !important
    }

    .sp-pt-9em {
        padding-top: 9em !important
    }

    .sp-pb-9em {
        padding-bottom: 9em !important
    }

    .sp-mt-10em {
        margin-top: 2.5641025641vw !important
    }

    .sp-mb-10em {
        margin-bottom: 2.5641025641vw !important
    }

    .sp-pt-10em {
        padding-top: 10em !important
    }

    .sp-pb-10em {
        padding-bottom: 10em !important
    }
}

@media (max-width:767.98px)and (min-width:768px) {

    .p-blog-list__text-box::after,
    .p-blog-list__text-box::before {
        height: min(40px, 2.7777777778vw);
        transition: background-color .3s ease-out;
        width: min(40px, 2.7777777778vw)
    }

    .p-blog-list__text-box::after {
        -webkit-mask-size: min(8px, .5555555556vw);
        mask-size: min(8px, .5555555556vw)
    }

    .p-blog-list__text-box:hover::before {
        background-color: #000
    }

    .p-blog-list__text-box:hover::after {
        background-color: #fff
    }
}

@media screen {
    [hidden~=screen] {
        display: inherit
    }

    [hidden~=screen]:not(:active):not(:focus):not(:target) {
        position: absolute !important;
        clip: rect(0 0 0 0) !important
    }
}

@media screen and (-ms-high-contrast:none) {
    .splide__slide:focus-visible {
        border: 3px solid #0bf
    }

    .splide.is-focus-in .splide__slide:focus {
        border: 3px solid #0bf
    }

    .splide.is-focus-in .splide__track>.splide__list>.splide__slide:focus {
        border-color: #0bf
    }
}

@media (hover:hover)and (pointer:fine) {
    .p-overview-why .p-overview-why__client-marquee:hover .p-overview-why__client-track {
        animation-play-state: paused
    }
}

@media (prefers-reduced-motion:reduce) {
    .p-overview-why .p-overview-why__client-track {
        animation-duration: 1ms;
        animation-iteration-count: 1
    }
}

/*# sourceMappingURL=style.css.map */