/*!
 * 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
}

a {
    background-color: rgba(0, 0, 0, 0);
    color: inherit;
    text-decoration: none
}

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

/* 202603追記 */

.blog-list-main,
.blog-show-main,
.pleanama-main .pleanama_inner dl {
    a {
        color: #1d3994;
        cursor: pointer;
        transition: 0.3s
    }

    img {
        width: initial;
        max-width: 100% !important;
    }
}

.search-box {
    padding: 10px 15px;
    border-radius: 4px;
    box-shadow: rgba(0, 0, 0, 0.05) 0px 2px 4px;
    border: 1px solid rgb(204, 204, 204);
    display: flex;
    align-items: center;
    width: 100%;
    font-size: 16px;
    box-sizing: border-box;
    margin-bottom: 20px;
}

.filter-btn {
    padding: 8px 15px;
    border: 1px solid #ccc;
    background-color: #f9f9f9;
    cursor: pointer;
    border-radius: 4px;
    transition: background-color 0.2s, border-color 0.2s;
    font-size: 14px;
    white-space: nowrap;
}

.filter-btn.active {
    background-color: #000000;
    color: white;
    border-color: #000000;
}

.s-blog_detail {
    .c-button__link--black:hover {
        color: white !important;
    }
}

.l-card__item {
    .c-box__sub {
        img {
            aspect-ratio: 16 / 9;
            object-fit: cover;
            margin-bottom: min(8px, .5555555556vw);
        }
    }
}

section {
    scroll-margin-top: 80px;
}

.a-color,
.a-hover {
    border: 0;
    color: #1d3994;
    cursor: pointer;
    position: relative;
    display: inline-block;

    &::after {
        content: '';
        position: absolute;
        left: 0;
        bottom: 0px;
        width: 0;
        height: 1px;
        background: linear-gradient(90deg, #0066cc, #0099ff);
        transition: width 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    }
}

.indent-li {
    text-indent: 1em;
}

/* YouTube埋め込み */
.youtube-16-9 {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    max-width: 600px;
    display: block;
    margin: auto;
}

/* News-Topics */
.splide__slide .l-news__item {
    a {
        display: block;
    }
}

/* overview */
.l-faq__list--tag {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5em;
}

/* purpos */
.purpose-main {
    .c-img__caption {
        color: #0f6dbe;
        font-weight: 700;
    }

    @media (min-width: 768px) {
        .c-img__caption {
            font-size: 14px;
        }
    }

    .lightbox-a {
        display: block;

        img {
            box-shadow: 0px 0px 8px -6px #777777;
        }
    }
}

/* contact */
.contact-main {
    .l-section {
        padding-top: 0;
        padding-bottom: 0;

        .c-box__heading {
            text-align: center;
        }
    }

    .l-section__box {
        margin-bottom: min(50px, 9.6vw);
    }

    .c-pagetitle__container {
        padding-bottom: min(44px, 7.2916666667vw);
    }

    .l-section+.l-section {
        margin-bottom: min(73px, 6.9vw);
    }

    .l-section {
        margin-bottom: min(40px, 3.5vw);
    }

    .c-box {
        display: block;

        .c-button {
            margin: 2em auto;
        }
    }
}

/* getting-started */
.getting-started-main {
    .c-box--column2 {
        img {
            aspect-ratio: 16 / 9;
            object-fit: cover;
        }
    }
}

/* demo */
.demo-main .l-section.demo-form-wrap {
    max-width: min(800px, 80.7435897436vw);
}

.l-section__box.demo-caution-box {
    .l-section__title--lv4 {
        font-size: 14px;
    }

    .c-text {
        font-size: 12px;
    }
}

/* form */
@media (min-width: 768px) {
    .section_inner {
        width: min(1200px, 83.3333333333vw);
        margin: 0 auto;
    }
}

.dlcenter-main {
    @media (min-width: 768px) {
        .p-overview-document__container {
            padding: 0;
        }
    }
}

.forms-main {
    .c-pagetitle__container {
        padding-bottom: 0;

        .c-pagetitle__title {
            font-size: 4.179487vw;
        }

        @media (min-width: 768px) {
            .c-pagetitle__title {
                font-size: min(1.8vw, 30px);
            }
        }
    }
}

/* Partners_Solution_Index */
.accordion .option {
    position: relative;
    margin-bottom: 3.28205vw;
}

@media (min-width: 768px) {
    .accordion .option {
        margin-bottom: min(20px, 2.38889vw);
        ;
    }
}

/* pleasanter-extensions-trial */
.extensions-trial-main {
    .c-box__sub {
        box-shadow: 2px 2px 14px -5px #777777;

        a {
            display: block;
        }
    }
}

@media (min-width: 768px) {
    .extensions-trial-main {
        :where(.l-section)>:not(:first-child):not(:where(.l-section)) {
            margin-top: 48px;
        }
    }
}

/* ================================
   ガイドラインページ用スタイル
   ================================ */
.guideline-content .c-wrap-inner {
    /* 余白はベースに任せる場合はコメントアウトしてOK */
    padding-top: 24px;
    padding-bottom: 40px;
}

.guideline-content h2 {
    margin-top: 40px;
    margin-bottom: 12px;
    font-size: 1.25rem;
    font-weight: 700;
}

.guideline-content h2:first-of-type {
    margin-top: 0;
}

.guideline-content h3 {
    margin-top: 20px;
    margin-bottom: 6px;
    font-size: 1.05rem;
    font-weight: 700;
}

.guideline-content p {
    margin-top: 0;
    margin-bottom: 12px;
}

.guideline-content .license-items {
    margin-top: 8px;
    margin-bottom: 16px;
}

.c-note-block p {
    margin-bottom: 6px;
}

.c-note-block p:last-child {
    margin-bottom: 0;
}

@media (max-width: 767px) {
    .guideline-content {
        font-size: 0.9rem;
    }

    .guideline-content h2 {
        font-size: 1.1rem;
        margin-top: 32px;
    }

    .guideline-content h3 {
        font-size: 1rem;
    }

    .c-note-block {
        margin-left: -2px;
        margin-right: -2px;
    }
}

/* /Support/ */
.p-support ul.l-card {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: auto;
}

.p-support ul.l-card .l-card__item {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
    gap: 0;
    min-width: 230px;
}

.p-support ul.l-card .l-card__item .p-support-tool__text {
    padding-top: 2px;
}

.p-support ul.l-card .l-card__item .p-support-add__item.check__item::before {
    content: "✓";
    color: green;
    font-weight: bold;
    background: none;
    left: 6px;
    top: -1.4em;
}
/* ---- support-複数年契約割引セクション ---- */
/* ---- カードボディ（価格エリア） ---- */
.p-support-service02 .l-card {
    grid-template-columns: repeat(4, 1fr) !important;
    margin-top: 0;
}

.p-support-service02 .l-card__item {
    grid-row: span 3 !important;
    gap: 8px !important;
    padding: min(18px, 2.0833333333vw) min(30px, 2.7777777778vw);
}

.p-support-service02 .l-card__body {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.p-support-service02 .l-card__title {
    font-size: 16px;
    margin-top: 0;
}
.p-support-service02 .l-card__price-label-wrapper {
    justify-content: space-between;
    margin-bottom: 10px;
}
.p-support-service02 .l-card__price-normal, .p-support-service02 .l-card__price-discount{
    display: flex;
    justify-content: space-between;
    gap: 3px;
}
.p-support-service02 .l-card__price-multi {
    display: flex;
    flex-direction: column;
    gap: 3px;
    border-radius: 8px;
    text-align: right;
}

.p-support-service02 .l-card__price-label {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.04em;
    color: #8892a4;
}

.p-support-service02 .l-card__price-amount {
    font-size: 16px;
    font-weight: 500;
    color: #aab3c4;
    text-decoration: line-through #aab3c475 2px;
    letter-spacing: -0.01em;
    line-height: 1.3;
}
.p-support-service02 .l-card__price-discount .l-card__price-amount {
    text-decoration: none;
}

.p-support-service02 .l-card__price-amount--highlight {
    font-size: 22px;
    font-weight: 700;
    color: orange;
    text-decoration: none;
    line-height: 1.2;
}

.p-support-service02 .l-card__price-amount--highlight::before {
    content: "▶";
    flex: 0;
    font-size: 16px;
    padding-right: 10px;
}

.l-card__price-amount.l-card__price-amount--highlight span {
    font-size: 2.3025641026vw;
}

@media (min-width: 768px) {
    .p-support-service02 ul.l-card {
        gap: min(20px, 2.7777777778vw) min(20px, 1.3888888889vw);
        grid-template-columns: repeat(auto-fit, 266px) !important;
        justify-content: center;
    }
    .p-support {
        ul.l-card {
            grid-template-columns: repeat(2, 1fr);
        }
    }

    .l-card__price-amount.l-card__price-amount--highlight span {
        font-size: min(16px, 1.25vw);
    }
}

@media (max-width: 768px) {
    .p-support-service02 .l-card {
        display: flex;
    }
    .p-support-service02 .l-card__price-label {
    font-size: 11px;
}
    .p-support-service02 ul.l-card {
        grid-template-columns: repeat(7, 1fr) !important;
    }
}

/* Partners_Solution */
.solution-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 2rem;
}

.solution-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1.5rem;
    list-style: none;
    padding: 0;
    margin: 0;
}

.solution-grid li {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    overflow: hidden;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    display: flex;
}

.solution-grid li:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

.solution-grid li>a {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.solution-grid .partner_solution_logo {
    padding: 1rem;
    display: flex;
    justify-content: center;
    align-items: center;
    border-top: 1px solid #f3f4f6;
    background: #fdfdfd;
    height: 100px;
    margin-top: auto;
}

.solution-grid .partner_solution_logo img {
    max-height: 60px;
    max-width: 260px;
    object-fit: contain;
}

.solution-grid .sol_li_titile {
    padding: 1.5rem 1.5rem 0.5rem;
    font-weight: 700;
    font-size: 1.1rem;
    color: #1a202c;
    line-height: 1.4;
}

.solution-grid .partner_solution_txt {
    padding: 0 1.5rem 1.5rem;
    font-size: 0.9rem;
    color: #4a5568;
    line-height: 1.6;
}

.solution-grid .partner_solution_txt p {
    margin: 0;
}

.sol_li_titile {
    text-align: center;
}
/* 導入事例センター写真位置調整 */
.m-article .article_hdg {
  padding: 15px;
  border-bottom: none;
  background: rgb(246, 246, 246);
}
@media screen and (max-width: 767px) {

  .m-article .article_notes_fig .caption {
    max-width: 350px;
    margin: 4vw auto 0;
    font-size: 2.67vw;
  }
  .s-cases_detail .cases_detail_footer .interviewee .row dd .btn a {
    min-height: 9.34vw;
    padding: 2.8vw 0;
    font-size: 3.2vw;
  }
}
/* knowledge-blogs */
.knowledge-blogs {
  & .blog-search-container {
    margin-bottom: 20px;
  }

  & #blog-search-input {
    width: 100%;
    padding: 10px 15px;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
  }
  & .blog-filter-buttons {
    margin-top: 20px;
    margin-bottom: 20px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }

  & .filter-btn {
    padding: 8px 15px;
    border: 1px solid #ccc;
    background-color: #f9f9f9;
    cursor: pointer;
    border-radius: 4px;
    transition: background-color 0.2s, border-color 0.2s;
    font-size: 14px;
    white-space: nowrap;
  }

  & .filter-btn:hover {
    background-color: #e9e9e9;
  }

  & .filter-btn.active {
    background-color: #000000;
    color: white;
    border-color: #000000;
  }
  /* .knowledge-blogs_title は HTMLで .card-container も持つことが前提 */
  & .knowledge-blogs_title.card-container {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 20px;
  }

  & .knowledge-blogs_title.card-container>li {
    position: relative;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 15px;
    padding-top: 38px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    background-color: #fff;
    transition: transform 0.2s, box-shadow 0.2s;
    font-size: 15px;
    line-height: 1.5;
  }

  & .knowledge-blogs_title.card-container>li:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  }
  /* li要素にdata-site-display属性が付与されることでタグが表示されます */
  & .knowledge-blogs_title.card-container>li::after {
    content: '' attr(data-site-display) '';
    position: absolute;
    top: 10px;
    left: 15px;
    padding: 3px 6px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: bold;
    color: #fff;
    background-color: #6c757d;
    /* デフォルトのタグ背景色 (Gray) */
    text-transform: capitalize;
  }
  /* サイトごとのタグの色のカスタマイズ */
  & .knowledge-blogs_title.card-container>li[data-site="qiita"]::after {
    background-color: #55c500;
  }

  & .knowledge-blogs_title.card-container>li[data-site="note"]::after {
    background-color: #444;
  }

  & .knowledge-blogs_title.card-container>li[data-site="pleasanter"]::after {
    background-color: #007bff;
  }

  & .knowledge-blogs_title.card-container>li[data-site="zenn"]::after {
    background-color: #369;
  }

  & .knowledge-blogs_title.card-container>li[data-site="others"]::after {
    background-color: #f39c12;
  }
  & .knowledge-blogs_title.card-container>li[data-site="pleasanter"]::after {
    background-color: #36a2ff;
  }
  & .knowledge-blogs_title.card-container {
    .article-date {
      color: gray;
      font-size: 13px;
      margin: 5px 0;
    }
      a {
        display: block;
        font-weight: bold;
        text-decoration: none;
        font-size: 16px;
        color: #000000;
      }
  }
  & .knowledge-blogs_title.card-container a:hover {
    color: #0056b3;
  }
  @media (max-width: 600px) {
    & .knowledge-blogs_title.card-container {
      grid-template-columns: 1fr;
      gap: 15px;
    }
  }
}
/* pleasanter-extensions-trial */
.p-extensions {
  padding: 60px 0;
}
/* ヘッダーエリア（タイトル・リード文） */
.p-extensions__header {
  text-align: center;
  margin-bottom: 40px;
}
.p-extensions__title {
  font-size: 32px;
  font-weight: bold;
  margin-bottom: 10px;
  line-height: 1.2;
}
.p-extensions__lead {
  font-size: 14px;
  color: #666;
  margin: 0;
}
.p-extensions__grid {
  display: grid;
  grid-template-columns: 1fr; /* スマホ・小画面は1列 */
  gap: 20px;
  max-width: 1000px; /* 2列レイアウトに適した最大幅 */
  margin: 0 auto;
  padding: 0 20px;
}
@media (min-width: 768px) {
  .p-extensions__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
/* カードのベーススタイル */
.p-extensions__card {
  background: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  padding: 24px;
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  box-sizing: border-box;
}
/* カードヘッダー（タイトルと番号） */
.p-extensions__card-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 20px;
  border-bottom: 1px solid #f0f0f0; /* タイトル下の区切り線（任意） */
  padding-bottom: 15px;
}
.p-extensions__card-title {
  font-size: 22px;
  font-weight: bold;
  margin: 0;
  line-height: 1.4;
}
.p-extensions__card-title-sub {
  display: block;
  font-size: 12px;
  color: #666;
  font-weight: normal;
  margin-top: 4px;
}
.p-extensions__card-number {
  font-size: 32px;
  font-weight: bold;
  color: #e0e0e0; /* 目立ちすぎないグレー */
  line-height: 1;
  font-family: Arial, sans-serif;
}
/* カードボディ（本文エリア） */
.p-extensions__card-body {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}
.p-extensions__card-subtitle {
  font-size: 15px;
  font-weight: bold;
  margin-bottom: 12px;
  line-height: 1.5;
}
.p-extensions__card-text {
  font-size: 14px;
  line-height: 1.6;
  color: #555;
  margin-bottom: 16px;
}
/* リストスタイル */
.p-extensions__card-list {
  list-style: disc;
  padding-left: 20px;
  margin-bottom: 16px;
  font-size: 14px;
  color: #555;
  line-height: 1.6;
}
.p-extensions__card-list li {
  margin-bottom: 4px;
}
/* 注釈テキスト */
.p-extensions__card.is-highlight {
  border: 2px solid #e6cfa0; /* ゴールドの枠線 */
  background-color: #fffdf5; /* 薄い黄色の背景 */
}
.p-extensions__card.is-highlight .p-extensions__card-title {
  color: #c5a356; /* タイトルもゴールド系に */
}
.p-extensions__card.is-highlight .p-extensions__card-number {
  color: #e6dfc8;
  opacity: 1;
}
/* /2026/03/18追記 */


code,
pre {
    font-family: monospace, monospace
}

pre {
    font-size: 1em
}

b,
strong {
    font-weight: bolder
}


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

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,
select,
textarea {
    font: inherit
}

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
}

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

img {
    border-style: none
}

progress {
    vertical-align: baseline
}


article,
aside,
b,
body,
caption,
code,
dd,
del,
details,
div,
dl,
dt,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
header,
html,
i,
iframe,
img,
label,
li,
nav,
object,
ol,
p,
pre,
q,
section,
small,
span,
strong,
summary,
sup,
table,
tbody,
td,
th,
thead,
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;
    min-width: auto; /*旧style.css適用ページの崩れ防止*/
}

h2 {
    margin: 0
}

li {
    list-style: none
}

option,
select {
    color: #535a64
}

img {
    height: auto;
    pointer-events: none;
    vertical-align: bottom;
    width: 100%
}

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;
    width: 95%;
    box-shadow: 0px 0px 10px -2px #777777;

}

.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(/assets/images/site/icon-arrow.svg);
    mask-image: url(/assets/images/site/icon-arrow.svg);
    transition: all .3s ease-out
}

.c-button__link--fill.is-download::after {
    -webkit-mask-image: url(/assets/images/site/icon-download.svg);
    mask-image: url(/assets/images/site/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(/assets/images/site/icon-arrow.svg);
    mask-image: url(/assets/images/site/icon-arrow.svg);
    transition: all .3s ease-out
}

.c-button__link--white.is-download::after {
    -webkit-mask-image: url(/assets/images/site/icon-download.svg);
    mask-image: url(/assets/images/site/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(/assets/images/site/icon-arrow.svg);
    mask-image: url(/assets/images/site/icon-arrow.svg);
    transition: all .3s ease-out
}

.c-button__link--black.is-download::after {
    -webkit-mask-image: url(/assets/images/site/icon-download.svg);
    mask-image: url(/assets/images/site/icon-download.svg)
}

.c-button__link--black::before {
    background-color: #000
}

.c-button__link--black::after {
    background-color: #000
}

.c-button-text {
    background: linear-gradient(225deg, #000 50%, transparent 50%) no-repeat 200% 100%/200% 1px;
    transition: background .1s ease-out .3s, 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(/assets/images/site/icon-arrow.svg);
    mask-image: url(/assets/images/site/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(/assets/images/site/icon-title.svg);
    background-color: #000;
    mask-image: url(/assets/images/site/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(/assets/images/site/icon-title.svg);
    background-color: #000;
    mask-image: url(/assets/images/site/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(/assets/images/site/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(/assets/images/site/icon-title.svg);
    background-color: #000;
    mask-image: url(/assets/images/site/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(/assets/images/site/icon-title.svg);
    background-color: #000;
    mask-image: url(/assets/images/site/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-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(/assets/images/site/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--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-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(/assets/images/site/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(/assets/images/site/icon-plus.svg);
    background-color: #fff;
    mask-image: url(/assets/images/site/icon-plus.svg);
    transition: rotate .3s ease-out
}

.is-active .l-news__button::after {
    rotate: 180deg;
    -webkit-mask-image: url(/assets/images/site/icon-minus.svg);
    mask-image: url(/assets/images/site/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: flex;
    height: 100%;
    transition: opacity .3s ease-out;
    width: 100%;
    align-items: center;
    justify-content: center;
}

.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(/assets/images/site/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(/assets/images/site/icon-arrow.svg);
    mask-image: url(/assets/images/site/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(/assets/images/site/icon-check.svg);
    mask-image: url(/assets/images/site/icon-check.svg)
}

input:checked+.l-search-option__label::before {
    background-color: #000
}

.l-case {
    background-image: url(/assets/images/site/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(/assets/images/site/icon-arrow.svg);
    mask-image: url(/assets/images/site/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(/assets/images/site/icon-arrow.svg);
    mask-image: url(/assets/images/site/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__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__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-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(/assets/images/site/icon-star-fill.svg), url(/assets/images/site/icon-star-stroke.svg), url(/assets/images/site/icon-star-stroke.svg), url(/assets/images/site/icon-star-stroke.svg), url(/assets/images/site/icon-star-stroke.svg)
}

.l-card-review__star.is-star2 {
    background-image: url(/assets/images/site/icon-star-fill.svg), url(/assets/images/site/icon-star-fill.svg), url(/assets/images/site/icon-star-stroke.svg), url(/assets/images/site/icon-star-stroke.svg), url(/assets/images/site/icon-star-stroke.svg)
}

.l-card-review__star.is-star3 {
    background-image: url(/assets/images/site/icon-star-fill.svg), url(/assets/images/site/icon-star-fill.svg), url(/assets/images/site/icon-star-fill.svg), url(/assets/images/site/icon-star-stroke.svg), url(/assets/images/site/icon-star-stroke.svg)
}

.l-card-review__star.is-star4 {
    background-image: url(/assets/images/site/icon-star-fill.svg), url(/assets/images/site/icon-star-fill.svg), url(/assets/images/site/icon-star-fill.svg), url(/assets/images/site/icon-star-fill.svg), url(/assets/images/site/icon-star-stroke.svg)
}

.l-card-review__star.is-star5 {
    background-image: url(/assets/images/site/icon-star-fill.svg), url(/assets/images/site/icon-star-fill.svg), url(/assets/images/site/icon-star-fill.svg), url(/assets/images/site/icon-star-fill.svg), url(/assets/images/site/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(/assets/images/site/icon-arrow.svg);
    mask-image: url(/assets/images/site/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(/assets/images/site/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(/assets/images/pages/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(/assets/images/site/icon-arrow.svg);
    mask-image: url(/assets/images/site/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(/assets/images/pages/index/case-img1.jpg)
}

.is-item2 .l-pickup__img {
    background-image: url(/assets/images/pages/index/case-img2.jpg)
}

.is-item3 .l-pickup__img {
    background-image: url(/assets/images/pages/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 .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-start {
    background-image: url(/assets/images/site/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(/assets/images/pages/index/container1-bg1-sp.svg)
}

.p-top__container.is-container2 {
    background-image: url(/assets/images/pages/index/container2-bg1-sp.svg), url(/assets/images/pages/index/container2-bg2-sp.svg);
    background-position: left top, left bottom
}

.p-top__container.is-container3 {
    background-image: url(/assets/images/pages/index/container3-bg1-sp.svg)
}

.p-top__container.is-container4 {
    background-image: url(/assets/images/pages/index/container4-bg1-sp.svg), url(/assets/images/pages/index/container4-bg2-sp.svg);
    background-position: left top, left bottom
}

.p-top-kv {
    align-items: center;
    background-image: url(/assets/images/pages/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;20251027隴厄ｽｴ隴�ｽｰ */
    justify-content: center;
    padding-top: 8.9743589744vw;
    text-align: center;
    width: 100%;
    padding-bottom: 8.9743589744vw;
    /*20251027隴厄ｽｴ隴�ｽｰ*/
}

.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 .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(/assets/images/site/icon-arrow.svg);
    mask-image: url(/assets/images/site/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: 3.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: 20.1025641026vw
}

.is-button2 .p-top-record__button-img {
    width: 26vw
}

.is-button3 .p-top-record__button-img {
    width: 16vw
}

.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(/assets/images/pages/index/features-icon1.svg)
}

.p-top-features__item.is-item2::before {
    background-image: url(/assets/images/pages/index/features-icon2.svg)
}

.p-top-features__item.is-item3::before {
    background-image: url(/assets/images/pages/index/features-icon3.svg)
}

.p-top-features__item.is-item4::before {
    background-image: url(/assets/images/pages/index/features-icon4.svg)
}

.p-top-features__item.is-item5::before {
    background-image: url(/assets/images/pages/index/features-icon5.svg)
}

.p-top-features__item.is-item6::before {
    background-image: url(/assets/images/pages/index/features-icon6.svg)
}

.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(/assets/images/pages/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(/assets/images/pages/index/challenges-icon1.svg)
}

.p-top-challenges__item.is-item2::after {
    background-image: url(/assets/images/pages/index/challenges-icon2.svg)
}

.p-top-challenges__item.is-item3::after {
    background-image: url(/assets/images/pages/index/challenges-icon3.svg)
}

.p-top-challenges__item.is-item4::after {
    background-image: url(/assets/images/pages/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;20251027隴厄ｽｴ隴�ｽｰ */
    justify-content: center;
    transition: all .2s ease-out;
    width: -moz-max-content;
    width: max-content;
    padding: 0.2vw 1em;
    /*20251027隴厄ｽｴ隴�ｽｰ*/
}

.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(/assets/images/site/icon-arrow.svg);
    mask-image: url(/assets/images/site/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__slider {
    margin-top: 7.6923076923vw
}

.p-top-events__item {
    width: 89.7435897436vw
}

.p-top-events__link {
    display: flex;
    height: 100%;
    overflow: hidden;
    align-items: center;
    justify-content: center;
}

.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 .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: 4.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(/assets/images/site/icon-arrow.svg);
    mask-image: url(/assets/images/site/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 {
    border-radius: 3em;
    color: #535a64;
    display: block;
    font-size: 2.0769230769vw;
    line-height: 1;
    padding: 1.020512821vw 2.0512820513vw;
    width: -moz-max-content;
    width: max-content
}

.p-top-news__tag.__news {
    color: #2196f3;
    border: solid 1px #2196f3;
}

.p-top-news__tag.__blog {
    color: orange;
    border: solid 1px orange;
}

.p-top-news__subtitle {
    font-size: 3.1153846154vw;
    font-weight: 600
}

.p-top-start {
    background-image: url(/assets/images/site/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__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__container--dark {
    background-image: url(/assets/images/site/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(/assets/images/pages/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(/assets/images/site/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__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(/assets/images/pages/overview/why-icon-ng.svg) center center/contain no-repeat;
    content: "";
    height: 4.8717948718vw;
    width: 4.8717948718vw
}

.p-overview-why__good::before {
    background: url(/assets/images/pages/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(/assets/images/site/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(/assets/images/pages/overview/realization-icon1.svg)
}

.p-overview-scale__item.is-item2::before {
    background-image: url(/assets/images/pages/overview/realization-icon2.svg)
}

.p-overview-scale__item.is-item3::before {
    background-image: url(/assets/images/pages/overview/realization-icon3.svg)
}

.p-overview-scale__item.is-item4::before {
    background-image: url(/assets/images/pages/overview/realization-icon4.svg)
}

.p-overview-scale__item.is-item5::before {
    background-image: url(/assets/images/pages/overview/realization-icon5.svg)
}

.p-overview-scale__item.is-item6::before {
    background-image: url(/assets/images/pages/overview/realization-icon6.svg)
}

.p-overview-scale__item.is-item7::before {
    background-image: url(/assets/images/pages/overview/realization-icon7.svg)
}

.p-overview-scale__item.is-item8::before {
    background-image: url(/assets/images/pages/overview/realization-icon8.svg)
}

.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 .is-dark {
    background-color: #535a64;
    color: #fff
}

.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-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(/assets/images/site/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(/assets/images/pages/overview/features-icon1.svg)
}

.p-overview-features__item.is-item2::before {
    background-image: url(/assets/images/pages/overview/features-icon2.svg)
}

.p-overview-features__item.is-item3::before {
    background-image: url(/assets/images/pages/overview/features-icon3.svg)
}

.p-overview-features__item.is-item4::before {
    background-image: url(/assets/images/pages/overview/features-icon4.svg)
}

.p-overview-features__item.is-item5::before {
    background-image: url(/assets/images/pages/overview/features-icon5.svg)
}

.p-overview-features__item.is-item6::before {
    background-image: url(/assets/images/pages/overview/features-icon6.svg)
}

.p-overview-features__item.is-item7::before {
    background-image: url(/assets/images/pages/overview/features-icon7.svg)
}

.p-overview-features__item.is-item8::before {
    background-image: url(/assets/images/pages/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(/assets/images/site/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 .c-button {
    margin-top: 5.1282051282vw
}

.p-overview-document {
    background-image: url(/assets/images/site/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__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 .c-button {
    margin-top: 3.8461538462vw
}

.p-overview-community {
    background-image: url(/assets/images/site/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(/assets/images/pages/overview/community-icon1.svg)
}

.p-overview-community__item.is-item2::before {
    background-image: url(/assets/images/pages/overview/community-icon2.svg)
}

.p-overview-community__item.is-item3::before {
    background-image: url(/assets/images/pages/overview/community-icon3.svg)
}

.p-overview-community__item.is-item4::before {
    background-image: url(/assets/images/pages/overview/community-icon4.svg)
}

.p-overview-community__item.is-item5::before {
    background-image: url(/assets/images/pages/overview/community-icon5.svg)
}

.p-overview-community__item.is-item6::before {
    background-image: url(/assets/images/pages/overview/community-icon6.svg)
}

.p-overview-community__item.is-item7::before {
    background-image: url(/assets/images/pages/overview/community-icon7.svg)
}

.p-overview-community__item.is-item8::before {
    background-image: url(/assets/images/pages/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(/assets/images/site/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-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(/assets/images/pages/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(/assets/images/site/container-bg3-sp.svg);
    background-position: right top;
    background-size: 100%
}

.p-cases-container.is-container2 {
    background-image: url(/assets/images/site/container-bg4-sp.svg), url(/assets/images/site/container-bg5-sp.svg);
    background-position: right top, right 0 bottom 89.7435897436vw;
    background-size: 100%
}

.p-cases-pickup {
    background-image: url(/assets/images/pages/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
}

.is-item1 .p-cases-pickup__img {
    background-image: url(/assets/images/pages/index/case-img1.jpg)
}

.is-item2 .p-cases-pickup__img {
    background-image: url(/assets/images/pages/index/case-img2.jpg)
}

.is-item3 .p-cases-pickup__img {
    background-image: url(/assets/images/pages/index/case-img3.jpg)
}

.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(/assets/images/pages/success/about-icon1.svg)
}

.p-cases-about .is-section2 .p-cases__title::before {
    background-image: url(/assets/images/pages/success/about-icon2.svg)
}

.p-cases-result .p-cases__section.is-section1 .p-cases__title::before {
    background-image: url(/assets/images/pages/success/result-icon1.svg)
}

.p-cases-result .p-cases__section.is-section2 .p-cases__title::before {
    background-image: url(/assets/images/pages/success/result-icon2.svg)
}

.p-cases-result .p-cases__section.is-section3 .p-cases__title::before {
    background-image: url(/assets/images/pages/success/result-icon3.svg)
}

.p-cases-company {
    border-top: 1px solid #000;
    margin-top: 17.9487179487vw;
    padding-top: 12.8205128205vw
}

.p-cases-company .c-button {
    margin-top: 5.1282051282vw
}

.p-partner-kv {
    background-image: url(/assets/images/partner/kv-bg-sp.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    height: 110vw;
    padding: 12.8205128205vw 1em 17.9487179487vw 1em;
    text-align: center;
    width: 100%
}

.p-partner-kv.partner-li-kv {
    background-image: url(/assets/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(/assets/images/site/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(/assets/images/site/container-bg1-sp.svg), url(/assets/images/site/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(/assets/images/partner/benefit-icon1.svg)
}

.p-partner-benefit__item.is-item2 {
    background-image: url(/assets/images/partner/benefit-icon2.svg)
}

.p-partner-benefit__item.is-item3 {
    background-image: url(/assets/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(/assets/images/pages/support/kv-bg-sp.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    height: auto;
    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(/assets/images/site/container-bg6-sp.svg), url(/assets/images/site/container-bg7-sp.svg), url(/assets/images/site/container-bg8-sp.svg);
    background-position: left top, left 445.8974358974vw, left bottom;
    background-size: 100%
}

.p-support-container.is-container2 {
    background-image: url(/assets/images/site/container-bg3-sp.svg), url(/assets/images/site/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(/assets/images/pages/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(/assets/images/pages/support/tool-icon1.svg)
}

.is-column2 .p-support-tool__box {
    background-image: url(/assets/images/pages/support/tool-icon2.svg)
}

.is-column3 .p-support-tool__box {
    background-image: url(/assets/images/pages/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(/assets/images/pages/support/worries-icon1.svg)
}

.p-support-worries .is-item1 .p-support-worries__box .p-support-worries__img {
    background-image: url(/assets/images/pages/support/worries-box-icon1.svg)
}

.p-support-worries .is-item2 .p-support-worries__img {
    background-image: url(/assets/images/pages/support/worries-icon2.svg)
}

.p-support-worries .is-item2 .p-support-worries__box .p-support-worries__img {
    background-image: url(/assets/images/pages/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(/assets/images/pages/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(/assets/images/pages/support/function-icon1.svg)
}

.p-support-function__item.is-item2::after {
    background-image: url(/assets/images/pages/support/function-icon2.svg)
}

.p-support-function__item.is-item3::after {
    background-image: url(/assets/images/pages/support/function-icon3.svg)
}

.p-support-function__item.is-item4::after {
    background-image: url(/assets/images/pages/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(/assets/images/pages/support/add-icon1.svg)
}

.is-section2 .p-support-add__title::before {
    background-image: url(/assets/images/pages/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__description {
    font-size: 3.5897435897vw;
    line-height: 2
}

.p-support-add__list {
    display: flex;
    /* flex-direction: column; */
    flex-wrap: wrap;
    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
}

.grid {
    display: grid;
    gap: 7.6923076923vw
}

.none {
    display: none !important
}

.block {
    display: block !important
}

.inline {
    display: inline !important
}

.inline-block {
    display: inline-block !important
}

.flex {
    display: flex !important
}

.nowrap {
    white-space: nowrap
}

.pb-0 {
    padding-bottom: 0 !important
}

.tag-span__item {
    display: inline-block;
    color: #2b313a;
    font-size: 0.55em;
    font-weight: bold;
    padding: 1px 4px;
    border: solid 1px #2b313a;
    border-radius: 4px;
    margin-bottom: 4px;
    vertical-align: middle;
}

@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-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(/assets/images/site/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-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: 780fr 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--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-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;
        box-shadow: 0px 0px 10px -5px #777777;
        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(/assets/images/site/icon-arrow.svg);
        background-color: #fff;
        mask-image: url(/assets/images/site/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: unset;
        top: 10vw;
        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(/assets/images/pages/support/case-icon1.svg)
    }

    .l-case-list__item.is-item2::before {
        background-image: url(/assets/images/pages/support/case-icon2.svg)
    }

    .l-case-list__item.is-item3::before {
        background-image: url(/assets/images/pages/support/case-icon3.svg)
    }

    .l-case-list__item.is-item4::before {
        background-image: url(/assets/images/pages/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(24px, 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__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__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-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
    }

    .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 .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-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(/assets/images/pages/index/container1-bg1.svg), url(/assets/images/pages/index/container1-bg2.svg), url(/assets/images/pages/index/container1-bg3.svg), url(/assets/images/pages/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(/assets/images/pages/index/container2-bg1.svg), url(/assets/images/pages/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(/assets/images/pages/index/container3-bg1.svg), url(/assets/images/pages/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(/assets/images/pages/index/container4-bg1.svg), url(/assets/images/pages/index/container4-bg2.svg), url(/assets/images/pages/index/container4-bg3.svg), url(/assets/images/pages/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(/assets/images/pages/index/kv-bg.jpg);
        height: min(560px, 38.8888888889vw);
        padding-top: min(21px, 1.4583333333vw);
        padding-bottom: 0;
        /*20251027隴厄ｽｴ隴�ｽｰ*/
    }

    .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 .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: 100%;
        justify-content: center;
    }

    .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-text .u-text-sm {
        font-size: 80%;
    }

    .p-top-record__button-img {
        margin-top: min(21px, 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(192px, 13.2777777778vw)
    }

    .is-button3 .p-top-record__button-img {
        width: min(220px, 8.7777777778vw);
        max-width: 126px;
    }

    .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(/assets/images/pages/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);20251027隴厄ｽｴ隴�ｽｰ */
        /* // 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__slider {
        margin-top: min(52px, 3.6111111111vw)
    }

    .p-top-events__item {
        /* width: min(600px, 41.6666666667vw) */
        width: auto;
        max-width: 600px;
    }

    .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 .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 .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(18px, 2.0833333333vw) min(40px, 2.7777777778vw) min(18px, 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(10px, .8333333333vw);
        padding: min(4px, .5555555556vw)
    }

    .p-top-news__subtitle {
        font-size: min(16px, 1.3888888889vw)
    }

    .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__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__container--dark {
        background-image: url(/assets/images/site/footer-start-bg.jpg);
        padding: min(108px, 7.5vw) min(120px, 8.3333333333vw)
    }

    .p-overview-reason {
        background-image: url(/assets/images/pages/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(/assets/images/site/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__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(/assets/images/site/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__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__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-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(/assets/images/site/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(/assets/images/site/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)
    }

    
    :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(/assets/images/site/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__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 .c-button {
        margin-left: 0;
        margin-top: 0
    }

    .p-overview-community {
        background-image: url(/assets/images/site/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(/assets/images/site/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-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(/assets/images/pages/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(/assets/images/site/container-bg3.svg);
        background-size: min(943px, 65.4861111111vw)
    }

    .p-cases-container.is-container2 {
        background-image: url(/assets/images/site/container-bg4.svg), url(/assets/images/site/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 .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 .c-button {
        margin-top: min(50px, 3.4722222222vw)
    }

    .p-partner-kv {
        background-image: url(/assets/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(/assets/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(/assets/images/site/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(/assets/images/partner/search-icon1.svg)
    }

    .is-item2 .p-partner-search__box {
        background-image: url(/assets/images/partner/search-icon2.svg)
    }

    .is-item3 .p-partner-search__box {
        background-image: url(/assets/images/partner/search-icon3.svg)
    }

    .is-item4 .p-partner-search__box {
        background-image: url(/assets/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(/assets/images/site/container-bg1.svg), url(/assets/images/site/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(/assets/images/pages/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(/assets/images/site/container-bg6.svg), url(/assets/images/site/container-bg7.svg), url(/assets/images/site/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(/assets/images/site/container-bg3.svg), url(/assets/images/site/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(/assets/images/pages/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__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(/assets/images/pages/support/case-icon1.svg)
    }

    .p-support-case__item.is-item2::before {
        background-image: url(/assets/images/pages/support/case-icon2.svg)
    }

    .p-support-case__item.is-item3::before {
        background-image: url(/assets/images/pages/support/case-icon3.svg)
    }

    .p-support-case__item.is-item4::before {
        background-image: url(/assets/images/pages/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)
    }

    .grid {
        gap: 30px
    }

    .is-sp,
    .sp-only {
        display: none !important
    }

    .pb-0 {
        padding-bottom: 0 !important
    }
}

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

@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(/assets/images/pages/support/case-icon1.svg)
    }

    .l-case-list__item.is-item2 .l-case-list__title::before {
        background-image: url(/assets/images/pages/support/case-icon2.svg)
    }

    .l-case-list__item.is-item3 .l-case-list__title::before {
        background-image: url(/assets/images/pages/support/case-icon3.svg)
    }

    .l-case-list__item.is-item4 .l-case-list__title::before {
        background-image: url(/assets/images/pages/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
    }

    .is-button3 .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.5em 2.5641025641vw;
        line-height: 1.2em;
        /*20251027隴厄ｽｴ隴�ｽｰ*/
    }

    .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-cases-pickup .c-wrap-inner {
        width: 100%
    }

    .p-cases-company__container {
        overflow-x: scroll;
        padding-left: 5.1282051282vw;
        translate: -5.1282051282vw;
        width: 100vw
    }

    .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(/assets/images/partner/search-icon1.svg)
    }

    .is-item2 .p-partner-search__title::before {
        background-image: url(/assets/images/partner/search-icon2.svg)
    }

    .is-item3 .p-partner-search__title::before {
        background-image: url(/assets/images/partner/search-icon3.svg)
    }

    .is-item4 .p-partner-search__title::before {
        background-image: url(/assets/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(/assets/images/pages/support/case-icon1.svg)
    }

    .p-support-case__item.is-item2 .p-support-case__title::before {
        background-image: url(/assets/images/pages/support/case-icon2.svg)
    }

    .p-support-case__item.is-item3 .p-support-case__title::before {
        background-image: url(/assets/images/pages/support/case-icon3.svg)
    }

    .p-support-case__item.is-item4 .p-support-case__title::before {
        background-image: url(/assets/images/pages/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
    }

    .is-pc,
    .pc-only {
        display: none !important
    }
}

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

/*追記*/
/* cases/ 20251028*/
.c-pagetitle__img img {
    object-fit: cover;
    max-height: 250px;
}

.cases_detail_header .header_logo img {
    max-width: 400px;
}

.article_notes_fig a {
    display: block;
}

.article_notes_fig img {
    width: min(390px, 35.555556vw);
}

.article_notes img {
    max-width: 700px;
}

.article_notes .last-img {
    text-align: center;
    margin-top: 2em;
}

.m-article .article_hdg,
.hdg,
.header_hdg {
    font-weight: bold;
}

.m-article .article_notes_fig .caption {
    width: min(400px, 80.555556vw);
}

.forms-main .c-pagetitle__container {
    padding-bottom: 0;
}

.forms-main .c-pagetitle__container .c-pagetitle__title {
    font-size: 4.179487vw;
}

.forms-main .c-pagetitle__container .c-pagetitle__text {
    font-size: 6.230769vw;
}

@media (min-width: 768px) {
    .keyvisual .fig img {
        max-width: min(700px, 73vw);
    }

    .section_inner {
        width: min(1200px, 83.3333333333vw);
        margin: 0 auto;
    }

    .dlcenter-main .p-overview-document__container {
        padding: 0;
    }

    .forms-main .c-pagetitle__container .c-pagetitle__title {
        font-size: min(1.8vw, 30px);
    }

    .forms-main .c-pagetitle__container .c-pagetitle__text {
        font-size: min(48px, 3.3333333333vw);
    }

    .p-top-events .splide__slide img {
        max-height: 268px;
        object-fit: contain;
    }
}