@charset "UTF-8";
.l-wrapper {
  width: 95%;
  max-width: 116.6rem;
  margin: auto;
  position: relative;
}

.c-articleHead__ttl, div.c-pageTitle h1,
div.c-pageTitle p, div.c-basket__box h1, div.c-basket__box h2 {
  font-size: 3rem;
}
@media screen and (max-width: 768px) {
  .c-articleHead__ttl, div.c-pageTitle h1,
  div.c-pageTitle p, div.c-basket__box h1, div.c-basket__box h2 {
    font-size: 2.6rem;
  }
}
@media screen and (max-width: 568px) {
  .c-articleHead__ttl, div.c-pageTitle h1,
  div.c-pageTitle p, div.c-basket__box h1, div.c-basket__box h2 {
    font-size: 2.4rem;
  }
}

.c-cta__ttl, .c-title, .c-title--lv2 {
  font-size: 2.6rem;
}
@media screen and (max-width: 768px) {
  .c-cta__ttl, .c-title, .c-title--lv2 {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 568px) {
  .c-cta__ttl, .c-title, .c-title--lv2 {
    font-size: 2.2rem;
  }
}

.p-case .p-review__ba__txt {
  font-size: 2.4rem;
}
@media screen and (max-width: 768px) {
  .p-case .p-review__ba__txt {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 568px) {
  .p-case .p-review__ba__txt {
    font-size: 2rem;
  }
}

.p-scene__ttl small, div.editor h2, .c-shareBox__list p, .c-title--lv3 {
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .p-scene__ttl small, div.editor h2, .c-shareBox__list p, .c-title--lv3 {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 568px) {
  .p-scene__ttl small, div.editor h2, .c-shareBox__list p, .c-title--lv3 {
    font-size: 1.6rem;
  }
}

div.p-form div.agree_box p.strong_text, div.editor h3, .c-flow__ttl, .c-serviceCard__ttl, .c-caseCard__ttl, .c-text--lg, .c-sidebarBlock__ttl, .c-title--lv4 {
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  div.p-form div.agree_box p.strong_text, div.editor h3, .c-flow__ttl, .c-serviceCard__ttl, .c-caseCard__ttl, .c-text--lg, .c-sidebarBlock__ttl, .c-title--lv4 {
    font-size: 1.7rem;
  }
}
@media screen and (max-width: 568px) {
  div.p-form div.agree_box p.strong_text, div.editor h3, .c-flow__ttl, .c-serviceCard__ttl, .c-caseCard__ttl, .c-text--lg, .c-sidebarBlock__ttl, .c-title--lv4 {
    font-size: 1.5rem;
  }
}

div.editor, .c-articleHead__thum div.pop, .c-articleHead__info .c-articleDay, .c-articleGrid__ttl, .c-cta__desc, .c-authorBox__name, .c-articleCard__ttl, .c-title--lv5, div.c-basket__box p, .c-form button,
.wpcf7-form button, .c-form p#fm_ajax_message,
.wpcf7-form p#fm_ajax_message {
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  div.editor, .c-articleHead__thum div.pop, .c-articleHead__info .c-articleDay, .c-articleGrid__ttl, .c-cta__desc, .c-authorBox__name, .c-articleCard__ttl, .c-title--lv5, div.c-basket__box p, .c-form button,
  .wpcf7-form button, .c-form p#fm_ajax_message,
  .wpcf7-form p#fm_ajax_message {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 568px) {
  div.editor, .c-articleHead__thum div.pop, .c-articleHead__info .c-articleDay, .c-articleGrid__ttl, .c-cta__desc, .c-authorBox__name, .c-articleCard__ttl, .c-title--lv5, div.c-basket__box p, .c-form button,
  .wpcf7-form button, .c-form p#fm_ajax_message,
  .wpcf7-form p#fm_ajax_message {
    font-size: 1.4rem;
  }
}

.p-translation .p-review__ba__txt, .p-researchBox__desc, .btn_add, .btn_remove, p#fm_ajax_message, ul.l-header-nav__sub li a, .c-categoryList__item a,
.c-categoryList__item span, ul.c-articleNav__transfer li, .c-articleList__date, .c-articleHead__info .c-articleCgy li a,
.c-articleHead__info .c-articleCgy li span, .c-articleGrid__info li.article-day, .c-articleGrid__text, .c-articleEntry__text, .c-newsItem, .c-companyTable th, .c-companyTable td, .c-compareTable th, .c-compareTable td, .c-authorBox__bio, .c-flow__desc, .c-serviceCard__desc, .c-caseCard__client, .c-articleCard__excerpt, .c-text--sm, .c-eyebrow, .c-policyBox__content h3 {
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .p-translation .p-review__ba__txt, .p-researchBox__desc, .btn_add, .btn_remove, p#fm_ajax_message, ul.l-header-nav__sub li a, .c-categoryList__item a,
  .c-categoryList__item span, ul.c-articleNav__transfer li, .c-articleList__date, .c-articleHead__info .c-articleCgy li a,
  .c-articleHead__info .c-articleCgy li span, .c-articleGrid__info li.article-day, .c-articleGrid__text, .c-articleEntry__text, .c-newsItem, .c-companyTable th, .c-companyTable td, .c-compareTable th, .c-compareTable td, .c-authorBox__bio, .c-flow__desc, .c-serviceCard__desc, .c-caseCard__client, .c-articleCard__excerpt, .c-text--sm, .c-eyebrow, .c-policyBox__content h3 {
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 568px) {
  .p-translation .p-review__ba__txt, .p-researchBox__desc, .btn_add, .btn_remove, p#fm_ajax_message, ul.l-header-nav__sub li a, .c-categoryList__item a,
  .c-categoryList__item span, ul.c-articleNav__transfer li, .c-articleList__date, .c-articleHead__info .c-articleCgy li a,
  .c-articleHead__info .c-articleCgy li span, .c-articleGrid__info li.article-day, .c-articleGrid__text, .c-articleEntry__text, .c-newsItem, .c-companyTable th, .c-companyTable td, .c-compareTable th, .c-compareTable td, .c-authorBox__bio, .c-flow__desc, .c-serviceCard__desc, .c-caseCard__client, .c-articleCard__excerpt, .c-text--sm, .c-eyebrow, .c-policyBox__content h3 {
    font-size: 1.2rem;
  }
}

.p-drafting .p-review__kv__figures .p-review__kv__note, div.err_area p, div.err_area .text_box li, .c-articleTag__item a:link, .c-articleTag__item a:visited, .c-articleTag__item a:active, .c-articleList__cat a,
.c-articleList__cat span, .c-articleGrid__info ul.article-cgy li a,
.c-articleGrid__info ul.article-cgy li span, .c-newsItem__cat, .c-authorBox__role, .c-caseCard__industry, .c-articleCard__meta, .c-policyBox__content p, .c-policyBox__content ol, .c-faq span, .c-cookiebox .c-cookiebox__inner p, .c-cookiebox .c-cookiebox__inner .cookiebox__inner-btn, div.c-breadcrumbs {
  font-size: 1.2rem;
}
@media screen and (max-width: 768px) {
  .p-drafting .p-review__kv__figures .p-review__kv__note, div.err_area p, div.err_area .text_box li, .c-articleTag__item a:link, .c-articleTag__item a:visited, .c-articleTag__item a:active, .c-articleList__cat a,
  .c-articleList__cat span, .c-articleGrid__info ul.article-cgy li a,
  .c-articleGrid__info ul.article-cgy li span, .c-newsItem__cat, .c-authorBox__role, .c-caseCard__industry, .c-articleCard__meta, .c-policyBox__content p, .c-policyBox__content ol, .c-faq span, .c-cookiebox .c-cookiebox__inner p, .c-cookiebox .c-cookiebox__inner .cookiebox__inner-btn, div.c-breadcrumbs {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 568px) {
  .p-drafting .p-review__kv__figures .p-review__kv__note, div.err_area p, div.err_area .text_box li, .c-articleTag__item a:link, .c-articleTag__item a:visited, .c-articleTag__item a:active, .c-articleList__cat a,
  .c-articleList__cat span, .c-articleGrid__info ul.article-cgy li a,
  .c-articleGrid__info ul.article-cgy li span, .c-newsItem__cat, .c-authorBox__role, .c-caseCard__industry, .c-articleCard__meta, .c-policyBox__content p, .c-policyBox__content ol, .c-faq span, .c-cookiebox .c-cookiebox__inner p, .c-cookiebox .c-cookiebox__inner .cookiebox__inner-btn, div.c-breadcrumbs {
    font-size: 1.1rem;
  }
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
}

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

body {
  vertical-align: baseline;
}

img {
  display: inherit;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

* {
  box-sizing: border-box;
  word-break: normal;
  background-repeat: no-repeat;
}

div#ie_container {
  display: none;
  width: 100%;
  height: 100%;
  margin: auto;
}
div#ie_container div.cover {
  width: 100%;
  height: 100%;
  max-width: none;
  position: fixed;
  top: 0;
  left: 0;
  text-align: center;
  margin: auto;
}
div#ie_container div.cover p {
  width: 100%;
  position: absolute;
  font-size: 12px;
  top: 50%;
  left: 0;
  right: 0;
  text-align: center;
}

.ie7 body {
  overflow: hidden;
  background: #FFFFFF;
}

.ie7 div#container {
  display: none;
}

.ie8 body {
  overflow: hidden;
  background: #FFFFFF;
}

.ie8 div#container {
  display: none;
}

.ie8 div#ie_container {
  display: inherit;
}

html,
body {
  width: 100%;
  min-width: 100rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  html,
  body {
    min-width: inherit;
  }
}

@media screen and (min-width: 569px) {
  html {
    font-size: 10px;
  }
}
@media screen and (max-width: 568px) {
  html {
    font-size: 2.5641025641vw; /* 39.0rem時に1rem = 1.0rem */
  }
}

@media screen and (min-width: 769px) {
  html.is-rwdFix {
    font-size: 10px;
  }
}
@media screen and (max-width: 768px) {
  html.is-rwdFix {
    font-size: 2.5641025641vw; /* 39.0rem時に1rem = 1.0rem */
  }
}
html.is-rwdFix, html.is-rwdFix body {
  min-width: 0;
}

@media screen and (max-width: 1000px) {
  html.is-fluid,
  html.is-fluid body {
    min-width: 0;
  }
}

@media screen and (max-width: 1000px) {
  html.is-fluid,
  html.is-fluid body {
    min-width: 0;
  }
}

body {
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  color: #1a1a1a;
  line-height: 1.7em;
}
@media screen and (min-width: 769px) {
  body {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  body {
    font-size: 1.4rem;
  }
}

div#container {
  width: 100%;
  height: 100%;
}

a {
  transition: background-color 0.4s ease, color 0.4s ease, opacity 0.4s ease;
}
a, a:hover, a:visited, a:link {
  color: #1a1a1a;
  text-decoration: none;
}
a img {
  transition: opacity 0.4s ease;
}
a:hover {
  opacity: 0.8;
}
a:hover img {
  opacity: 0.8;
}

picture {
  display: block;
}

img {
  max-width: 100%;
}

br {
  line-height: inherit;
}

hr {
  height: 0.1rem;
  clear: both;
  border: none;
  border-top: #e5e5e5 0.1rem solid;
  color: #FFF;
}

.unselectable {
  -ms-user-select: none; /* IE 10+ */
  -moz-user-select: -moz-none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  user-select: none;
}

input,
select,
textarea,
button {
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

input,
select,
textarea {
  font-size: 1.6rem;
}

::placeholder {
  color: #ddd;
}

:-ms-input-placeholder {
  color: #ddd;
}

::selection {
  color: #fff;
  background: #ffaf34;
}

.c-form input,
.c-form select,
.c-form textarea,
.wpcf7-form input,
.wpcf7-form select,
.wpcf7-form textarea {
  border: #e5e5e5 0.1rem solid;
  background-color: #fff;
  -webkit-appearance: none;
  border-radius: 0;
}
.c-form button,
.wpcf7-form button {
  background-color: transparent;
  border: none;
  color: #1a1a1a;
}
.c-form input:focus,
.c-form select:focus,
.c-form textarea:focus,
.c-form button:focus,
.wpcf7-form input:focus,
.wpcf7-form select:focus,
.wpcf7-form textarea:focus,
.wpcf7-form button:focus {
  outline: 0;
  border-color: #ffaf34;
}
.c-form input::selection,
.c-form textarea::selection,
.wpcf7-form input::selection,
.wpcf7-form textarea::selection {
  color: #fff;
  background: #ffaf34;
}
.c-form input,
.wpcf7-form input {
  width: 100%;
  padding: 1rem;
  margin: 0.5rem 0;
}
.c-form input.wth_80,
.wpcf7-form input.wth_80 {
  width: 80%;
}
@media screen and (max-width: 768px) {
  .c-form input.wth_80,
  .wpcf7-form input.wth_80 {
    width: 100%;
  }
}
.c-form input.wth_70,
.wpcf7-form input.wth_70 {
  width: 70%;
}
@media screen and (max-width: 768px) {
  .c-form input.wth_70,
  .wpcf7-form input.wth_70 {
    width: 100%;
  }
}
.c-form input.wth_50,
.wpcf7-form input.wth_50 {
  width: 50%;
}
@media screen and (max-width: 768px) {
  .c-form input.wth_50,
  .wpcf7-form input.wth_50 {
    width: 100%;
  }
}
.c-form input.wth_30,
.wpcf7-form input.wth_30 {
  width: 30%;
}
@media screen and (max-width: 768px) {
  .c-form input.wth_30,
  .wpcf7-form input.wth_30 {
    width: 100%;
  }
}
.c-form input.wth_20,
.wpcf7-form input.wth_20 {
  width: 20%;
}
@media screen and (max-width: 768px) {
  .c-form input.wth_20,
  .wpcf7-form input.wth_20 {
    width: 50%;
  }
}
.c-form textarea,
.wpcf7-form textarea {
  width: 100%;
  height: 10em;
  padding: 1rem;
  resize: vertical;
}
.c-form select,
.wpcf7-form select {
  width: auto;
  padding: 1rem 6rem 1rem 1rem;
  background-image: url(../img/arrow/input_select.svg);
  background-position: right 0.5rem center;
  background-size: 2.5rem 2.5rem;
  vertical-align: middle;
  margin: 0.5rem 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: #1a1a1a;
}
.c-form select::-ms-expand,
.wpcf7-form select::-ms-expand {
  display: none;
}
.c-form input[type=radio],
.c-form input[type=checkbox],
.wpcf7-form input[type=radio],
.wpcf7-form input[type=checkbox] {
  display: none;
}
.c-form input[type=radio] + label,
.c-form input[type=radio] + span,
.wpcf7-form input[type=radio] + label,
.wpcf7-form input[type=radio] + span {
  padding: 0.7rem 0rem 0.7rem 2.5rem;
  margin: 0.2rem 2rem 0.2rem 0rem;
  display: inline-block;
  background-image: url(../img/arrow/input_check_off.svg);
  background-position: left 50%;
  background-size: 1.8rem 1.8rem;
  cursor: pointer;
}
.c-form input[type=radio]:checked + label,
.c-form input[type=radio]:checked + span,
.wpcf7-form input[type=radio]:checked + label,
.wpcf7-form input[type=radio]:checked + span {
  background-image: url(../img/arrow/input_check_on.svg);
}
.c-form input[type=checkbox] + label,
.c-form input[type=checkbox] + span,
.wpcf7-form input[type=checkbox] + label,
.wpcf7-form input[type=checkbox] + span {
  padding: 0.7rem 0rem 0.7rem 2.5rem;
  margin: 0.2rem 2rem 0.2rem 0rem;
  background-image: url(../img/arrow/checkbox_off.svg);
  background-position: left 50%;
  background-size: 1.8rem 1.8rem;
  display: inline-block;
  cursor: pointer;
}
.c-form input[type=checkbox]:checked + label,
.c-form input[type=checkbox]:checked + span,
.wpcf7-form input[type=checkbox]:checked + label,
.wpcf7-form input[type=checkbox]:checked + span {
  background-image: url(../img/arrow/checkbox_on.svg);
}
.c-form input[type=file],
.wpcf7-form input[type=file] {
  border: none;
  padding: 0;
}
.c-form input[type=submit].input_submit, .c-form input[type=submit].button_confirm,
.c-form input[type=reset].input_submit,
.c-form input[type=reset].button_confirm,
.c-form input[type=button].input_submit,
.c-form input[type=button].button_confirm,
.c-form button[type=submit].input_submit,
.c-form button[type=submit].button_confirm,
.c-form button[type=button].input_submit,
.c-form button[type=button].button_confirm,
.wpcf7-form input[type=submit].input_submit,
.wpcf7-form input[type=submit].button_confirm,
.wpcf7-form input[type=reset].input_submit,
.wpcf7-form input[type=reset].button_confirm,
.wpcf7-form input[type=button].input_submit,
.wpcf7-form input[type=button].button_confirm,
.wpcf7-form button[type=submit].input_submit,
.wpcf7-form button[type=submit].button_confirm,
.wpcf7-form button[type=button].input_submit,
.wpcf7-form button[type=button].button_confirm {
  display: inline-block;
  width: auto;
  min-width: 30rem;
  text-align: center;
  padding: 2rem 2rem;
  font-weight: bold;
  border-radius: 1rem;
  color: #fff;
  background-color: #ffaf34;
  border: none;
  cursor: pointer;
}
.c-form input[type=submit].input_submit:hover,
.c-form input[type=reset].input_submit:hover,
.c-form input[type=button].input_submit:hover,
.c-form button[type=submit].input_submit:hover,
.c-form button[type=button].input_submit:hover,
.wpcf7-form input[type=submit].input_submit:hover,
.wpcf7-form input[type=reset].input_submit:hover,
.wpcf7-form input[type=button].input_submit:hover,
.wpcf7-form button[type=submit].input_submit:hover,
.wpcf7-form button[type=button].input_submit:hover {
  opacity: 0.8;
}
.c-form input[type=submit].input_return,
.c-form input[type=reset].input_return,
.c-form input[type=button].input_return,
.c-form button[type=submit].input_return,
.c-form button[type=button].input_return,
.wpcf7-form input[type=submit].input_return,
.wpcf7-form input[type=reset].input_return,
.wpcf7-form input[type=button].input_return,
.wpcf7-form button[type=submit].input_return,
.wpcf7-form button[type=button].input_return {
  display: inline-block;
  width: auto;
  border: none;
  padding: 0 0 0 1.5rem;
  background-image: url(../img/arrow/arrow_left.svg);
  background-size: 0.5rem auto;
  background-position: left center;
  min-width: inherit;
  color: #1a1a1a;
  font-weight: 500;
  text-decoration: underline;
  background-color: transparent;
  transition: none;
  cursor: pointer;
}
@media screen and (max-width: 414px) {
  .c-form input[type=submit].input_return,
  .c-form input[type=reset].input_return,
  .c-form input[type=button].input_return,
  .c-form button[type=submit].input_return,
  .c-form button[type=button].input_return,
  .wpcf7-form input[type=submit].input_return,
  .wpcf7-form input[type=reset].input_return,
  .wpcf7-form input[type=button].input_return,
  .wpcf7-form button[type=submit].input_return,
  .wpcf7-form button[type=button].input_return {
    width: auto;
  }
}
.c-form p#fm_ajax_message,
.wpcf7-form p#fm_ajax_message {
  font-weight: bold;
  color: #ffaf34;
  letter-spacing: 0.1rem;
}

.c-archiveStatus {
  position: fixed;
  z-index: 110;
  bottom: 2rem;
  left: 50%;
  transform: translateX(-50%);
  width: max-content;
  max-width: calc(100vw - 3.2rem);
  padding: 1.6rem;
  border: 1px solid #999;
  border-radius: 0.8rem;
  background: #fff;
  box-shadow: 0 0.2rem 1rem rgba(0, 0, 0, 0.1333333333);
  font-size: 1.4rem;
  line-height: 1.6;
}
.c-archiveStatus button {
  margin-left: 1.6rem;
  text-decoration: underline;
  cursor: pointer;
}
.c-archiveStatus[hidden] {
  display: none;
}

.c-absolute--vertical {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

div.c-basket__box {
  max-width: 70rem;
  height: auto;
  margin: auto;
  text-align: center;
  padding: 10rem 0;
}
@media screen and (max-width: 568px) {
  div.c-basket__box {
    padding: 5rem 0;
  }
}
div.c-basket__box h1, div.c-basket__box h2 {
  padding: 0 0 2rem;
  margin: 0 0 2rem 0;
  text-align: center;
  font-weight: bold;
  border-bottom: #DADADA 0.1rem solid;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: auto;
}
div.c-basket__box p {
  padding: 0 0 3rem 0;
  font-weight: bold;
}

div.c-breadcrumbs {
  width: 100%;
  height: 3.7em;
  margin: 0;
  padding: 1em 0;
  background-color: #fff;
  border-top: #e5e5e5 0.1rem solid;
  position: relative;
  overflow-x: auto;
  overflow-y: hidden;
  overflow-scrolling: touch;
  /*スクロールバー非表示*/
  /* IE, Edge 対応 */
  -ms-overflow-style: none;
  /* Firefox 対応 */
  scrollbar-width: none;
  /* Chrome, Safari 対応 */
}
div.c-breadcrumbs::-webkit-scrollbar {
  display: none;
}
div.c-breadcrumbs #breadcrumbs {
  margin: auto;
  white-space: nowrap;
}
div.c-breadcrumbs #breadcrumbs a {
  color: #ffaf34;
  background-image: url(../img/arrow/arrow_right_c.svg);
  background-position: center right 0.5rem;
  background-size: 1.3rem 1.3rem;
  padding: 0 2.2rem 0 0;
  font-weight: bold;
}
div.c-breadcrumbs #breadcrumbs img {
  margin: 0.1rem 0.5rem;
  vertical-align: text-bottom;
  width: 1.4rem;
  height: 1.3rem;
}

.c-btn {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-width: 33.4rem;
  padding: 1.8rem 4rem;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.8;
  text-align: left;
  border-radius: 0.4rem;
  transition: opacity 0.3s ease;
}
.c-btn::after {
  content: "";
  flex-shrink: 0;
  width: 2.4rem;
  height: 1.4rem;
  background-color: currentColor;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 14'%3E%3Cpath d='M0 7h22.5M16 1l6.5 6-6.5 6' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='square'/%3E%3C/svg%3E") no-repeat center/contain;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 14'%3E%3Cpath d='M0 7h22.5M16 1l6.5 6-6.5 6' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='square'/%3E%3C/svg%3E") no-repeat center/contain;
}
.c-btn:hover {
  opacity: 0.8;
}
@media screen and (max-width: 568px) {
  .c-btn {
    min-width: 0;
    width: 100%;
    padding: 1.6rem 2.4rem;
    font-size: 1.6rem;
  }
}

.c-btn--primary {
  background-color: #ffaf34;
}
.c-btn--primary, .c-btn--primary:hover, .c-btn--primary:visited, .c-btn--primary:link {
  color: #000000;
  text-decoration: none;
}

.c-btn--dark {
  background-color: #000000;
}
.c-btn--dark, .c-btn--dark:hover, .c-btn--dark:visited, .c-btn--dark:link {
  color: #FFFFFF;
  text-decoration: none;
}

.c-btn--white {
  background-color: #FFFFFF;
  border: 0.1rem solid #000000;
}
.c-btn--white, .c-btn--white:hover, .c-btn--white:visited, .c-btn--white:link {
  color: #000000;
  text-decoration: none;
}

.c-btn__ext {
  display: inline-block;
  flex-shrink: 0;
  width: 1.6rem;
  height: 1.4rem;
  margin-left: 0.8rem;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 14'%3E%3Cpath d='M5 1H1v12h12V9M9 1h6v6M15 1 7 9' fill='none' stroke='%23000' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 14'%3E%3Cpath d='M5 1H1v12h12V9M9 1h6v6M15 1 7 9' fill='none' stroke='%23000' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;
}

.c-cookiebox {
  z-index: 100;
  position: fixed;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.6);
  width: 100%;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.c-cookiebox.is-visible {
  opacity: 1;
  visibility: visible;
}
.c-cookiebox .c-cookiebox__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin: 0 auto;
  padding: 2rem;
  color: #fff;
  width: 100rem;
}
@media screen and (max-width: 768px) {
  .c-cookiebox .c-cookiebox__inner {
    width: 90%;
    padding: 1.5rem 0;
  }
}
.c-cookiebox .c-cookiebox__inner p {
  width: 85rem;
  font-weight: normal;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .c-cookiebox .c-cookiebox__inner p {
    line-height: 1.6;
  }
}
.c-cookiebox .c-cookiebox__inner p a {
  color: #fff;
  text-decoration: underline;
}
.c-cookiebox .c-cookiebox__inner .cookiebox__inner-btn {
  display: inline-block;
  z-index: 1;
  position: relative;
  padding: 1.5rem 2rem;
  background: #fff;
  color: #000;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
  cursor: pointer;
  border: 0.2rem solid #333;
}
@media screen and (max-width: 768px) {
  .c-cookiebox .c-cookiebox__inner .cookiebox__inner-btn {
    width: 50vw;
    margin: 0.5rem auto 0;
    padding: 0.5rem 2rem;
  }
}

.c-faq {
  text-align: left;
}
.c-faq p {
  display: inline;
}
@media screen and (max-width: 768px) {
  .c-faq p {
    display: block;
  }
}
.c-faq span {
  display: inline-block;
  text-align: center;
  background-color: #ffaf34;
  color: #fff;
  padding: 0.2rem 1.5rem;
  margin: 0 1rem 0 0;
  font-weight: bold;
  border-radius: 10rem;
}
@media screen and (max-width: 768px) {
  .c-faq span {
    margin: 0 0 0.5rem 0;
  }
}
.c-faq dt {
  cursor: pointer;
  font-weight: bold;
  padding: 2rem 0;
  border-bottom: #e5e5e5 0.1rem solid;
}
.c-faq dt p {
  padding: 0 3.5rem 0 0;
  background-image: url(../img/arrow/arrow_open.svg);
  background-position: right center;
  background-size: 2rem 2rem;
  background-repeat: no-repeat;
}
.c-faq dt:hover p {
  text-decoration: underline;
}
.c-faq dt.is-open p {
  background-image: url(../img/arrow/arrow_close.svg);
}
.c-faq dd {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  line-height: 1.5em;
  transition: max-height 0.35s ease, opacity 0.25s ease;
}
.c-faq dd div.detail {
  padding: 3rem 0 3rem 6rem;
}
@media screen and (max-width: 568px) {
  .c-faq dd div.detail {
    padding: 1rem 0 2rem 1rem;
  }
}
.c-faq dd div.detail img {
  width: 90%;
  max-width: 65rem;
  margin: 2rem auto 1.5rem auto;
}
.c-faq dd div.detail p span {
  color: #e5e5e5;
}
.c-faq dd.is-open {
  max-height: 100rem;
  opacity: 1;
}

div.c-pageTitle {
  width: 100%;
  background-color: #ffaf34;
  background-position: center center;
  background-size: cover;
  padding: 6rem 0;
}
@media screen and (max-width: 768px) {
  div.c-pageTitle {
    padding: 4rem 0;
  }
}
@media screen and (max-width: 568px) {
  div.c-pageTitle {
    padding: 3rem 0;
  }
}
div.c-pageTitle h1,
div.c-pageTitle p {
  color: #fff;
  text-align: center;
  font-weight: bold;
}

.c-pageup {
  width: 7rem;
  height: 7rem;
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  z-index: 100;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.c-pageup.is-visible {
  opacity: 1;
  visibility: visible;
}
@media screen and (max-width: 768px) {
  .c-pageup {
    width: 5rem;
    height: 5rem;
  }
}
@media screen and (max-width: 568px) {
  .c-pageup {
    width: 4rem;
    height: 4rem;
  }
}
.c-pageup a .c-pageup__img {
  width: 100%;
  height: 100%;
}

.c-policyBox__content {
  padding: 2rem;
  text-align: left;
}
.c-policyBox__content h2 {
  font-weight: 700;
  margin-bottom: 1em;
}
.c-policyBox__content h3 {
  font-weight: 700;
}
.c-policyBox__content p {
  margin-bottom: 1em;
}
.c-policyBox__content p.mb_0 {
  margin-bottom: 0;
}
.c-policyBox__content ol {
  list-style-type: decimal;
  list-style-position: inside;
  margin-bottom: 1em;
}
.c-policyBox__content ol li ol {
  padding-left: 2em;
  margin-bottom: 0;
}
.c-policyBox__content ol.pl_25 {
  padding-left: 2em;
}
@media screen and (max-width: 768px) {
  .c-policyBox {
    width: 100%;
    margin: 2rem 0;
  }
  .c-policyBox .policy_content {
    padding: 2rem;
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 568px) {
  .c-policyBox {
    height: 12rem;
    margin: 2rem auto;
  }
  .c-policyBox .policy_content {
    padding: 1rem;
    font-size: 1.1rem;
  }
}

/* --- Slidein Effects START --- */
/* --- It needs class="slidein" and "init" --- */
.c-slidein--left, .c-slidein--right {
  opacity: 1;
  transition: transform 1s ease, opacity 1s ease-in;
}

.c-slidein--left.init {
  opacity: 0;
  transform: translate(-10%, 0);
}

.c-slidein--right.init {
  opacity: 0;
  transform: translate(10%, 0);
}

/* --- Slide Effects END --- */
/* --- Slideup Effects without Buttons and links START --- */
/* --- It needs class="slideup" and "init"--- */
/* !! エフェクトを入れる要素に<a>, <button>など、クリッカブルな要素が含まれる場合は.c-slideup_jsを使用すること !! */
/* !! mac safariでクリッカブル領域のみ遅れて移動するバグがみられたため !! */
.c-slideup {
  opacity: 1;
  transition: opacity 0.7s ease-in-out, transform 1.5s cubic-bezier(0.35, 0.34, 0.22, 0.99);
  transform: translate(0, 0);
  will-change: transform, opacity;
}
.c-slideup.init {
  opacity: 0;
  transform: translate(0, 10rem);
}
@media screen and (max-width: 768px) {
  .c-slideup.init {
    transform: translate(0, 8rem);
  }
}

/* --- Slideup Effects END --- */
/* --- Slideup Effects with Buttons and links START --- */
/* --- It needs class="slideup" and "init"--- */
/* !!エフェクトを入れる要素に<a>, <button>がなければ.c-slideupを推奨 */
.c-slideup--js {
  opacity: 0;
  transform: translate(0, 15rem);
  will-change: transform, opacity;
}

/* --- Slideup Effects END --- */
/* --- rotate Effects START --- */
/* --- It needs class="rotate" and "init"--- */
.c-rotate {
  opacity: 1;
  filter: alpha(opacity=100);
  transform: scale3d(1, 1, 1) rotate3d(0, 0, 0, 0) translate3d(0, 0, 0);
  transition: opacity 4s, transform 4s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.c-rotate.init {
  opacity: 0;
  filter: alpha(opacity=0);
  transform: scale3d(1.3, 1.3, 1) rotate3d(1, -3, -1, -36deg) translate3d(0, 5rem, 13rem);
}

/* --- Slideup Effects END --- */
/* --- fadein Effects START --- */
/* --- It needs class="rotate" and "init"--- */
.c-fadein {
  opacity: 1;
  transition: opacity 0.5s ease-in-out;
}
.c-fadein.init {
  opacity: 0;
}

/* --- Slideup Effects END --- */
@media screen and (min-width: 569px) {
  .delay_100 {
    transition-delay: 100ms;
  }
  .delay_200 {
    transition-delay: 200ms;
  }
  .delay_300 {
    transition-delay: 300ms;
  }
  .delay_400 {
    transition-delay: 400ms;
  }
  .delay_400_0 {
    transition-delay: 400ms;
  }
}
@media screen and (min-width: 569px) and (max-width: 568px) {
  .delay_400_0 {
    transition-delay: 0;
  }
}
@media screen and (max-width: 568px) {
  .c-clear_effect_sp {
    transition: none !important;
    transform: none !important;
    opacity: 1 !important;
  }
}

@media screen and (min-width: 569px) {
  .c-clear_effect_up_sp {
    transition: none !important;
    transform: none !important;
    opacity: 1 !important;
  }
}

.c-serviceReveal {
  transition: opacity 650ms ease var(--service-reveal-delay, 0ms);
}
.c-serviceReveal.is-reveal-pending {
  opacity: 0;
}

@media (max-width: 767px) {
  .p-front__usecase__item.c-serviceReveal {
    --service-reveal-delay: 0ms !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .c-serviceReveal {
    transition: none;
  }
  .c-serviceReveal.is-reveal-pending {
    opacity: 1;
  }
}
.c-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}
@media screen and (max-width: 768px) {
  .c-table--tbBlock, .c-table--tbBlock thead, .c-table--tbBlock tbody, .c-table--tbBlock tfoot, .c-table--tbBlock tr {
    display: block;
    width: 100%;
  }
  .c-table--tbBlock tr th, .c-table--tbBlock tr td {
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 568px) {
  .c-table--spBlock,
  .c-table--spBlock thead,
  .c-table--spBlock tbody,
  .c-table--spBlock tfoot,
  .c-table--spBlock tr {
    display: block;
    width: 100%;
  }
  .c-table--spBlock tr th,
  .c-table--spBlock tr td {
    display: block;
    width: 100%;
  }
}

.c-title--lv5, .c-title--lv4, .c-title--lv3, .c-title--lv2, .c-title {
  margin: 0 0 1.6rem;
  font-weight: bold;
  line-height: 1.4;
  text-align: left;
}

.c-title--center {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.c-eyebrow {
  display: inline-block;
  margin-bottom: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #ffaf34;
}

.c-sidebarBlock {
  padding: 3rem 0;
  border-bottom: #e5e5e5 0.2rem solid;
}
@media screen and (max-width: 568px) {
  .c-sidebarBlock {
    padding: 2rem 0;
  }
}
.c-sidebarBlock:first-child {
  padding: 0 0 3rem 0;
}
@media screen and (max-width: 568px) {
  .c-sidebarBlock:first-child {
    padding: 0 0 2rem 0;
  }
}
.c-sidebarBlock:last-child {
  border-bottom: none;
}
.c-sidebarBlock__ttl {
  margin: 0 auto 1rem auto;
  font-weight: bold;
}

.c-text {
  line-height: 1.7;
}
.c-text--lg {
  line-height: 1.8;
}
.c-text--sm {
  line-height: 1.7;
}

.c-articleCard {
  display: block;
  background: #fff;
  border-radius: 0.8rem;
  overflow: hidden;
  transition: opacity 0.2s, transform 0.2s;
}
.c-articleCard:hover {
  opacity: 0.85;
}
.c-articleCard__thumb {
  aspect-ratio: 16/9;
  overflow: hidden;
}
.c-articleCard__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-articleCard__body {
  padding: 1.6rem;
}
.c-articleCard__meta {
  display: flex;
  gap: 1.2rem;
  align-items: center;
  margin-bottom: 0.8rem;
  color: #1a1a1a;
}
.c-articleCard__cat {
  padding: 0.2rem 0.8rem;
  background: #fcfbf6;
  border-radius: 0.2rem;
}
.c-articleCard__ttl {
  font-weight: 700;
  line-height: 1.5;
}
.c-articleCard__excerpt {
  margin-top: 0.8rem;
  line-height: 1.7;
}

.c-caseCard {
  display: block;
  background: #fff;
  border-radius: 0.8rem;
  overflow: hidden;
  transition: opacity 0.2s;
}
.c-caseCard:hover {
  opacity: 0.85;
}
.c-caseCard__thumb {
  aspect-ratio: 4/3;
  overflow: hidden;
}
.c-caseCard__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-caseCard__body {
  padding: 2rem;
}
.c-caseCard__industry {
  display: inline-block;
  margin-bottom: 0.8rem;
  padding: 0.3rem 0.8rem;
  background: #ffaf34;
  color: #fff;
  border-radius: 0.2rem;
}
.c-caseCard__ttl {
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 0.8rem;
}
.c-caseCard__client {
  color: #1a1a1a;
}

.c-serviceCard {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  padding: 2.4rem;
  background: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 0.8rem;
}
.c-serviceCard__icon {
  width: 6.4rem;
}
.c-serviceCard__icon img,
.c-serviceCard__icon svg {
  display: block;
  width: 100%;
  height: auto;
}
.c-serviceCard__ttl {
  font-weight: 700;
}
.c-serviceCard__desc {
  line-height: 1.7;
}
.c-serviceCard__link {
  margin-top: auto;
  align-self: flex-start;
}

.c-flow {
  counter-reset: flow;
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  list-style: none;
  padding: 0;
  margin: 0;
}
.c-flow__item {
  counter-increment: flow;
  display: flex;
  align-items: flex-start;
  gap: 2rem;
  padding: 2rem 2.4rem;
  background: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 0.8rem;
}
.c-flow__num {
  flex-shrink: 0;
  width: 4rem;
  height: 4rem;
  display: grid;
  place-items: center;
  background: #ffaf34;
  color: #fff;
  border-radius: 50%;
  font-weight: 700;
}
.c-flow__num::before {
  content: counter(flow);
}
.c-flow__body {
  flex: 1;
}
.c-flow__ttl {
  font-weight: 700;
  margin: 0 0 0.4rem;
}
.c-flow__desc {
  margin: 0;
  line-height: 1.7;
}
.c-flow--row {
  flex-direction: row;
  gap: 3.2rem;
}
.c-flow--row .c-flow__item {
  flex: 1 1 0;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1.2rem;
  position: relative;
}
.c-flow--row .c-flow__item:not(:last-child)::after {
  content: "";
  position: absolute;
  right: -2.4rem;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.8rem 0 0.8rem 1.2rem;
  border-color: transparent transparent transparent #ffaf34;
}
@media screen and (max-width: 768px) {
  .c-flow--row {
    flex-direction: column;
    gap: 2.4rem;
  }
  .c-flow--row .c-flow__item {
    flex-direction: row;
    align-items: flex-start;
    text-align: left;
  }
  .c-flow--row .c-flow__item:not(:last-child)::after {
    right: auto;
    left: 50%;
    top: 100%;
    transform: translate(-50%, 0.4rem);
    border-width: 1.2rem 0.8rem 0 0.8rem;
    border-color: #ffaf34 transparent transparent transparent;
  }
}

.c-authorBox {
  display: flex;
  gap: 1.6rem;
  padding: 2rem;
  background: #fcfbf6;
  border-radius: 0.8rem;
}
.c-authorBox__avatar {
  flex-shrink: 0;
  width: 7.2rem;
  height: 7.2rem;
  border-radius: 50%;
  overflow: hidden;
}
.c-authorBox__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-authorBox__body {
  flex: 1;
}
.c-authorBox__role {
  display: inline-block;
  margin-bottom: 0.4rem;
  padding: 0.2rem 0.8rem;
  background: #ffaf34;
  color: #fff;
  border-radius: 0.2rem;
}
.c-authorBox__name {
  font-weight: 700;
  margin-bottom: 0.4rem;
}
.c-authorBox__bio {
  line-height: 1.7;
}

.c-compareTable {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: #fff;
}
.c-compareTable th, .c-compareTable td {
  padding: 1.6rem;
  border: 1px solid #e5e5e5;
  text-align: center;
  vertical-align: middle;
}
.c-compareTable thead th {
  background: #fcfbf6;
  font-weight: 700;
}
.c-compareTable__highlight {
  background: rgba(255, 175, 52, 0.08);
  border-color: #ffaf34;
}
.c-compareTable__label {
  background: #fcfbf6;
  font-weight: 700;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .c-compareTable th, .c-compareTable td {
    padding: 1rem;
  }
}

.c-companyTable {
  width: 100%;
  border-collapse: collapse;
}
.c-companyTable th, .c-companyTable td {
  padding: 1.6rem;
  border-bottom: 1px solid #e5e5e5;
  vertical-align: top;
  text-align: left;
  line-height: 1.8;
}
.c-companyTable th {
  width: 22rem;
  font-weight: 700;
  color: #1a1a1a;
  background: #fcfbf6;
}
@media screen and (max-width: 768px) {
  .c-companyTable th, .c-companyTable td {
    display: block;
    width: 100%;
    padding: 1rem 0;
  }
  .c-companyTable th {
    background: transparent;
    border-bottom: none;
    padding-bottom: 0;
  }
}

.c-cta {
  padding: 6rem 2rem;
  background: #ffaf34;
  color: #fff;
  text-align: center;
  border-radius: 0.8rem;
}
.c-cta--bgImage {
  background-size: cover;
  background-position: center;
  position: relative;
}
.c-cta--bgImage::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
  border-radius: inherit;
}
.c-cta--bgImage > * {
  position: relative;
}
.c-cta__ttl {
  font-weight: 700;
  margin-bottom: 1.6rem;
}
.c-cta__desc {
  margin-bottom: 2.4rem;
  line-height: 1.8;
}
.c-cta__btns {
  display: flex;
  gap: 1.6rem;
  justify-content: center;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .c-cta {
    padding: 4rem 1.6rem;
  }
}

.c-newsItem {
  display: flex;
  flex-wrap: wrap;
  gap: 1.6rem;
  padding: 1.6rem 0;
  border-bottom: 1px solid #e5e5e5;
}
.c-newsItem__date {
  flex-shrink: 0;
  width: 10rem;
  color: #1a1a1a;
}
.c-newsItem__cat {
  flex-shrink: 0;
  padding: 0.2rem 0.8rem;
  background: #fcfbf6;
  border-radius: 0.2rem;
}
.c-newsItem__ttl {
  flex: 1 1 60%;
  line-height: 1.6;
}
.c-newsItem__ttl a {
  color: inherit;
  text-decoration: none;
}
.c-newsItem__ttl a:hover {
  text-decoration: underline;
}
@media screen and (max-width: 568px) {
  .c-newsItem__ttl {
    flex-basis: 100%;
  }
}

.c-cardList {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.4rem;
}
.c-cardList--col2 {
  grid-template-columns: repeat(2, 1fr);
}
.c-cardList--col4 {
  grid-template-columns: repeat(4, 1fr);
}
@media screen and (max-width: 768px) {
  .c-cardList {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.6rem;
  }
  .c-cardList--col4 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 568px) {
  .c-cardList {
    grid-template-columns: 1fr;
  }
}

.c-dotGrid {
  position: absolute;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .c-dotGrid {
    display: none;
  }
}

.c-dotGrid--l {
  width: 25.9rem;
  height: 10.9rem;
  background-color: #ffaa06;
  mask: url(../img/front/dot_grid_l.svg) no-repeat center/contain;
  -webkit-mask: url(../img/front/dot_grid_l.svg) no-repeat center/contain;
}

.c-dotGrid--s {
  width: 12.8rem;
  height: 6.5rem;
  mask: url(../img/front/qa_dots.svg) no-repeat center/contain;
  -webkit-mask: url(../img/front/qa_dots.svg) no-repeat center/contain;
}

.c-qa {
  border-top: 0.1rem solid #000000;
}

.c-qa__item {
  border-bottom: 0.1rem solid #000000;
}

.c-qa__q {
  position: relative;
  display: flex;
  align-items: center;
  gap: 1.6rem;
  padding: 2.4rem 4rem;
  cursor: pointer;
  list-style: none;
}
.c-qa__q::-webkit-details-marker {
  display: none;
}
@media screen and (max-width: 568px) {
  .c-qa__q {
    gap: 0.8rem;
    padding: 2rem 0;
  }
}

.c-qa__mark {
  flex-shrink: 0;
  font-family: "Roboto", sans-serif;
  font-size: 3.2rem;
  font-weight: 400;
  line-height: 1;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .c-qa__mark {
    font-size: 2.4rem;
  }
}

.c-qa__mark--a {
  color: #ffaf34;
}

.c-qa__qtext {
  flex: 1;
  min-width: 0;
  font-size: 2rem;
  line-height: 1.8;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .c-qa__qtext {
    font-size: 1.6rem;
  }
}

.c-qa__toggle {
  position: relative;
  flex-shrink: 0;
  width: 3.2rem;
  height: 3.2rem;
  border: 0.1rem solid #000000;
  border-radius: 50%;
}
.c-qa__toggle::before, .c-qa__toggle::after {
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #1a1a1a;
  content: "";
}
.c-qa__toggle::before {
  width: 1.6rem;
  height: 0.2rem;
  transform: translate(-50%, -50%);
}
.c-qa__toggle::after {
  width: 0.2rem;
  height: 1.6rem;
  transform: translate(-50%, -50%);
  transition: opacity 0.2s ease;
}

.c-qa__item[open] .c-qa__toggle::after {
  opacity: 0;
}

.c-qa__a {
  display: flex;
  gap: 1.6rem;
  padding: 0 4rem 2.4rem;
}
@media screen and (max-width: 568px) {
  .c-qa__a {
    gap: 0.8rem;
    padding: 0 0 2rem;
  }
}

.c-qa__atext {
  flex: 1;
  min-width: 0;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}
.c-qa__atext p + p {
  margin-top: 1.6rem;
}

.c-qa--lg .c-qa__mark {
  width: 3.4rem;
}

.c-qa--lg .c-qa__q {
  align-items: flex-start;
  padding-top: 2.3rem;
  padding-right: 2.3rem;
}
@media screen and (max-width: 568px) {
  .c-qa--lg .c-qa__q {
    padding-right: 0;
  }
}

.c-qa--lg .c-qa__item[open] .c-qa__q::after {
  position: absolute;
  right: 2.3rem;
  bottom: 0;
  left: 4rem;
  height: 0.1rem;
  background-color: #BBBBBB;
  content: "";
}
@media screen and (max-width: 568px) {
  .c-qa--lg .c-qa__item[open] .c-qa__q::after {
    right: 0;
    left: 0;
  }
}

.c-qa--lg .c-qa__a {
  padding-top: 2.4rem;
}

.c-qa--lg .c-qa__atext {
  max-width: 45rem;
  font-size: 2rem;
  line-height: 1.8;
}
@media screen and (max-width: 568px) {
  .c-qa--lg .c-qa__atext {
    max-width: none;
    font-size: 1.6rem;
    line-height: 1.75;
  }
}

.c-articleEntry__item {
  padding: 0 0 1rem 0;
}
.c-articleEntry__item:last-child {
  padding: 0;
}
.c-articleEntry__item dl {
  display: flex;
}
.c-articleEntry__item dl dt {
  width: 30%;
}
@media screen and (max-width: 768px) {
  .c-articleEntry__item dl dt {
    width: 20%;
  }
}
.c-articleEntry__item dl dt img {
  border-radius: 0.3rem;
}
.c-articleEntry__item dl dd {
  width: 70%;
  padding: 0 0 0 5%;
}
@media screen and (max-width: 768px) {
  .c-articleEntry__item dl dd {
    width: 80%;
  }
}
.c-articleEntry__thumb {
  width: 100%;
  height: auto;
  position: relative;
}
.c-articleEntry__thumb::before {
  content: "";
  display: block;
  padding-top: 66.67%;
}
.c-articleEntry__thumb img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
}
.c-articleEntry__text {
  overflow: hidden;
  max-height: 5.1em;
  line-height: 1.7em;
  padding: 0;
}
.c-articleEntry__text .textline {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-height: 1.7em;
}
.c-articleEntry.textend_dots h2,
.c-articleEntry.textend_dots h3 {
  overflow: hidden;
  max-height: 1.7em;
  line-height: 1.7em;
}
.c-articleEntry.textend_dots h2 .textline,
.c-articleEntry.textend_dots h3 .textline {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  line-height: 1.7em;
}
.c-articleEntry.textend_dots p {
  overflow: hidden;
  max-height: 3.4em;
  line-height: 1.7em;
}
.c-articleEntry.textend_dots p .textline {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 1.7em;
}
.c-articleEntry.textend_grad h2,
.c-articleEntry.textend_grad h3 {
  height: 1.7em;
  overflow: hidden;
  display: block;
  position: relative;
}
.c-articleEntry.textend_grad h2:after,
.c-articleEntry.textend_grad h3:after {
  content: "";
  display: block;
  width: 5em;
  height: 1.7em;
  background-image: url(../img/article/textend_grad.png);
  background-size: 100% 100%;
  position: absolute;
  right: 0;
  bottom: 0;
}
.c-articleEntry.textend_grad p {
  height: 3.4em;
  overflow: hidden;
  display: block;
  position: relative;
}
.c-articleEntry.textend_grad p:after {
  content: "";
  display: block;
  width: 5em;
  height: 1.7em;
  background-image: url(../img/article/textend_grad.png);
  background-size: 100% 100%;
  position: absolute;
  right: 0;
  bottom: 0;
}

select.article-archive {
  width: 100%;
}

.c-articlePager {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.8rem;
  margin-top: 6.4rem;
}
@media screen and (max-width: 568px) {
  .c-articlePager {
    margin-top: 4rem;
  }
}
.c-articlePager li {
  line-height: 0;
}
.c-articlePager .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 4.8rem;
  height: 4.8rem;
  font-family: "Roboto", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
  background-color: #FFFFFF;
  border: 0.1rem solid rgba(0, 0, 0, 0.1);
  border-radius: 0.4rem;
  transition: opacity 0.2s ease;
}
.c-articlePager .page-numbers, .c-articlePager .page-numbers:hover, .c-articlePager .page-numbers:visited, .c-articlePager .page-numbers:link {
  color: #1a1a1a;
  text-decoration: none;
}
.c-articlePager .page-numbers:hover {
  opacity: 0.7;
}
.c-articlePager .current {
  background-color: #FFD699;
  border-color: #FFD699;
}
.c-articlePager .next,
.c-articlePager .prev {
  font-size: 0;
}
.c-articlePager .next::after,
.c-articlePager .prev::after {
  content: "";
  width: 1rem;
  height: 1.7rem;
  background-color: #1a1a1a;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
}
.c-articlePager .next {
  background-color: #000000;
  border-color: #000000;
  border-radius: 50%;
}
.c-articlePager .next::after {
  background-color: #FFFFFF;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 17'%3E%3Cpath d='M1 1l7 7.5L1 16' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 17'%3E%3Cpath d='M1 1l7 7.5L1 16' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.c-articlePager .prev {
  background-color: #000000;
  border-color: #000000;
  border-radius: 50%;
}
.c-articlePager .prev::after {
  background-color: #FFFFFF;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 17'%3E%3Cpath d='M9 1L2 8.5 9 16' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 17'%3E%3Cpath d='M9 1L2 8.5 9 16' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.c-articleGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.6rem 2rem;
  margin-bottom: 4rem;
}
@media screen and (max-width: 568px) {
  .c-articleGrid {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem 1rem;
    margin-bottom: 2rem;
  }
}
@media screen and (max-width: 414px) {
  .c-articleGrid {
    grid-template-columns: repeat(1, 1fr);
    gap: 2rem;
  }
}
.c-articleGrid__bgBox {
  display: block;
  border: solid 0.1rem;
}
.c-articleGrid__bgBox:hover {
  opacity: 0.8;
  text-decoration: none;
}
.c-articleGrid__bgBox:hover img {
  opacity: 1;
}
.c-articleGrid__thum {
  position: relative;
  position: relative;
  width: 100%;
  overflow: hidden;
  aspect-ratio: 3/2;
}
.c-articleGrid__thum img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-articleGrid__thum .pop {
  z-index: 2;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #c94447;
  color: #fff;
  padding: 0.5em 0.7em;
  border-radius: 0 0 1rem 0;
  letter-spacing: 0.1rem;
  font-weight: 700;
  font-size: 1.2rem;
}
.c-articleGrid__cont {
  padding: 1.5rem 1.5rem 2rem;
}
.c-articleGrid__ttl {
  font-weight: 700;
  overflow: hidden;
  max-height: 3.4em;
  line-height: 1.7em;
}
.c-articleGrid__ttl .textline {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 1.7em;
}
.c-articleGrid__info li.article-day {
  width: 100%;
  font-weight: 400;
}
.c-articleGrid__info li.article-day + li {
  margin-left: 0;
}
.c-articleGrid__info ul.article-cgy li a,
.c-articleGrid__info ul.article-cgy li span {
  background-size: 1rem auto;
  padding: 0.2rem 1rem;
}
.c-articleGrid__text {
  overflow: hidden;
  max-height: 5.1em;
  line-height: 1.7em;
  padding: 0;
}
.c-articleGrid__text .textline {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-height: 1.7em;
}

.c-articleHead__thum {
  width: 100%;
  height: auto;
  margin: 0 auto 5rem auto;
  overflow: hidden;
  position: relative;
  border-radius: 0.5rem;
  position: relative;
  width: 100%;
  overflow: hidden;
  aspect-ratio: 3/2;
}
.c-articleHead__thum img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 568px) {
  .c-articleHead__thum {
    margin: 0 auto 2rem auto;
  }
}
.c-articleHead__thum div.pop {
  z-index: 2;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #c94447;
  color: #fff;
  padding: 3% 4%;
  border-radius: 0 0 1rem 0;
  letter-spacing: 0.1rem;
  font-weight: bold;
}
.c-articleHead__ttl {
  margin: 0 auto 1rem auto;
  font-weight: bold;
}
@media screen and (max-width: 568px) {
  .c-articleHead__ttl {
    margin: 0 auto;
  }
}
.c-articleHead__info li {
  display: inline-block;
  font-size: 0;
}
.c-articleHead__info .c-articleDay {
  font-weight: 700;
}
.c-articleHead__info .c-articleDay + li {
  margin-left: 1rem;
}
.c-articleHead__info .c-articleCgy {
  font-size: 0;
}
.c-articleHead__info .c-articleCgy li {
  margin-right: 0.5rem;
  margin-bottom: 0.5rem;
  display: inline-block;
}
.c-articleHead__info .c-articleCgy li a,
.c-articleHead__info .c-articleCgy li span {
  background-color: #f2e6d1;
  padding: 0.3rem 1rem;
  border-radius: 0.5rem;
  color: #fff;
  background: #f2e6d1;
  font-weight: 700;
}
.c-articleHead__info .c-articleCgy li a, .c-articleHead__info .c-articleCgy li a:hover, .c-articleHead__info .c-articleCgy li a:visited, .c-articleHead__info .c-articleCgy li a:link {
  color: #fff;
  text-decoration: none;
}
.c-articleHead__info .c-articleCgy li a:hover {
  opacity: 0.8;
  text-decoration: none;
}

.c-articleList {
  margin-bottom: 4rem;
}
.c-articleList.textend_dots h2,
.c-articleList.textend_dots h3 {
  overflow: hidden;
  max-height: 1.7em;
  line-height: 1.7em;
}
.c-articleList.textend_dots h2 .textline,
.c-articleList.textend_dots h3 .textline {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  line-height: 1.7em;
}
.c-articleList.textend_grad h2 a,
.c-articleList.textend_grad h3 a {
  height: 1.7em;
  overflow: hidden;
  display: block;
  position: relative;
}
.c-articleList.textend_grad h2 a:after,
.c-articleList.textend_grad h3 a:after {
  content: "";
  display: block;
  width: 5em;
  height: 1.7em;
  background-image: url(../img/article/textend_grad.png);
  background-size: 100% 100%;
  position: absolute;
  right: 0;
  bottom: 0;
}
.c-articleList__item {
  padding: 2rem 0;
  display: flex;
  align-items: center;
  border-bottom: 0.1rem solid #e5e5e5;
}
@media screen and (max-width: 768px) {
  .c-articleList__item {
    flex-wrap: wrap;
  }
}
.c-articleList__cat {
  width: 13rem;
  padding: 0 1rem 0 0;
  display: block;
}
.c-articleList__cat a,
.c-articleList__cat span {
  min-width: 10rem;
  display: block;
  text-align: center;
  border: #ffaf34 0.2rem solid;
  color: #ffaf34;
  padding: 0.3rem 5%;
  margin: auto;
}
.c-articleList__cat a, .c-articleList__cat a:hover, .c-articleList__cat a:visited, .c-articleList__cat a:link {
  color: #ffaf34;
  text-decoration: none;
}
.c-articleList__cat a:hover {
  text-decoration: none;
  background-color: #ffaf34;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .c-articleList__cat {
    width: auto;
  }
}
.c-articleList__date {
  width: 13rem;
  padding: 0 1rem 0 0;
}
@media screen and (max-width: 768px) {
  .c-articleList__date {
    width: auto;
  }
}
.c-articleList__ttl {
  flex: 1;
  padding-right: 2rem;
  background-image: url(../img/arrow/arrow_right_c.svg);
  background-size: 2rem 2rem;
  background-position: right center;
  font-weight: 700;
}
.c-articleList__ttl a {
  padding: 0.2rem 0;
}
@media screen and (max-width: 768px) {
  .c-articleList__ttl {
    width: 100%;
    margin-top: 1rem;
  }
}

.c-articleNav {
  width: 100%;
  height: auto;
  padding: 1rem 0;
}

ul.c-articleNav__transfer {
  width: 100%;
  max-width: 50rem;
  margin: auto;
  display: table;
  table-layout: fixed;
  text-align: center;
  padding: 3rem 0;
}
ul.c-articleNav__transfer li {
  display: table-cell;
  vertical-align: middle;
  padding: 0.5rem 0;
  font-weight: bold;
  color: #e5e5e5;
}
ul.c-articleNav__transfer li + li {
  border-left: #e5e5e5 0.1rem solid;
}
ul.c-articleNav__transfer li a {
  background-repeat: no-repeat;
  background-size: 2rem 2rem;
  padding: 0.5rem 2.5rem;
}
@media screen and (max-width: 568px) {
  ul.c-articleNav__transfer li a {
    padding: 0.5rem 1.5rem;
  }
}
ul.c-articleNav__transfer li:first-child a {
  background-image: url(../img/arrow/arrow_left_c.svg);
  background-position: left center;
  padding: 0.5rem 0.5rem 0.5rem 4.5rem;
}
@media screen and (max-width: 568px) {
  ul.c-articleNav__transfer li:first-child a {
    background-image: none;
    padding: 0.5rem 1.5rem;
  }
}
ul.c-articleNav__transfer li:last-child a {
  background-image: url(../img/arrow/arrow_right_c.svg);
  background-position: right center;
  padding: 0.5rem 4.5rem 0.5rem 0.5rem;
}
@media screen and (max-width: 568px) {
  ul.c-articleNav__transfer li:last-child a {
    background-image: none;
    padding: 0.5rem 1.5rem;
  }
}

.c-shareBox {
  text-align: center;
}
.c-shareBox__bg {
  display: inline-block;
  width: auto;
  background-color: #fcfbf6;
  padding: 2rem 6rem;
  border-radius: 5rem;
}
@media screen and (max-width: 768px) {
  .c-shareBox__bg {
    padding: 2rem 4rem;
  }
}
@media screen and (max-width: 568px) {
  .c-shareBox__bg {
    display: block;
    padding: 1.5rem;
  }
}
.c-shareBox__list {
  display: flex;
  justify-content: center;
  align-items: center;
}
.c-shareBox__list li + li {
  margin-left: 2rem;
}
.c-shareBox__list li:first-of-type {
  margin-right: 1.5rem;
}
.c-shareBox__list p {
  color: #ffaf34;
  letter-spacing: 0.05em;
  font-weight: bold;
}
.c-shareBox__list a {
  display: block;
}
@media screen and (max-width: 768px) {
  .c-shareBox__list li + li {
    margin-left: 2.5rem;
  }
  .c-shareBox__list li:first-of-type {
    margin-right: 1rem;
  }
}
@media screen and (max-width: 568px) {
  .c-shareBox .icon_twitter {
    width: 2.5rem;
  }
  .c-shareBox .icon_facebook,
  .c-shareBox .icon_line {
    width: 2.7rem;
  }
}

.c-articleTag__item {
  display: inline-block;
  margin: 0 0.5rem 1rem 0;
}
.c-articleTag__item a {
  width: 100%;
  height: 100%;
  display: block;
  border-radius: 0.5rem;
  background: #ffaf34;
  padding: 0.5rem;
}
.c-articleTag__item a:link, .c-articleTag__item a:visited, .c-articleTag__item a:active {
  color: #fff;
  background-color: #ffaf34;
}
.c-articleTag__item a:hover {
  opacity: 0.8;
}

.c-categoryList {
  font-size: 0;
}
.c-categoryList__item {
  margin-right: 0.5rem;
  margin-bottom: 0.5rem;
  display: inline-block;
}
.c-categoryList__item a,
.c-categoryList__item span {
  background-color: #f2e6d1;
  padding: 0.3rem 1rem;
  border-radius: 0.5rem;
  color: #fff;
  background: #f2e6d1;
  font-weight: 700;
}
.c-categoryList__item a, .c-categoryList__item a:hover, .c-categoryList__item a:visited, .c-categoryList__item a:link {
  color: #fff;
  text-decoration: none;
}
.c-categoryList__item a:hover {
  opacity: 0.8;
  text-decoration: none;
}

.l-header {
  position: sticky;
  top: 0;
  z-index: 100;
  width: 100%;
  max-width: 100vw;
  background-color: #FFFFFF;
}

.l-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 151.2rem;
  margin: 0 auto;
  padding: 1.1rem 4rem 1.4rem;
}
@media screen and (max-width: 1280px) {
  .l-header__inner {
    padding: 1.1rem 2.4rem 1.4rem;
  }
}
@media (max-width: 1199px) {
  .l-header__inner {
    padding: 12px 24px;
  }
}
@media screen and (max-width: 768px) {
  .l-header__inner {
    padding: 8px 16px;
  }
}

.l-header__logo {
  flex-shrink: 0;
  margin: 0;
  line-height: 0;
}
.l-header__logo img {
  width: 14.2rem;
  height: 5.5rem;
}
@media screen and (max-width: 768px) {
  .l-header__logo img {
    display: block;
    width: 128px;
    height: auto;
  }
}

.l-header__nav {
  display: flex;
  align-items: center;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .l-header__nav {
    display: none;
  }
}

.l-header__navList {
  display: flex;
  align-items: center;
  gap: 4rem;
}

.l-header__navItem {
  position: relative;
}
.l-header__navItem > .l-header__navLink {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  font-size: 1.6rem;
  line-height: 1.2;
}
.l-header__navItem > .l-header__navLink, .l-header__navItem > .l-header__navLink:hover, .l-header__navItem > .l-header__navLink:visited, .l-header__navItem > .l-header__navLink:link {
  color: #1a1a1a;
  text-decoration: none;
}
.l-header__navItem:hover > .l-header__navLink {
  opacity: 0.6;
}

.l-header__navItem.is-current > .l-header__navLink {
  position: relative;
}
.l-header__navItem.is-current > .l-header__navLink::after {
  position: absolute;
  right: 0;
  bottom: -0.8rem;
  left: 0;
  height: 0.2rem;
  background-color: #ffaf34;
  content: "";
}

.l-header__navPlus {
  position: relative;
  flex-shrink: 0;
  width: 1.1rem;
  height: 1.1rem;
}
.l-header__navPlus::before, .l-header__navPlus::after {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  background-color: #1a1a1a;
  content: "";
}
.l-header__navPlus::before {
  width: 1.1rem;
  height: 0.1rem;
  transform: translate(-50%, -50%);
}
.l-header__navPlus::after {
  width: 0.1rem;
  height: 1.1rem;
  transform: translate(-50%, -50%);
}

.l-header__navItem--parent:hover .l-header__sub, .l-header__navItem--parent:focus-within .l-header__sub {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 1rem);
}

.l-header__sub {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%, 2rem);
  min-width: 18rem;
  padding: 1rem 0;
  background-color: #FFFFFF;
  border: 0.1rem solid rgba(0, 0, 0, 0.08);
  box-shadow: 0 0.6rem 2rem rgba(0, 0, 0, 0.08);
  opacity: 0;
  visibility: hidden;
  transition: all 0.25s ease;
}
.l-header__sub li a {
  display: block;
  padding: 1rem 2rem;
  font-size: 1.4rem;
  white-space: nowrap;
}
.l-header__sub li a, .l-header__sub li a:hover, .l-header__sub li a:visited, .l-header__sub li a:link {
  color: #1a1a1a;
  text-decoration: none;
}
.l-header__sub li a:hover {
  background-color: #fff8ed;
}

.l-header__cv {
  display: flex;
  gap: 1.6rem;
}

.l-header__btn {
  min-width: 0;
  width: 14.1rem;
  height: 3.4rem;
  padding: 0;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1;
  justify-content: center;
}
.l-header__btn::after {
  content: none;
}

.l-headerToggle {
  display: none;
}
@media screen and (max-width: 768px) {
  .l-headerToggle {
    display: block;
  }
}

.l-header__navLink--label {
  cursor: default;
}

@media (min-width: 1200px) and (max-width: 1389px) {
  .l-header__inner {
    padding-inline: 2.4rem;
    gap: 2.4rem;
  }
  .l-header__nav, .l-header__navList {
    gap: 1.6rem;
  }
  .l-header__cv {
    gap: 0.8rem;
  }
  .l-header__btn {
    width: 12rem;
  }
}
.l-header__navLink {
  white-space: nowrap;
}

.l-header-nav {
  margin: auto;
  position: absolute;
  right: 18rem;
  z-index: 1;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 1280px) {
  .l-header-nav {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: 70%;
    overflow: auto;
    background-color: #fff;
    z-index: 1000;
    transform: none;
  }
}
.l-header-nav__list {
  padding: 0 1rem;
  display: flex;
}
@media screen and (max-width: 1280px) {
  .l-header-nav__list {
    flex-direction: column;
    width: 100%;
    padding: 2rem 0;
  }
}
@media screen and (max-width: 1280px) {
  .l-header-nav__item {
    width: 100%;
    border-bottom: #ececec 0.1rem solid;
  }
}
.l-header-nav__item a {
  display: block;
  width: 100%;
  height: 100%;
  padding: 2.6rem 1.5rem;
  font-weight: bold;
}
@media screen and (max-width: 1280px) {
  .l-header-nav__item a {
    padding: 1.5rem;
  }
}
.l-header-nav__item a.active {
  color: #ffaf34;
}
.l-header-nav__item.switching {
  display: none;
}
@media screen and (max-width: 1280px) {
  .l-header-nav__item.switching {
    display: inherit;
  }
}
.l-header-nav__item.switching img {
  width: 90%;
  height: auto;
  margin: 0 auto 2rem auto;
}
.l-header-nav__item.switching ul {
  padding: 1.5rem 0;
}
.l-header-nav__item.switching ul li a {
  padding: 0.3rem 1.5rem;
  font-weight: normal;
  border-bottom: none;
}

.l-header-nav__item--parent {
  position: relative;
}
.l-header-nav__item--parent > a:after {
  content: "";
  display: inline-block;
  width: 2rem;
  height: 2rem;
  background-image: url(../img/arrow/input_select.svg);
  background-position: center right;
  background-size: 2rem 2rem;
  background-repeat: no-repeat;
  vertical-align: middle;
}

ul.l-header-nav__sub {
  position: absolute;
  top: 100%;
  left: 50%;
  width: auto;
  transform: translate(-50%, 0);
  background-color: rgba(255, 255, 255, 0.7);
  transition: all 0.4s ease;
}
ul.l-header-nav__sub li {
  padding: 0 1.5rem;
  height: 0;
  overflow: hidden;
  transition: all 0.4s ease;
}
ul.l-header-nav__sub li a {
  padding: 0 1rem;
  background-image: none;
  background-repeat: no-repeat;
  background-size: 0.5rem 1rem;
  background-position: left top 0.5rem;
  white-space: nowrap;
  text-align: left;
  line-height: 1.7;
  opacity: 0;
  transition: all 0.4s ease;
  border: none;
  font-weight: 700;
}
@media screen and (max-width: 1280px) {
  ul.l-header-nav__sub li a {
    padding: 0.5rem 0.5rem 0.5rem 1.5rem;
  }
}
@media screen and (max-width: 1280px) {
  ul.l-header-nav__sub {
    position: static;
    top: inherit;
    left: inherit;
    transform: inherit;
    z-index: auto;
    padding: 0 0 1.5rem 2.5rem;
    overflow: inherit;
    height: auto;
    background: inherit;
  }
  ul.l-header-nav__sub li {
    height: auto;
    overflow: inherit;
    padding: 0;
  }
  ul.l-header-nav__sub li a {
    opacity: 1;
    font-size: 1.3rem;
    background-image: url("../img/arrow/arrow_right_c.svg");
    background-position: left top 1rem;
  }
  ul.l-header-nav__sub li a:hover {
    letter-spacing: inherit;
  }
}

@media screen and (min-width: 769px) {
  .l-header-nav__item--parent:hover ul.l-header-nav__sub {
    padding: 0.5rem 0.5rem;
  }
  .l-header-nav__item--parent:hover ul.l-header-nav__sub li {
    padding: 0.5rem 1rem;
    overflow: visible;
    height: auto;
  }
  .l-header-nav__item--parent:hover ul.l-header-nav__sub li a {
    padding: 0 1rem;
    opacity: 1;
    background-image: url("../img/arrow/arrow_right_c.svg");
  }
}

body.is-drawerOpen {
  overflow: hidden;
  -ms-touch-action: none;
  touch-action: none;
}

.l-headerToggle {
  display: none;
}
@media (max-width: 1199px) {
  .l-headerToggle {
    position: relative;
    z-index: 1001;
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    box-sizing: border-box;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 0;
    outline: 0;
    background-color: transparent;
  }
}

.l-headerToggle__bar {
  background-color: #ffaf34;
  display: block;
  width: 28px;
  height: 2px;
  border: 0;
  transition: background-color 0.35s ease, transform 0.35s ease;
}

.l-headerToggle.is-active .l-headerToggle__bar {
  background-color: #1a1a1a;
}
.l-headerToggle.is-active .top {
  transform: translateY(8px) rotate(45deg);
}
.l-headerToggle.is-active .middle {
  opacity: 0;
}
.l-headerToggle.is-active .bottom {
  transform: translateY(-8px) rotate(-45deg);
}

#drawer_layer {
  display: none;
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 999;
  top: 0;
  left: 0;
  background-color: rgba(51, 51, 51, 0.5);
  opacity: 0;
  transition: opacity 0.3s ease;
}
#drawer_layer.is-visible {
  display: block;
  opacity: 1;
}

@media (max-width: 1199px) {
  .l-header__nav {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1000;
    display: none;
    width: min(32rem, 86vw);
    height: 100%;
    padding: 9rem 2.4rem 4rem;
    overflow-y: auto;
    background-color: #FFFFFF;
    opacity: 0;
    backface-visibility: hidden;
  }
  .l-header__nav.is-open {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 3.2rem;
    opacity: 1;
    animation-duration: 0.4s;
    animation-name: fadeInRight;
  }
  .l-header__nav .l-header__navList {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }
  .l-header__nav .l-header__navItem {
    border-bottom: 0.1rem solid #e5e5e5;
  }
  .l-header__nav .l-header__navItem > .l-header__navLink {
    justify-content: space-between;
    padding: 1.6rem 0;
  }
  .l-header__nav .l-header__navItem--parent > .l-header__navLink .l-header__navPlus {
    display: none;
  }
  .l-header__nav .l-header__sub {
    position: static;
    min-width: 0;
    padding: 0 0 1.2rem;
    transform: none;
    border: 0;
    box-shadow: none;
    opacity: 1;
    visibility: visible;
  }
  .l-header__nav .l-header__sub li a {
    padding: 0.8rem 0 0.8rem 1.6rem;
    font-size: 1.4rem;
  }
  .l-header__nav .l-header__cv {
    flex-direction: column;
    gap: 1.2rem;
  }
  .l-header__nav .l-header__btn {
    width: 100%;
    height: 4.8rem;
    font-size: 1.4rem;
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeOutRight {
  from {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeOutLeft {
  from {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translate3d(0, -100%, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeOutDown {
  from {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(0, -100%, 0);
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeOutUp {
  from {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }
}
@keyframes fadeInScale {
  from {
    opacity: 0;
    transform: scale(0.9);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes fadeOutScale {
  from {
    opacity: 1;
    transform: scale(1);
  }
  to {
    opacity: 0;
    transform: scale(0.9);
  }
}
.l-footer {
  position: relative;
  z-index: 1;
  border-radius: 6.4rem 6.4rem 0 0;
  background-color: #F2E6D1;
  margin-top: -5.6rem;
}
@media screen and (max-width: 768px) {
  .l-footer {
    margin-top: -3.2rem;
    border-radius: 4rem 4rem 0 0;
  }
}

.p-front .l-footer {
  margin-top: 5.6rem;
}

.l-footer__inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  max-width: 151.2rem;
  margin: 0 auto;
  padding: 8rem 6.4rem 4rem;
}
@media screen and (max-width: 1000px) {
  .l-footer__inner {
    padding: 8rem 2.4rem 4rem;
  }
}
@media screen and (max-width: 768px) {
  .l-footer__inner {
    flex-direction: column;
    flex-wrap: nowrap;
    padding: 4rem 4rem 1.6rem;
  }
}

.l-footer__brand {
  flex-shrink: 0;
}

.l-footer__logo {
  display: block;
  width: fit-content;
  line-height: 0;
}
.l-footer__logo img {
  width: 22.4rem;
  height: auto;
}
@media screen and (max-width: 768px) {
  .l-footer__logo img {
    width: 16.2rem;
  }
}

.l-footer__brandName {
  margin-top: 1.6rem;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.6363636364;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .l-footer__brandName {
    margin-top: 0.8rem;
    font-size: 2rem;
    line-height: 1.6;
  }
}

.l-footer__nav {
  display: flex;
  gap: 8rem;
  padding-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .l-footer__nav {
    flex-direction: column;
    gap: 0;
    width: 100%;
    margin-top: 3.2rem;
    padding-top: 0;
    border-bottom: 0.1rem solid #000000;
  }
}

.l-footer__col {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}
@media screen and (max-width: 768px) {
  .l-footer__col {
    display: contents;
  }
}

.l-footer__block {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
@media screen and (max-width: 768px) {
  .l-footer__block {
    padding: 1.6rem 0;
    border-top: 0.1rem solid #000000;
  }
}

.l-footer__head {
  font-size: 2rem;
  line-height: 1;
  color: #1a1a1a;
}
.l-footer__head a, .l-footer__head a:hover, .l-footer__head a:visited, .l-footer__head a:link {
  color: #1a1a1a;
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  .l-footer__head {
    font-size: 1.6rem;
  }
}

.l-footer__sub {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
@media screen and (max-width: 768px) {
  .l-footer__sub {
    gap: 1.6rem;
  }
}

@media screen and (max-width: 768px) {
  .l-footer__sub--2col {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 1.6rem;
    row-gap: 1.6rem;
  }
}

.l-footer__main {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}
@media screen and (max-width: 768px) {
  .l-footer__main {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    column-gap: 1.6rem;
    row-gap: 1.6rem;
  }
}

.l-footer__legal {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
@media screen and (max-width: 768px) {
  .l-footer__legal {
    gap: 1.6rem;
  }
}

.l-footer__sub li,
.l-footer__main li,
.l-footer__legal li {
  display: flex;
}

.l-footer__head a,
.l-footer__sub a,
.l-footer__main a,
.l-footer__legal a {
  display: inline-flex;
  align-items: center;
  line-height: 1;
}
.l-footer__head a, .l-footer__head a:hover, .l-footer__head a:visited, .l-footer__head a:link,
.l-footer__sub a,
.l-footer__sub a:hover,
.l-footer__sub a:visited,
.l-footer__sub a:link,
.l-footer__main a,
.l-footer__main a:hover,
.l-footer__main a:visited,
.l-footer__main a:link,
.l-footer__legal a,
.l-footer__legal a:hover,
.l-footer__legal a:visited,
.l-footer__legal a:link {
  color: #1a1a1a;
  text-decoration: none;
}
.l-footer__head a:hover,
.l-footer__sub a:hover,
.l-footer__main a:hover,
.l-footer__legal a:hover {
  opacity: 0.6;
}

.l-footer__head a,
.l-footer__main a {
  gap: 0.8rem;
}

.l-footer__sub a {
  gap: 0.4rem;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .l-footer__sub a {
    font-size: 1.4rem;
  }
}

.l-footer__main a {
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .l-footer__main a {
    gap: 0.4rem;
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 768px) {
  .l-footer__main--wrap a {
    display: inline;
    line-height: 1.25;
  }
  .l-footer__main--wrap a .l-footer__arrow {
    display: inline-block;
    margin-left: 0.4rem;
    vertical-align: middle;
  }
}

.l-footer__legal a {
  gap: 0.8rem;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .l-footer__legal a {
    font-size: 1.4rem;
  }
}

.l-footer__arrow {
  flex-shrink: 0;
  width: 0.99rem;
  height: 0.99rem;
  border-top: 0.1rem solid currentColor;
  border-right: 0.1rem solid currentColor;
  transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
  .l-footer__arrow {
    width: 0.64rem;
    height: 0.64rem;
  }
}

.l-footer__sub .l-footer__arrow {
  width: 0.74rem;
  height: 0.74rem;
}
@media screen and (max-width: 768px) {
  .l-footer__sub .l-footer__arrow {
    width: 0.64rem;
    height: 0.64rem;
  }
}

.l-footer__extIcon {
  flex-shrink: 0;
  width: 1.2rem;
  height: 1.2rem;
}

.l-footer__head--company .l-footer__extIcon {
  width: 1.4rem;
  height: 1.4rem;
}

.l-footer__copyright {
  width: 100%;
  margin-top: 4rem;
  padding-top: 2.4rem;
  border-top: 0.1rem solid #000000;
  font-family: "Roboto", sans-serif;
  font-size: 1.3rem;
  line-height: 1.1718461538;
  text-align: right;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .l-footer__copyright {
    margin-top: 1.6rem;
    padding-top: 0;
    border-top: 0;
  }
}

.l-page {
  padding-top: 8rem;
  margin-top: -8rem;
}
@media screen and (max-width: 768px) {
  .l-page {
    padding-top: 5.5rem;
    margin-top: -5.5rem;
  }
}
.l-page--column_2 {
  padding-top: 5rem;
}
@media screen and (min-width: 769px) {
  .l-page--column_2 {
    display: flex;
    justify-content: space-between;
  }
}
@media screen and (max-width: 768px) {
  .l-page--column_2 {
    padding-top: 2rem;
  }
}
.l-page--column_2 .l-page__main {
  width: 70%;
}
@media screen and (max-width: 768px) {
  .l-page--column_2 .l-page__main {
    width: 100%;
  }
}
.l-page--column_2 .l-sidebar {
  width: 25%;
}
@media screen and (max-width: 768px) {
  .l-page--column_2 .l-sidebar {
    width: 100%;
  }
}

.l-sec {
  padding-top: 4rem;
  padding-bottom: 4rem;
}
@media screen and (max-width: 768px) {
  .l-sec {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
}

/*
 * EDITOR STYLE
 * WPのGutenbergにあてるスタイル
 * _wp.scssとeditor-style.scssからインポートされるmixin　editor()を定義
 * [ 注意1 ] _adjust.scssで定義したクラス以外は@extendできません。
 * [ 注意2 ] Webフォントは使用しないでください。
 */
div.editor {
  padding: 5rem 0 0 0;
}
@media screen and (max-width: 568px) {
  div.editor {
    padding: 2rem 0 0 0;
  }
}
div.editor h1,
div.editor h2,
div.editor h3,
div.editor h4,
div.editor h5,
div.editor h6 {
  font-weight: bold;
}
div.editor h1 {
  padding: 0.2rem 0 0.2rem 0.8rem;
  margin-bottom: 1em;
  line-height: 1.3em;
  color: #ffaf34;
  border-left: #ffaf34 0.3rem solid;
  font-size: 24px;
}
@media screen and (max-width: 768px) {
  div.editor h1 {
    font-size: 20px;
  }
}
div.editor h2 {
  padding: 0.2rem 0 0.2rem 0.8rem;
  margin-bottom: 1em;
  line-height: 1.3em;
  color: #ffaf34;
  border-left: #ffaf34 0.3rem solid;
}
div.editor a:link, div.editor a:visited, div.editor a:active, div.editor a:hover {
  text-decoration: underline;
  color: #ffaf34;
}
div.editor p {
  margin-bottom: 1em;
}
div.editor p br {
  clear: inherit;
}
div.editor br {
  clear: both;
}
div.editor .center {
  text-align: center;
  text-indent: 0;
}
div.editor .left {
  text-align: left;
  text-indent: 0;
}
div.editor .right {
  text-align: right;
  text-indent: 0;
}
div.editor strong {
  font-weight: bold;
}
div.editor em {
  font-style: italic;
}
div.editor blockquote {
  background-color: #f5f5f5;
  padding: 3em 1em;
  position: relative;
  margin-bottom: 1.5rem;
  border-radius: 1rem;
  border: none;
}
div.editor blockquote:before {
  content: "“";
  font-size: 400%;
  line-height: 1em;
  color: #fff;
  position: absolute;
  left: 1rem;
  top: 1rem;
}
@media screen and (max-width: 768px) {
  div.editor blockquote:before {
    left: 0.5rem;
    top: 0.5rem;
  }
}
div.editor blockquote:after {
  content: "”";
  font-size: 400%;
  line-height: 0em;
  color: #fff;
  position: absolute;
  right: 1rem;
  bottom: 1rem;
}
@media screen and (max-width: 768px) {
  div.editor blockquote:after {
    right: 0.5rem;
    bottom: 0.5rem;
  }
}
div.editor img {
  max-width: 100%;
  height: auto !important;
}
div.editor .f_left {
  float: left;
}
@media screen and (max-width: 568px) {
  div.editor .f_left {
    float: none;
  }
}
div.editor .f_right {
  float: right;
}
@media screen and (max-width: 568px) {
  div.editor .f_right {
    float: none;
  }
}
div.editor .aligncenter {
  margin: 3% auto;
}
div.editor .alignright {
  float: right;
  margin: 3% 0 3% 3%;
}
@media screen and (max-width: 568px) {
  div.editor .alignright {
    float: none;
    margin: 3% auto;
  }
}
div.editor .alignleft {
  float: left;
  margin: 3% 3% 3% 0;
}
@media screen and (max-width: 568px) {
  div.editor .alignleft {
    float: none;
    margin: 3% auto;
  }
}
div.editor ul,
div.editor ol {
  margin: 3% 0;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  div.editor ul,
  div.editor ol {
    padding: 1rem 0 1rem 1rem;
  }
}
div.editor li {
  line-height: 1.5em;
  list-style-position: outside;
}
@media screen and (max-width: 568px) {
  div.editor li {
    line-height: 1.7em;
  }
}
div.editor ul li {
  list-style-type: disc;
}
div.editor ol li {
  list-style-type: decimal;
}
div.editor table {
  border-collapse: collapse;
}
div.editor table th,
div.editor table td {
  border: 0.1rem solid #e5e5e5;
  padding: 0.5rem 1rem;
}
div.editor table th {
  font-weight: bold;
}
div.editor .wp-block-embed__wrapper iframe {
  width: 100% !important;
}
div.editor .wp-block-embed-youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  margin-bottom: 6rem !important;
  margin-top: 3%;
}
div.editor .wp-block-embed-youtube .wp-block-embed__wrapper {
  position: static;
}
div.editor .wp-block-embed-youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
div.editor .wp-block-embed figcaption {
  position: absolute;
  z-index: 10;
  top: 100.25%;
  left: 0;
  right: 0;
  font-size: 80%;
  text-align: center;
}
div.editor .wp-block-image figcaption {
  font-size: 80%;
  text-align: center;
}
div.editor .wp-block-file__button {
  background-color: #ffaf34;
  color: #fff !important;
  text-decoration: none !important;
}
div.editor .wp-block-file__button:hover {
  background-color: #f2e6d1;
  color: #fff !important;
}
div.editor .wp-block-button.aligncenter {
  text-align: center;
}
div.editor .wp-block-button a {
  margin: 0 auto 5rem;
  width: 90%;
  max-width: 25rem;
  color: #fff;
  background: #f2e6d1 !important;
  padding: 1.5rem 2rem;
  border-radius: 10rem;
  text-decoration: none;
  text-align: center;
  display: block;
}
div.editor .wp-block-button a:hover {
  opacity: 0.8;
}
div.editor .a2a_button_twitter span,
div.editor .a2a_button_facebook span,
div.editor .a2a_button_line span {
  background-color: transparent !important;
}
div.editor .a2a_button_twitter path,
div.editor .a2a_button_facebook path,
div.editor .a2a_button_line path {
  fill: #ffaf34;
}
div.editor .wp-block-cover {
  margin: 3% auto;
}
div.editor .voice-wrapper {
  margin: 2em auto;
}
div.editor .voice-item__flex {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin: 1em auto;
}
div.editor .voice-item__image {
  width: 140px;
  aspect-ratio: 1;
  border-radius: 50%;
  overflow: hidden;
  position: relative;
}
div.editor .voice-item__image img {
  object-fit: cover;
}
div.editor .voice-item__image button {
  position: absolute;
  background-color: #fff;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
}
div.editor .voice-item__text {
  flex: 1;
}
div.editor .voice-item__title {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 768px) {
  div.editor .voice-item__title {
    font-size: 16px;
  }
}
div.editor .voice-item__content {
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  div.editor .voice-item__content {
    font-size: 14px;
  }
}
div.editor .flow-wrapper {
  margin: 2em auto;
}
div.editor .flow-item {
  display: flex;
  margin-bottom: 1em;
  position: relative;
  z-index: 0;
}
div.editor .flow-item::after {
  position: absolute;
  content: "";
  width: 1px;
  height: 100%;
  background-color: #ffaf34;
  left: 20px;
  top: 50%;
  z-index: -1;
}
div.editor .flow-item:last-child::after {
  content: none;
}
div.editor .flow-item__number {
  font-size: 20px;
  color: #fff;
  background-color: #ffaf34;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 20px;
  flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  div.editor .flow-item__number {
    font-size: 30px;
    height: 30px;
    font-size: 16px;
  }
}
div.editor .flow-item__image {
  width: 50px;
  flex-shrink: 0;
  margin-right: 20px;
}
div.editor .flow-item__cont {
  flex: 1;
}
div.editor .flow-item__title {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 768px) {
  div.editor .flow-item__title {
    font-size: 16px;
  }
}
div.editor .flow-item__text {
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  div.editor .flow-item__text {
    font-size: 14px;
  }
}
div.editor .accordion-box {
  border: 1px solid #E1E1E1;
  border-radius: 4px;
  overflow: hidden;
  background: #fff;
  margin: 1em auto;
}
div.editor .accordion-box__title {
  cursor: pointer;
  padding: 16px 30px 16px 16px;
  font-size: 18px;
  font-weight: bold;
  position: relative;
  background: #F6F6F6;
}
@media screen and (max-width: 768px) {
  div.editor .accordion-box__title {
    font-size: 16px;
    padding: 12px 25px 12px 12px;
  }
}
div.editor .accordion-box__title::after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-right: 2px solid #333;
  border-bottom: 2px solid #333;
  transform: rotate(45deg);
  transition: transform 0.3s ease;
  position: absolute;
  right: 1em;
  top: 50%;
  transform-origin: center;
  transform: translateY(-50%) rotate(45deg);
}
div.editor .accordion-box__title.is-open::after {
  transform: translateY(-50%) rotate(-135deg);
}
div.editor .accordion-box__content {
  padding: 16px;
  display: none;
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  div.editor .accordion-box__content {
    padding: 12px;
    font-size: 14px;
  }
}
div.editor .accordion-box__content > *:first-child {
  margin-top: 0;
}
div.editor .accordion-box__content.is-open {
  display: block;
  animation: fadeIn 0.3s ease;
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
div.editor .description-list {
  margin: 1em auto;
}
div.editor .description-item {
  display: flex;
  padding: 1em 0;
  border-bottom: solid 1px #dfe1e2;
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  div.editor .description-item {
    font-size: 14px;
  }
}
div.editor .description-item__term {
  width: 200px;
  color: #ffaf34;
  font-weight: bold;
}
div.editor .description-item__desc {
  margin: 0;
  flex: 1;
}
div.editor .description-item__desc p {
  margin: 0;
}
div.editor .description-item__desc ul, div.editor .description-item__desc ol {
  font-weight: normal;
  margin: 0;
}
div.editor .description-item__desc li {
  padding-left: 1em;
  text-indent: -1em;
  margin-left: 1em;
}
div.editor .cta-block {
  margin: 1em auto;
  display: flex;
  justify-content: space-between;
  padding: 1em;
  background: rgba(255, 175, 52, 0.1);
}
div.editor .cta-block__image {
  width: 40%;
}
div.editor .cta-block__content {
  width: 54%;
}
div.editor .cta-block__title {
  border: none;
  font-size: 20px;
  padding: 0;
}
div.editor .cta-block__text {
  font-size: 16px;
}

.p-front {
  overflow-x: clip;
}

.p-front [data-front-reveal].is-front-reveal-ready {
  opacity: 1;
  transform: none;
  transition: opacity 650ms ease, transform 650ms cubic-bezier(0.22, 0.61, 0.36, 1);
  transition-delay: var(--front-content-delay, 0ms);
}
.p-front [data-front-reveal].is-front-reveal-ready.is-front-reveal-pending {
  opacity: 0;
  transform: translateY(16px);
}
.p-front [data-front-reveal].is-front-reveal-ready.is-front-reveal-instant {
  opacity: 1;
  transform: none;
  transition: none;
}

@media (prefers-reduced-motion: reduce) {
  .p-front [data-front-reveal].is-front-reveal-ready {
    opacity: 1;
    transform: none;
    transition: none;
  }
}
:root {
  --deco-railL: max(calc((100% - 138.4rem) / 2), 4%);
}

.p-front__fv {
  position: relative;
  background-color: #ffffff;
  padding-top: 9.8rem;
  padding-bottom: 8.5rem;
}
@media screen and (max-width: 768px) {
  .p-front__fv {
    display: flex;
    flex-direction: column;
    padding-top: 2.4rem;
    padding-bottom: 0;
    align-items: center;
  }
}

.p-front__fv__visual {
  position: absolute;
  top: 1.7rem;
  left: -5.29%;
  z-index: 0;
  width: 107.14%;
  aspect-ratio: 1620/791;
  line-height: 0;
  pointer-events: none;
}
.p-front__fv__visual > img,
.p-front__fv__visual > .p-front__fv__dots {
  position: absolute;
  display: block;
  height: auto;
}
.p-front__fv__visual .p-front__fv__dots > svg {
  display: block;
  width: 100%;
  height: auto;
}
.p-front__fv__visual .p-front__fv__dots--top {
  left: 3.024691%;
  top: 0;
  width: 42.098765%;
}
.p-front__fv__visual .p-front__fv__dots--bottom {
  left: 0;
  top: 76.359039%;
  width: 39.197531%;
}
.p-front__fv__visual .p-front__fv__dots--middle {
  left: 38.641975%;
  top: 77.572693%;
  width: 7.716049%;
}
.p-front__fv__visual .p-front__fv__art {
  left: 49.074074%;
  top: 8.596713%;
  width: 50.925926%;
}
.p-front__fv__visual .p-front__fv__person {
  left: 59.913156%;
  top: 8.596713%;
  width: 28.798902%;
}
@media screen and (max-width: 768px) {
  .p-front__fv__visual {
    position: relative;
    top: auto;
    left: auto;
    order: 3;
    width: 35.5rem;
    max-width: calc(100% - 2rem);
    aspect-ratio: 797/723;
    overflow: hidden;
    margin-top: 0.3rem;
    margin-left: 0.7rem;
  }
  .p-front__fv__visual .p-front__fv__dots--top,
  .p-front__fv__visual .p-front__fv__dots--bottom,
  .p-front__fv__visual .p-front__fv__dots--middle {
    display: none;
  }
  .p-front__fv__visual .p-front__fv__art {
    left: 0;
    top: 0;
    width: 103.513174%;
  }
  .p-front__fv__visual .p-front__fv__person {
    left: 22.03176%;
    top: 0;
    width: 58.537291%;
  }
}

.p-front__fv__dot {
  animation: front-fv-dot-reveal 320ms ease-out var(--fv-dot-delay, 0ms) both;
}

@keyframes front-fv-dot-reveal {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@media (prefers-reduced-motion: reduce) {
  .p-front__fv__dot {
    animation: none;
    opacity: 1;
  }
}
.p-front__fv__inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 151.2rem;
  margin-inline: auto;
  padding: 0 8rem;
}
@media screen and (max-width: 768px) {
  .p-front__fv__inner {
    display: contents;
  }
}

.p-front__fv__body {
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .p-front__fv__body {
    display: contents;
  }
}

.p-front__fv__lead {
  font-size: 2.4rem;
  line-height: 1.6666666667;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__fv__lead {
    order: 1;
    padding-inline: 2.4rem;
    font-size: 1.4rem;
    line-height: 1.5;
    text-align: center;
  }
}

.p-front__fv__ttl {
  margin-top: 1.6rem;
  font-size: 6.4rem;
  font-weight: 400;
  line-height: 1.25;
  white-space: nowrap;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__fv__ttl {
    order: 2;
    margin-top: 0.8rem;
    padding-inline: 3.2rem;
    font-size: 3.6rem;
    line-height: 1.3055555556;
  }
}
@media screen and (max-width: 374px) {
  .p-front__fv__ttl {
    font-size: 3.2rem;
  }
}

.p-front__fv__btns {
  display: flex;
  flex-wrap: wrap;
  gap: 1.1rem;
  margin-top: 3.2rem;
}
.p-front__fv__btns .c-btn {
  min-height: 7.2rem;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .p-front__fv__btns {
    order: 6;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    width: 100%;
    margin-top: 0;
    z-index: 10;
  }
  .p-front__fv__btns .c-btn {
    min-width: 0;
    min-height: 0;
    width: 100%;
    height: 6.9rem;
    padding: 0 1.6rem;
    justify-content: center;
    text-align: center;
    border-radius: 0;
    font-size: 1.5rem;
    line-height: 1.8666666667;
  }
  .p-front__fv__btns .c-btn::after {
    content: none;
  }
  .p-front__fv__btns .c-btn--dark {
    line-height: 1.4666666667;
  }
}

.p-front__clients {
  width: 67.8rem;
  max-width: 100%;
  margin-top: 4.8rem;
  padding: 2.4rem;
  border-radius: 0.4rem;
  background-color: #F9F9F9;
}
@media screen and (max-width: 768px) {
  .p-front__clients {
    order: 5;
    width: 100%;
    margin-top: 0;
    padding: 2rem 0;
    border-radius: 0;
    background-color: #F9F9F9;
  }
}

.p-front__clients__lead {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.1428571429;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__clients__lead {
    font-size: 1.1rem;
    line-height: 1;
    text-align: center;
  }
}

.p-front__clients__list {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  margin-top: 1.9rem;
}
.p-front__clients__list img {
  width: 9.6rem;
  height: auto;
}
@media screen and (max-width: 768px) {
  .p-front__clients__list {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0.8rem;
    width: 35.6rem;
    max-width: calc(100% - 3.2rem);
    margin-top: 0.8rem;
    margin-inline: auto;
  }
  .p-front__clients__list img {
    width: 100%;
    max-width: 6.6rem;
    height: auto;
    object-fit: contain;
  }
}

.p-front__fv__scroll {
  width: 5.8rem;
  margin: 4.8rem 0 0 31.5rem;
  font-family: "Roboto", sans-serif;
  font-size: 1.6rem;
  line-height: 1.5;
  text-align: center;
  color: #1a1a1a;
}
.p-front__fv__scroll::after {
  content: "";
  display: block;
  width: 0;
  height: 10.3rem;
  margin: 1.6rem 0 0 3rem;
  border-left: 0.1rem solid #1a1a1a;
  animation: frontScrollLine 2.4s cubic-bezier(0.65, 0, 0.35, 1) infinite;
}
@media screen and (max-width: 768px) {
  .p-front__fv__scroll {
    position: absolute;
    top: 28.6rem;
    right: 1.3rem;
    display: block;
    width: auto;
    margin: 0;
    font-size: 1.1rem;
    line-height: 1.3rem;
    writing-mode: vertical-rl;
    text-align: left;
  }
  .p-front__fv__scroll::after {
    position: absolute;
    top: -0.2rem;
    left: 1.4rem;
    height: 12.6rem;
    margin: 0;
    border-left-color: #8C8C8C;
  }
}

@media screen and (min-width: 769px) and (max-width: 1511px) {
  .p-front__fv {
    padding-top: 6.48vw;
  }
  .p-front__fv__inner {
    padding-inline: 5.29vw;
  }
  .p-front__fv__body {
    width: 44.84vw;
  }
  .p-front__fv__lead {
    font-size: clamp(1.6rem, 1.587vw, 2.4rem);
  }
  .p-front__fv__ttl {
    font-size: clamp(3.2rem, 4.233vw, 6.4rem);
  }
  .p-front__fv__btns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .p-front__fv__btns .c-btn {
    min-width: 0;
    padding-inline: 2.646vw;
    font-size: clamp(1.4rem, 1.19vw, 1.8rem);
  }
  .p-front__fv__btns .c-btn .p-front__fv__btnLabel {
    display: inline-block;
  }
  .p-front__clients {
    width: 100%;
    padding: 1.587vw;
  }
  .p-front__clients__lead {
    font-size: clamp(1.2rem, 0.926vw, 1.4rem);
  }
  .p-front__clients__list {
    gap: 1.32vw;
  }
  .p-front__clients__list img {
    width: 6.35vw;
  }
  .p-front__fv__scroll {
    margin-left: calc(50% - 2.9rem);
  }
}
@media screen and (min-width: 769px) and (max-width: 1000px) {
  .p-front__fv__btns {
    grid-template-columns: minmax(0, 1fr);
  }
}
@keyframes frontScrollLine {
  0%, 4% {
    transform: scaleY(0);
    transform-origin: 50% 0;
  }
  40%, 60% {
    transform: scaleY(1);
    transform-origin: 50% 0;
  }
  61% {
    transform: scaleY(1);
    transform-origin: 50% 100%;
  }
  96%, 100% {
    transform: scaleY(0);
    transform-origin: 50% 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .p-front__fv__scroll::after {
    animation: none;
  }
}
.p-front__intro {
  padding: 13.6rem 0 28.9rem;
}
@media screen and (max-width: 768px) {
  .p-front__intro {
    padding: 8rem 0 24.5rem;
  }
}

.p-front__intro__inner {
  width: 106rem;
  max-width: calc(100% - 8rem);
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .p-front__intro__inner {
    width: 100%;
    max-width: none;
    padding: 0 3.9rem 0 6.4rem;
  }
}

.p-front__intro__ttl {
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1.3333333333;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__intro__ttl {
    font-size: 2.4rem;
    line-height: 1.6666666667;
  }
}

.p-front__intro__text {
  margin-top: 4rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__intro__text {
    margin-top: 2.4rem;
  }
}

.p-front__intro__diagram {
  width: 75.9rem;
  max-width: 100%;
  margin: 24rem -7rem 0 auto;
}
@media screen and (max-width: 1280px) {
  .p-front__intro__diagram {
    margin-right: 0;
  }
}
.p-front__intro__diagram img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .p-front__intro__diagram {
    width: 31.9rem;
    max-width: none;
    margin: 22.5rem 0 0 -2.5rem;
  }
}

.p-front__about {
  padding: 0;
}

.p-front__about__inner {
  width: 106rem;
  max-width: calc(100% - 8rem);
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .p-front__about__inner {
    width: 100%;
    max-width: none;
    padding: 0 3rem 0 6.4rem;
  }
}

.p-front__about__label {
  display: block;
  max-width: 105.8rem;
  padding-bottom: 1.2rem;
  border-bottom: 0.1rem solid #000000;
  font-size: 2.4rem;
  line-height: 1;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__about__label {
    padding-bottom: 1.6rem;
    font-size: 1.6rem;
  }
}

.p-front__about__cols {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 6rem;
  max-width: 111rem;
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .p-front__about__cols {
    grid-template-columns: minmax(0, 1fr);
    gap: 2.8rem;
    margin-top: 2.8rem;
  }
}

.p-front__about__eyebrow {
  display: block;
  font-size: 2.4rem;
  line-height: 2.1666666667;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__about__eyebrow {
    font-size: 1.6rem;
    line-height: 1.75;
  }
}

.p-front__about__ttl {
  font-size: 3.6rem;
  font-weight: 400;
  line-height: 1.4444444444;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__about__ttl {
    font-size: 2rem;
    line-height: 1.4;
    white-space: normal;
  }
}

.p-front__about__tags {
  display: grid;
  grid-template-rows: repeat(3, auto);
  grid-auto-flow: column;
  gap: 1.6rem 4rem;
  margin-top: 4rem;
}
.p-front__about__tags li {
  position: relative;
  padding-left: 1.5rem;
  font-size: 2.4rem;
  line-height: 1;
  color: #1a1a1a;
}
.p-front__about__tags li::before {
  content: "";
  position: absolute;
  top: 0.85rem;
  left: 0;
  width: 0.7rem;
  height: 0.7rem;
  border-radius: 50%;
  background-color: #ffaf34;
}
@media screen and (max-width: 768px) {
  .p-front__about__tags {
    grid-template-rows: none;
    grid-auto-flow: row;
    grid-template-columns: minmax(0, 1fr);
    gap: 0.4rem;
    margin-top: 1.6rem;
  }
  .p-front__about__tags li {
    font-size: 1.8rem;
    line-height: 1.3333333333;
  }
  .p-front__about__tags li::before {
    top: 0.85rem;
  }
}

.p-front__about__col:nth-child(2) .p-front__about__tags {
  grid-template-rows: none;
  grid-auto-flow: row;
  grid-template-columns: repeat(2, max-content);
  column-gap: 6rem;
}
@media screen and (max-width: 1389px) {
  .p-front__about__col:nth-child(2) .p-front__about__tags {
    grid-template-columns: repeat(2, minmax(0, max-content));
    column-gap: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-front__about__col:nth-child(2) .p-front__about__tags {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media screen and (max-width: 768px) {
  .p-front__about__col:nth-child(2) .p-front__about__ttl {
    width: 30.3rem;
  }
}

.p-front__eyebrow {
  display: block;
  font-family: "Inter", sans-serif;
  font-weight: 100;
  font-size: 12rem;
  line-height: 1;
  color: #999999;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-front__eyebrow {
    font-size: 6.4rem;
  }
}

.p-front__ttl {
  margin-top: 2.4rem;
  font-size: 4rem;
  font-weight: 400;
  line-height: 1.2;
  text-align: center;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__ttl {
    margin-top: 1.6rem;
    font-size: 2.4rem;
    line-height: 1.5;
  }
}

.p-front__strength {
  padding: 60.8rem 0 37.4rem;
}
@media screen and (max-width: 768px) {
  .p-front__strength {
    padding: 45.4rem 0 15.6rem;
  }
}

.p-front__strength__head {
  margin-bottom: 16rem;
}
@media screen and (max-width: 768px) {
  .p-front__strength__head {
    margin-bottom: 4rem;
  }
}

.p-front__strength__list {
  display: flex;
  flex-direction: column;
  gap: 12rem;
  width: 92%;
  max-width: 138.4rem;
  margin: 0 auto;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-front__strength__list {
    gap: 8rem;
    width: 100%;
    padding-inline: 3.6rem;
  }
}
.p-front__strength__list::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: calc(100% - 96px);
  transform: translateX(-50%);
  width: 1px;
  height: 216px;
  background-color: #000000;
}
@media screen and (max-width: 768px) {
  .p-front__strength__list::before {
    content: none;
  }
}

.p-front__strength__item {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  gap: 8rem;
  width: 86.13%;
  max-width: 119.2rem;
  padding: 8rem 5.7rem 8rem 11.1rem;
  border: 0.1rem solid transparent;
  min-height: 68rem;
}
.p-front__strength__item::before {
  content: "";
  position: absolute;
  inset: -0.1rem;
  z-index: -1;
  border: 0.1rem solid #ffaf34;
  background-color: #fff8ed;
  pointer-events: none;
}
.p-front__strength__item:nth-child(odd) {
  z-index: 1;
  margin-right: auto;
}
.p-front__strength__item:nth-child(even) {
  margin-left: auto;
}
@media screen and (max-width: 1389px) {
  .p-front__strength__item {
    padding: 8rem 6rem;
    min-height: auto;
  }
}
@media screen and (max-width: 768px) {
  .p-front__strength__item {
    flex-direction: column;
    align-items: center;
    gap: 2.4rem;
    width: 100%;
    max-width: none;
    min-height: 0;
    padding: 4rem 2.3rem;
  }
  .p-front__strength__item:nth-child(odd), .p-front__strength__item:nth-child(even) {
    margin-inline: 0;
  }
}

.p-front__strength__img {
  flex-shrink: 0;
  width: 41.6rem;
}
.p-front__strength__img img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 1389px) {
  .p-front__strength__img {
    width: 38%;
  }
}
@media screen and (max-width: 768px) {
  .p-front__strength__img {
    width: 21.6rem;
    max-width: 80%;
  }
}

.p-front__strength__body {
  flex: 1 1 52.8rem;
  min-width: 0;
  max-width: 52.8rem;
}
@media screen and (max-width: 768px) {
  .p-front__strength__body {
    flex: none;
    width: 100%;
  }
}

.p-front__strength__num {
  display: block;
  font-family: "Inter", sans-serif;
  font-weight: 200;
  font-size: 2.4rem;
  line-height: 1;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__strength__num {
    font-size: 1.6rem;
    line-height: 1.5;
  }
}

.p-front__strength__ttl {
  margin-top: 4rem;
  font-size: 4rem;
  font-weight: 400;
  line-height: 1.3;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__strength__ttl {
    margin-top: 1.6rem;
    font-size: 2.4rem;
    line-height: 1.5;
  }
}

.p-front__strength__text {
  margin-top: 4rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__strength__text {
    margin-top: 1.6rem;
    font-size: 1.5rem;
    line-height: 1.8666666667;
  }
}

.p-front__ctaBand {
  padding: 12rem 2rem;
  background: linear-gradient(107deg, var(--color-primitive-orange-200, #ffd699) 5.02%, var(--color-primitive-orange-500, #ffaf34) 98.33%);
}
@media screen and (max-width: 768px) {
  .p-front__ctaBand {
    padding: 8rem 4.8rem;
  }
}

.p-front__ctaBand__inner {
  width: 100%;
  max-width: 84rem;
  margin: 0 auto;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-front__ctaBand__inner {
    text-align: left;
  }
}

.p-front__ctaBand__lead {
  font-size: 2.8rem;
  font-weight: 400;
  line-height: 1.4285714286;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__ctaBand__lead {
    font-size: 1.8rem;
    line-height: 1.8888888889;
  }
}

.p-front__ctaBand__btns {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 4rem;
}
.p-front__ctaBand__btns .c-btn {
  position: relative;
  justify-content: center;
  width: 41rem;
  max-width: 100%;
  min-width: 0;
  height: 8rem;
  padding: 0.4rem 4.8rem;
  text-align: center;
}
.p-front__ctaBand__btns .c-btn::after {
  position: absolute;
  top: 50%;
  right: 2.4rem;
  margin-top: -0.7rem;
}
@media screen and (max-width: 768px) {
  .p-front__ctaBand__btns {
    flex-direction: column;
    gap: 1.6rem;
    margin-top: 2.4rem;
  }
  .p-front__ctaBand__btns .c-btn {
    justify-content: flex-start;
    width: 100%;
    height: 8rem;
    padding: 0.4rem 2.4rem;
    font-size: 1.6rem;
    line-height: 1;
    text-align: left;
  }
}

.p-front__agent {
  padding: 45.5rem 0 0;
}
@media screen and (max-width: 768px) {
  .p-front__agent {
    padding: 46.1rem 0 0;
  }
}

.p-front__agent__head {
  margin-bottom: 6rem;
  text-align: center;
}
.p-front__agent__head .p-front__ttl {
  margin-top: 4rem;
  line-height: 1.4;
}
@media screen and (max-width: 768px) {
  .p-front__agent__head .p-front__ttl {
    margin-top: 2.4rem;
    line-height: 1.4166666667;
  }
}
@media screen and (max-width: 768px) {
  .p-front__agent__head {
    margin-bottom: 0;
    padding-inline: 3.2rem;
  }
}

.p-front__agent__lead {
  margin-top: 4rem;
  font-size: 2rem;
  line-height: 1.8;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__agent__lead {
    margin-top: 2.4rem;
    font-size: 1.5rem;
    line-height: 1.8666666667;
    text-align: center;
  }
}

.p-front__agent__body {
  display: flex;
  gap: 7.5rem;
  width: 92%;
  max-width: 138.4rem;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .p-front__agent__body {
    display: none;
  }
}

.p-front__agent__diagram {
  flex-shrink: 0;
  width: 51.9%;
}
.p-front__agent__diagram img {
  width: 100%;
  height: auto;
}

.p-front__agent__panel {
  flex: 1;
  overflow: hidden;
}

.p-front__agent__row {
  padding: 2.8rem 3rem;
  font-family: "Inter", sans-serif;
  font-weight: 200;
  font-size: 2.4rem;
  line-height: 1;
  color: #1a1a1a;
  background-color: #faf5e9;
}
.p-front__agent__row:nth-child(even) {
  background-color: #f2e6d1;
}

.p-front__agent__row--active {
  padding-bottom: 3.2rem;
}

.p-front__agent__rowLabel {
  font-family: "Inter", sans-serif;
  font-weight: 200;
  font-size: 2.4rem;
  line-height: 1;
  color: #1a1a1a;
}

.p-front__agent__detail {
  position: relative;
  padding-top: 4rem;
}

.p-front__agent__detailIcon {
  position: absolute;
  top: 1.6rem;
  right: 0;
  width: 12rem;
  height: auto;
}

.p-front__agent__detailTtl {
  font-size: 3.4rem;
  font-weight: 400;
  color: #1a1a1a;
}

.p-front__agent__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 1.6rem;
  margin-top: 2.4rem;
  font-size: 1.6rem;
  color: #888888;
}

.p-front__agent__detailText {
  margin-top: 1.6rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}

.p-front__agent__skills {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.8rem 1.6rem;
  align-items: center;
  margin-top: 2.4rem;
  padding: 2rem;
  background-color: #ffffff;
  border: 0.1rem solid #e5e5e5;
  font-size: 1.4rem;
}
.p-front__agent__skills dt {
  grid-row: 1/span 2;
  align-self: center;
  color: #888888;
}
.p-front__agent__skills dd {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.p-front__agent__skills dd span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background-color: #00c8be;
  color: #ffffff;
  font-size: 1.2rem;
}

.p-front__agent__more {
  margin-top: 2.4rem;
  text-align: right;
}
.p-front__agent__more .c-btn {
  min-width: 0;
  padding: 1.2rem 2.4rem;
  font-size: 1.4rem;
}

.p-front__eyebrow--left {
  text-align: left;
}
@media screen and (max-width: 768px) {
  .p-front__eyebrow--left {
    text-align: center;
  }
}

.p-front__listHead {
  margin-bottom: 4rem;
}

.p-front__listTtl {
  font-size: 3.2rem;
  font-weight: 400;
  line-height: 1.5;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__listTtl {
    font-size: 2rem;
    line-height: 1.2;
  }
}

.p-front__listLead {
  margin-top: 1.2rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__listLead {
    margin-top: 1.6rem;
    font-size: 1.5rem;
    line-height: 1.8666666667;
  }
}

.p-front__more {
  margin-top: 4rem;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .p-front__more {
    margin-top: 3.2rem;
    text-align: center;
  }
  .p-front__more .c-btn {
    width: 100%;
    min-width: 0;
    height: 6.4rem;
    padding: 0 2.4rem;
    font-size: 1.6rem;
    line-height: 1;
  }
}

.p-front__agent__sub {
  margin-top: 7.6rem;
  font-size: 3.2rem;
  line-height: 1;
  text-align: center;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__agent__sub {
    margin-top: 5.4rem;
    font-size: 2.4rem;
    line-height: 1.5833333333;
  }
}

.p-front__agentPc {
  position: relative;
  margin-top: -8.7rem;
  --agent-lift: 41;
}
@media screen and (max-width: 768px) {
  .p-front__agentPc {
    --agent-lift: 46;
    margin-top: -7.3rem;
  }
}

.p-front__agentPc__curve {
  position: absolute;
  top: 18rem;
  left: calc(50% - 82.6rem);
  z-index: 0;
  width: 165.1rem;
  height: 18rem;
  background: url("../img/front/agent_curve.webp") no-repeat center/contain;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .p-front__agentPc__curve {
    top: 23.3rem;
    left: calc(50% - 29.2rem);
    width: 59.4rem;
    height: 9rem;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 594 90' preserveAspectRatio='none'%3E%3Cpath d='M0 0Q297 180 594 0' fill='none' stroke='%23000' stroke-width='1'/%3E%3C/svg%3E") no-repeat center/100% 100%;
  }
}

.p-front__agentPc__viewport {
  position: relative;
  z-index: 1;
  padding-top: 16.4rem;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
@media screen and (max-width: 768px) {
  .p-front__agentPc__viewport {
    padding-top: 18.4rem;
  }
}
.p-front__agentPc__viewport::-webkit-scrollbar {
  display: none;
}

.p-front__agentPc__list {
  display: flex;
  gap: 6.4rem;
  width: max-content;
  padding-inline: calc(50% - 18.6rem);
}
@media screen and (max-width: 768px) {
  .p-front__agentPc__list {
    gap: 3.2rem;
    padding-inline: calc(50% - 13.1rem);
  }
}

.p-front__agentPc__slide {
  width: 37.2rem;
  min-width: 0;
  flex: 0 0 37.2rem;
  scroll-snap-align: center;
  transform: translateY(calc(var(--lift, 0) * -1px));
}
@media screen and (max-width: 768px) {
  .p-front__agentPc__slide {
    width: 26.2rem;
    flex: 0 0 26.2rem;
  }
}

.p-front__agentPc__card {
  position: relative;
  display: block;
  width: 37.2rem;
  aspect-ratio: 1/1;
}
.p-front__agentPc__card, .p-front__agentPc__card:hover, .p-front__agentPc__card:visited, .p-front__agentPc__card:link {
  color: #1a1a1a;
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  .p-front__agentPc__card {
    width: 26.2rem;
  }
}
.p-front__agentPc__card:hover {
  opacity: 1;
}
.p-front__agentPc__card:hover img {
  opacity: 1;
}
.p-front__agentPc__card:hover .p-front__agentPc__blob {
  transform: scale(1.02);
}

.p-front__agentPc__blob {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  transition: transform 0.3s ease;
}

.p-front__agentPc.has-agent-reveal .p-front__agentPc__card {
  transform: scale(0);
  transform-origin: center;
  opacity: 0;
  transition: transform 500ms ease-out, opacity 250ms ease-out;
}
.p-front__agentPc.has-agent-reveal .is-agent-visible > .p-front__agentPc__card,
.p-front__agentPc.has-agent-reveal .p-front__agentPc__card:focus-visible {
  transform: scale(1);
  opacity: 1;
}
.p-front__agentPc.has-agent-reveal .p-front__agentPc__card:focus-visible {
  transition: none;
}

@media (prefers-reduced-motion: reduce) {
  .p-front__agentPc.has-agent-reveal .p-front__agentPc__card {
    transform: none;
    opacity: 1;
    transition: none;
  }
}
.p-front__agentPc__ill {
  position: absolute;
  z-index: 1;
  height: auto;
}

.p-front__agentPc__ttl {
  position: absolute;
  z-index: 2;
  top: 26.88%;
  left: 15.05%;
  font-size: 3.2rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-front__agentPc__ttl {
    top: 19.85%;
    left: 10.69%;
    font-size: 2rem;
    line-height: 1.2;
  }
}

.p-front__agentPc__text {
  position: absolute;
  z-index: 2;
  top: 41.94%;
  left: 15.05%;
  width: 70.16%;
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .p-front__agentPc__text {
    top: 34.73%;
    left: 10.69%;
    width: 78.63%;
    font-size: 1.4rem;
    line-height: 1.5714285714;
  }
}

.p-front__agentPc__more {
  position: absolute;
  z-index: 2;
  top: 78.76%;
  left: 29.3%;
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
  font-size: 2rem;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .p-front__agentPc__more {
    top: 79.39%;
    left: 26.34%;
    gap: 0.4rem;
    font-size: 1.8rem;
    line-height: 1;
  }
  .p-front__agentPc__more::after {
    width: 1.9rem;
    height: 1.9rem;
  }
}
.p-front__agentPc__more::after {
  content: "";
  display: block;
  width: 2.6rem;
  height: 2.6rem;
  border-radius: 50%;
  background-color: #1a1a1a;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M7 13h11M14 9l4 4-4 4' fill='none' stroke='%23fff' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-size: contain;
}

.p-front__agentPc__pager {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3.2rem;
  margin-top: 6.4rem;
}
@media screen and (max-width: 768px) {
  .p-front__agentPc__pager {
    margin-top: 5rem;
  }
}

.p-front__agentPc__note {
  width: calc(100% - 4.8rem);
  max-width: 106rem;
  margin-top: 2.4rem;
  margin-inline: auto;
  font-size: 1.2rem;
  line-height: 1.7;
  text-align: left;
  overflow-wrap: anywhere;
}

.p-front__agentPc__arrow {
  width: 4rem;
  height: 4rem;
  border: 0.1rem solid #1a1a1a;
  border-radius: 50%;
  background: #FFFFFF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M15 20h11M21 15l5 5-5 5' fill='none' stroke='%231A1A1A' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;
  cursor: pointer;
  transition: opacity 0.3s ease;
}
.p-front__agentPc__arrow:hover {
  opacity: 0.6;
}
.p-front__agentPc__arrow:disabled {
  opacity: 0.3;
  cursor: default;
}

.p-front__agentPc__arrow--prev {
  transform: scaleX(-1);
}

.p-front__agentPc__dots {
  display: flex;
  align-items: center;
  gap: 1.6rem;
}

.p-front__agentPc__dot {
  display: block;
  width: 1.6rem;
  height: 1.6rem;
  border: 0.1rem solid #999999;
  border-radius: 50%;
  background-color: #E5E5E5;
  cursor: pointer;
  transition: background-color 0.3s ease;
}
.p-front__agentPc__dot.is-active {
  background-color: #ffaf34;
}

.p-front__usecase {
  padding: 47.2rem 0 0;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-front__usecase {
    padding: 47.7rem 0 0;
  }
}

.p-front__usecase__inner {
  position: relative;
  width: 100%;
  max-width: 151.2rem;
  margin: 0 auto;
  padding-inline: 6.4rem;
}
@media screen and (max-width: 768px) {
  .p-front__usecase__inner {
    width: 100%;
    padding-inline: 3.2rem;
  }
}

.p-front__usecase__ttl--sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .p-front__usecase__ttl--sp {
    display: block;
    margin-top: 1.5rem;
    line-height: 1.4166666667;
  }
}

.p-front__usecase__ttlLead {
  display: block;
  font-size: 1.6rem;
  line-height: 3;
}

.p-front__usecase__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 44.4rem));
  justify-content: start;
  gap: 2.6rem;
  margin-top: 10.4rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-front__usecase__list {
    grid-template-columns: minmax(0, 1fr);
    gap: 4rem;
    margin-top: 4rem;
  }
}
.p-front__usecase__list::after {
  content: "";
  position: absolute;
  top: 50%;
  z-index: -1;
  transform: translateY(-50%);
  left: 0;
  height: 1px;
  width: 100%;
  background: #000;
}
@media screen and (max-width: 768px) {
  .p-front__usecase__list::after {
    content: none;
  }
}

.p-front__usecase__item {
  background: #FFF;
}

.p-front__usecase__card {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 54.9rem;
  padding: 4rem;
  background-color: #fff8ed;
  transition: opacity 0.3s ease;
  border: 1px solid #ffaf34;
}
.p-front__usecase__card:hover {
  opacity: 0.85;
}
@media screen and (max-width: 768px) {
  .p-front__usecase__card {
    min-height: 36.4rem;
    padding: 2.4rem;
    background-color: #fff8ed;
  }
}

.p-front__usecase__img img {
  width: 100%;
  height: auto;
  aspect-ratio: 364/220;
  object-fit: cover;
}
@media screen and (max-width: 768px) {
  .p-front__usecase__img img {
    aspect-ratio: 278/170;
  }
}

.p-front__usecase__num {
  display: block;
  margin-top: 2.4rem;
  font-family: "Inter", sans-serif;
  font-size: 2.2rem;
  font-weight: 400;
  line-height: 1.6363636364;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__usecase__num {
    margin-top: 2.4rem;
    font-size: 1.6rem;
    line-height: 1;
  }
}

.p-front__usecase__ttl {
  width: 32.5rem;
  max-width: 100%;
  margin-top: 2.4rem;
  font-size: 2.2rem;
  font-weight: 400;
  line-height: 1.6363636364;
  color: #1a1a1a;
  margin-bottom: 1.6rem;
}
@media screen and (max-width: 768px) {
  .p-front__usecase__ttl {
    margin-top: 1.6rem;
    margin-bottom: 0.8rem;
    font-size: 1.5rem;
    line-height: 1.8666666667;
  }
}

.p-front__usecase__arrow {
  display: block;
  width: 4.1rem;
  height: 4.1rem;
  margin: auto 0 0 auto;
  border-radius: 50%;
  background: #1a1a1a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 41 41'%3E%3Cpath d='M13 20.5h14M22 15.5l5 5-5 5' fill='none' stroke='%23fff' stroke-width='1.4' stroke-linecap='square'/%3E%3C/svg%3E") no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .p-front__usecase__arrow {
    width: 2.6rem;
    height: 2.6rem;
  }
}

.p-front__faq__deco {
  position: absolute;
  border-color: #000000;
  border-style: solid;
  border-width: 0;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .p-front__faq__deco {
    display: none;
  }
}

.p-front__faq__deco--a {
  top: -2px;
  left: calc(50% + 194px);
  width: 170px;
  height: 220px;
  border-right-width: 1px;
  border-bottom-width: 1px;
  border-bottom-right-radius: 170px;
}

.p-front__faq__deco--b {
  top: 217px;
  left: calc(50% - 3px);
  width: 197px;
  height: 374px;
  border-top-width: 1px;
  border-left-width: 1px;
  border-top-left-radius: 170px;
}

.p-front__faq__decoDots {
  position: absolute;
  top: 452px;
  left: calc(50% - 12px);
  width: 24px;
  height: 100px;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .p-front__faq__decoDots {
    display: none;
  }
}

.p-front__scene {
  position: relative;
  padding: 32.6rem 0 0;
}
@media screen and (max-width: 768px) {
  .p-front__scene {
    padding: 19.6rem 0 0;
  }
}

.p-front__scene__deco {
  position: absolute;
  top: 295px;
  right: calc(100% - var(--deco-railL) - 284px);
  width: 100vw;
  height: 315px;
  border-top: 1px solid #000000;
  border-right: 1px solid #000000;
  border-top-right-radius: 170px;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .p-front__scene__deco {
    display: none;
  }
}

.p-front__scene__inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 151.2rem;
  margin-inline: auto;
  padding-inline: 6.4rem;
}
@media screen and (max-width: 768px) {
  .p-front__scene__inner {
    padding-inline: 3.2rem;
  }
}

.p-front__scene__head {
  text-align: right;
}
@media screen and (max-width: 768px) {
  .p-front__scene__head {
    position: relative;
    text-align: center;
  }
}

.p-front__scene__en {
  display: block;
  font-size: 12rem;
  line-height: 0.8666666667;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .p-front__scene__en {
    font-size: 6.4rem;
    line-height: 1;
    text-align: center;
  }
}

.p-front__scene__jp {
  margin-top: 2.4rem;
  font-size: 3.2rem;
  line-height: 1.125;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__scene__jp {
    margin-top: 1.5rem;
    font-size: 2rem;
    line-height: 1.2;
  }
}

.p-front__scene__panel {
  margin-top: 2.4rem;
  padding: 4rem;
  border: 0.1rem solid #ffaf34;
  background-color: #fff8ed;
}
@media screen and (max-width: 768px) {
  .p-front__scene__panel {
    position: relative;
    margin-top: 4.3rem;
    padding: 2.4rem;
  }
  .p-front__scene__panel::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    width: 0.1rem;
    height: 20.1rem;
    background-color: #000000;
  }
}

.p-front__scene__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .p-front__scene__list {
    grid-template-columns: minmax(0, 1fr);
    gap: 2.4rem;
  }
}

.p-front__scene__card {
  display: flex;
  align-items: flex-start;
  gap: 0.2rem;
  height: 100%;
  min-height: 28.6rem;
  padding: 3.9rem;
  border: 0.1rem solid #ffaf34;
  background-color: #FFFFFF;
  transition: opacity 0.3s ease;
}
.p-front__scene__card, .p-front__scene__card:hover, .p-front__scene__card:visited, .p-front__scene__card:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-front__scene__card:hover {
  opacity: 0.85;
}
@media screen and (max-width: 1389px) {
  .p-front__scene__card {
    padding: 3.2rem 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-front__scene__card {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    min-height: 38.2rem;
    padding: 2.4rem;
  }
}

.p-front__scene__body {
  flex: 1 1 36.2rem;
  min-width: 0;
  max-width: 36.2rem;
}
@media screen and (max-width: 768px) {
  .p-front__scene__body {
    flex: 0 0 auto;
    max-width: none;
  }
}

.p-front__scene__ttl {
  display: block;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.5833333333;
}
@media screen and (max-width: 768px) {
  .p-front__scene__ttl {
    font-size: 2rem;
    line-height: 1.6;
  }
}

.p-front__scene__text {
  display: block;
  margin-top: 2.4rem;
  font-size: 2.2rem;
  line-height: 1.6363636364;
}
@media screen and (max-width: 768px) {
  .p-front__scene__text {
    margin-top: 1.6rem;
    font-size: 1.5rem;
    line-height: 1.8666666667;
  }
}

.p-front__scene__visual {
  position: relative;
  display: block;
  flex-shrink: 1;
  min-width: 0;
  width: 18.8rem;
  max-width: 18.8rem;
  aspect-ratio: 188/201;
  margin-top: 0.5rem;
}
@media screen and (max-width: 768px) {
  .p-front__scene__visual {
    order: -1;
    width: 9.6rem;
    height: 9.6rem;
    margin: 0 auto 2.4rem;
  }
}

.p-front__scene__img {
  display: block;
  width: 85.6382978723%;
  height: auto;
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 50%;
}
@media screen and (max-width: 768px) {
  .p-front__scene__img {
    width: 100%;
  }
}

.p-front__scene__arrow {
  display: none;
  border-radius: 50%;
  background: #1a1a1a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M7 13h11M14 9l4 4-4 4' fill='none' stroke='%23fff' stroke-width='1.2' stroke-linecap='square'/%3E%3C/svg%3E") no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .p-front__scene__arrow {
    display: block;
    width: 2.6rem;
    height: 2.6rem;
    margin: 0.8rem 0 0 auto;
  }
}

.p-front__scene__arrow--pc {
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
  width: 21.2765957447%;
  aspect-ratio: 1;
}
@media screen and (max-width: 768px) {
  .p-front__scene__arrow--pc {
    display: none;
  }
}

.p-front__faq {
  padding: 59.1rem 0 32rem;
}
@media screen and (max-width: 768px) {
  .p-front__faq {
    padding: 20rem 0 19.6rem;
  }
}

.p-front__faq__inner {
  display: flex;
  gap: 15.3rem;
  width: 100%;
  max-width: 138.4rem;
  margin: 0 auto;
  padding: 8rem 6.4rem;
  border: 0.1rem solid #46d7d0;
}
@media screen and (max-width: 768px) {
  .p-front__faq__inner {
    flex-direction: column;
    gap: 2.4rem;
    width: auto;
    margin-inline: 3.2rem;
    padding: 4rem 2rem;
  }
}

.p-front__faq__head {
  flex-shrink: 0;
  width: 28.5rem;
}
@media screen and (max-width: 768px) {
  .p-front__faq__head {
    width: auto;
  }
}

.p-front__faq__head .p-front__eyebrow {
  font-size: 14rem;
}
@media screen and (max-width: 768px) {
  .p-front__faq__head .p-front__eyebrow {
    font-size: 6.4rem;
  }
}

.p-front__faq__jp {
  margin-top: 0.8rem;
  font-size: 2.4rem;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__faq__jp {
    margin-top: 1.6rem;
    font-size: 1.6rem;
    line-height: 1;
    text-align: center;
  }
}

.p-front__faq__list {
  flex: 1;
}

.p-front__faq__item {
  border-bottom: 0.1rem solid #000000;
}
.p-front__faq__item:first-child {
  border-top: 0.1rem solid #000000;
}
@media screen and (max-width: 768px) {
  .p-front__faq__item {
    border-bottom-color: #000000;
  }
  .p-front__faq__item:first-child {
    border-top-color: #000000;
  }
}

.p-front__faq__q {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  padding: 2.4rem 0;
  list-style: none;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .p-front__faq__q {
    gap: 0.8rem;
    padding: 1.6rem 0;
  }
  .p-front__faq__q::after {
    width: 2.4rem;
    height: 2.4rem;
    background-size: 1.2rem;
  }
}
.p-front__faq__q::-webkit-details-marker {
  display: none;
}
.p-front__faq__q::after {
  content: "";
  flex-shrink: 0;
  width: 2.8rem;
  height: 2.8rem;
  margin-left: auto;
  border-radius: 50%;
  background: #000000 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Crect x='9' y='4' width='2' height='12' fill='white'/%3E%3Crect x='4' y='9' width='12' height='2' fill='white'/%3E%3C/svg%3E") no-repeat center/1.4rem;
}

.p-front__faq__item[open] .p-front__faq__q::after {
  border: 0.1rem solid #1a1a1a;
  background: #FFFFFF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Crect x='4' y='9' width='12' height='2' fill='%231A1A1A'/%3E%3C/svg%3E") no-repeat center/1.4rem;
}

.p-front__faq__mark {
  font-family: "Roboto", sans-serif;
  font-size: 3.2rem;
  line-height: 1;
  color: #999999;
}
@media screen and (max-width: 768px) {
  .p-front__faq__mark {
    font-size: 2.4rem;
    color: #1a1a1a;
  }
}

.p-front__faq__qtext {
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.8;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__faq__qtext {
    font-size: 1.5rem;
    line-height: 1.3333333333;
  }
}

.p-front__faq__a {
  display: flex;
  gap: 1.6rem;
  padding: 0 0 2.4rem;
}
@media screen and (max-width: 768px) {
  .p-front__faq__a {
    gap: 0.8rem;
    padding-bottom: 1.6rem;
  }
}

.p-front__faq__atext {
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}
.p-front__faq__atext p + p {
  margin-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .p-front__faq__atext {
    font-size: 1.5rem;
    line-height: 1.6;
  }
}

.p-front__news,
.p-front__column {
  padding: 12rem 0 0;
}
@media screen and (max-width: 768px) {
  .p-front__news,
  .p-front__column {
    padding: 12rem 0 0;
  }
}

.p-front__news__inner,
.p-front__column__inner {
  width: 92%;
  max-width: 133.6rem;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .p-front__news__inner,
  .p-front__column__inner {
    width: 100%;
    padding-inline: 3.2rem;
  }
}

.p-front__postList {
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .p-front__postList {
    margin-top: 2rem;
  }
}

.p-front__postList__item {
  border-bottom: 0.1rem solid #000;
}
.p-front__postList__item:first-child {
  border-top: 0.1rem solid #000;
}

.p-front__postList__link {
  display: flex;
  align-items: center;
  gap: 2.4rem;
  padding: 3rem 4.2rem;
  transition: opacity 0.3s ease;
}
.p-front__postList__link:hover {
  opacity: 0.7;
}
@media screen and (max-width: 768px) {
  .p-front__postList__link {
    position: relative;
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    padding: 1.6rem 2.8rem 1.6rem 0;
  }
}

.p-front__postList__date {
  flex-shrink: 0;
  font-family: "Roboto", sans-serif;
  font-size: 1.6rem;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__postList__date {
    font-size: 1.4rem;
    line-height: 1.8571428571;
  }
}

.p-front__postList__cat {
  flex-shrink: 0;
  width: 21.3rem;
  min-width: 0;
  padding: 0.6rem 1.2rem;
  font-size: 1.6rem;
  line-height: 2;
  text-align: center;
  background-color: #FFD699;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__postList__cat {
    width: auto;
    min-width: 0;
    padding: 0.8rem 1.6rem;
    border-radius: 0.4rem;
    font-size: 1.5rem;
    line-height: 1.8666666667;
  }
}

@media screen and (max-width: 768px) {
  .p-front__postList--column .p-front__postList__link {
    gap: 1.6rem;
    padding-block: 2.6rem;
  }
  .p-front__postList--column .p-front__postList__cat {
    order: 1;
  }
  .p-front__postList--column .p-front__postList__ttl {
    order: 2;
  }
  .p-front__postList--column .p-front__postList__date {
    order: 3;
  }
}

.p-front__postList__ttl {
  flex: 1;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__postList__ttl {
    flex: 0 0 auto;
    width: 100%;
    font-size: 1.5rem;
    line-height: 1.8666666667;
  }
}

.p-front__postList__arrow {
  flex-shrink: 0;
  width: 0.9rem;
  height: 0.9rem;
  border-top: 0.1rem solid #888888;
  border-right: 0.1rem solid #888888;
  transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
  .p-front__postList__arrow {
    position: absolute;
    top: 50%;
    right: 0;
    width: 1rem;
    height: 1rem;
    margin-top: -0.5rem;
    border-top-color: #000000;
    border-right-color: #000000;
  }
}

.p-front__seminar {
  margin-top: 12rem;
  padding: 8rem 0;
  background-color: #fff8ed;
}
@media screen and (max-width: 768px) {
  .p-front__seminar {
    margin-top: 12rem;
    padding: 0;
    background-color: transparent;
  }
}

.p-front__seminar__inner {
  width: 92%;
  max-width: 133.6rem;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .p-front__seminar__inner {
    width: 100%;
    padding-inline: 3.2rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__seminar__slider {
    overflow-x: auto;
    overflow-y: hidden;
    margin-inline: -3.2rem;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }
  .p-front__seminar__slider::-webkit-scrollbar {
    display: none;
  }
}

.p-front__seminar__list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 2rem;
}
@media screen and (max-width: 1000px) {
  .p-front__seminar__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media screen and (max-width: 768px) {
  .p-front__seminar__list {
    display: flex;
    grid-template-columns: none;
    gap: 2.4rem;
    width: max-content;
    padding-inline: calc((100vw - 25.6rem) / 2);
  }
}

@media screen and (max-width: 768px) {
  .p-front__seminar__item {
    flex: 0 0 auto;
    width: 25.6rem;
    scroll-snap-align: center;
  }
}

.p-front__seminar__pager {
  display: none;
}
@media screen and (max-width: 768px) {
  .p-front__seminar__pager {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 3.2rem;
    margin-top: 4rem;
  }
}

.p-front__seminar__arrow {
  width: 4rem;
  height: 4rem;
  border: 0.1rem solid #1a1a1a;
  border-radius: 50%;
  background: #FFFFFF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M15 20h11M21 15l5 5-5 5' fill='none' stroke='%231A1A1A' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;
  cursor: pointer;
  transition: opacity 0.3s ease;
}
.p-front__seminar__arrow:disabled {
  opacity: 0.3;
  cursor: default;
}

.p-front__seminar__arrow--prev {
  transform: scaleX(-1);
}

.p-front__seminar__dots {
  display: none;
}
@media screen and (max-width: 768px) {
  .p-front__seminar__dots {
    display: flex;
    align-items: center;
    gap: 1.6rem;
  }
}

.p-front__seminar__dot {
  display: block;
  width: 1.6rem;
  height: 1.6rem;
  padding: 0;
  border: 0.1rem solid #999999;
  border-radius: 50%;
  background-color: #E5E5E5;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.p-front__seminar__dot.is-active {
  background-color: #ffaf34;
}

.p-front__seminar__card {
  display: block;
  height: 100%;
  transition: opacity 0.3s ease;
}
.p-front__seminar__card:hover {
  opacity: 0.9;
}

.p-front__seminar__img img {
  width: 100%;
  height: auto;
  aspect-ratio: 316/166;
  object-fit: cover;
}
@media screen and (max-width: 768px) {
  .p-front__seminar__img img {
    aspect-ratio: 256/134;
  }
}

.p-front__seminar__date {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  margin: 1.6rem 1.6rem 0;
  font-family: "Roboto", sans-serif;
  font-size: 1.6rem;
  color: #1a1a1a;
}
.p-front__seminar__date span {
  padding: 0.2rem 0.8rem;
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-size: 1.2rem;
  border-radius: 0.4rem;
  border: 1px solid #000;
}
@media screen and (max-width: 768px) {
  .p-front__seminar__date {
    margin: 1.6rem 0 0;
  }
}

.p-front__seminar__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin: 1rem 1.6rem 0;
}
@media screen and (max-width: 768px) {
  .p-front__seminar__tags {
    margin: 1.6rem 0 0;
  }
}
.p-front__seminar__tags li {
  padding: 0.2rem 0.8rem;
  font-size: 1.2rem;
  border-radius: 0.4rem;
  background: var(--color-primitive-orange-200, #ffd699);
  color: #1a1a1a;
}

.p-front__seminar__ttl {
  margin: 1rem 1.6rem 2rem;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__seminar__ttl {
    margin: 1.6rem 0 0;
  }
}

.p-front__company {
  padding: 12rem 2.4rem 6rem;
}
@media screen and (max-width: 768px) {
  .p-front__company {
    padding: 12rem 3.2rem 6.4rem;
  }
}

.p-front__company__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6.7rem;
  width: 100%;
  max-width: 146.4rem;
  margin: 0 auto;
  padding: 6.4rem;
  border: 0.1rem solid #000000;
  border-radius: 4rem;
}
@media screen and (max-width: 768px) {
  .p-front__company__inner {
    flex-direction: column;
    align-items: stretch;
    gap: 2.4rem;
    padding: 4rem 2.4rem;
    border-radius: 2.4rem;
  }
}

.p-front__company__label {
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__company__label {
    font-size: 2rem;
    line-height: 1.2;
  }
}

.p-front__company__lead {
  margin-top: 1.2rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-front__company__lead {
    margin-top: 1.6rem;
    font-size: 1.5rem;
    line-height: 1.8666666667;
  }
}

.p-front__company__catch {
  margin-top: 2rem;
  line-height: 0;
}
.p-front__company__catch img {
  display: block;
  width: 56.4rem;
  max-width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .p-front__company__catch {
    margin-top: 4.4rem;
  }
  .p-front__company__catch img {
    width: 27.8rem;
  }
}

.p-front__company__btn {
  flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  .p-front__company__btn .c-btn {
    width: 100%;
    min-width: 0;
    height: 6.4rem;
    padding: 0 2.4rem;
    font-size: 1.6rem;
    line-height: 1;
  }
}

.p-front__routeDots {
  display: block;
  width: 24px;
  aspect-ratio: 24/100;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .p-front__routeDots {
    display: none;
  }
}
.p-front__routeDots > i {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 24%;
  background: url("../img/front/dots_01.webp") no-repeat center top/100% 416.666667%;
}
.p-front__routeDots > i:nth-child(2) {
  top: 28%;
  background-position-y: 36.842105%;
}
.p-front__routeDots > i:nth-child(3) {
  top: 76%;
  background-position-y: 100%;
}

.p-front__border07-01 > svg,
.p-front__border07-02 > svg,
.p-front__border12 > svg {
  display: block;
  width: 100%;
  height: auto;
}

.p-front .is-front-dot {
  transform-box: fill-box;
  transform-origin: center;
  transform: scale(0);
  opacity: 0;
  transition: transform 400ms ease-out, opacity 250ms ease-out;
}
.p-front .is-front-dot.is-in-view {
  transform: scale(1);
  opacity: 1;
}

.p-front.has-route-travellers .is-front-dot {
  visibility: hidden;
}

.p-front__routeTravellerLayer {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}

.p-front__routeTraveller {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 24px;
  height: 24px;
  background: url("../img/front/dots_01.webp") no-repeat center top/100% 416.666667%;
  pointer-events: none;
}
.p-front__routeTraveller--1 {
  background-position-y: 36.842105%;
}
.p-front__routeTraveller--2 {
  background-position-y: 100%;
}
@media screen and (max-width: 768px) {
  .p-front__routeTraveller {
    width: 8px;
    height: 8px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .p-front.has-route-travellers .is-front-dot {
    visibility: visible;
  }
  .p-front__routeTraveller {
    display: none;
  }
  .p-front .is-front-dot {
    transform: none;
    opacity: 1;
    transition: none;
  }
}
.p-front__clients,
.p-front__intro,
.p-front__about,
.p-front__strength,
.p-front__agent,
.p-front__usecase,
.p-front__faq {
  position: relative;
  overflow-x: clip;
}

.p-front__sectionDeco {
  position: absolute;
  top: 5.5%;
  left: 50%;
  z-index: 0;
  width: 100%;
  max-width: 151.2rem;
  transform: translateX(-50%);
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .p-front__sectionDeco {
    display: none;
  }
}

.p-front__decoDot {
  position: absolute;
  aspect-ratio: 1;
  border-radius: 50%;
  background-color: #ffaf34;
  pointer-events: none;
}
.p-front__decoDot--teal {
  background-color: #6ddfd9;
}

.p-front__clients__inner,
.p-front__intro__inner,
.p-front__about__inner,
.p-front__strength__head,
.p-front__strength__list,
.p-front__agent__head,
.p-front__agent__body,
.p-front__usecase__head,
.p-front__usecase__list,
.p-front__faq__inner {
  position: relative;
  z-index: 1;
}

.p-front__border01 {
  position: absolute;
  bottom: -125px;
  right: calc(100% - var(--deco-railL) - 0.6px);
  width: 100vw;
  height: 274px;
  border-top: 1px solid #000000;
  border-right: 1px solid #000000;
  border-top-right-radius: 180px;
}
@media screen and (max-width: 768px) {
  .p-front__border01 {
    display: none;
  }
}

.p-front__strength__tail {
  position: absolute;
  left: 50%;
  bottom: 40px;
  width: 0;
  height: 334px;
  border-left: 1px solid #000000;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .p-front__strength__tail {
    display: none;
  }
}

.p-front__strength__tailDots {
  position: absolute;
  left: calc(50% - 12px);
  bottom: 40px;
  width: 24px;
  height: 100px;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .p-front__strength__tailDots {
    display: none;
  }
}

.p-front__spLine {
  display: none;
}
@media screen and (max-width: 768px) {
  .p-front__spLine {
    position: absolute;
    z-index: 0;
    display: block;
    pointer-events: none;
  }
}

.p-front__spLine--tl {
  border-left: 0.1rem solid #000000;
  border-top: 0.1rem solid #000000;
}

.p-front__spLine--tr {
  border-right: 0.1rem solid #000000;
  border-top: 0.1rem solid #000000;
}

.p-front__spLine--bl {
  border-left: 0.1rem solid #000000;
  border-bottom: 0.1rem solid #000000;
}

.p-front__spLine--br {
  border-right: 0.1rem solid #000000;
  border-bottom: 0.1rem solid #000000;
}

.p-front__spLine--v {
  border-left: 0.1rem solid #000000;
}

.p-front__spDots {
  display: none;
}
@media screen and (max-width: 768px) {
  .p-front__spDots {
    position: absolute;
    z-index: 0;
    display: block;
    width: 0.8rem;
    height: 4.4rem;
    pointer-events: none;
  }
  .p-front__spDots i {
    display: block;
    width: 0.8rem;
    height: 0.8rem;
    border-radius: 50%;
    background-image: linear-gradient(180deg, #ffd699 0%, #ffaf34 100%);
  }
  .p-front__spDots i:first-child {
    background-image: linear-gradient(180deg, #96e8e4 0%, #46d7cf 100%);
  }
  .p-front__spDots i:nth-child(2) {
    margin-top: 0.4rem;
  }
  .p-front__spDots i:nth-child(3) {
    margin-top: 1.6rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__spDots--above {
    bottom: 100%;
    left: 50%;
    margin-bottom: 2.4rem;
    transform: translateX(-50%);
  }
}

@media screen and (max-width: 768px) {
  .p-front__spDots--aboveCta {
    margin-bottom: 1.6rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__spLine--01 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    top: -16.5rem;
    bottom: 84.2rem;
    left: 0;
    width: 40.9rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__spLine__in {
    flex: 1 1 auto;
    min-height: 18rem;
    margin-left: -38.4rem;
    width: 40.9rem;
    border-top: 0.1rem solid #000000;
    border-right: 0.1rem solid #000000;
    border-top-right-radius: 18rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__spLine--01 .p-front__spDots {
    position: static;
    flex: 0 0 auto;
    margin: 1rem 0 0.8rem 2rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__spLine__join {
    position: absolute;
    bottom: 30.8rem;
    left: 2.4rem;
    height: 6.2rem;
    border-left: 0.1rem solid #000000;
  }
}

@media screen and (max-width: 768px) {
  .p-front__spLine__out {
    flex: 0 0 auto;
    margin-left: 2.4rem;
    width: 18rem;
    height: 30.8rem;
    border-left: 0.1rem solid #000000;
    border-bottom: 0.1rem solid #000000;
    border-bottom-left-radius: 18rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__spLine--02 {
    left: 20rem;
    bottom: 42.5rem;
    width: 17.4rem;
    height: 41.7rem;
    border-top-right-radius: 17.4rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__spLine--03 {
    left: 19.4rem;
    bottom: 12rem;
    width: 18rem;
    height: 39.9rem;
    border-bottom-right-radius: 18rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__spLine--04 {
    top: -12rem;
    left: 1.6rem;
    width: 18.3rem;
    height: 23.8rem;
    border-top-left-radius: 18rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__spLine--05 {
    top: -12rem;
    left: -16.7rem;
    width: 18.3rem;
    height: 18rem;
    border-top-right-radius: 18rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__spLine--06 {
    top: 11.8rem;
    bottom: -10rem;
    left: 1.6rem;
    width: 17.8rem;
    min-height: 17.8rem;
    border-bottom-left-radius: 17.8rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__spLine--07 {
    top: 10rem;
    left: 19.4rem;
    width: 40.9rem;
    height: 55.4rem;
    border-top-right-radius: 18rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__spLine--08 {
    top: 12.5rem;
    left: -21.4rem;
    width: 40.9rem;
    height: 19.4rem;
    border-top-right-radius: 18rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__spLine--09 {
    top: 31.9rem;
    left: 19.5rem;
    width: 0;
    height: 11.1rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__spLine--10 {
    top: 3.2rem;
    left: 19.6rem;
    width: 40.9rem;
    height: 25.9rem;
    border-top-left-radius: 18rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__spLine--11 {
    top: 12.6rem;
    left: -21.3rem;
    width: 40.9rem;
    height: 31.1rem;
    border-top-right-radius: 18rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__spLine--12 {
    top: 4.8rem;
    left: 19.5rem;
    width: 40.9rem;
    height: 25.9rem;
    border-top-left-radius: 18rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__spLine--13 {
    top: 14.2rem;
    left: -21.4rem;
    width: 40.9rem;
    height: 31.1rem;
    border-top-right-radius: 18rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__strength__item::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    width: 0.1rem;
    height: 8.1rem;
    background-color: #000000;
  }
}

@media screen and (max-width: 768px) {
  .p-front__strength__item:last-of-type::after {
    height: 14.1rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__faq__inner::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    width: 0.1rem;
    height: 18.1rem;
    background-color: #000000;
  }
}

.p-front__border02 {
  position: relative;
}

.p-front__border03 {
  position: absolute;
  top: 112px;
  bottom: 454px;
  left: calc(var(--deco-railL) - 0.4px);
  width: 432px;
}
@media screen and (max-width: 768px) {
  .p-front__border03 {
    display: none;
  }
}

.p-front__border03__a {
  position: absolute;
  top: 0;
  bottom: 365.5px;
  left: 0;
  width: 251.5px;
  min-height: 180px;
  border-left: 1px solid #000000;
  border-bottom: 1px solid #000000;
  border-bottom-left-radius: 180px;
}

.p-front__border03__b {
  position: absolute;
  bottom: 0;
  left: 251.5px;
  width: 180px;
  height: 366.5px;
  border-right: 1px solid #000000;
  border-top: 1px solid #000000;
  border-top-right-radius: 180px;
}

.p-front__border04 {
  position: absolute;
  bottom: -134px;
  left: 0;
  right: 0;
  height: 588px;
}
@media screen and (max-width: 768px) {
  .p-front__border04 {
    display: none;
  }
}

.p-front__border04__a {
  position: absolute;
  top: 0;
  left: calc(var(--deco-railL) + 251px);
  width: 180px;
  height: 290px;
  border-right: 1px solid #000000;
  border-bottom: 1px solid #000000;
  border-bottom-right-radius: 180px;
}

.p-front__border04__b {
  position: absolute;
  bottom: 0;
  left: calc(var(--deco-railL) - 3px);
  width: 254px;
  height: 299px;
  border-left: 1px solid #000000;
  border-top: 1px solid #000000;
  border-top-left-radius: 180px;
}

.p-front__border04__c {
  position: absolute;
  bottom: 0;
  right: calc(100% - var(--deco-railL) + 2px);
  width: 100vw;
  height: 299px;
  border-right: 1px solid #000000;
  border-top: 1px solid #000000;
  border-top-right-radius: 180px;
}

.p-front__border05 {
  position: absolute;
  bottom: -154px;
  left: calc(var(--deco-railL) - 3px);
  width: 180px;
  height: 352px;
  border-bottom: 1px solid #000000;
  border-left: 1px solid #000000;
  border-bottom-left-radius: 180px;
}

.p-front__border06 {
  position: absolute;
  bottom: -584px;
  left: calc(var(--deco-railL) + 177px);
  right: calc(50% + 1px);
  height: 431px;
  border-top: 1px solid #000000;
  border-right: 1px solid #000000;
  border-top-right-radius: 180px;
}

.p-front__border07-01 {
  position: absolute;
  top: 50%;
  left: calc(100% - 40px);
  width: 142px;
  height: calc(50% + 12rem + 1px);
  z-index: -2;
}

.p-front__border07-02 {
  position: absolute;
  top: 50%;
  right: calc(100% - 40px);
  width: 142px;
  height: calc(50% + 12rem + 1px);
  z-index: -2;
}

.p-front__strength__join {
  position: absolute;
  top: 328.5px;
  bottom: 0;
  left: 129.5px;
  border-left: 1px solid #000000;
  pointer-events: none;
}

.p-front__border07-02 .p-front__strength__join {
  left: 11.5px;
}

.p-front__border07-03 {
  position: absolute;
  bottom: 139px;
  right: calc(50% - 1px);
  width: 100vw;
  height: 241px;
  z-index: -1;
  border-right: 1px solid #000000;
  border-bottom: 1px solid #000000;
  border-bottom-right-radius: 156px;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .p-front__border07-03 {
    display: none;
  }
}

.p-front__border08 {
  position: absolute;
  top: 80px;
  left: 0;
  right: 0;
  height: 334px;
}

.p-front__border08__line {
  position: absolute;
  top: 0;
  right: calc(50% + 1px);
  width: 100vw;
  height: 351px;
  border-top: 1px solid #000000;
  border-right: 1px solid #000000;
  border-top-right-radius: 170px;
}

.p-front__border08__dots {
  position: absolute;
  top: 235px;
  left: calc(50% - 12px);
  width: 24px;
  height: auto;
}

.p-front__border09 {
  position: absolute;
  top: 92px;
  right: calc(100% - var(--deco-railL) - 219px);
  width: 100vw;
  height: 356px;
  border-top: 1px solid #000000;
  border-right: 1px solid #000000;
  border-top-right-radius: 170px;
}

.p-front__border09Dots {
  position: absolute;
  top: 227px;
  left: calc(var(--deco-railL) + 207px);
  width: 24px;
  height: auto;
}

.p-front__dotGrid--intro01 {
  top: 116px;
  right: calc(var(--deco-railL) + 28px);
}

.p-front__dotGrid--intro02 {
  top: 967px;
  left: calc(var(--deco-railL) + 21px);
  background-color: #00c8be;
}

.p-front__dotGrid--strength01 {
  top: 154px;
  right: calc(var(--deco-railL) + 24px);
}

.p-front__dotGrid--strength02 {
  top: 612px;
  left: calc(var(--deco-railL) + 16px);
  background-color: #00c8be;
}

.p-front__dotGrid--agent01 {
  top: 80px;
  right: calc(var(--deco-railL) + 16px);
}

.p-front__dotGrid--agent02 {
  top: 396px;
  left: calc(var(--deco-railL) + 8px);
  background-color: #ffaf34;
}

.p-front__dotGrid--faq01 {
  top: 347px;
  right: calc(var(--deco-railL) + 16px);
}

.p-front__usecase__dots {
  position: absolute;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .p-front__usecase__dots {
    display: none;
  }
}

.p-front__usecase__dots--a {
  top: 372px;
  left: calc(50% + 37px);
  width: 259px;
  height: 109px;
  background: url("../img/front/dot_grid_l.webp") no-repeat center/contain;
}

.p-front__usecase__dots--b,
.p-front__usecase__dots--c,
.p-front__usecase__dots--d {
  width: 128px;
  height: 65px;
  background: url("../img/front/dot_grid_s.webp") no-repeat center/contain;
}

.p-front__usecase__dots--b {
  top: 2px;
  left: calc(100% - var(--deco-railL) - 132px);
}

.p-front__usecase__dots--c {
  top: 1191px;
  left: calc(100% - var(--deco-railL) - 131px);
}

.p-front__usecase__dots--d {
  top: 1334px;
  left: calc(var(--deco-railL) + 24px);
}

.p-front__usecase__line {
  position: absolute;
  top: 511px;
  left: max(64px + (100% - 180px) / 6, 50% - 470px);
  width: 0;
  height: 80px;
  border-left: 1px solid #000000;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .p-front__usecase__line {
    display: none;
  }
}

.p-front__border10 {
  position: absolute;
  top: 513px;
  left: calc(100% - var(--deco-railL) - 230.5px);
  width: 100vw;
  height: 219px;
  border-top: 1px solid #000000;
  border-left: 1px solid #000000;
  border-top-left-radius: 170px;
  z-index: -1;
}

.p-front__border11 {
  position: absolute;
  top: 0;
  left: calc(50% + 23rem);
  transform: translateX(-50%);
  aspect-ratio: 483/478;
  width: 483px;
  height: auto;
}

.p-front__border12 {
  position: absolute;
  bottom: 45px;
  left: 50%;
  transform: translateX(-50%);
  aspect-ratio: 24/276;
  width: 24px;
  height: auto;
}

.p-front__dots01 {
  position: absolute;
  bottom: 465px;
  left: calc(var(--deco-railL) + 420px);
  aspect-ratio: 24/100;
  width: 2.4rem;
}

.p-front__dots02 {
  position: absolute;
  top: 469px;
  left: 50%;
  aspect-ratio: 24/100;
  width: 2.4rem;
  transform: translateX(-50%);
}

@media screen and (max-width: 768px) {
  .p-front__border05,
  .p-front__border06,
  .p-front__border07-01,
  .p-front__border07-02,
  .p-front__border07-03,
  .p-front__border08,
  .p-front__border09,
  .p-front__border10,
  .p-front__border11,
  .p-front__border12,
  .p-front__border09Dots,
  .p-front__dots01,
  .p-front__dots02 {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  .p-front__border02::before {
    content: none;
  }
}

@media screen and (max-width: 768px) {
  .p-front__strength__head,
  .p-front__agent__head,
  .p-front__usecase__head,
  .p-front__ctaBand {
    position: relative;
  }
}

@media screen and (max-width: 768px) {
  .p-front__faq__inner {
    position: relative;
  }
}

.p-front__qaDots {
  position: absolute;
  background-color: #ffaf34;
  mask: url(../img/front/qa_dots.svg) no-repeat center/contain;
  -webkit-mask: url(../img/front/qa_dots.svg) no-repeat center/contain;
  pointer-events: none;
}

.p-front__qaDots--01 {
  bottom: 100%;
  left: calc(4% - 3px);
  width: 12.8rem;
  height: 6.5rem;
  margin-bottom: 37.38rem;
}
@media screen and (min-width: 1390px) {
  .p-front__qaDots--01 {
    left: -0.3rem;
  }
}
@media screen and (max-width: 768px) {
  .p-front__qaDots--01 {
    left: 23.4rem;
    width: 9.3rem;
    height: 4.7rem;
    margin-bottom: 2.4rem;
  }
}

.p-front__qaDots--02 {
  top: 100%;
  right: 0.3rem;
  width: 12.8rem;
  height: 6.5rem;
  margin-top: 22.72rem;
}
@media screen and (max-width: 768px) {
  .p-front__qaDots--02 {
    right: auto;
    left: -3.2rem;
    width: 9.3rem;
    height: 4.7rem;
    margin-top: 12.5rem;
  }
}

@media screen and (max-width: 768px) {
  .p-front__usecase__item {
    position: relative;
  }
  .p-front__usecase__item::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    width: 0.1rem;
    height: 4rem;
    background-color: #000000;
  }
  .p-front__usecase__item:last-of-type::after {
    height: 17.2rem;
  }
}

.p-front__usecase__company {
  margin-top: 1.2rem;
  font-size: 1.4rem;
  line-height: 1.6;
}

.p-front__usecase__img img {
  object-fit: contain;
  background: #fff;
}

.p-dlArchive__inner {
  width: 95%;
  max-width: 135.2rem;
  margin: 0 auto;
}

.p-dlArchive__crumbs {
  padding: 2.4rem 0 0;
}
.p-dlArchive__crumbs .p-dlArchive__inner {
  display: flex;
  gap: 0.6rem;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #1a1a1a;
}
.p-dlArchive__crumbs a, .p-dlArchive__crumbs a:hover, .p-dlArchive__crumbs a:visited, .p-dlArchive__crumbs a:link {
  color: #666;
  text-decoration: none;
}
.p-dlArchive__crumbs a:hover {
  opacity: 0.6;
}
.p-dlArchive__crumbs span {
  display: flex;
  align-items: center;
}

.p-dlArchive__hero {
  padding: 9.8rem 0 8rem;
  text-align: center;
}
@media screen and (max-width: 568px) {
  .p-dlArchive__hero {
    padding: 4rem 0 3.2rem;
  }
}

.p-dlArchive__heroTtl {
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1.6666666667;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-dlArchive__heroTtl {
    font-size: 3.6rem;
  }
}
@media screen and (max-width: 568px) {
  .p-dlArchive__heroTtl {
    font-size: 2.8rem;
  }
}

.p-dlArchive__heroLead {
  margin-top: 2.4rem;
  font-size: 2rem;
  line-height: 1.8;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-dlArchive__heroLead {
    font-size: 1.6rem;
    text-align: left;
  }
}

.p-dlArchive__mincho {
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1.6666666667;
  color: #1a1a1a;
  padding-bottom: 2.4rem;
  border-bottom: 1px solid #000;
}
@media screen and (max-width: 568px) {
  .p-dlArchive__mincho {
    font-size: 3.2rem;
  }
}

.p-dlArchive__h2 {
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.5;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-dlArchive__h2 {
    font-size: 2.4rem;
  }
}

.p-dlArchive__lead {
  margin-top: 1.6rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
  padding-bottom: 4rem;
  border-bottom: 1px solid #000;
}

.p-dlArchive__featured {
  padding: 16rem 0;
  background-color: #FAF5E9;
  border-radius: 6.4rem 6.4rem 0 0;
}
@media screen and (max-width: 568px) {
  .p-dlArchive__featured {
    padding: 4rem 0;
    border-radius: 3.2rem 3.2rem 0 0;
  }
}
.p-dlArchive__featured .p-dlCard__list {
  margin-top: 2.4rem;
}

.p-dlArchive__all {
  padding: 16rem 0;
}
@media screen and (max-width: 568px) {
  .p-dlArchive__all {
    padding: 4rem 0;
  }
}

.p-dlArchive__tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 1.6rem;
  margin: 3.2rem 0;
}
.p-dlArchive__tabs li {
  flex: 1 1 0;
  min-width: 18rem;
}
.p-dlArchive__tabs li a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 6.4rem;
  padding: 0 2.4rem;
  font-size: 1.6rem;
  line-height: 2;
  text-align: center;
  background-color: #FFFFFF;
  border: 0.1rem solid #ffaf34;
  border-radius: 0.4rem;
  transition: background-color 0.2s ease;
}
.p-dlArchive__tabs li a, .p-dlArchive__tabs li a:hover, .p-dlArchive__tabs li a:visited, .p-dlArchive__tabs li a:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-dlArchive__tabs li a:hover {
  background-color: rgba(255, 175, 52, 0.15);
}
.p-dlArchive__tabs li.is-active a {
  background-color: #ffaf34;
  border-color: #ffaf34;
}
@media screen and (max-width: 568px) {
  .p-dlArchive__tabs {
    gap: 1rem;
  }
  .p-dlArchive__tabs li {
    min-width: 0;
    flex: 1 1 40%;
  }
  .p-dlArchive__tabs li a {
    height: 4.8rem;
    padding: 0 1.2rem;
    font-size: 1.4rem;
  }
}

.p-dlArchive__empty {
  padding: 4rem 0;
  text-align: center;
  color: #1a1a1a;
}

.p-dlCard__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 4rem 3.2rem;
}
@media screen and (max-width: 768px) {
  .p-dlCard__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media screen and (max-width: 568px) {
  .p-dlCard__list {
    grid-template-columns: minmax(0, 1fr);
    gap: 2.4rem;
  }
}

.p-dlCard {
  background-color: #FFFFFF;
  border-radius: 0.4rem;
  border: 1px solid #E5E5E5;
}

.p-dlCard--simple .p-dlCard__ttl {
  padding-bottom: 0;
  border-bottom: none;
}

.p-dlCard__link {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.p-dlCard__link, .p-dlCard__link:hover, .p-dlCard__link:visited, .p-dlCard__link:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-dlCard__link:hover .p-dlCard__img {
  transform: scale(1.04);
}
.p-dlCard__link:hover .p-dlCard__btn {
  opacity: 0.85;
}

.p-dlCard__thumb {
  position: relative;
  aspect-ratio: 376/211;
  overflow: hidden;
  background-color: #BFBFBF;
}
.p-dlCard__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-dlCard__img {
  transition: transform 0.4s ease;
}

.p-dlCard__noimg {
  display: block;
  width: 100%;
  height: 100%;
  background-color: #BFBFBF;
}

.p-dlCard__new {
  position: absolute;
  top: 1.6rem;
  left: 1.6rem;
  padding: 0.4rem 0.8rem;
  font-family: "Roboto", sans-serif;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.5;
  color: #FFFFFF;
  background-color: #E6494D;
  border-radius: 0.4rem;
}

.p-dlCard__body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 1.6rem;
}

.p-dlCard__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}
.p-dlCard__tags li {
  padding: 0.4rem 0.8rem;
  font-family: "Roboto", sans-serif;
  font-size: 1.2rem;
  line-height: 1.5;
  background-color: #FFD699;
  border-radius: 0.4rem;
  color: #1a1a1a;
}

.p-dlCard__ttl {
  margin-top: 1.6rem;
  margin-bottom: 1.6rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2;
  color: #1a1a1a;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.p-dlCard__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 1.6rem;
  margin-top: auto;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #888888;
  padding-top: 1.6rem;
  border-top: 1px solid #000;
}

.p-dlCard__metaItem {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
}
.p-dlCard__metaItem::before {
  content: "";
  width: 1.2rem;
  height: 1.2rem;
  background-color: currentColor;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
}
.p-dlCard__metaItem--pages::before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23000' d='M3 1h7l3 3v11H3z'/%3E%3C/svg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23000' d='M3 1h7l3 3v11H3z'/%3E%3C/svg%3E");
}
.p-dlCard__metaItem--time::before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='7' fill='none' stroke='%23000' stroke-width='1.4'/%3E%3Cpath d='M8 4v4l3 2' fill='none' stroke='%23000' stroke-width='1.4'/%3E%3C/svg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='7' fill='none' stroke='%23000' stroke-width='1.4'/%3E%3Cpath d='M8 4v4l3 2' fill='none' stroke='%23000' stroke-width='1.4'/%3E%3C/svg%3E");
}

.p-dlCard__summary {
  margin-top: 0.8rem;
  margin-bottom: 2.4rem;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #1a1a1a;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 3em;
}

.p-dlCard__btn {
  margin-top: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.8rem 2.4rem;
  min-height: 4.8rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #FFFFFF;
  background-color: #000000;
  border-radius: 0.4rem;
  transition: opacity 0.3s ease;
}

.p-dlCard__arrow {
  flex-shrink: 0;
  width: 2.4rem;
  height: 1.4rem;
}

.p-download .c-paginate,
.p-download .wp-pagenavi,
.p-dlArchive__all .paginate,
.p-dlArchive__pager {
  display: flex;
  justify-content: center;
  gap: 0.8rem;
  margin-top: 4.8rem;
}
.p-download .c-paginate a,
.p-download .c-paginate span,
.p-download .wp-pagenavi a,
.p-download .wp-pagenavi span,
.p-dlArchive__all .paginate a,
.p-dlArchive__all .paginate span,
.p-dlArchive__pager a,
.p-dlArchive__pager span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 4.8rem;
  height: 4.8rem;
  font-family: "Roboto", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
  border-radius: 0.4rem;
  background-color: #FFFFFF;
  border: 0.1rem solid rgba(0, 0, 0, 0.1);
}
.p-download .c-paginate a, .p-download .c-paginate a:hover, .p-download .c-paginate a:visited, .p-download .c-paginate a:link,
.p-download .c-paginate span,
.p-download .c-paginate span:hover,
.p-download .c-paginate span:visited,
.p-download .c-paginate span:link,
.p-download .wp-pagenavi a,
.p-download .wp-pagenavi a:hover,
.p-download .wp-pagenavi a:visited,
.p-download .wp-pagenavi a:link,
.p-download .wp-pagenavi span,
.p-download .wp-pagenavi span:hover,
.p-download .wp-pagenavi span:visited,
.p-download .wp-pagenavi span:link,
.p-dlArchive__all .paginate a,
.p-dlArchive__all .paginate a:hover,
.p-dlArchive__all .paginate a:visited,
.p-dlArchive__all .paginate a:link,
.p-dlArchive__all .paginate span,
.p-dlArchive__all .paginate span:hover,
.p-dlArchive__all .paginate span:visited,
.p-dlArchive__all .paginate span:link,
.p-dlArchive__pager a,
.p-dlArchive__pager a:hover,
.p-dlArchive__pager a:visited,
.p-dlArchive__pager a:link,
.p-dlArchive__pager span,
.p-dlArchive__pager span:hover,
.p-dlArchive__pager span:visited,
.p-dlArchive__pager span:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-download .c-paginate .current,
.p-download .c-paginate a:hover,
.p-download .wp-pagenavi .current,
.p-download .wp-pagenavi a:hover,
.p-dlArchive__all .paginate .current,
.p-dlArchive__all .paginate a:hover,
.p-dlArchive__pager .current,
.p-dlArchive__pager a:hover {
  background-color: #ffaf34;
  border-color: #ffaf34;
  color: #1a1a1a;
}

.p-dlFlow {
  padding: 16rem 0 0;
  border-top: 1px solid #EBEBEB;
}
@media screen and (max-width: 568px) {
  .p-dlFlow {
    padding: 4rem 0;
  }
}

.p-dlArchive__heading {
  text-align: left;
}

.p-dlFlow__steps {
  --step-gap: 10rem;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 24rem));
  justify-content: center;
  gap: var(--step-gap);
  margin-top: 8rem;
}
@media screen and (max-width: 1000px) {
  .p-dlFlow__steps {
    --step-gap: 4rem;
  }
}
@media screen and (max-width: 568px) {
  .p-dlFlow__steps {
    --step-gap: 6.4rem;
    grid-template-columns: minmax(0, 1fr);
  }
}

.p-dlFlow__step {
  position: relative;
  text-align: center;
}
.p-dlFlow__step:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 4.95rem;
  left: calc(100% + var(--step-gap) / 2);
  width: 4.45rem;
  height: 6.1rem;
  transform: translateX(-50%);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44.5 61'%3E%3Cpath d='M5 5 39.5 30.5 5 56' fill='none' stroke='%23FFAF34' stroke-opacity='.6' stroke-width='10' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;
}
@media screen and (max-width: 568px) {
  .p-dlFlow__step:not(:last-child)::after {
    top: auto;
    left: 50%;
    bottom: -6.25rem;
    transform: translateX(-50%) rotate(90deg);
  }
}

.p-dlFlow__icon {
  display: block;
  width: 16rem;
  height: 16rem;
  max-width: 100%;
  aspect-ratio: 1/1;
  margin: 0 auto;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.p-dlFlow__icon[data-step=doc] {
  background-image: url(../img/download/flow_1.webp);
}
.p-dlFlow__icon[data-step=form] {
  background-image: url(../img/download/flow_2.webp);
}
.p-dlFlow__icon[data-step=mail] {
  background-image: url(../img/download/flow_3.webp);
}

.p-dlFlow__ttl {
  margin-top: 1.6rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.8;
  color: #1a1a1a;
}

.p-dlFlow__text {
  width: fit-content;
  max-width: 24rem;
  margin: 0.8rem auto 0;
  font-size: 1.6rem;
  line-height: 2;
  text-align: left;
  color: #1a1a1a;
}

.p-dlOther {
  padding: 16rem 0 21.6rem;
  text-align: center;
}
@media screen and (max-width: 568px) {
  .p-dlOther {
    padding: 4rem 0 11.6rem;
  }
}

.p-dlOther__inner {
  width: 100%;
  max-width: 143.2rem;
  margin: 0 auto;
  padding: 0 2.4rem;
}

.p-dlOther__ttl {
  font-size: 4rem;
  font-weight: 400;
  line-height: 1.2;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-dlOther__ttl {
    font-size: 2.8rem;
  }
}

.p-dlOther__lead {
  margin-top: 1.6rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}

.p-dlOther__tiles {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.6rem;
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .p-dlOther__tiles {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media screen and (max-width: 568px) {
  .p-dlOther__tiles {
    grid-template-columns: minmax(0, 1fr);
  }
}

.p-dlOther__tile a {
  position: relative;
  display: block;
  min-height: 19.1rem;
  padding: 4.8rem 3.2rem;
  background-color: #FFAF34;
  border-radius: 1.6rem;
  text-align: left;
  transition: all 0.2s ease;
}
.p-dlOther__tile a, .p-dlOther__tile a:hover, .p-dlOther__tile a:visited, .p-dlOther__tile a:link {
  color: #000000;
  text-decoration: none;
}
.p-dlOther__tile a::before {
  content: "";
  position: absolute;
  top: 1.6rem;
  left: 1.6rem;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 999rem;
  background-color: #FFFFFF;
}
.p-dlOther__tile:hover a, .p-dlOther__tile.is-current a {
  opacity: 1;
  background-color: #FFEACB;
}
.p-dlOther__tile:hover a, .p-dlOther__tile:hover a:hover, .p-dlOther__tile:hover a:visited, .p-dlOther__tile:hover a:link, .p-dlOther__tile.is-current a, .p-dlOther__tile.is-current a:hover, .p-dlOther__tile.is-current a:visited, .p-dlOther__tile.is-current a:link {
  color: #666;
  text-decoration: none;
}
.p-dlOther__tile:hover .p-dlOther__tileArrow, .p-dlOther__tile.is-current .p-dlOther__tileArrow {
  opacity: 0;
}

.p-dlOther__tileLabel {
  display: block;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.6363636364;
  color: #000000;
}

.p-dlOther__tileArrow {
  position: absolute;
  right: 1.2rem;
  bottom: 1.2rem;
  width: 2.3rem;
  height: 2.3rem;
  border-radius: 50%;
  background: #F29600 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 23 23'%3E%3Cpath d='M10 7 15 11.5 10 16' fill='none' stroke='%23000' stroke-width='1' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;
}

.p-dlDetail__inner {
  width: 100%;
  max-width: 119.2rem;
  margin: 0 auto;
  padding: 0 2.4rem;
}

.p-dlDetail__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 47.2rem;
  gap: 8rem;
  align-items: start;
  padding-top: 4rem;
}
@media screen and (max-width: 1000px) {
  .p-dlDetail__layout {
    gap: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-dlDetail__layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 4.8rem;
    padding-inline: 1.6rem;
  }
}

.p-dlDetail__head {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}

.p-dlDetail__cats {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}
.p-dlDetail__cats li {
  padding: 0.2rem 1.2rem;
  font-size: 1.2rem;
  line-height: 2.3333333333;
  background-color: #FFD699;
  border-radius: 0.4rem;
  color: #1a1a1a;
}

.p-dlDetail__ttl {
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.5;
  color: #1a1a1a;
  margin-bottom: 6.4rem;
}
@media screen and (max-width: 568px) {
  .p-dlDetail__ttl {
    font-size: 2.4rem;
    margin-bottom: 4.8rem;
  }
}

.p-dlDetail__mainImg {
  aspect-ratio: 640/335;
  overflow: hidden;
  background-color: #C4C4C4;
}
.p-dlDetail__mainImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-dlDetail__thumbs {
  display: flex;
  gap: 1.6rem;
  margin-top: 1.6rem;
}
.p-dlDetail__thumbs li {
  flex: 1 1 0;
  min-width: 0;
}
.p-dlDetail__thumbs button {
  display: block;
  width: 100%;
  aspect-ratio: 148/103;
  overflow: hidden;
  background-color: #C4C4C4;
  border: 0.1rem solid rgba(0, 0, 0, 0.08);
  border-radius: 0.2rem;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
.p-dlDetail__thumbs button:hover, .p-dlDetail__thumbs button.is-active {
  opacity: 0.75;
}
.p-dlDetail__thumbs img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-dlDetail__body {
  display: flex;
  flex-direction: column;
  gap: 4rem;
  margin-top: 6.4rem;
}

.p-dlDetail__secTtl {
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.5833333333;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-dlDetail__secTtl {
    font-size: 2rem;
  }
}

.p-dlDetail__text {
  margin-top: 1.6rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}
.p-dlDetail__text p + p {
  margin-top: 1.6rem;
}

.p-dlDetail__list {
  margin-top: 1.6rem;
}
.p-dlDetail__list ul {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
.p-dlDetail__list li {
  position: relative;
  padding-left: 2.4rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}
.p-dlDetail__list li::before {
  content: "";
  position: absolute;
  top: 1rem;
  left: 0;
  width: 1.2rem;
  height: 1.2rem;
  background-color: #FFAF34;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 6.5l2.8 2.8L10 3.2' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 6.5l2.8 2.8L10 3.2' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;
}

.p-dlDetail__formBox {
  padding: 3.2rem;
  background-color: #FAF5E9;
  border-radius: 0.4rem;
}

.p-dlDetail__formTtl {
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.6363636364;
  color: #1a1a1a;
}

.p-dlDetail__formNote {
  margin-top: 0.8rem;
  font-size: 1.2rem;
  line-height: 1.6666666667;
  color: #666666;
}

.p-dlDetail__iframe {
  margin-top: 2.4rem;
}
@media screen and (max-width: 768px) {
  .p-dlDetail__iframe {
    margin-inline: -3.2rem;
  }
}
.p-dlDetail__iframe iframe {
  display: block;
  width: 100%;
  height: 960px;
  border: 0;
}

.p-dlDetail__formEmpty {
  margin-top: 2.4rem;
  font-size: 1.4rem;
  line-height: 1.7142857143;
  color: #666666;
}

.p-dlDetail__related {
  padding: 8rem 0 0;
}
@media screen and (max-width: 568px) {
  .p-dlDetail__related {
    padding: 4rem 0 0;
  }
}
.p-dlDetail__related .p-dlCard__list {
  margin-top: 4rem;
}

.p-ucArchive {
  background: url(../img/usecase/bg_01.svg) center top 13rem/contain no-repeat;
}

.p-ucArchive__inner {
  width: 95%;
  max-width: 119.2rem;
  margin: 0 auto;
}

.p-ucArchive__crumbs {
  padding: 2.4rem 0 0;
}
.p-ucArchive__crumbs .p-ucArchive__inner,
.p-ucArchive__crumbs .p-seminar__inner {
  display: flex;
  gap: 0.8rem;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #1a1a1a;
  white-space: nowrap;
  overflow-x: auto;
}
.p-ucArchive__crumbs a, .p-ucArchive__crumbs a:hover, .p-ucArchive__crumbs a:visited, .p-ucArchive__crumbs a:link {
  color: #666;
  text-decoration: none;
}
.p-ucArchive__crumbs a:hover {
  opacity: 0.6;
}

.p-ucArchive__hero {
  padding: 8rem 0 4rem;
}
@media screen and (max-width: 568px) {
  .p-ucArchive__hero {
    padding: 4rem 0 2.4rem;
  }
}

.p-ucArchive__heroTtl {
  padding-bottom: 2.4rem;
  border-bottom: 0.1rem solid rgba(0, 0, 0, 0.15);
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1.375;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-ucArchive__heroTtl {
    font-size: 4.8rem;
  }
}
@media screen and (max-width: 568px) {
  .p-ucArchive__heroTtl {
    font-size: 3.6rem;
  }
}

.p-ucArchive__heroLead {
  margin-top: 4rem;
  font-size: 2rem;
  line-height: 1.8;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-ucArchive__heroLead {
    margin-top: 2.4rem;
    font-size: 1.6rem;
  }
}

.p-ucArchive__h2 {
  padding-bottom: 2.4rem;
  border-bottom: 0.1rem solid rgba(0, 0, 0, 0.15);
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.5;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-ucArchive__h2 {
    font-size: 2.4rem;
  }
}

.p-ucArchive__featured {
  padding: 6rem 0 0;
}
.p-ucArchive__featured .p-ucCard__grid {
  margin-top: 4rem;
}

.p-ucCard__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 4rem 3.2rem;
}
@media screen and (max-width: 768px) {
  .p-ucCard__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media screen and (max-width: 568px) {
  .p-ucCard__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 2.4rem;
  }
}

.p-ucArchive__all {
  padding: 8rem 0 16rem;
}
@media screen and (max-width: 1000px) {
  .p-ucArchive__all {
    padding-bottom: 10rem;
  }
}
@media screen and (max-width: 568px) {
  .p-ucArchive__all {
    padding: 4rem 0 6.4rem;
  }
}

.p-ucCard__rows {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 3.2rem;
}
@media screen and (max-width: 1000px) {
  .p-ucCard__rows {
    grid-template-columns: minmax(0, 1fr);
  }
}

.p-ucArchive__empty {
  padding: 4rem 0;
  text-align: center;
  color: #1a1a1a;
}

.p-ucCard {
  background-color: #FFFFFF;
  border-radius: 0.4rem;
  overflow: hidden;
  border: 1px solid #ECECEC;
}

.p-ucCard__company {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.8;
  color: #1a1a1a;
}

.p-ucCard__cats {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  margin-top: 0.8rem;
}
.p-ucCard__cats li {
  padding: 0.4rem 0.8rem;
  font-size: 1.2rem;
  line-height: 1.5;
  background-color: #FFD699;
  border-radius: 0.4rem;
  color: #1a1a1a;
}
.p-ucCard__cats li.is-outline {
  background-color: #FFFFFF;
  border: 0.1rem solid #000000;
}

.p-ucCard__ttl {
  margin-top: 1.6rem;
  margin-bottom: 1.6rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2;
  color: #1a1a1a;
  padding-bottom: 1.6rem;
  border-bottom: 1px solid #000;
}

.p-ucCard__link {
  display: flex;
  height: 100%;
}
.p-ucCard__link, .p-ucCard__link:hover, .p-ucCard__link:visited, .p-ucCard__link:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-ucCard__link:hover .p-ucCard__btn {
  opacity: 0.85;
}

.p-ucCard__img {
  transition: transform 0.4s ease;
}

.p-ucCard--featured .p-ucCard__link {
  flex-direction: column;
}
.p-ucCard--featured .p-ucCard__thumb {
  aspect-ratio: 376/211;
  overflow: hidden;
  background-color: #FFFFFF;
}
.p-ucCard--featured .p-ucCard__thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.p-ucCard--featured .p-ucCard__body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 1.6rem;
}
.p-ucCard--featured .p-ucCard__excerpt {
  margin-top: 0.8rem;
  margin-bottom: 2.4rem;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #1a1a1a;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.p-ucCard--featured .p-ucCard__btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: auto;
  padding: 0.8rem 2.4rem;
  min-height: 4.8rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #FFFFFF;
  background-color: #000000;
  border-radius: 0.4rem;
  transition: opacity 0.3s ease;
}
.p-ucCard--featured .p-ucCard__arrow {
  flex-shrink: 0;
  width: 2.4rem;
  height: 1.4rem;
}

.p-ucCard--row .p-ucCard__link {
  flex-direction: row;
  align-items: stretch;
}
.p-ucCard--row .p-ucCard__thumb {
  flex-shrink: 0;
  width: 23.2rem;
  aspect-ratio: 1/1;
  overflow: hidden;
  background-color: #FFFFFF;
}
.p-ucCard--row .p-ucCard__thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@media screen and (max-width: 568px) {
  .p-ucCard--row .p-ucCard__thumb {
    width: 12rem;
  }
}
.p-ucCard--row .p-ucCard__body {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-width: 0;
  padding: 1.6rem 2.4rem;
}
.p-ucCard--row .p-ucCard__ttl {
  margin-top: 1.2rem;
}
.p-ucCard--row .p-ucCard__divider {
  display: block;
  margin-top: auto;
  padding-top: 1.6rem;
  border-top: 0.1rem solid rgba(0, 0, 0, 0.1);
}
.p-ucCard--row .p-ucCard__effects {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}
.p-ucCard--row .p-ucCard__effects li {
  padding: 0.4rem 1.2rem;
  font-size: 1.2rem;
  line-height: 1.5;
  background-color: #FFFFFF;
  border: 0.1rem solid rgba(0, 0, 0, 0.15);
  border-radius: 2.6rem;
  color: #1a1a1a;
}

.p-ucCard__noimg {
  display: block;
  width: 100%;
  height: 100%;
  background-color: #FFFFFF;
}

.p-ucClients {
  padding: 16rem 0;
  background-color: #FAF5E9;
}
@media screen and (max-width: 568px) {
  .p-ucClients {
    margin-top: 4rem;
    padding: 4rem 0;
  }
}

.p-ucClients__ttl {
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.6363636364;
  color: #1a1a1a;
}

.p-ucClients__logos {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 2rem;
  margin-top: 3.2rem;
}
@media screen and (max-width: 768px) {
  .p-ucClients__logos {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media screen and (max-width: 568px) {
  .p-ucClients__logos {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.p-ucClients__logos li {
  aspect-ratio: 155/103;
  background-color: #FFFFFF;
  border-radius: 0.4rem;
}
.p-ucClients__logos img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.p-ucClients__btnWrap {
  margin-top: 3.2rem;
  text-align: center;
}

.p-ucClients__btn {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.2rem;
  min-width: 26rem;
  min-height: 6.4rem;
  padding: 0.4rem 2.4rem;
  font-size: 1.8rem;
  line-height: 1.7777777778;
  text-align: center;
  background-color: #FFFFFF;
  border: 0.1rem solid #000000;
  border-radius: 0.4rem;
  transition: opacity 0.2s ease;
}
.p-ucClients__btn, .p-ucClients__btn:hover, .p-ucClients__btn:visited, .p-ucClients__btn:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-ucClients__btn:hover {
  opacity: 0.7;
}
.p-ucClients__btn svg {
  flex-shrink: 0;
  width: 1.6rem;
  height: 1rem;
}

.p-ucClients__btn--dark {
  background-color: #000000;
  border-color: #000000;
}
.p-ucClients__btn--dark, .p-ucClients__btn--dark:hover, .p-ucClients__btn--dark:visited, .p-ucClients__btn--dark:link {
  color: #FFFFFF;
  text-decoration: none;
}

.p-ucDetail {
  background: url(../img/usecase/bg_01.svg) center top 13rem/contain no-repeat;
}

.p-ucDetail__inner {
  width: 100%;
  max-width: 119.2rem;
  margin: 0 auto;
  padding: 0 2.4rem;
}

.p-ucDetail__head {
  display: flex;
  align-items: center;
  gap: 2.4rem;
  padding-top: 8rem;
}
@media screen and (max-width: 568px) {
  .p-ucDetail__head {
    flex-direction: column;
    gap: 1.6rem;
  }
}

.p-ucDetail__logo {
  flex-shrink: 0;
  width: 17.8rem;
  height: 17.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.8rem;
  background-color: #FFFFFF;
  border-radius: 0.4rem;
}
.p-ucDetail__logo img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.p-ucDetail__logoNo {
  width: 100%;
  height: 100%;
  background-color: #F0F0F0;
  border-radius: 0.2rem;
}

.p-ucDetail__headBody {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  min-width: 0;
}

.p-ucDetail__company {
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.5833333333;
  color: #1a1a1a;
}

.p-ucDetail__cats {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}
.p-ucDetail__cats li {
  padding: 0.4rem 0.8rem;
  font-size: 1.2rem;
  line-height: 1.5;
  background-color: #FFD699;
  border-radius: 0.4rem;
  color: #1a1a1a;
}
.p-ucDetail__cats li.is-outline {
  background-color: #FFFFFF;
  border: 0.1rem solid #000000;
}

.p-ucDetail__effects {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}
.p-ucDetail__effects li {
  padding: 0.4rem 1.2rem;
  font-size: 1.2rem;
  line-height: 1.5;
  background-color: #FFFFFF;
  border: 0.1rem solid rgba(0, 0, 0, 0.15);
  border-radius: 2.6rem;
  color: #1a1a1a;
}

.p-ucDetail__ttl {
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.5;
  color: #1a1a1a;
  margin-bottom: 6.4rem;
}
@media screen and (max-width: 568px) {
  .p-ucDetail__ttl {
    font-size: 2.4rem;
  }
}

.p-ucDetail__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 39.2rem;
  gap: 8rem;
  align-items: start;
  padding-top: 3rem;
}
@media screen and (max-width: 1000px) {
  .p-ucDetail__layout {
    gap: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-ucDetail__layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 4.8rem;
    padding-top: 4rem;
  }
}

.p-ucDetail__content {
  color: #1a1a1a;
}
.p-ucDetail__content h2 {
  margin-top: 6.4rem;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.5833333333;
}
.p-ucDetail__content h2:first-child {
  margin-top: 0;
}
@media screen and (max-width: 568px) {
  .p-ucDetail__content h2 {
    font-size: 2rem;
  }
}
.p-ucDetail__content h3 {
  margin-top: 4rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.7;
}
.p-ucDetail__content p {
  margin-top: 1.6rem;
  font-size: 1.6rem;
  line-height: 2;
}
.p-ucDetail__content img {
  display: block;
  width: 100%;
  height: auto;
  margin-top: 6.4rem;
  border-radius: 0.4rem;
}
.p-ucDetail__content ul {
  margin-top: 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
.p-ucDetail__content li {
  position: relative;
  padding-left: 2.4rem;
  font-size: 1.6rem;
  line-height: 2;
}
.p-ucDetail__content li::before {
  content: "";
  position: absolute;
  top: 1rem;
  left: 0;
  width: 1.2rem;
  height: 1.2rem;
  background-color: #FFAF34;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M10.5059 1.49412C9.5146 0.502649 7.99859 0 6 0C4.00141 0 2.48541 0.502649 1.49414 1.49412C0.502659 2.48536 0 4.00134 0 5.99989C0 7.99844 0.502659 9.51442 1.49414 10.5059C2.48563 11.4974 4.00164 12 6 12C7.99836 12 9.5146 11.4974 10.5061 10.5059C11.4976 9.51442 12 7.99844 12 5.99989C12 4.00134 11.4971 2.48536 10.5059 1.49412Z' fill='%23000'/%3E%3C/svg%3E") no-repeat center/contain;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M10.5059 1.49412C9.5146 0.502649 7.99859 0 6 0C4.00141 0 2.48541 0.502649 1.49414 1.49412C0.502659 2.48536 0 4.00134 0 5.99989C0 7.99844 0.502659 9.51442 1.49414 10.5059C2.48563 11.4974 4.00164 12 6 12C7.99836 12 9.5146 11.4974 10.5061 10.5059C11.4976 9.51442 12 7.99844 12 5.99989C12 4.00134 11.4971 2.48536 10.5059 1.49412Z' fill='%23000'/%3E%3C/svg%3E") no-repeat center/contain;
}
.p-ucDetail__content .p-caseBox,
.p-ucDetail__content .wp-block-group.has-background {
  margin-top: 2.4rem;
  padding: 2.4rem;
  background-color: #FAF5E9;
  border-radius: 0.4rem;
}
.p-ucDetail__content .p-caseBox > :first-child,
.p-ucDetail__content .wp-block-group.has-background > :first-child {
  margin-top: 0;
}
.p-ucDetail__content .p-caseBox ul,
.p-ucDetail__content .wp-block-group.has-background ul {
  margin-top: 0;
  gap: 0.8rem;
}

.p-ucDetail__sideInner {
  position: sticky;
  top: 2.4rem;
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}
@media screen and (max-width: 768px) {
  .p-ucDetail__sideInner {
    position: static;
  }
}

.p-ucDetail__info {
  padding: 2.4rem;
  background-color: #FFFFFF;
  border: 0.1rem solid #000000;
  border-radius: 0.4rem;
}

.p-ucDetail__infoName {
  padding-bottom: 1.6rem;
  border-bottom: 0.1rem solid #000000;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.8;
  color: #1a1a1a;
}

.p-ucDetail__spec {
  margin-top: 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}

.p-ucDetail__specRow {
  display: flex;
  align-items: flex-start;
  gap: 1.6rem;
}
.p-ucDetail__specRow dt {
  flex-shrink: 0;
  width: 6.4rem;
  padding: 0.4rem 0.8rem;
  font-size: 1.2rem;
  line-height: 1.5;
  text-align: center;
  color: #FFFFFF;
  background-color: #000000;
  border-radius: 0.4rem;
}
.p-ucDetail__specRow dd {
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}

.p-ucDetail__cta {
  padding: 2.4rem 1.6rem;
  background-color: #FFBC57;
  background-image: url(../img/common/cta_bg_sm.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  border-radius: 0.8rem;
}

.p-ucDetail__ctaTtl {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.8;
  color: #1a1a1a;
  text-align: center;
}
.p-ucDetail__ctaTtl + .p-ucDetail__ctaBtn {
  margin-top: 0.8rem;
}
.p-ucDetail__ctaTtl:not(:first-child) {
  margin-top: 2.4rem;
}

.p-ucDetail__ctaBtn {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 5.6rem;
  padding: 0 2.4rem;
  font-size: 2rem;
  line-height: 1.8;
  text-align: center;
  border-radius: 0.4rem;
  transition: opacity 0.3s ease;
}
.p-ucDetail__ctaBtn:hover {
  opacity: 0.85;
}
.p-ucDetail__ctaBtn + .p-ucDetail__ctaBtn {
  margin-top: 2rem;
}

.p-ucDetail__ctaBtn--white {
  background-color: #FFFFFF;
  border: 0.1rem solid #000000;
}
.p-ucDetail__ctaBtn--white, .p-ucDetail__ctaBtn--white:hover, .p-ucDetail__ctaBtn--white:visited, .p-ucDetail__ctaBtn--white:link {
  color: #1a1a1a;
  text-decoration: none;
}

.p-ucDetail__ctaBtn--dark {
  background-color: #000000;
}
.p-ucDetail__ctaBtn--dark, .p-ucDetail__ctaBtn--dark:hover, .p-ucDetail__ctaBtn--dark:visited, .p-ucDetail__ctaBtn--dark:link {
  color: #FFFFFF;
  text-decoration: none;
}

.p-ucDetail__related {
  padding: 2.4rem;
  background-color: #FAF5E9;
  border-radius: 0.4rem;
}

.p-ucDetail__relatedTtl {
  padding-bottom: 1.6rem;
  border-bottom: 0.1rem solid #000000;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.8;
  color: #1a1a1a;
}

.p-ucDetail__relatedList li {
  border-bottom: 0.1rem solid #000000;
}
.p-ucDetail__relatedList li:last-child {
  border-bottom: none;
}
.p-ucDetail__relatedList a {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  padding: 1.6rem 0;
}
.p-ucDetail__relatedList a, .p-ucDetail__relatedList a:hover, .p-ucDetail__relatedList a:visited, .p-ucDetail__relatedList a:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-ucDetail__relatedList a:hover {
  opacity: 0.7;
}

.p-ucDetail__relatedTag {
  align-self: flex-start;
  padding: 0.4rem 0.8rem;
  font-size: 1.2rem;
  line-height: 1.5;
  background-color: #FFD699;
  border-radius: 0.4rem;
}

.p-ucDetail__relatedName {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
  font-size: 1.6rem;
  line-height: 2;
}
.p-ucDetail__relatedName svg {
  flex-shrink: 0;
  width: 1.4rem;
  height: 1.4rem;
}

.p-ucCard__ttl > span {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.p-ucCard__more {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1.2rem;
  margin-top: 1.6rem;
  font-size: 1.6rem;
  line-height: 2;
}
.p-ucCard__more svg {
  flex-shrink: 0;
  width: 2.4rem;
  height: 1.4rem;
}

.p-introArchive {
  background: url(../img/introduce/bg_01.svg) center top 13rem/contain no-repeat;
}

.p-introArchive__inner {
  width: 100%;
  max-width: 119.2rem;
  margin: 0 auto;
  padding: 0 2.4rem;
}

.p-introArchive__hero {
  padding: 8rem 0 0;
}
@media screen and (max-width: 568px) {
  .p-introArchive__hero {
    padding: 4rem 0 0;
  }
}

.p-introArchive__heroTtl {
  padding-bottom: 2.4rem;
  border-bottom: 0.1rem solid #000000;
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1.375;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-introArchive__heroTtl {
    font-size: 4.8rem;
  }
}
@media screen and (max-width: 568px) {
  .p-introArchive__heroTtl {
    font-size: 3.6rem;
  }
}

.p-introArchive__heroLead {
  margin-top: 4rem;
  font-size: 2rem;
  line-height: 1.8;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-introArchive__heroLead {
    margin-top: 2.4rem;
    font-size: 1.6rem;
  }
}

.p-introArchive__ctaBand {
  display: flex;
  justify-content: center;
  gap: 1.6rem;
  margin-top: 8rem;
  padding: 2.7rem 2.4rem;
  background-color: #FFBC57;
  background-image: url(../img/common/cta_bg.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  border-radius: 0.8rem;
}
@media screen and (max-width: 568px) {
  .p-introArchive__ctaBand {
    flex-direction: column;
    margin-top: 4rem;
  }
}

.p-introArchive__filter {
  padding: 8rem 0 0;
}
@media screen and (max-width: 568px) {
  .p-introArchive__filter {
    padding: 4rem 0 0;
  }
}

.p-introArchive__h2 {
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.5;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-introArchive__h2 {
    font-size: 2.4rem;
  }
}

.p-introArchive__lead {
  margin-top: 1.6rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}

.p-introFilter {
  display: flex;
  align-items: flex-start;
  gap: 1.6rem;
  margin-top: 4rem;
}
@media screen and (max-width: 568px) {
  .p-introFilter {
    flex-direction: column;
    gap: 1.2rem;
  }
}
.p-introFilter--industry {
  margin-top: 2.4rem;
}

.p-introFilter__label {
  flex-shrink: 0;
  min-width: 12rem;
  padding: 0.45rem 0;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.6363636364;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-introFilter__label {
    min-width: 0;
  }
}

.p-introFilter__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem 0.8rem;
}
.p-introFilter__chips a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 4.5rem;
  padding: 0 1.6rem;
  font-size: 1.6rem;
  line-height: 2;
  background-color: #FFFFFF;
  border: 0.1rem solid #FFD699;
  border-radius: 0.4rem;
  transition: opacity 0.2s ease;
}
.p-introFilter__chips a, .p-introFilter__chips a:hover, .p-introFilter__chips a:visited, .p-introFilter__chips a:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-introFilter__chips a:hover {
  opacity: 0.8;
}
.p-introFilter__chips a.is-active {
  background-color: #FFD699;
  border-color: #FFD699;
}

.p-introArchive__list {
  padding: 6.4rem 0 16rem;
}
@media screen and (max-width: 1000px) {
  .p-introArchive__list {
    padding-bottom: 10rem;
  }
}
@media screen and (max-width: 568px) {
  .p-introArchive__list {
    padding: 4rem 0 6.4rem;
  }
}

.p-introCard__grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 2.4rem;
}
@media screen and (max-width: 1000px) {
  .p-introCard__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media screen and (max-width: 768px) {
  .p-introCard__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media screen and (max-width: 568px) {
  .p-introCard__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.p-introCard {
  height: 100%;
  background-color: #FAF5E9;
  border-radius: 0.4rem;
}

.p-introCard__inner {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 2rem;
  color: #1a1a1a;
}

.p-introCard__logo {
  height: 10.8rem;
}
.p-introCard__logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: opacity 0.2s ease;
}

.p-introCard__noimg {
  display: block;
  width: 100%;
  height: 100%;
  background-color: #FFFFFF;
  border-radius: 0.2rem;
}

.p-introCard__body {
  display: flex;
  flex-direction: column;
  flex: 1;
  margin-top: 1.6rem;
}

.p-introCard__name {
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
  overflow-wrap: anywhere;
}

.p-introCard__meta {
  margin-top: auto;
  padding-top: 0.8rem;
}
.p-introCard__meta div {
  display: flex;
  gap: 0.8rem;
}
.p-introCard__meta div + div {
  margin-top: 0.8rem;
}
.p-introCard__meta dt, .p-introCard__meta dd {
  font-size: 1.2rem;
  line-height: 1.5;
  color: #1a1a1a;
}
.p-introCard__meta dt {
  flex-shrink: 0;
}

.p-introArchive__empty {
  padding: 4rem 0;
  text-align: center;
  color: #1a1a1a;
}

.p-newsArchive {
  background: url(../img/news/bg_01.svg) center top 13rem/contain no-repeat;
}

.p-newsArchive__inner {
  width: 100%;
  max-width: 119.2rem;
  margin: 0 auto;
  padding: 0 2.4rem;
}

.p-newsArchive__hero {
  padding: 8rem 0 0;
}
@media screen and (max-width: 568px) {
  .p-newsArchive__hero {
    padding: 4rem 0 0;
  }
}

.p-newsArchive__heroTtl {
  padding-bottom: 2.4rem;
  border-bottom: 0.1rem solid #000000;
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1.375;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-newsArchive__heroTtl {
    font-size: 4.8rem;
  }
}
@media screen and (max-width: 568px) {
  .p-newsArchive__heroTtl {
    font-size: 3.6rem;
  }
}

.p-newsArchive__heroLead {
  margin-top: 4rem;
  font-size: 2rem;
  line-height: 1.8;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-newsArchive__heroLead {
    margin-top: 2.4rem;
    font-size: 1.6rem;
  }
}

.p-newsArchive__list {
  padding: 8rem 0 16rem;
  background: url(../img/news/bg_02.svg) bottom 13.2rem right 8.4rem/25.9rem no-repeat;
}
@media screen and (max-width: 1000px) {
  .p-newsArchive__list {
    background-size: 36vw;
    background-position: bottom 3rem right 3rem;
  }
}
@media screen and (max-width: 568px) {
  .p-newsArchive__list {
    padding: 4rem 0 6.4rem;
  }
}

.p-newsTabs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.6rem;
  margin-bottom: 4.8rem;
}
.p-newsTabs a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 14.6rem;
  min-height: 4.5rem;
  padding: 0 0.8rem;
  font-size: 1.6rem;
  line-height: 2;
  text-align: center;
  background-color: #FFFFFF;
  border: 0.2rem solid #FFD699;
  border-radius: 0.4rem;
  transition: opacity 0.2s ease;
}
.p-newsTabs a, .p-newsTabs a:hover, .p-newsTabs a:visited, .p-newsTabs a:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-newsTabs a:hover {
  opacity: 0.8;
}
.p-newsTabs a.is-active {
  background-color: #FFD699;
}
@media screen and (max-width: 568px) {
  .p-newsTabs {
    gap: 1rem;
  }
  .p-newsTabs a {
    min-width: 0;
    flex: 1 1 40%;
  }
}

.p-newsList {
  border-top: 0.1rem solid #000000;
}

.p-newsList__item {
  border-bottom: 0.1rem solid #000000;
}

.p-newsList__link {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  padding: 3.2rem 4rem;
}
.p-newsList__link, .p-newsList__link:hover, .p-newsList__link:visited, .p-newsList__link:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-newsList__link:hover .p-newsList__ttlText {
  opacity: 0.6;
}
@media screen and (max-width: 568px) {
  .p-newsList__link {
    flex-wrap: wrap;
    gap: 0.8rem 1.6rem;
    padding: 2.4rem 0;
  }
}

.p-newsList__date {
  flex-shrink: 0;
  font-family: "Roboto", sans-serif;
  font-size: 1.8rem;
  line-height: 1;
  color: #1a1a1a;
}

.p-newsList__cat {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 14.6rem;
  min-height: 4.5rem;
  padding: 0 0.8rem;
  font-size: 1.6rem;
  line-height: 2;
  text-align: center;
  border-radius: 0.4rem;
  background-color: #FFD699;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-newsList__cat {
    min-width: 0;
    min-height: 3.4rem;
  }
}

.p-newsList__ttl {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
  flex: 1;
  min-width: 0;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-newsList__ttl {
    flex: 1 1 100%;
  }
}

.p-newsList__ttlText {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  transition: opacity 0.2s ease;
}

.p-newsList__arrow {
  flex-shrink: 0;
  width: 1.4rem;
  height: 1.4rem;
}

.p-newsArchive__empty {
  padding: 4rem 0;
  text-align: center;
  color: #1a1a1a;
}

.p-newsDetail {
  background: url(../img/news/bg_01.svg) center top 13rem/contain no-repeat;
}

.p-newsDetail__inner {
  width: 100%;
  max-width: 91.2rem;
  margin: 0 auto 16rem;
  padding: 0 2.4rem;
}

.p-newsDetail__article {
  background: url(../img/news/bg_02.svg) bottom 5rem right -7.6rem/25.9rem no-repeat;
  padding: 4rem 0 0;
}

.p-newsDetail__meta {
  display: flex;
  align-items: center;
  gap: 1.6rem;
}

.p-newsDetail__date {
  font-family: "Roboto", sans-serif;
  font-size: 1.6rem;
  line-height: 1;
  color: #1a1a1a;
}

.p-newsDetail__ttl {
  margin-top: 2.4rem;
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.5;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-newsDetail__ttl {
    font-size: 2.4rem;
  }
}

.p-newsDetail__content {
  margin-top: 3.2rem;
  color: #1a1a1a;
}
.p-newsDetail__content h2 {
  margin-top: 6.4rem;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.5833333333;
}
.p-newsDetail__content h2:first-child {
  margin-top: 0;
}
@media screen and (max-width: 568px) {
  .p-newsDetail__content h2 {
    font-size: 2rem;
  }
}
.p-newsDetail__content h3 {
  margin-top: 4rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.7;
}
.p-newsDetail__content p {
  margin-top: 1.6rem;
  font-size: 1.6rem;
  line-height: 2;
}
.p-newsDetail__content img {
  display: block;
  width: 100%;
  height: auto;
  margin-top: 3.2rem;
  border-radius: 0.4rem;
}
.p-newsDetail__content ul, .p-newsDetail__content ol {
  margin-top: 1.6rem;
  padding-left: 2rem;
  font-size: 1.6rem;
  line-height: 2;
}
.p-newsDetail__content ul {
  list-style: disc;
}
.p-newsDetail__content ol {
  list-style: decimal;
}
.p-newsDetail__content .p-caseBox,
.p-newsDetail__content blockquote,
.p-newsDetail__content .wp-block-group.has-background,
.p-newsDetail__content .wp-block-quote {
  margin-top: 3.2rem;
  padding: 3.2rem;
  background-color: #FAF5E9;
  border-radius: 0.4rem;
}
.p-newsDetail__content .p-caseBox > :first-child,
.p-newsDetail__content blockquote > :first-child,
.p-newsDetail__content .wp-block-group.has-background > :first-child,
.p-newsDetail__content .wp-block-quote > :first-child {
  margin-top: 0;
}
.p-newsDetail__content .p-caseBox p,
.p-newsDetail__content blockquote p,
.p-newsDetail__content .wp-block-group.has-background p,
.p-newsDetail__content .wp-block-quote p {
  margin-top: 1.6rem;
}
.p-newsDetail__content .p-caseBox p:first-child,
.p-newsDetail__content blockquote p:first-child,
.p-newsDetail__content .wp-block-group.has-background p:first-child,
.p-newsDetail__content .wp-block-quote p:first-child {
  margin-top: 0;
}
.p-newsDetail__content hr {
  margin: 6.4rem 0 0;
  border: 0;
  border-top: 0.1rem solid rgba(0, 0, 0, 0.1);
}
.p-newsDetail__content .is-note,
.p-newsDetail__content .p-newsDetail__note {
  margin-top: 6.4rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #B3B3B3;
}

.p-newsList__cat--sm {
  min-width: 12rem;
  min-height: 3.2rem;
  font-size: 1.2rem;
  line-height: 2.3333333333;
}

.p-newsDetail__nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 2.4rem;
  margin-top: 6.4rem;
}
@media screen and (max-width: 568px) {
  .p-newsDetail__nav {
    flex-direction: column;
    align-items: center;
    gap: 1.6rem;
  }
}

.p-newsDetail__navArchive {
  position: relative;
  justify-content: center;
  padding-inline: 4.8rem;
}
.p-newsDetail__navArchive svg {
  position: absolute;
  top: 50%;
  left: 2.4rem;
  transform: translateY(-50%);
}

.p-newsDetail__related {
  margin-top: 16rem;
  padding: 16rem 0 21.6rem;
  background-color: #FAF5E9;
}
@media screen and (max-width: 568px) {
  .p-newsDetail__related {
    margin-top: 4rem;
    padding: 6.4rem 0 9.6rem;
  }
}

.p-newsDetail__relInner {
  width: 100%;
  max-width: 119.2rem;
  margin: 0 auto;
  padding: 0 2.4rem;
}

.p-newsDetail__relTtl {
  margin-bottom: 4rem;
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.5;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-newsDetail__relTtl {
    font-size: 2.4rem;
  }
}

.p-faq__inner {
  width: 100%;
  max-width: 119.2rem;
  margin: 0 auto;
  padding: 0 2.4rem;
}

.p-faq__hero {
  padding: 8rem 0 0;
}
@media screen and (max-width: 568px) {
  .p-faq__hero {
    padding: 4rem 0 0;
  }
}

.p-faq__heroTtl {
  padding-bottom: 2.4rem;
  border-bottom: 0.1rem solid #000000;
  font-family: "Shippori Mincho", "游明朝", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN", serif;
  font-size: 6.4rem;
  font-weight: 400;
  line-height: 1.375;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-faq__heroTtl {
    font-size: 4.8rem;
  }
}
@media screen and (max-width: 568px) {
  .p-faq__heroTtl {
    font-size: 3.6rem;
  }
}

.p-faq__heroLead {
  margin-top: 4rem;
  font-size: 2rem;
  line-height: 1.8;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-faq__heroLead {
    margin-top: 2.4rem;
    font-size: 1.6rem;
  }
}

.p-faq__body {
  padding: 8rem 0 0;
}
@media screen and (max-width: 568px) {
  .p-faq__body {
    padding: 4rem 0 0;
  }
}

.p-faq__tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 2.4rem;
  margin-bottom: 6.4rem;
}
.p-faq__tabs li {
  flex: 1 1 0;
  min-width: 0;
}
@media screen and (max-width: 768px) {
  .p-faq__tabs {
    gap: 1.2rem;
  }
  .p-faq__tabs li {
    flex: 1 1 30%;
  }
}
@media screen and (max-width: 568px) {
  .p-faq__tabs li {
    flex: 1 1 45%;
  }
}

.p-faq__tab {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.8rem;
  min-height: 6.4rem;
  padding: 0 2.4rem;
  font-size: 1.6rem;
  line-height: 2;
  background-color: #ffaf34;
  border-radius: 0.4rem;
  transition: opacity 0.2s ease;
}
.p-faq__tab, .p-faq__tab:hover, .p-faq__tab:visited, .p-faq__tab:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-faq__tab:hover {
  opacity: 0.85;
}
.p-faq__tab svg {
  flex-shrink: 0;
  width: 1rem;
  height: 0.7rem;
}

.p-faq__section {
  scroll-margin-top: 10rem;
}
.p-faq__section + .p-faq__section {
  margin-top: 8rem;
}

.p-faq__catTtl {
  margin-bottom: 4rem;
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.5;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-faq__catTtl {
    font-size: 2.4rem;
  }
}

.p-column__inner {
  width: 95%;
  max-width: 119.2rem;
  margin: 0 auto;
}

.p-column__hero {
  padding: 8rem 0 0;
}
@media screen and (max-width: 568px) {
  .p-column__hero {
    padding: 4rem 0 0;
  }
}

.p-column__heroTtl {
  padding-bottom: 2.4rem;
  border-bottom: 0.1rem solid #000000;
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1.375;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-column__heroTtl {
    font-size: 4.8rem;
  }
}
@media screen and (max-width: 568px) {
  .p-column__heroTtl {
    font-size: 3.6rem;
  }
}

.p-column__heroLead {
  margin-top: 4rem;
  font-size: 2rem;
  line-height: 1.8;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-column__heroLead {
    margin-top: 2.4rem;
    font-size: 1.6rem;
  }
}

.p-colLayout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 39.2rem;
  gap: 8rem;
  align-items: start;
  padding-top: 8rem;
  padding-bottom: 16rem;
}
@media screen and (max-width: 1000px) {
  .p-colLayout {
    gap: 4.8rem;
  }
}
@media screen and (max-width: 768px) {
  .p-colLayout {
    grid-template-columns: minmax(0, 1fr);
    gap: 6.4rem;
    padding-top: 4rem;
    padding-bottom: 5.6rem;
  }
}

.p-colMain__ttl {
  margin-bottom: 4rem;
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.5;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-colMain__ttl {
    font-size: 2.4rem;
  }
}

.p-colPickupSec {
  background-color: #fff;
  margin-bottom: 8rem;
}

.p-colPickup + .p-colPickup {
  margin-top: 8rem;
}
@media screen and (max-width: 568px) {
  .p-colPickup + .p-colPickup {
    margin-top: 4rem;
  }
}

.p-colCat {
  padding: 0.4rem 0.8rem;
  font-size: 1.2rem;
  line-height: 1.5;
  background-color: #ffd699;
  border-radius: 0.4rem;
  color: #1a1a1a;
}

.p-colDate {
  font-size: 1.2rem;
  line-height: 1.5;
  color: #808080;
}

.p-colPickup {
  display: block;
  background-color: #ffffff;
  border-radius: 0.4rem;
  overflow: hidden;
  border-radius: 0.4rem;
  border: 1px solid #e5e5e5;
}
.p-colPickup, .p-colPickup:hover, .p-colPickup:visited, .p-colPickup:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-colPickup:hover .p-colPickup__img {
  transform: scale(1.04);
}

.p-colPickup__thumb {
  aspect-ratio: 720/406;
  overflow: hidden;
  background-color: #c0c0c0;
}
.p-colPickup__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.p-colPickup__noimg {
  display: block;
  width: 100%;
  height: 100%;
  background-color: #c0c0c0;
}

.p-colPickup__body {
  padding: 2.4rem;
}

.p-colPickup__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
}

.p-colPickup__ttl {
  margin-top: 1.6rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.8;
  color: #1a1a1a;
}

.p-colPickup__excerpt {
  margin-top: 0.8rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.p-colRows {
  display: flex;
  flex-direction: column;
}

.p-colRow {
  border-bottom: 0.1rem solid #000;
}
.p-colRow:first-child .p-colRow__link {
  padding-top: 0;
}

.p-colRow__link {
  display: flex;
  gap: 1.6rem;
  padding: 2.4rem 0;
}
.p-colRow__link, .p-colRow__link:hover, .p-colRow__link:visited, .p-colRow__link:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-colRow__link:hover .p-colRow__ttl {
  opacity: 0.6;
}

.p-colRow__thumb {
  flex-shrink: 0;
  width: 17.4rem;
  aspect-ratio: 174/98;
  overflow: hidden;
  background-color: #c0c0c0;
  border-radius: 0.4rem;
}
.p-colRow__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 568px) {
  .p-colRow__thumb {
    width: 12rem;
  }
}

.p-colRow__noimg {
  display: block;
  width: 100%;
  height: 100%;
  background-color: #c0c0c0;
}

.p-colRow__body {
  flex: 1;
  min-width: 0;
}

.p-colRow__meta {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  justify-content: space-between;
}

.p-colRow__ttl {
  margin-top: 0.8rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2.25;
  color: #1a1a1a;
  transition: opacity 0.2s ease;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.p-colRow__excerpt {
  margin-top: 0.4rem;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #1a1a1a;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.p-colMain__empty {
  padding: 4rem 0;
  color: #1a1a1a;
}

.p-colSide {
  display: flex;
  flex-direction: column;
  gap: 4rem;
}

.p-colSearch {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  height: 5.6rem;
  padding: 0 2.4rem;
  background-color: #ffffff;
  border: 0.1rem solid rgba(0, 0, 0, 0.15);
  border-radius: 0.4rem;
}

.p-colSearch__icon {
  flex-shrink: 0;
  width: 2.4rem;
  height: 2.4rem;
  background-color: #808080;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='7' fill='none' stroke='%23000' stroke-width='2'/%3E%3Cpath d='M16 16l5 5' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center/contain;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='7' fill='none' stroke='%23000' stroke-width='2'/%3E%3Cpath d='M16 16l5 5' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center/contain;
}

.p-colSearch__input {
  flex: 1;
  min-width: 0;
  border: 0;
  background: transparent;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}
.p-colSearch__input::placeholder {
  color: #b3b3b3;
}
.p-colSearch__input:focus {
  outline: none;
}

.p-colSide__ttl {
  padding-bottom: 1.6rem;
  border-bottom: 0.1rem solid #000000;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.8;
  color: #1a1a1a;
}

.p-colCatList {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  margin-top: 2.4rem;
}
.p-colCatList a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
  min-height: 6.4rem;
  padding: 0 2.4rem;
  font-size: 1.6rem;
  line-height: 2;
  background-color: #faf5e9;
  border-radius: 0.4rem;
  transition: opacity 0.2s ease;
}
.p-colCatList a, .p-colCatList a:hover, .p-colCatList a:visited, .p-colCatList a:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-colCatList a:hover {
  opacity: 0.8;
}
.p-colCatList svg {
  flex-shrink: 0;
  width: 1.4rem;
  height: 1.4rem;
}

.p-colTags {
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem;
  margin-top: 2.4rem;
}
.p-colTags a {
  display: inline-flex;
  align-items: center;
  padding: 0.4rem 1.6rem;
  min-height: 3.6rem;
  font-size: 1.6rem;
  line-height: 2.25;
  background-color: #ffffff;
  border: 0.1rem solid #ffaf34;
  border-radius: 4rem;
  transition: opacity 0.2s ease;
}
.p-colTags a, .p-colTags a:hover, .p-colTags a:visited, .p-colTags a:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-colTags a:hover {
  opacity: 0.8;
}

.p-colBanner {
  padding: 2.4rem;
  text-align: center;
  background-color: #ffbc57;
  background-image: url(../img/common/cta_bg_sm.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  border-radius: 0.8rem;
}

.p-colBanner__ttl {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.8;
  color: #1a1a1a;
}

.p-colBanner__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 1.6rem;
  min-height: 5.6rem;
  padding: 0 2.4rem;
  font-size: 2rem;
  line-height: 1.8;
  background-color: #000000;
  border: 0.1rem solid #000000;
  border-radius: 0.4rem;
  transition: opacity 0.3s ease;
}
.p-colBanner__btn, .p-colBanner__btn:hover, .p-colBanner__btn:visited, .p-colBanner__btn:link {
  color: #FFFFFF;
  text-decoration: none;
}
.p-colBanner__btn:hover {
  opacity: 0.85;
}

.p-colArticle__head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.6rem;
}

.p-colCat--lg {
  padding: 0.2rem 1.2rem;
  line-height: 2.3333333333;
}

.p-colArticle__ttl {
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.5;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-colArticle__ttl {
    font-size: 2.4rem;
  }
}

.p-colArticle__meta {
  display: flex;
  align-items: center;
  gap: 1.6rem;
}
@media screen and (max-width: 568px) {
  .p-colArticle__meta {
    flex-wrap: wrap;
    gap: 0.8rem 1.6rem;
  }
}

.p-colArticle__date {
  font-size: 1.6rem;
  line-height: 2.25;
  color: #808080;
}

.p-colArticle__thumb {
  margin-top: 4rem;
  aspect-ratio: 720/377;
  overflow: hidden;
  border-radius: 0.4rem;
  background-color: #c0c0c0;
}
.p-colArticle__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-colToc {
  margin-top: 6.4rem;
  padding: 2.4rem;
  background-color: #faf5e9;
  border-radius: 0.4rem;
}

.p-colToc__ttl {
  padding-bottom: 1.6rem;
  border-bottom: 0.1rem solid rgba(0, 0, 0, 0.15);
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.8;
  color: #1a1a1a;
}

.p-colToc__list {
  margin-top: 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
.p-colToc__list a {
  position: relative;
  display: block;
  padding-left: 2rem;
  font-size: 1.6rem;
  line-height: 2;
}
.p-colToc__list a, .p-colToc__list a:hover, .p-colToc__list a:visited, .p-colToc__list a:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-colToc__list a:hover {
  opacity: 0.6;
}
.p-colToc__list a::before {
  content: "";
  position: absolute;
  top: 1rem;
  left: 0;
  width: 1.2rem;
  height: 1.2rem;
  background-color: #ffaf34;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M10.5059 1.49412C9.5146 0.502649 7.99859 0 6 0C4.00141 0 2.48541 0.502649 1.49414 1.49412C0.502659 2.48536 0 4.00134 0 5.99989C0 7.99844 0.502659 9.51442 1.49414 10.5059C2.48563 11.4974 4.00164 12 6 12C7.99836 12 9.5146 11.4974 10.5061 10.5059C11.4976 9.51442 12 7.99844 12 5.99989C12 4.00134 11.4971 2.48536 10.5059 1.49412Z' fill='%23000'/%3E%3C/svg%3E") no-repeat center/contain;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M10.5059 1.49412C9.5146 0.502649 7.99859 0 6 0C4.00141 0 2.48541 0.502649 1.49414 1.49412C0.502659 2.48536 0 4.00134 0 5.99989C0 7.99844 0.502659 9.51442 1.49414 10.5059C2.48563 11.4974 4.00164 12 6 12C7.99836 12 9.5146 11.4974 10.5061 10.5059C11.4976 9.51442 12 7.99844 12 5.99989C12 4.00134 11.4971 2.48536 10.5059 1.49412Z' fill='%23000'/%3E%3C/svg%3E") no-repeat center/contain;
}

.p-colArticle__content {
  margin-top: 6.4rem;
  color: #1a1a1a;
}
.p-colArticle__content a {
  color: #ffaf34;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.p-colArticle__content h2 {
  margin-top: 6.4rem;
  scroll-margin-top: 10rem;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.5833333333;
}
.p-colArticle__content h2:first-child {
  margin-top: 0;
}
@media screen and (max-width: 568px) {
  .p-colArticle__content h2 {
    font-size: 2rem;
  }
}
.p-colArticle__content h3 {
  margin-top: 1.6rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.7;
}
.p-colArticle__content p {
  margin-top: 0.8rem;
  font-size: 1.6rem;
  line-height: 2;
}
.p-colArticle__content img {
  display: block;
  width: 100%;
  height: auto;
  margin-top: 3.2rem;
  border-radius: 0.4rem;
}
.p-colArticle__content ul,
.p-colArticle__content ol {
  margin-top: 1.6rem;
  padding-left: 2rem;
  font-size: 1.6rem;
  line-height: 2;
}
.p-colArticle__content ul {
  list-style: disc;
}
.p-colArticle__content ol {
  list-style: decimal;
}
.p-colArticle__content .p-caseBox,
.p-colArticle__content blockquote,
.p-colArticle__content .wp-block-group.has-background,
.p-colArticle__content .wp-block-quote {
  margin-top: 3.2rem;
  padding: 3.2rem;
  background-color: #faf5e9;
  border-radius: 0.4rem;
}
.p-colArticle__content .p-caseBox > :first-child,
.p-colArticle__content blockquote > :first-child,
.p-colArticle__content .wp-block-group.has-background > :first-child,
.p-colArticle__content .wp-block-quote > :first-child {
  margin-top: 0;
}

.p-colRelated {
  margin-top: 8rem;
  padding: 16rem 0;
  background-color: #faf5e9;
}
@media screen and (max-width: 568px) {
  .p-colRelated {
    margin-top: 4rem;
    padding: 4rem 0;
  }
}

.p-colRelated__ttl {
  padding-bottom: 2.4rem;
  margin-bottom: 8rem;
  border-bottom: 0.1rem solid #000000;
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.5;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-colRelated__ttl {
    font-size: 2.4rem;
  }
}

.p-colRel__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 3.2rem;
}
@media screen and (max-width: 768px) {
  .p-colRel__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media screen and (max-width: 568px) {
  .p-colRel__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.p-colRel {
  background-color: #ffffff;
  border-radius: 0.4rem;
  overflow: hidden;
}

.p-colRel__link {
  display: block;
}
.p-colRel__link, .p-colRel__link:hover, .p-colRel__link:visited, .p-colRel__link:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-colRel__link:hover .p-colRel__img {
  transform: scale(1.04);
}

.p-colRel__thumb {
  aspect-ratio: 376/211;
  overflow: hidden;
  background-color: #c0c0c0;
}
.p-colRel__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.p-colRel__noimg {
  display: block;
  width: 100%;
  height: 100%;
  background-color: #c0c0c0;
}

.p-colRel__body {
  padding: 1.6rem;
}

.p-colRel__meta {
  display: flex;
  align-items: center;
  gap: 1.2rem;
}

.p-colRel__ttl {
  margin-top: 1.2rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2;
  color: #1a1a1a;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.p-colSummary,
.p-colConclusion,
.p-colSupervisor {
  margin-top: 6.4rem;
  padding: 2.4rem;
  background-color: #FAF5E9;
  border-radius: 0.4rem;
}

.p-colSummary {
  margin-top: 4rem;
}
.p-colSummary__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
  padding-bottom: 1.6rem;
  border-bottom: 0.1rem solid rgba(0, 0, 0, 0.15);
  cursor: pointer;
  list-style: none;
}
.p-colSummary__head::-webkit-details-marker {
  display: none;
}
.p-colSummary__ttl {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.8;
  color: #1a1a1a;
}
.p-colSummary__mark {
  position: relative;
  flex-shrink: 0;
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 50%;
  background-color: #000000;
}
.p-colSummary__mark::before, .p-colSummary__mark::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1.6rem;
  height: 0.1rem;
  background-color: #FFFFFF;
  transform: translate(-50%, -50%);
  transition: transform 0.2s ease;
}
.p-colSummary__mark::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.p-colSummary[open] .p-colSummary__mark::after {
  transform: translate(-50%, -50%) rotate(0deg);
}
.p-colSummary__body {
  margin-top: 1.6rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}
.p-colSummary__body p + p {
  margin-top: 3.2rem;
}
.p-colSummary__body a {
  text-decoration: underline;
}

.p-colConclusion__ttl {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.8;
  color: #1a1a1a;
}
.p-colConclusion__body {
  margin-top: 0.8rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}
.p-colConclusion__body p + p {
  margin-top: 0.8rem;
}
.p-colConclusion__body a {
  text-decoration: underline;
}

.p-colSupervisor {
  margin-top: 4rem;
}
.p-colSupervisor__label {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.8;
  color: #1a1a1a;
}
.p-colSupervisor__name {
  margin-top: 0.8rem;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.6;
  color: #1a1a1a;
}
.p-colSupervisor__body {
  margin-top: 0.8rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}
.p-colSupervisor__body p + p {
  margin-top: 0.8rem;
}
.p-colSupervisor__body a {
  text-decoration: underline;
}

.p-relDocCta, .p-dlCta {
  border-radius: 0.8rem;
  background-color: #FFBC57;
  background-image: radial-gradient(60% 70% at 30% 12%, rgba(255, 214, 153, 0.9) 0%, rgba(255, 214, 153, 0) 70%), radial-gradient(55% 60% at 60% 100%, rgba(255, 214, 153, 0.9) 0%, rgba(255, 214, 153, 0) 70%), radial-gradient(50% 50% at 88% 45%, rgba(255, 214, 153, 0.55) 0%, rgba(255, 214, 153, 0) 70%);
}

.p-relDocCta__btn, .p-dlCta__btn {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
  width: 34.2rem;
  max-width: 100%;
  min-height: 8rem;
  padding: 0.4rem 2.4rem;
  border-radius: 0.4rem;
  background-color: #000000;
  font-size: 2rem;
  line-height: 1.8;
  transition: opacity 0.2s ease;
}
.p-relDocCta__btn, .p-dlCta__btn {
  color: #FFFFFF;
  text-decoration: none;
}
.p-relDocCta__btn:hover, .p-dlCta__btn:hover {
  opacity: 0.8;
}

.p-dlCta__btnArrow,
.p-relDocCta__btnArrow {
  flex-shrink: 0;
  width: 2.4rem;
  height: 1.4rem;
  background-color: currentColor;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 14'%3E%3Cpath d='M0 7h22.5M16 1l6.5 6-6.5 6' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='square'/%3E%3C/svg%3E") no-repeat center/contain;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 14'%3E%3Cpath d='M0 7h22.5M16 1l6.5 6-6.5 6' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='square'/%3E%3C/svg%3E") no-repeat center/contain;
}

.p-dlCta {
  margin-block: 6.4rem;
  padding: 4rem 2.6rem;
  color: #1a1a1a;
}
.p-dlCta__ttl {
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1.5833333333;
}
.p-dlCta__lead {
  margin-top: 1.8rem;
  font-size: 1.6rem;
  line-height: 2;
}
.p-dlCta__list {
  margin-top: 0.1rem;
  list-style: none;
}
.p-dlCta__list li {
  position: relative;
  padding-left: 2rem;
  font-size: 1.6rem;
  line-height: 2;
}
.p-dlCta__list li::before {
  content: "";
  position: absolute;
  top: 1rem;
  left: 0;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 35%;
  background-color: #FFFFFF;
}
.p-dlCta__list a {
  text-decoration: underline;
}
.p-dlCta__text {
  margin-top: 1.8rem;
  font-size: 1.6rem;
  line-height: 2;
}
.p-dlCta__text a {
  text-decoration: underline;
}
.p-dlCta__btnWrap {
  margin-top: 3.2rem;
  text-align: center;
}
@media screen and (max-width: 568px) {
  .p-dlCta {
    padding: 2.4rem 1.6rem;
  }
  .p-dlCta__ttl {
    font-size: 2rem;
  }
}

.p-relDocCta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2.4rem;
  margin-block: 6.4rem;
  padding: 2.8rem 3.1rem 2.7rem 4.6rem;
  color: #1a1a1a;
}
.p-relDocCta__label {
  display: block;
  font-size: 1.6rem;
  line-height: 2;
}
.p-relDocCta__ttl {
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.5833333333;
}
.p-relDocCta__btnWrap {
  flex-shrink: 0;
}
@media screen and (max-width: 1000px) {
  .p-relDocCta {
    flex-direction: column;
    align-items: stretch;
    padding: 2.4rem;
  }
  .p-relDocCta__btn {
    width: 100%;
  }
}

.p-dlCta .p-dlCta__list {
  padding-left: 0;
  list-style: none;
}

.p-dlCta .p-dlCta__ttl,
.p-relDocCta .p-relDocCta__ttl,
.p-relDocCta .p-relDocCta__label {
  margin-top: 0;
}

.p-dlCta .p-dlCta__ttl {
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1.5833333333;
}

.p-relDocCta .p-relDocCta__ttl {
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.5833333333;
}

.p-dlCta .p-dlCta__lead {
  margin-top: 1.8rem;
}

.p-dlCta .p-dlCta__list {
  margin-top: 0.1rem;
}

.p-dlCta .p-dlCta__text {
  margin-top: 1.8rem;
}

.p-dlCta .p-dlCta__btnWrap {
  margin-top: 3.2rem;
}

.p-dlCta .p-dlCta__list li {
  list-style: none;
}

.p-dlCta .p-dlCta__btn,
.p-relDocCta .p-relDocCta__btn {
  color: #FFFFFF;
}
.p-dlCta .p-dlCta__btn:link, .p-dlCta .p-dlCta__btn:visited, .p-dlCta .p-dlCta__btn:hover, .p-dlCta .p-dlCta__btn:active,
.p-relDocCta .p-relDocCta__btn:link,
.p-relDocCta .p-relDocCta__btn:visited,
.p-relDocCta .p-relDocCta__btn:hover,
.p-relDocCta .p-relDocCta__btn:active {
  color: #FFFFFF;
  text-decoration: none;
}

.p-dlCta--editor,
.p-relDocCta--editor {
  color: #1a1a1a;
}

.p-column .l-page__main {
  background: url("../img/column/sec2_bg01.svg") calc(50% - 70.35rem) 13rem/12.8rem 160rem repeat-y, url("../img/column/bg_repeat.svg") center 13rem/min(100%, 133.5rem) auto repeat-y;
}
@media screen and (max-width: 768px) {
  .p-column .l-page__main {
    background: none;
  }
}

.p-seminar {
  background: url(../img/seminar/bg_01.svg) center top 13rem/contain no-repeat;
}

.p-seminar__inner {
  width: 95%;
  max-width: 138.4rem;
  margin: 0 auto;
}

.p-seminar__hero {
  padding: 8rem 0 0;
}
@media screen and (max-width: 568px) {
  .p-seminar__hero {
    padding: 4rem 0 0;
  }
}

.p-seminar__heroTtl {
  padding-bottom: 2.4rem;
  border-bottom: 0.1rem solid #000000;
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1.6666666667;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-seminar__heroTtl {
    font-size: 4rem;
  }
}
@media screen and (max-width: 568px) {
  .p-seminar__heroTtl {
    font-size: 3.2rem;
  }
}

.p-seminar__heroLead {
  margin-top: 4rem;
  font-size: 2rem;
  line-height: 1.8;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-seminar__heroLead {
    margin-top: 2.4rem;
    font-size: 1.6rem;
  }
}

.p-seminar__h2 {
  margin-bottom: 4rem;
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.5;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-seminar__h2 {
    font-size: 2.4rem;
  }
}

.p-seminar__pickup {
  padding: 8.8rem 0 0;
}
@media screen and (max-width: 568px) {
  .p-seminar__pickup {
    padding: 4rem 0 0;
  }
}

.p-seminar__archive {
  margin-top: 16rem;
  padding: 16rem 0 16rem;
  background-color: #FAF5E9;
}
@media screen and (max-width: 1000px) {
  .p-seminar__archive {
    padding-bottom: 10rem;
  }
}
@media screen and (max-width: 568px) {
  .p-seminar__archive {
    margin-top: 4rem;
    padding: 4rem 0 6.4rem;
  }
}

.p-seminar__hero + .p-seminar__archive {
  margin-top: 8.8rem;
}

.p-seminar__filter {
  display: flex;
  align-items: flex-start;
  gap: 1.6rem;
  margin-bottom: 4rem;
}
@media screen and (max-width: 568px) {
  .p-seminar__filter {
    flex-direction: column;
    gap: 1.2rem;
  }
}

.p-seminar__filterLabel {
  flex-shrink: 0;
  min-width: 13.2rem;
  padding: 0.45rem 0;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.6363636364;
  color: #1a1a1a;
}

.p-seminar__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}
.p-seminar__chips a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 4.5rem;
  padding: 0 1.6rem;
  font-size: 1.6rem;
  line-height: 2;
  background-color: #FFFFFF;
  border: 0.1rem solid #FFD699;
  border-radius: 0.4rem;
  transition: opacity 0.2s ease;
}
.p-seminar__chips a, .p-seminar__chips a:hover, .p-seminar__chips a:visited, .p-seminar__chips a:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-seminar__chips a:hover {
  opacity: 0.8;
}
.p-seminar__chips a.is-active {
  background-color: #FFD699;
}

.p-seminar__empty {
  padding: 4rem 0;
  text-align: center;
  color: #1a1a1a;
}

.p-semCard__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .p-semCard__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media screen and (max-width: 568px) {
  .p-semCard__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 3.2rem;
  }
}

.p-semCard__link {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.p-semCard__link, .p-semCard__link:hover, .p-semCard__link:visited, .p-semCard__link:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-semCard__link:hover .p-semCard__img {
  transform: scale(1.04);
}

.p-semCard__thumb {
  aspect-ratio: 434/228;
  overflow: hidden;
  background-color: #666666;
  border-radius: 0.4rem;
}
.p-semCard__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.p-semCard__noimg {
  display: block;
  width: 100%;
  height: 100%;
  background-color: #666666;
}

.p-semCard__body {
  display: flex;
  flex-direction: column;
  flex: 1;
  margin-top: 1.6rem;
}

.p-semCard__meta {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}

.p-semCard__status {
  flex-shrink: 0;
  padding: 0.4rem 0.8rem;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.5;
  color: #FFFFFF;
  border-radius: 0.4rem;
}
.p-semCard__status.is-open {
  background-color: #FF5A5E;
}
.p-semCard__status.is-archive {
  background-color: #000000;
}

.p-semCard__date {
  font-size: 1.2rem;
  line-height: 1.5;
}

.p-semCard__ttl {
  margin-top: 0.8rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.p-semCard__excerpt {
  margin-top: 0.8rem;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #1a1a1a;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 1.6rem;
}

.p-semCard__divider {
  display: block;
  margin-top: auto;
  border-top: 1px solid #000;
}

.p-semCard__themes {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  margin-top: 1.6rem;
}
.p-semCard__themes li {
  padding: 0.4rem 0.8rem;
  font-size: 1.2rem;
  line-height: 1.5;
  background-color: #FFD699;
  border-radius: 0.4rem;
  color: #1a1a1a;
}

.p-semDetail {
  background: url(../img/seminar/bg_02.svg) center top 13rem/contain no-repeat;
}

.p-semDetail__inner {
  width: 100%;
  max-width: 119.2rem;
  margin: 0 auto;
  padding: 0 2.4rem;
}

.p-semDetail__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 47.2rem;
  gap: 8rem;
  align-items: start;
  padding-top: 4rem;
}
@media screen and (max-width: 1000px) {
  .p-semDetail__layout {
    gap: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-semDetail__layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 4.8rem;
  }
}

.p-semDetail__head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.6rem;
}

.p-semDetail__ttl {
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.5;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-semDetail__ttl {
    font-size: 2.4rem;
  }
}

.p-semDetail__info {
  margin-top: 3.2rem;
  border: 0.1rem solid rgba(0, 0, 0, 0.08);
  border-radius: 0.4rem;
  overflow: hidden;
}

.p-semDetail__infoRow {
  display: grid;
  grid-template-columns: 10rem 1fr;
}
.p-semDetail__infoRow + .p-semDetail__infoRow {
  border-top: 0.1rem solid rgba(0, 0, 0, 0.08);
}
.p-semDetail__infoRow dt {
  display: flex;
  align-items: center;
  padding: 0.4rem 1.6rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2;
  background-color: #FAF5E9;
  color: #1a1a1a;
  justify-content: center;
}
.p-semDetail__infoRow dd {
  display: flex;
  align-items: center;
  padding: 0.4rem 1.6rem;
  min-height: 4rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}

.p-semDetail__thumb {
  width: 100%;
  margin-top: 4rem;
  aspect-ratio: 640/336;
  overflow: hidden;
  background-color: #666666;
  border-radius: 0.4rem;
}
.p-semDetail__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-semDetail__applySp {
  display: none;
  align-items: center;
  justify-content: center;
  margin-top: 2.4rem;
  min-height: 5.6rem;
  padding: 0 2.4rem;
  font-size: 2rem;
  line-height: 1.8;
  text-align: center;
  background-color: #000000;
  border-radius: 0.4rem;
  transition: opacity 0.3s ease;
}
.p-semDetail__applySp, .p-semDetail__applySp:hover, .p-semDetail__applySp:visited, .p-semDetail__applySp:link {
  color: #FFFFFF;
  text-decoration: none;
}
.p-semDetail__applySp:hover {
  opacity: 0.85;
}
@media screen and (max-width: 768px) {
  .p-semDetail__applySp {
    display: flex;
  }
}

.p-semDetail__sec {
  margin-top: 4rem;
}

.p-semDetail__secTtl {
  margin-bottom: 1.6rem;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.5833333333;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-semDetail__secTtl {
    font-size: 2rem;
  }
}

.p-semDetail__recommend ul {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.p-semDetail__recommend li {
  position: relative;
  padding-left: 2rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}
.p-semDetail__recommend li::before {
  content: "";
  position: absolute;
  top: 1rem;
  left: 0;
  width: 1.2rem;
  height: 1.2rem;
  background-color: #FFAF34;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M10.5059 1.49412C9.5146 0.502649 7.99859 0 6 0C4.00141 0 2.48541 0.502649 1.49414 1.49412C0.502659 2.48536 0 4.00134 0 5.99989C0 7.99844 0.502659 9.51442 1.49414 10.5059C2.48563 11.4974 4.00164 12 6 12C7.99836 12 9.5146 11.4974 10.5061 10.5059C11.4976 9.51442 12 7.99844 12 5.99989C12 4.00134 11.4971 2.48536 10.5059 1.49412Z' fill='%23000'/%3E%3C/svg%3E") no-repeat center/contain;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M10.5059 1.49412C9.5146 0.502649 7.99859 0 6 0C4.00141 0 2.48541 0.502649 1.49414 1.49412C0.502659 2.48536 0 4.00134 0 5.99989C0 7.99844 0.502659 9.51442 1.49414 10.5059C2.48563 11.4974 4.00164 12 6 12C7.99836 12 9.5146 11.4974 10.5061 10.5059C11.4976 9.51442 12 7.99844 12 5.99989C12 4.00134 11.4971 2.48536 10.5059 1.49412Z' fill='%23000'/%3E%3C/svg%3E") no-repeat center/contain;
}

.p-semDetail__content,
.p-semDetail__flow {
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}
.p-semDetail__content p + p,
.p-semDetail__flow p + p {
  margin-top: 1.6rem;
}

.p-semDetail__content {
  color: #000000;
  overflow-wrap: anywhere;
}
.p-semDetail__content > * + * {
  margin-top: 1.6rem;
}
.p-semDetail__content h2,
.p-semDetail__content h3 {
  margin-top: 4rem;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.5833333333;
}
@media screen and (max-width: 568px) {
  .p-semDetail__content h2,
  .p-semDetail__content h3 {
    font-size: 2rem;
  }
}
.p-semDetail__content > :first-child {
  margin-top: 0;
}
.p-semDetail__content strong,
.p-semDetail__content b {
  font-weight: 700;
}
.p-semDetail__content .wp-block-table {
  max-width: 100%;
  overflow-x: auto;
}
.p-semDetail__content .wp-block-table table {
  margin-top: 0;
}
.p-semDetail__content table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border: 0.1rem solid #b3b3b3;
  font-size: 1.6rem;
  line-height: 2;
}
.p-semDetail__content th,
.p-semDetail__content td {
  padding: 0.4rem 1.6rem;
  border: 0.1rem solid #b3b3b3;
  background-color: #FFFFFF;
  vertical-align: middle;
  text-align: left;
}
.p-semDetail__content th > :first-child,
.p-semDetail__content td > :first-child {
  margin-top: 0;
}
@media screen and (max-width: 568px) {
  .p-semDetail__content th,
  .p-semDetail__content td {
    padding-inline: 0.8rem;
  }
}
.p-semDetail__content th,
.p-semDetail__content tr > td:first-child {
  background-color: #FAF5E9;
  font-weight: 500;
  text-align: center;
}
.p-semDetail__content tr > :first-child:nth-last-child(2) {
  width: 12rem !important;
}
.p-semDetail__content tr > :first-child:nth-last-child(2) + * {
  width: auto !important;
}
@media screen and (max-width: 568px) {
  .p-semDetail__content tr > :first-child:nth-last-child(2) {
    width: 9.6rem !important;
  }
}

.p-semLearn {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}

.p-semLearn__item {
  padding: 2.4rem;
  background-color: #FAF5E9;
  border-radius: 0.4rem;
}

.p-semLearn__head {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}

.p-semLearn__num {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  font-family: "Roboto", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1;
  color: #FFFFFF;
  background-color: #FFAF34;
  border-radius: 50%;
}

.p-semLearn__ttl {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.8;
  color: #1a1a1a;
}

.p-semLearn__body {
  margin-top: 0.8rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}

.p-semProgram {
  border: 0.1rem solid rgba(0, 0, 0, 0.08);
  border-radius: 0.4rem;
  overflow: hidden;
}

.p-semProgram__row {
  display: grid;
  grid-template-columns: 13rem 1fr;
}
.p-semProgram__row + .p-semProgram__row {
  border-top: 0.1rem solid rgba(0, 0, 0, 0.08);
}
.p-semProgram__row dt {
  display: flex;
  align-items: center;
  padding: 0.4rem 1.6rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2;
  background-color: #FAF5E9;
  color: #1a1a1a;
  justify-content: center;
}
.p-semProgram__row dd {
  display: flex;
  align-items: center;
  padding: 0.4rem 1.6rem;
  min-height: 4rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}

.p-semLecturers {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}

.p-semLec {
  display: flex;
  gap: 2.4rem;
  padding: 2.4rem;
  background-color: #FAF5E9;
  border-radius: 0.4rem;
}
@media screen and (max-width: 568px) {
  .p-semLec {
    flex-direction: column;
    gap: 1.6rem;
  }
}

.p-semLec__img {
  flex-shrink: 0;
  width: 13.6rem;
}
.p-semLec__img img {
  width: 100%;
  height: auto;
  border-radius: 0.2rem;
}

.p-semLec__body {
  flex: 1;
  min-width: 0;
}

.p-semLec__name {
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.6363636364;
  color: #1a1a1a;
}

.p-semLec__company {
  margin-top: 0.4rem;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #FFBC57;
}

.p-semLec__desc {
  margin-top: 1.2rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}

.p-semDetail__form {
  min-width: 0;
  scroll-margin-top: 10rem;
}

.p-semDetail__formBox {
  padding-top: 2.4rem;
  overflow: hidden;
  border: 1px solid #e7dfce;
  background-color: #FAF5E9;
  border-radius: 0.4rem;
}

.p-semDetail__formTtl {
  padding-inline: 2.4rem;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.5;
  color: #1a1a1a;
}

.p-semDetail__formNote {
  margin-top: 0.8rem;
  padding-inline: 2.4rem;
  font-size: 1.4rem;
  line-height: 1.6;
  color: #666666;
}

.p-semDetail__iframe {
  margin-top: 2.4rem;
  border-top: 1px solid #e7dfce;
}
.p-semDetail__iframe iframe {
  display: block;
  width: 100%;
  height: 1280px;
  border: 0;
}

.p-semDetail__formEmpty {
  padding: 0 2.4rem 2.4rem;
  font-size: 1.4rem;
  line-height: 1.8;
  color: #666666;
}

.p-semDetail__formNote + .p-semDetail__formEmpty {
  margin-top: 2.4rem;
}

.p-partner {
  /* ---- 共通見出し ---- */
  /* ---- 共通ボタン ---- */
  /* =====================================================
     Hero
     ===================================================== */
  /* =====================================================
     Service（訴求＋実績）
     ===================================================== */
  /* =====================================================
     Merit
     ===================================================== */
  /* =====================================================
     Program（#FAF5E9）
     ===================================================== */
  /* =====================================================
     Flow（締結までの流れ）
     ===================================================== */
  /* =====================================================
     Case studies（提携パートナー事例）
     ===================================================== */
  /* =====================================================
     CTA（専用・#FFBC57 フルブリード）
     ===================================================== */
}
.p-partner__inner {
  width: 100%;
  max-width: 133.6rem;
  margin-inline: auto;
  padding-inline: 2rem;
}
@media screen and (max-width: 1000px) {
  .p-partner__inner {
    padding-inline: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-partner__inner {
    padding-inline: 2rem;
  }
}
.p-partner__secTtl {
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.13em;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .p-partner__secTtl {
    font-size: 3.2rem;
  }
}
.p-partner__secTtl--left {
  font-size: 4rem;
  line-height: 1.4;
  letter-spacing: normal;
}
@media screen and (max-width: 768px) {
  .p-partner__secTtl--left {
    font-size: 2.8rem;
  }
}
.p-partner__secTtl--sub {
  font-size: 4rem;
  line-height: 1.4;
  letter-spacing: normal;
}
@media screen and (max-width: 768px) {
  .p-partner__secTtl--sub {
    font-size: 2.8rem;
  }
}
.p-partner__secSub {
  font-size: 1.6rem;
  line-height: 2;
}
.p-partner__btn {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  width: 34.2rem;
  max-width: 100%;
  min-height: 8rem;
  padding: 0.4rem 2.4rem;
  border-radius: 0.4rem;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.5;
  transition: opacity 0.2s;
}
.p-partner__btn svg {
  flex: 0 0 auto;
  width: 2.4rem;
  height: 1.4rem;
}
.p-partner__btn:hover {
  opacity: 0.8;
}
.p-partner__btn--dark {
  background: #000;
}
.p-partner__btn--dark, .p-partner__btn--dark:hover, .p-partner__btn--dark:visited, .p-partner__btn--dark:link {
  color: #fff;
  text-decoration: none;
}
.p-partner__btn--white {
  background: #fff;
  border: 0.1rem solid #000;
}
.p-partner__btn--white, .p-partner__btn--white:hover, .p-partner__btn--white:visited, .p-partner__btn--white:link {
  color: #000;
  text-decoration: none;
}
.p-partner__hero {
  position: relative;
  padding-block: 7.2rem 9.6rem;
  overflow: hidden;
  background: url(./../img/partner/hero_bg.webp) center top/contain no-repeat;
}
@media screen and (max-width: 768px) {
  .p-partner__hero {
    padding-block: 4rem 5.6rem;
  }
}
.p-partner__heroBg {
  position: absolute;
  top: -10%;
  right: -5%;
  width: 55%;
  height: 120%;
  background: radial-gradient(circle at 65% 40%, rgba(255, 190, 87, 0.22), rgba(255, 190, 87, 0) 62%);
  pointer-events: none;
  z-index: 0;
}
.p-partner__heroInner {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 6.4rem;
  max-width: 128.6rem;
  margin-inline: auto;
}
@media screen and (max-width: 1000px) {
  .p-partner__heroInner {
    gap: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-partner__heroInner {
    flex-direction: column;
    align-items: flex-start;
    gap: 3.2rem;
  }
}
.p-partner__heroBody {
  position: relative;
  flex: 1 1 auto;
  max-width: 64rem;
}
.p-partner__eyebrowDots {
  position: absolute;
  top: 0.4rem;
  left: -3.6rem;
  width: 1.2rem;
  height: 3rem;
  background: radial-gradient(circle 0.6rem at 0.6rem 0.6rem, #00c8be 100%, transparent 0) top center/1.2rem 1.2rem no-repeat, radial-gradient(circle 0.6rem at 0.6rem 0.6rem, #ffaf34 100%, transparent 0) bottom center/1.2rem 1.2rem no-repeat;
}
@media screen and (max-width: 1000px) {
  .p-partner__eyebrowDots {
    display: none;
  }
}
.p-partner__eyebrow {
  font-size: 2.4rem;
  line-height: 1.5;
  margin-bottom: 2rem;
}
.p-partner__eyebrow span {
  display: inline-block;
  padding-bottom: 0.8rem;
  border-bottom: 0.1rem solid #000;
}
.p-partner__heroTtl {
  font-size: 6.4rem;
  font-weight: 400;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .p-partner__heroTtl {
    font-size: 4.4rem;
  }
}
.p-partner__heroLead {
  font-size: 1.6rem;
  line-height: 2;
  margin-top: 2.8rem;
}
.p-partner__heroBtn {
  margin-top: 2.8rem;
  width: 36rem;
}
.p-partner__heroFig {
  flex: 0 0 auto;
  width: 58.2rem;
  max-width: 48%;
}
@media screen and (max-width: 768px) {
  .p-partner__heroFig {
    width: 100%;
    max-width: 100%;
  }
}
.p-partner__heroFig img {
  width: 100%;
  height: auto;
}
.p-partner__service {
  position: relative;
  padding-block: 3rem 8rem;
  overflow: hidden;
  --deco-x: calc((100% - 133.6rem) / 2 - 0.75rem);
}
@media screen and (min-width: 1001px) {
  .p-partner__service {
    padding-block: 6.3rem 0;
  }
}
@media screen and (max-width: 1280px) {
  .p-partner__service {
    --deco-x: 1.25rem;
  }
}
@media screen and (max-width: 768px) {
  .p-partner__service {
    padding-block: 2rem 5.6rem;
  }
}
.p-partner__serviceDots {
  position: absolute;
  top: 8rem;
  left: calc(var(--deco-x) + 10.2rem);
  z-index: 0;
  display: flex;
  gap: 0.4rem;
  pointer-events: none;
}
.p-partner__serviceDots i {
  display: block;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 0.8rem;
  background-image: linear-gradient(180deg, #FFD699 0%, #FFAF34 100%);
}
.p-partner__serviceDots i:first-child {
  background-image: linear-gradient(180deg, #96E8E4 0%, #46D7CF 100%);
}
.p-partner__serviceDots i:last-child {
  margin-left: 2rem;
}
@media screen and (max-width: 1000px) {
  .p-partner__serviceDots {
    display: none;
  }
}
.p-partner__serviceCorner {
  position: absolute;
  top: 9.3rem;
  left: var(--deco-x);
  width: 10.4rem;
  height: 7.45rem;
  border-top: 0.1rem solid #000000;
  border-left: 0.1rem solid #000000;
  border-top-left-radius: 7.45rem;
  z-index: 0;
  pointer-events: none;
}
@media screen and (max-width: 1000px) {
  .p-partner__serviceCorner {
    display: none;
  }
}
.p-partner__serviceLine {
  position: absolute;
  top: 16.75rem;
  bottom: 0;
  left: var(--deco-x);
  width: 0.1rem;
  background-color: #000000;
  z-index: 0;
  pointer-events: none;
}
@media screen and (max-width: 1000px) {
  .p-partner__serviceLine {
    display: none;
  }
}
.p-partner__serviceDotGrid {
  position: absolute;
  top: 17.5rem;
  left: calc(var(--deco-x) + 5.6rem);
  width: 12.8rem;
  height: auto;
  z-index: 0;
  pointer-events: none;
}
@media screen and (max-width: 1000px) {
  .p-partner__serviceDotGrid {
    display: none;
  }
}
.p-partner__serviceRow {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-start;
  gap: 4rem;
}
@media screen and (min-width: 1001px) {
  .p-partner__serviceRow {
    padding-left: 23rem;
    padding-right: 7.2rem;
  }
}
@media screen and (max-width: 1280px) {
  .p-partner__serviceRow {
    padding-left: 23.7rem;
    padding-right: 2rem;
  }
}
@media screen and (max-width: 1000px) {
  .p-partner__serviceRow {
    flex-direction: column;
    padding-inline: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-partner__serviceRow {
    padding-inline: 2rem;
  }
}
.p-partner__serviceText {
  flex: 0 0 44.8rem;
  max-width: 44.8rem;
}
@media screen and (max-width: 1000px) {
  .p-partner__serviceText {
    flex-basis: auto;
    max-width: 100%;
  }
}
.p-partner__serviceTtl {
  font-size: 2.8rem;
  font-weight: 400;
  line-height: 1.857;
  text-wrap: balance;
}
@media screen and (max-width: 768px) {
  .p-partner__serviceTtl {
    font-size: 2.4rem;
    line-height: 1.5;
  }
}
.p-partner__serviceBody {
  font-size: 1.6rem;
  line-height: 2;
  margin-top: 3.2rem;
}
.p-partner__serviceVisual {
  position: relative;
  flex: 1 1 auto;
  min-width: 0;
  padding-bottom: 4rem;
}
@media screen and (min-width: 1001px) {
  .p-partner__serviceVisual {
    padding-bottom: 7.4rem;
  }
}
@media screen and (max-width: 1000px) {
  .p-partner__serviceVisual {
    width: 100%;
    max-width: 56.5rem;
  }
}
.p-partner__serviceImg {
  width: 100%;
  max-width: 56.5rem;
  height: auto;
}
@media screen and (min-width: 1001px) {
  .p-partner__serviceImg {
    width: calc(100% + 1.9rem);
    max-width: 56.5rem;
    margin-left: -1.9rem;
  }
}
.p-partner__stats {
  position: absolute;
  right: 0;
  bottom: 0;
  display: flex;
  justify-content: flex-end;
  gap: 2.4rem;
}
@media screen and (max-width: 768px) {
  .p-partner__stats {
    position: static;
    justify-content: center;
    margin-top: 2.4rem;
  }
}
.p-partner__stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 16rem;
  height: 16rem;
  border-radius: 50%;
  background: linear-gradient(150deg, #95E8E3 0%, #00AEA6 100%);
  color: #fff;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-partner__stat {
    width: 14rem;
    height: 14rem;
  }
}
.p-partner__statLabel {
  font-size: 1.4rem;
  line-height: 1.2;
}
.p-partner__statNum {
  display: inline-flex;
  align-items: baseline;
  font-family: "Inter", sans-serif;
  font-size: 5.2rem;
  font-weight: 300;
  line-height: 1.2;
}
.p-partner__statUnit {
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  margin-left: 0.4rem;
}
.p-partner__merit {
  position: relative;
  padding-block: 8rem 16rem;
  overflow: hidden;
}
@media screen and (min-width: 1001px) {
  .p-partner__merit {
    padding-top: 30rem;
  }
}
@media screen and (max-width: 768px) {
  .p-partner__merit {
    padding-block: 5.6rem;
  }
}
.p-partner__meritDeco {
  position: absolute;
  top: -7rem;
  left: calc((100% - 133.6rem) / 2 - 8.8rem);
  width: 151.2rem;
  max-width: none;
  height: auto;
  z-index: 0;
  pointer-events: none;
}
@media screen and (max-width: 1280px) {
  .p-partner__meritDeco {
    left: -6.8rem;
  }
}
@media screen and (max-width: 1000px) {
  .p-partner__meritDeco {
    display: none;
  }
}
.p-partner__meritInner {
  position: relative;
  z-index: 1;
}
.p-partner__meritCards {
  display: flex;
  gap: 3.2rem;
  margin-top: 4rem;
}
@media screen and (max-width: 1000px) {
  .p-partner__meritCards {
    flex-direction: column;
  }
}
.p-partner__meritCard {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  padding: 2.8rem 3.2rem;
  border-radius: 1.6rem;
  background: #fff8ed;
}
.p-partner__meritNo {
  display: block;
  font-family: "Inter", sans-serif;
  font-size: 2.4rem;
  font-weight: 200;
  line-height: 1;
}
.p-partner__meritTtl {
  font-size: 2.8rem;
  font-weight: 400;
  line-height: 1.857;
}
.p-partner__meritImg {
  display: block;
  width: 100%;
  border-radius: 1.2rem;
}
.p-partner__meritImg img {
  width: 100%;
  height: auto;
}
.p-partner__meritBody {
  font-size: 1.6rem;
  line-height: 2;
}
.p-partner__meritTagline {
  font-size: 4rem;
  font-weight: 400;
  line-height: 1.4;
  text-align: center;
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .p-partner__meritTagline {
    font-size: 2.6rem;
  }
}
.p-partner__program {
  padding-block: 16rem;
  background: #faf5e9;
}
@media screen and (max-width: 768px) {
  .p-partner__program {
    padding-block: 5.6rem;
  }
}
.p-partner__programHead {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  margin-bottom: 4rem;
}
.p-partner__programCards {
  display: flex;
  gap: 3.2rem;
}
@media screen and (max-width: 1000px) {
  .p-partner__programCards {
    flex-direction: column;
  }
}
.p-partner__programCard {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3.2rem;
  padding: 3.6rem;
  border-radius: 1.6rem;
  background: #fff;
}
.p-partner__programTitle {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.p-partner__programTag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.4rem 3.2rem;
  border-radius: 999rem;
  background: #ffbc57;
  color: #000;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.2;
}
.p-partner__programTagLabel {
  font-size: 2.8rem;
  font-weight: 400;
  line-height: 1;
}
.p-partner__flowImg {
  width: 100%;
  max-width: 53rem;
  height: auto;
}
.p-partner__programTagline {
  font-size: 2rem;
  line-height: 1.2;
  text-align: center;
}
.p-partner__support {
  margin-top: 4.8rem;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 2.4rem;
}
.p-partner__supportHeading {
  font-size: 4rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .p-partner__supportHeading {
    font-size: 2.8rem;
    line-height: 1.4;
  }
}
.p-partner__supportList {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 1.1rem;
  width: 100%;
}
@media screen and (max-width: 1000px) {
  .p-partner__supportList {
    flex-direction: column;
  }
}
.p-partner__supportItem {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3.2rem;
  padding: 3.6rem 2rem;
  border: 1px solid #e5e0d9;
  border-radius: 1.6rem;
  background: #fff;
  text-align: center;
}
.p-partner__supportTtl {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  font-size: 2.8rem;
  font-weight: 400;
  line-height: 1.8571428571;
  letter-spacing: 0;
}
.p-partner__supportDesc {
  width: 100%;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0;
}
.p-partner__supportIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 2rem;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background: #ffaf34;
}
.p-partner__supportIcon svg {
  display: block;
  width: 1.1rem;
  height: 0.8rem;
}
.p-partner__flow {
  padding-block: 16rem;
}
@media screen and (max-width: 768px) {
  .p-partner__flow {
    padding-block: 5.6rem;
  }
}
.p-partner__flowHead {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.6rem;
  margin-bottom: 4rem;
}
.p-partner__flowSteps {
  display: flex;
  gap: 2rem;
}
@media screen and (max-width: 1000px) {
  .p-partner__flowSteps {
    flex-wrap: wrap;
    justify-content: center;
  }
}
.p-partner__flowStep {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.4rem;
  padding: 2.8rem 2rem 2.4rem;
  border-radius: 0.4rem;
  border: 0.1rem solid #FFBC57;
  background: #fff;
  text-align: center;
}
@media screen and (max-width: 1000px) {
  .p-partner__flowStep {
    flex: 0 0 calc(50% - 1rem);
  }
}
@media screen and (max-width: 768px) {
  .p-partner__flowStep {
    flex-basis: 100%;
  }
}
.p-partner__flowNo {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 4.4rem;
  height: 4.4rem;
  border-radius: 50%;
  background: #ffaf34;
  color: #000;
  font-family: "Inter", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
}
.p-partner__flowStepTtl {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
}
.p-partner__flowIcon {
  width: 7.2rem;
  height: 7.2rem;
}
.p-partner__flowStepDesc {
  font-size: 1.6rem;
  line-height: 2;
  text-align: left;
}
.p-partner__case {
  padding-block: 16rem;
}
@media screen and (max-width: 768px) {
  .p-partner__case {
    padding-block: 5.6rem;
  }
}
.p-partner__caseHead {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  margin-bottom: 4rem;
}
.p-partner__caseCards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 2.4rem;
  width: 100%;
}
@media screen and (max-width: 1000px) {
  .p-partner__caseCards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media screen and (max-width: 768px) {
  .p-partner__caseCards {
    gap: 1.6rem 1.2rem;
  }
}
.p-partner__caseCard {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 2.4rem;
  border-radius: 0.4rem;
  background: #faf5e9;
}
@media screen and (max-width: 768px) {
  .p-partner__caseCard {
    padding: 1.6rem 1.2rem;
  }
}
.p-partner__caseLogo {
  display: grid;
  place-items: center;
  width: 100%;
  aspect-ratio: 180/90;
  overflow: hidden;
  border-radius: 0.4rem;
  background: #fff;
}
.p-partner__caseLogo img {
  display: block;
  width: 100%;
  max-width: 18rem;
  height: auto;
}
.p-partner__caseLogo--compact img {
  transform: scale(1.5);
}
.p-partner__caseName {
  flex-grow: 1;
  margin-top: 1.6rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
@media screen and (max-width: 768px) {
  .p-partner__caseName {
    margin-top: 1.2rem;
    font-size: 1.4rem;
  }
}
.p-partner__caseMeta {
  align-self: flex-start;
  margin-top: 1.2rem;
  padding: 0.4rem 1rem;
  border-radius: 0.4rem;
  background: #fff;
  color: #66553f;
  font-size: 1.2rem;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .p-partner__caseMeta {
    padding-inline: 0.8rem;
    font-size: 1.1rem;
  }
}
.p-partner__logos {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 1.6rem;
  margin-top: 4.8rem;
  width: 88rem;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (max-width: 1000px) {
  .p-partner__logos {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media screen and (max-width: 768px) {
  .p-partner__logos {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.p-partner__logo {
  display: block;
  width: 100%;
  aspect-ratio: 180/90;
  border-radius: 0.4rem;
  background: #faf7f0;
}
.p-partner__cta {
  position: relative;
  padding-block: 11.8rem 17.4rem;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .p-partner__cta {
    padding-block: 5.6rem 6.4rem;
  }
}
.p-partner__ctaBg {
  position: absolute;
  inset: 0;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E") repeat, radial-gradient(120% 90% at 28% 12%, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0) 55%), #ffbc57;
  border-radius: 6.4rem 6.4rem 0 0;
  z-index: 0;
}
@media screen and (max-width: 768px) {
  .p-partner__ctaBg {
    border-radius: 3.2rem 3.2rem 0 0;
  }
}
.p-partner__ctaInner {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8rem;
}
@media screen and (max-width: 1000px) {
  .p-partner__ctaInner {
    flex-direction: column;
    align-items: flex-start;
    gap: 4rem;
  }
}
.p-partner__ctaTtl {
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.5;
}
.p-partner__ctaText {
  font-size: 2rem;
  line-height: 1.8;
  margin-top: 2.4rem;
}
.p-partner__ctaBtns {
  flex: 0 0 auto;
  display: flex;
  gap: 1.6rem;
}
@media screen and (max-width: 768px) {
  .p-partner__ctaBtns {
    flex-direction: column;
    width: 100%;
  }
}

.p-pcontact {
  position: relative;
  overflow-x: clip;
  isolation: isolate;
}

.p-pcontact > .c-dotGrid {
  z-index: -1;
}

.p-pcontact__inner {
  width: 92%;
  max-width: 119.2rem;
  margin-inline: auto;
}

.p-pcontact__crumbs {
  padding-top: 2.4rem;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #666666;
}
.p-pcontact__crumbs a, .p-pcontact__crumbs a:hover, .p-pcontact__crumbs a:visited, .p-pcontact__crumbs a:link {
  color: #666666;
  text-decoration: none;
}
.p-pcontact__crumbs svg {
  flex-shrink: 0;
  width: 0.4rem;
  height: 0.6rem;
  color: #1a1a1a;
}
.p-pcontact__crumbs [aria-current] {
  color: #1a1a1a;
}

.p-pcontact__crumbsInner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 0.8rem;
  width: 92%;
  max-width: 135.2rem;
  margin: 0 auto;
}

.p-pcontact__head {
  padding-top: 8rem;
}
@media screen and (max-width: 768px) {
  .p-pcontact__head {
    padding-top: 4rem;
  }
}

.p-pcontact__ttl {
  padding-bottom: 2.4rem;
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1.6666666667;
  border-bottom: 0.1rem solid #000000;
}
@media screen and (max-width: 768px) {
  .p-pcontact__ttl {
    padding-bottom: 1.6rem;
    font-size: 2rem;
    line-height: 1.5;
  }
}

.p-pcontact__lead {
  margin-top: 4rem;
  font-size: 2rem;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .p-pcontact__lead {
    margin-top: 2.4rem;
    font-size: 1.4rem;
    line-height: 1.8;
  }
}

.p-pcontact__body {
  padding: 8.8rem 0 16rem;
}
@media screen and (max-width: 768px) {
  .p-pcontact__body {
    padding: 3.2rem 0 5.6rem;
  }
}

.p-pcontact__form {
  max-width: 72rem;
}
.p-pcontact__form iframe {
  display: block;
  width: 100%;
  height: 1494px;
  border: 0;
}
@media screen and (max-width: 768px) {
  .p-pcontact__form iframe {
    height: 1400px;
  }
}

.p-pcontact__deco01 {
  top: 13rem;
  left: calc(50% + 40.9rem);
}

.p-pcontact__deco02 {
  top: 38.1rem;
  left: calc(50% - 66.7rem);
  background-color: #00c8be;
}

.p-pcontact__deco03 {
  top: 149rem;
  left: calc(50% + 41.3rem);
}

.p-pcontact__deco04 {
  top: 193.6rem;
  left: calc(50% - 74.5rem);
  background-color: #00c8be;
}

.p-contact {
  background: url(../img/contact/bg_01.svg) center top 13rem/contain no-repeat;
  /* ---- タイトル ---- */
  /* ---- フォーム + お問い合わせ先 ---- */
}
.p-contact__inner {
  width: 100%;
  max-width: 119.2rem;
  margin-inline: auto;
  padding-inline: 2rem;
}
@media screen and (max-width: 1000px) {
  .p-contact__inner {
    padding-inline: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-contact__inner {
    padding-inline: 2rem;
  }
}
.p-contact__head {
  padding-block: 7.2rem 0;
}
@media screen and (max-width: 768px) {
  .p-contact__head {
    padding-block: 4rem 0;
  }
}
.p-contact__ttl {
  padding-bottom: 2.4rem;
  border-bottom: 0.1rem solid #000;
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1.375;
}
@media screen and (max-width: 768px) {
  .p-contact__ttl {
    font-size: 3.6rem;
  }
}
.p-contact__lead {
  margin-top: 4rem;
  font-size: 2rem;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .p-contact__lead {
    font-size: 1.6rem;
    margin-top: 2.4rem;
  }
}
.p-contact__body {
  position: relative;
  padding-block: 4.8rem 9.6rem;
}
@media screen and (max-width: 768px) {
  .p-contact__body {
    padding-block: 3.2rem 5.6rem;
  }
}
.p-contact__layout {
  position: relative;
  z-index: 1;
}
.p-contact__layout {
  display: flex;
  align-items: flex-start;
  gap: 4rem;
}
@media screen and (max-width: 1000px) {
  .p-contact__layout {
    flex-direction: column;
  }
}
.p-contact__form {
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
}
.p-contact__form iframe {
  display: block;
  width: 100%;
  height: 1360px;
  border: 0;
}

.p-ctaFinal {
  position: relative;
}

.p-ctaFinal__box {
  width: 100%;
  padding: 17.8rem 12.8rem 22.8rem;
  border-radius: 6.4rem 6.4rem 0 0;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E") repeat, radial-gradient(120% 90% at 28% 12%, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0) 55%), #FFBC57;
}
@media screen and (max-width: 768px) {
  .p-ctaFinal__box {
    padding: 6.4rem 4rem 9.6rem;
    border-radius: 3.2rem 3.2rem 0 0;
  }
}
@media screen and (max-width: 568px) {
  .p-ctaFinal__box {
    padding: 6.4rem 2.4rem 9.6rem;
  }
}

.p-ctaFinal__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 4rem;
  max-width: 125.6rem;
  margin: 0 auto;
}
@media screen and (max-width: 1000px) {
  .p-ctaFinal__inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 3.2rem;
  }
}

.p-ctaFinal__ttl {
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.5;
  color: #1a1a1a;
  word-break: keep-all;
  overflow-wrap: break-word;
}
@media screen and (max-width: 568px) {
  .p-ctaFinal__ttl {
    font-size: 2.4rem;
  }
}

.p-ctaFinal__text {
  margin-top: 2.4rem;
  font-size: 2rem;
  line-height: 1.8;
  color: #1a1a1a;
}
@media screen and (max-width: 568px) {
  .p-ctaFinal__text {
    font-size: 1.6rem;
  }
}

.p-ctaFinal__btns {
  display: flex;
  gap: 1.6rem;
  flex-shrink: 0;
}
@media screen and (max-width: 568px) {
  .p-ctaFinal__btns {
    flex-direction: column;
    width: 100%;
  }
}

.p-ctaFinal__btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
  width: 34.2rem;
  max-width: 100%;
  min-height: 8rem;
  padding: 0 2.4rem;
  font-size: 2rem;
  line-height: 1.8;
  border-radius: 0.4rem;
  transition: opacity 0.3s ease;
}
.p-ctaFinal__btn:hover {
  opacity: 0.85;
}
.p-ctaFinal__btn svg {
  flex-shrink: 0;
  width: 2.4rem;
  height: 1.4rem;
}
@media screen and (max-width: 1000px) {
  .p-ctaFinal__btn {
    width: 30rem;
  }
}
@media screen and (max-width: 568px) {
  .p-ctaFinal__btn {
    width: 100%;
  }
}

.p-ctaFinal__btn--white {
  background-color: #FFFFFF;
}
.p-ctaFinal__btn--white, .p-ctaFinal__btn--white:hover, .p-ctaFinal__btn--white:visited, .p-ctaFinal__btn--white:link {
  color: #1a1a1a;
  text-decoration: none;
}

.p-ctaFinal__btn--dark {
  background-color: #000000;
}
.p-ctaFinal__btn--dark, .p-ctaFinal__btn--dark:hover, .p-ctaFinal__btn--dark:visited, .p-ctaFinal__btn--dark:link {
  color: #FFFFFF;
  text-decoration: none;
}

.p-newsDetail__related + .p-ctaFinal {
  margin-top: -5.6rem;
}
@media screen and (max-width: 768px) {
  .p-newsDetail__related + .p-ctaFinal {
    margin-top: -3.2rem;
  }
}

div.p-form span.essential,
div.p-form span.optional {
  white-space: nowrap;
  padding: 0.3rem 1rem;
  font-size: 80%;
  color: #fff;
  background-color: #ffaf34;
  font-weight: normal;
  margin: 0 0.5rem;
  border-radius: 2rem;
}
div.p-form span.optional {
  background-color: #f2e6d1;
}
@media screen and (max-width: 768px) {
  div.p-form section table, div.p-form section table thead, div.p-form section table tbody, div.p-form section table tfoot, div.p-form section table tr {
    display: block;
    width: 100%;
  }
  div.p-form section table tr th, div.p-form section table tr td {
    display: block;
    width: 100%;
  }
}
div.p-form section table table {
  width: 100%;
}
div.p-form section table th,
div.p-form section table td {
  text-align: left;
}
div.p-form section table th {
  width: 25%;
  background-color: #f5f5f5;
  border-bottom: #fff 0.1rem solid;
  font-weight: bold;
  position: relative;
  vertical-align: top;
}
@media screen and (min-width: 769px) {
  div.p-form section table th {
    padding: 3rem 2rem;
  }
}
@media screen and (max-width: 768px) {
  div.p-form section table th {
    width: 100%;
    padding: 1rem;
    border: none;
  }
}
div.p-form section table th p {
  display: inline-block;
  vertical-align: middle;
  word-break: break-all;
}
div.p-form section table th span.essential,
div.p-form section table th span.optional {
  position: absolute;
  right: 1rem;
}
div.p-form section table td {
  padding: 1.5rem 2rem;
  vertical-align: middle;
}
@media screen and (max-width: 768px) {
  div.p-form section table td {
    padding: 1rem 1rem 2rem 1rem;
  }
}
div.p-form section table tr:last-child th, div.p-form section table tr:last-child td {
  border-bottom: none;
}
@media screen and (min-width: 769px) {
  div.p-form section table.table_confirm th {
    padding: 1.5rem 2rem;
  }
}
div.p-form p.head {
  padding: 2rem 0;
  font-weight: bold;
}
div.p-form p.closing {
  padding: 2rem 0 1rem 0;
  font-weight: bold;
  text-align: center;
}
div.p-form span.arrow {
  font-size: 90%;
  margin: 0.5rem 0;
  font-weight: bold;
  display: inline-block;
}
div.p-form ul.transmission {
  width: auto;
  text-align: center;
  margin: 2rem auto 5rem auto;
  display: table;
}
@media screen and (max-width: 768px) {
  div.p-form ul.transmission {
    margin-bottom: 3rem;
  }
}
@media screen and (max-width: 568px) {
  div.p-form ul.transmission {
    width: 95%;
    display: inherit;
  }
}
div.p-form ul.transmission li {
  display: table-cell;
  padding: 0.2rem 0.5rem;
}
@media screen and (max-width: 568px) {
  div.p-form ul.transmission li {
    display: block;
  }
}
div.p-form ul.transmission li a {
  cursor: pointer;
}
div.p-form ul.transmission_confirm {
  margin: 6rem 0 5rem;
}
@media screen and (max-width: 768px) {
  div.p-form ul.transmission_confirm {
    margin: 4rem 0 3rem;
  }
}
div.p-form ul.transmission_confirm li {
  text-align: center;
}
div.p-form ul.transmission_confirm li + li {
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  div.p-form ul.transmission_confirm li + li {
    margin-top: 1.5rem;
  }
}
div.p-form ul.transmission_confirm form {
  text-align: center;
}
div.p-form ul.break {
  width: 100%;
  display: table;
}
@media screen and (max-width: 568px) {
  div.p-form ul.break {
    display: inherit;
  }
}
div.p-form ul.break li {
  display: table-cell;
  padding: 0 0.5rem;
}
div.p-form ul.break li:nth-child(1) {
  padding: 0 0.5rem 0 0;
}
@media screen and (max-width: 568px) {
  div.p-form ul.break li:nth-child(1) {
    padding: 0;
  }
}
div.p-form ul.break li:last-child {
  padding: 0 0 0 0.5rem;
}
@media screen and (max-width: 568px) {
  div.p-form ul.break li:last-child {
    padding: 0;
  }
}
@media screen and (max-width: 568px) {
  div.p-form ul.break li {
    display: inherit;
    padding: 0;
  }
}
div.p-form ul.variable {
  width: 100%;
}
div.p-form ul.variable li {
  display: inline-block;
  padding: 0 0.5rem;
}
div.p-form ul.variable li:last-child {
  padding: 0 0 0 0.5rem;
}
@media screen and (max-width: 568px) {
  div.p-form ul.variable li:last-child {
    padding: 0;
  }
}
div.p-form ul.variable li:nth-child(1) {
  padding: 0 0.5rem 0 0;
}
@media screen and (max-width: 568px) {
  div.p-form ul.variable li:nth-child(1) {
    padding: 0;
  }
}
@media screen and (max-width: 568px) {
  div.p-form ul.variable li {
    display: inherit;
    padding: 0;
  }
}
div.p-form ul.variable li input {
  width: auto;
  margin: 0.5rem 1rem 0.5rem 0;
}
div.p-form ul.check_list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
div.p-form ul.check_list li {
  width: auto;
  min-width: 25%;
  padding: 0.5rem 0;
}
@media only screen and (max-width: 100rem) {
  div.p-form ul.check_list li {
    width: 100%;
    border-bottom: #e5e5e5 0.1rem solid;
  }
}
div.p-form ul.number {
  display: table;
}
div.p-form ul.number li {
  display: table-cell;
}
div.p-form ul.number li:nth-child(1) input {
  width: 5em;
}
div.p-form ul.number li:nth-child(2) input {
  width: 7em;
}
div.p-form ul.number li p {
  display: inline-block;
}
div.p-form ul.number li span {
  padding: 0 1rem;
}
div.p-form ul.phone {
  display: table;
  table-layout: auto;
}
div.p-form ul.phone li {
  display: table-cell;
}
div.p-form ul.phone li:nth-child(1) input {
  width: 5em;
}
div.p-form ul.phone li:nth-child(2) input {
  width: 6em;
}
div.p-form ul.phone li:nth-child(3) input {
  width: 6em;
}
div.p-form ul.phone li p {
  display: inline-block;
}
div.p-form ul.phone li span {
  padding: 0 1rem;
}
div.p-form div.comp_box {
  padding: 5rem 0;
}
@media screen and (max-width: 568px) {
  div.p-form div.comp_box {
    padding: 3rem 0;
  }
}
div.p-form div.flow_nav {
  max-width: 100rem;
  margin: 5rem auto 3rem;
  background-color: #f5f5f5;
}
@media screen and (max-width: 768px) {
  div.p-form div.flow_nav {
    margin-top: 2rem;
    margin-bottom: 1rem;
  }
}
div.p-form div.flow_nav ul {
  overflow: hidden;
  display: flex;
}
div.p-form div.flow_nav ul li {
  position: relative;
  width: 35%;
  padding: 1.7rem 0 1.7rem 5rem;
  text-align: left;
  background-color: #f5f5f5;
}
@media screen and (max-width: 768px) {
  div.p-form div.flow_nav ul li {
    padding: 1rem 0 1rem 4rem;
  }
}
@media screen and (max-width: 568px) {
  div.p-form div.flow_nav ul li {
    padding-left: 2.5rem;
  }
}
div.p-form div.flow_nav ul li:before {
  bottom: 0;
  content: "";
  width: 4.5rem;
  height: 4.5rem;
  margin: auto;
  position: absolute;
  right: -2rem;
  top: 0;
  transform: rotate(-45deg);
  background-color: #f5f5f5;
  z-index: 1;
}
div.p-form div.flow_nav ul li:first-child {
  padding-left: 2.5rem;
  width: 30%;
}
@media screen and (max-width: 768px) {
  div.p-form div.flow_nav ul li:first-child {
    padding-left: 1.5rem;
  }
}
@media screen and (max-width: 568px) {
  div.p-form div.flow_nav ul li:first-child {
    padding-left: 0;
  }
}
div.p-form div.flow_nav ul li:last-child:before {
  content: none;
}
div.p-form div.flow_nav ul li span {
  position: relative;
  z-index: 100;
  padding: 0 0 0 1.5rem;
  font-size: 1.7rem;
  font-weight: bold;
}
@media screen and (max-width: 414px) {
  div.p-form div.flow_nav ul li span {
    font-size: 1.4rem;
  }
}
div.p-form div.flow_nav ul.flow_form li:nth-child(1) {
  background-color: #ffaf34;
  color: #fff;
  font-weight: bold;
}
div.p-form div.flow_nav ul.flow_form li:nth-child(1):before {
  content: "";
  margin: auto;
  position: absolute;
  right: -2.2rem;
  background-color: #ffaf34;
  border-bottom: none;
  border-right: none;
}
div.p-form div.flow_nav ul.flow_form li:nth-child(2):before {
  border-bottom: #e5e5e5 0.1rem solid;
  border-right: #e5e5e5 0.1rem solid;
}
div.p-form div.flow_nav ul.flow_confirm li:nth-child(2) {
  background-color: #ffaf34;
  color: #fff;
  font-weight: bold;
}
div.p-form div.flow_nav ul.flow_confirm li:nth-child(2):before {
  content: "";
  margin: auto;
  position: absolute;
  right: -2.2rem;
  background-color: #ffaf34;
  border-bottom: none;
  border-right: none;
}
div.p-form div.flow_nav ul.flow_complete li:nth-child(3) {
  background-color: #ffaf34;
  color: #fff;
  font-weight: bold;
}
div.p-form div.flow_nav ul.flow_complete li:nth-child(3):before {
  content: "";
  margin: auto;
  position: absolute;
  right: -2.2rem;
  background-color: #ffaf34;
  border-bottom: none;
  border-right: none;
}
div.p-form div.flow_nav ul.flow_complete li:nth-child(1):before {
  border-bottom: #e5e5e5 0.1rem solid;
  border-right: #e5e5e5 0.1rem solid;
}
div.p-form div.agree_box {
  margin: 0 auto;
  text-align: center;
}
@media screen and (min-width: 769px) {
  div.p-form div.agree_box {
    margin: 4rem auto 0;
    max-width: 90rem;
    width: 90%;
  }
}
div.p-form div.agree_box,
div.p-form div.agree_box p,
div.p-form div.agree_box span,
div.p-form div.agree_box li,
div.p-form div.agree_box ul {
  line-height: 1.5;
}
@media screen and (max-width: 568px) {
  div.p-form div.agree_box {
    padding: 1.5rem 0.5rem 0.5rem 0.5rem;
    margin-top: 0;
  }
}
div.p-form div.agree_box p.strong_text {
  font-weight: 700;
}
@media screen and (max-width: 414px) {
  div.p-form div.agree_box p.strong_text {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 37.4rem) {
  div.p-form div.agree_box p.strong_text {
    font-size: 1.3rem;
  }
}
div.p-form div.agree_box ul.check_list {
  width: 100%;
  max-width: 60rem;
  margin: auto;
  justify-content: center;
}
div.p-form div.agree_box ul.check_list li {
  width: auto;
}
@media only screen and (max-width: 100rem) {
  div.p-form div.agree_box ul.check_list li {
    border-bottom: none;
  }
}
div.p-form div.agree_box div.err_area .text_box {
  padding: 0;
  max-width: 60rem;
  margin: 0.5rem auto 0 auto;
}
div.p-form div.agree_box .policy_box {
  height: 10rem;
  width: 100%;
  border: 0.1rem solid #ccc;
  overflow: auto;
  margin: 2rem 0;
}
div.p-form div.agree_box p.head_agree {
  margin: 0;
}
div.p-form div.agree_box p.head_agree span.essential {
  margin-right: 1.5rem;
}
@media screen and (max-width: 768px) {
  div.p-form div.agree_box p.head_agree {
    margin: 2rem 0 0;
  }
  div.p-form div.agree_box p.head_agree span.essential {
    margin-right: 1rem;
  }
}

div.err_area {
  display: block;
}
div.err_area p {
  display: block;
  padding: 0.5rem 1rem;
  font-weight: bold;
  color: #de2636;
  border: #de2636 0.1rem solid;
  margin: 0.5rem auto 0;
  text-align: center !important;
  border-radius: 0.5rem;
}
div.err_area .text_box {
  width: 80%;
  margin: 0.5rem auto;
  padding: 1.5rem 0;
  display: block;
}
div.err_area .text_box li {
  display: block;
  padding: 0.5rem 1rem;
  font-weight: bold;
  color: #de2636;
  border: #de2636 0.1rem solid;
  margin: 0.5rem auto;
  text-align: center;
  border-radius: 0.5rem;
}
div.err_area .list_box {
  width: 90%;
  margin: 0 auto 1rem auto;
  padding: 0.5rem 0;
}
div.err_area .list_box li {
  display: block;
  padding: 0.5rem 1rem;
  font-weight: bold;
  color: #de2636;
  border: #de2636 0.2rem solid;
  margin: 0.5rem auto;
  text-align: center;
  border-radius: 0.5rem;
}

div.error_area {
  max-width: 80rem;
  margin: 0 auto;
}
div.error_area .error_access,
div.error_area .text_box,
div.error_area .list_box {
  margin: 0 auto 1rem auto;
  padding: 0.5rem 0;
}
div.error_area .error_access li,
div.error_area .text_box li,
div.error_area .list_box li {
  display: block;
  padding: 0.5rem 1rem;
  font-weight: bold;
  color: #de2636;
  border: #de2636 0.2rem solid;
  margin: 0.5rem auto;
  text-align: center;
  border-radius: 0.5rem;
}

.btn_add, .btn_remove {
  padding: 0.5rem 2rem;
  border-radius: 0.5rem;
  background-color: #ffaf34;
  display: inline-block;
  font-weight: 700;
  border: none;
}
.btn_add, .btn_remove, .btn_add:hover, .btn_add:visited, .btn_add:link {
  color: #fff;
  text-decoration: none;
}
.btn_add:hover, .btn_remove:hover {
  text-decoration: none;
  opacity: 0.8;
}
.btn_add span, .btn_remove span {
  padding-left: 1.2rem;
  position: relative;
  display: inline-block;
}
.btn_add span:before, .btn_remove span:before {
  content: "+";
  position: absolute;
  left: 0;
  top: 0.3rem;
  line-height: 1;
}

.btn_remove {
  background-color: #f5f5f5;
}
.btn_remove, .btn_remove:hover, .btn_remove:visited, .btn_remove:link {
  color: #1a1a1a;
  text-decoration: none;
}
.btn_remove span:before {
  content: "-";
}

p#fm_ajax_message {
  font-weight: 700;
  color: #ffaf34;
  letter-spacing: 0.1rem;
}

div.p-notFound h1, div.p-notFound h2 {
  color: #ffaf34;
}

.p-scene {
  overflow: hidden;
}

.p-scene__inner {
  width: 100%;
  max-width: 123.2rem;
  margin-inline: auto;
  padding-inline: 2rem;
}
@media screen and (max-width: 768px) {
  .p-scene__inner {
    padding-inline: 3.2rem;
  }
}

.p-scene__crumbs {
  padding-top: 2.4rem;
  font-size: 1.2rem;
  line-height: 1.5;
}
.p-scene__crumbs a, .p-scene__crumbs a:hover, .p-scene__crumbs a:visited, .p-scene__crumbs a:link {
  color: #666666;
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  .p-scene__crumbs {
    padding-top: 1.6rem;
  }
}

.p-scene__crumbsSep {
  margin-inline: 0.8rem;
  color: #666666;
}

.p-scene__hero {
  padding-top: 8rem;
  padding-bottom: 0;
}
@media screen and (max-width: 768px) {
  .p-scene__hero {
    padding-top: 4rem;
  }
}

.p-scene__eyebrow {
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.5833333333;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-scene__eyebrow {
    font-size: 1.6rem;
    line-height: 1.5;
  }
}

.p-scene__ttl {
  margin-top: 0.8rem;
  font-size: 6.4rem;
  font-weight: 400;
  line-height: 1.375;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-scene__ttl {
    font-size: 3.6rem;
    line-height: 1.4444444444;
  }
}
.p-scene__ttl small {
  margin-left: 1rem;
}
@media screen and (max-width: 768px) {
  .p-scene__ttl small {
    display: block;
    margin: 1rem 0 0;
    font-size: 2rem;
  }
}

.p-scene__heroHead {
  padding-bottom: 2.4rem;
  border-bottom: 0.1rem solid #000000;
}
@media screen and (max-width: 768px) {
  .p-scene__heroHead {
    padding-bottom: 1.6rem;
  }
}

.p-scene__heroCols {
  display: flex;
  align-items: flex-end;
  gap: 3.2rem;
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .p-scene__heroCols {
    flex-direction: column;
    align-items: stretch;
    gap: 2.4rem;
    margin-top: 2.4rem;
  }
}

.p-scene__heroText {
  flex: 1 1 62.6rem;
  min-width: 0;
}
@media screen and (max-width: 768px) {
  .p-scene__heroText {
    flex: none;
  }
}

.p-scene__heroLead {
  margin-top: 4rem;
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1.6666666667;
  white-space: nowrap;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-scene__heroLead {
    margin-top: 2.4rem;
    font-size: 2.4rem;
    line-height: 1.6666666667;
    white-space: normal;
  }
}

.p-scene__heroBody {
  font-size: 2rem;
  line-height: 1.8;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-scene__heroBody {
    margin-top: 1.6rem;
    font-size: 1.5rem;
    line-height: 1.8666666667;
  }
}

.p-scene__heroImg {
  flex: 0 0 51.2rem;
}
.p-scene__heroImg img {
  display: block;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .p-scene__heroImg {
    flex: none;
  }
}

.p-scene__secTtl {
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1.6666666667;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-scene__secTtl {
    font-size: 2.4rem;
    line-height: 1.6666666667;
  }
}

.p-scene__day {
  padding-top: 20rem;
  padding-bottom: 0;
}
@media screen and (max-width: 768px) {
  .p-scene__day {
    padding-top: 8rem;
  }
}

.p-scene__steps {
  margin-top: 5.4rem;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
@media screen and (max-width: 768px) {
  .p-scene__steps {
    margin-top: 3.2rem;
  }
}

.p-scene__step {
  display: flex;
  align-items: center;
  gap: 2.5rem;
  padding: 4.8rem 2.4rem;
  max-width: 105.1rem;
  background-color: #fff8ed;
  border: 0.1rem solid #ffaf34;
}
.p-scene__step + .p-scene__step {
  margin-top: 18rem;
}
.p-scene__step--02, .p-scene__step--04 {
  margin-left: 14.1rem;
}
@media screen and (max-width: 768px) {
  .p-scene__step {
    flex-direction: column;
    align-items: flex-start;
    gap: 2.4rem;
    padding: 3.2rem 2.4rem;
    max-width: none;
  }
  .p-scene__step + .p-scene__step {
    margin-top: 4.8rem;
  }
  .p-scene__step--02, .p-scene__step--04 {
    margin-left: 0;
  }
}

.p-scene__stepImg {
  flex: 0 0 18.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
}
.p-scene__stepImg img {
  display: block;
  height: auto;
  max-width: 100%;
}
@media screen and (max-width: 768px) {
  .p-scene__stepImg {
    flex: 0 0 auto;
    align-self: center;
  }
}

.p-scene__stepBody {
  flex: 1 1 auto;
  min-width: 0;
}

.p-scene__stepHead {
  display: flex;
  align-items: center;
  gap: 1.6rem;
}

.p-scene__stepNo {
  flex: 0 0 auto;
  font-family: "Inter", sans-serif;
  font-weight: 200;
  font-size: 5.4rem;
  line-height: 1;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-scene__stepNo {
    font-size: 3.2rem;
  }
}

.p-scene__stepTtl {
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1.5;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-scene__stepTtl {
    font-size: 2rem;
    line-height: 1.5;
  }
}

.p-scene__stepText {
  margin-top: 1.6rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-scene__stepText {
    font-size: 1.5rem;
    line-height: 1.8666666667;
  }
}

.p-scene__benefit {
  margin-top: 32rem;
  padding-top: 16rem;
  padding-bottom: 16rem;
  background-color: #fff8ed;
  border-radius: 6.4rem 6.4rem 0 0;
}
@media screen and (max-width: 768px) {
  .p-scene__benefit {
    margin-top: 8rem;
    padding-top: 6.4rem;
    padding-bottom: 8rem;
    border-radius: 3.2rem 3.2rem 0 0;
  }
}

.p-scene__benefits {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4rem 2.9rem;
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .p-scene__benefits {
    grid-template-columns: minmax(0, 1fr);
    gap: 2.4rem;
    margin-top: 2.4rem;
  }
}

.p-scene__benefitCard {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 4rem 4rem 0;
  background-color: #ffffff;
  border: 0.1rem solid #ffaf34;
  border-radius: 1.6rem;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .p-scene__benefitCard {
    padding: 2.4rem 2.4rem 0;
  }
}

.p-scene__benefitTtl {
  padding-bottom: 2.4rem;
  border-bottom: 0.1rem solid #000000;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.5833333333;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-scene__benefitTtl {
    padding-bottom: 1.6rem;
    font-size: 1.8rem;
    line-height: 1.5555555556;
  }
}

.p-scene__benefitBody {
  margin-top: 2.4rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-scene__benefitBody {
    margin-top: 1.6rem;
    font-size: 1.4rem;
    line-height: 1.8571428571;
  }
}

.p-scene__benefitIll {
  display: block;
  padding-top: 3.2rem;
  text-align: center;
}
.p-scene__benefitIll img {
  display: inline-block;
  max-width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .p-scene__benefitIll {
    padding-top: 2.4rem;
  }
}

.p-scene__benefitItem:nth-child(1) .p-scene__benefitIll img {
  width: 28.9rem;
}

.p-scene__benefitItem:nth-child(2) .p-scene__benefitIll img {
  width: 10.1rem;
}

.p-scene__benefitItem:nth-child(3) .p-scene__benefitIll img {
  width: 25.2rem;
}

.p-scene__benefitItem:nth-child(4) .p-scene__benefitIll img {
  width: 29.7rem;
}

.p-scene__agents {
  padding-top: 16rem;
  padding-bottom: 16.1rem;
  background-color: #ffffff;
  border-radius: 6.4rem 6.4rem 0 0;
}
@media screen and (max-width: 768px) {
  .p-scene__agents {
    padding-top: 6.4rem;
    padding-bottom: 8rem;
    border-radius: 3.2rem 3.2rem 0 0;
  }
}

.p-scene__agentLead {
  margin-top: 4.8rem;
  font-size: 2rem;
  line-height: 1.8;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-scene__agentLead {
    margin-top: 2.4rem;
    font-size: 1.5rem;
    line-height: 1.8666666667;
  }
}

.p-scene__agentList {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 4.8rem;
  margin-top: 8rem;
  margin-inline: -1rem;
}
@media screen and (max-width: 768px) {
  .p-scene__agentList {
    grid-template-columns: minmax(0, 1fr);
    gap: 3.2rem;
    margin-top: 3.2rem;
  }
}

.p-scene__agentCard {
  position: relative;
  display: block;
  transition: opacity 0.3s ease;
}
.p-scene__agentCard, .p-scene__agentCard:hover, .p-scene__agentCard:visited, .p-scene__agentCard:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-scene__agentCard:hover {
  opacity: 0.8;
}

.p-scene__agentBg {
  display: block;
  width: 100%;
  height: auto;
}

.p-scene__agentTtl {
  position: absolute;
  top: 25.27%;
  left: 15.05%;
  right: 8%;
  font-size: 3.2rem;
  font-weight: 400;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-scene__agentTtl {
    font-size: 2.4rem;
  }
}

.p-scene__agentBody {
  position: absolute;
  top: 40.32%;
  left: 15.05%;
  width: 70.16%;
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .p-scene__agentBody {
    font-size: 1.4rem;
    line-height: 1.8571428571;
  }
}

.p-scene__agentMore {
  position: absolute;
  top: 77.15%;
  left: 29.3%;
  font-size: 2rem;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .p-scene__agentMore {
    font-size: 1.6rem;
  }
}

.p-scene__missing {
  padding-block: 8rem;
}

.p-scene__line {
  display: none;
}
@media screen and (min-width: 769px) {
  .p-scene__line {
    position: absolute;
    z-index: 0;
    display: block;
    width: 100vw;
    pointer-events: none;
    border-left: 0.1rem solid #000000;
  }
}

@media screen and (min-width: 769px) {
  .p-scene__line--a {
    top: 11.7rem;
    left: calc(50% + 30.35rem);
    height: 21.9rem;
    border-top: 0.1rem solid #000000;
    border-top-left-radius: 17rem;
  }
}

@media screen and (min-width: 769px) {
  .p-scene__line--b {
    top: 112.9rem;
    right: calc(50% + 49.4rem);
    height: 24.1rem;
    border-left: 0;
    border-top: 0.1rem solid #000000;
    border-right: 0.1rem solid #000000;
    border-top-right-radius: 17rem;
  }
}

.p-scene__dots {
  display: none;
}
@media screen and (min-width: 769px) {
  .p-scene__dots {
    position: absolute;
    z-index: 0;
    display: block;
    pointer-events: none;
    background-color: #ffaf34;
    mask: url(../img/front/qa_dots.svg) no-repeat center/contain;
    -webkit-mask: url(../img/front/qa_dots.svg) no-repeat center/contain;
  }
}

@media screen and (min-width: 769px) {
  .p-scene__dots--teal {
    width: 12.8rem;
    height: 6.5rem;
    background-color: #00c8be;
  }
}

@media screen and (min-width: 769px) {
  .p-scene__dots--orange {
    width: 12.8rem;
    height: 6.5rem;
  }
}

@media screen and (min-width: 769px) {
  .p-scene__dots--wide {
    width: 25.9rem;
    height: 10.9rem;
    background-color: #ffaa06;
    mask-image: url(../img/scene/dots_wide.svg);
    -webkit-mask-image: url(../img/scene/dots_wide.svg);
  }
}

@media screen and (min-width: 769px) {
  .p-scene__dots--a {
    top: 2.5rem;
    left: calc(50% + 46rem);
  }
}

@media screen and (min-width: 769px) {
  .p-scene__dots--d {
    top: 7.6rem;
    left: calc(50% + 14.6rem);
    width: 12.8rem;
  }
}

@media screen and (min-width: 769px) {
  .p-scene__dots--b {
    top: 22.7rem;
    left: calc(50% + 57rem);
    width: 14.6rem;
  }
}

@media screen and (min-width: 769px) {
  .p-scene__dots--f {
    top: -3.7rem;
    left: -34.2rem;
  }
}

@media screen and (min-width: 769px) {
  .p-scene__dots--c {
    top: 100%;
    left: 115.4rem;
    margin-top: 3.5rem;
  }
}

@media screen and (min-width: 769px) {
  .p-scene__dots--e {
    top: 20.5rem;
    left: -26.9rem;
  }
}

@media screen and (min-width: 769px) {
  .p-scene__dots--g {
    top: 100%;
    left: -22.7rem;
    margin-top: 12rem;
  }
}

.p-scene__step {
  position: relative;
}

@media screen and (min-width: 769px) {
  .p-scene__step--02::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 94.75rem;
    width: 100vw;
    height: 21.9rem;
    border-left: 0.1rem solid #000000;
    border-bottom: 0.1rem solid #000000;
    border-bottom-left-radius: 17rem;
    pointer-events: none;
  }
}

@media screen and (min-width: 769px) {
  .p-scene__step--04::before {
    content: "";
    position: absolute;
    top: calc(100% - 8.1rem);
    left: 12.85rem;
    width: 100vw;
    height: 24.1rem;
    border-left: 0.1rem solid #000000;
    border-bottom: 0.1rem solid #000000;
    border-bottom-left-radius: 17rem;
    pointer-events: none;
    z-index: -1;
  }
}

@media screen and (min-width: 769px) {
  .p-scene__step--01::after,
  .p-scene__step--02::after,
  .p-scene__step--03::after {
    content: "";
    position: absolute;
    top: 100%;
    margin-top: 5.6rem;
    width: 2.4rem;
    height: 10rem;
    background: url(../img/front/dots_01.webp) center center/contain no-repeat;
    pointer-events: none;
  }
}

@media screen and (min-width: 769px) {
  .p-scene__step--01::after {
    left: 88.7rem;
  }
}

@media screen and (min-width: 769px) {
  .p-scene__step--02::after {
    left: 16.2rem;
  }
}

@media screen and (min-width: 769px) {
  .p-scene__step--03::after {
    left: 88.7rem;
  }
}

.p-scene__hero,
.p-scene__day {
  position: relative;
  overflow-x: clip;
}

.p-scene__benefitHead {
  padding-bottom: 2.4rem;
  border-bottom: 0.1rem solid #000000;
}
@media screen and (max-width: 768px) {
  .p-scene__benefitHead {
    padding-bottom: 1.6rem;
  }
}

.p-scene__benefitTtl {
  padding-bottom: 2.4rem;
  border-bottom: 0.1rem solid #000000;
}
@media screen and (max-width: 768px) {
  .p-scene__benefitTtl {
    padding-bottom: 1.6rem;
  }
}

.p-scene__stepLine {
  display: none;
}
@media screen and (min-width: 769px) {
  .p-scene__stepLine {
    position: absolute;
    top: 100%;
    display: block;
    width: 0.1rem;
    height: 4rem;
    background-color: #000000;
    pointer-events: none;
  }
}

@media screen and (min-width: 769px) {
  .p-scene__step--01 .p-scene__stepLine {
    left: 89.9rem;
  }
}

@media screen and (min-width: 769px) {
  .p-scene__step--02 .p-scene__stepLine {
    left: 17.4rem;
  }
}

@media screen and (min-width: 769px) {
  .p-scene__step--03 .p-scene__stepLine {
    left: 89.9rem;
  }
}

.p-scene__agentItem:nth-child(1) .p-scene__agentTtl {
  top: 26.48%;
}
.p-scene__agentItem:nth-child(1) .p-scene__agentBody {
  top: 41.29%;
}
.p-scene__agentItem:nth-child(1) .p-scene__agentMore {
  top: 77.52%;
}

.p-scene__agentItem:nth-child(6) .p-scene__agentTtl {
  top: 26.06%;
}
.p-scene__agentItem:nth-child(6) .p-scene__agentBody {
  top: 40.96%;
}
.p-scene__agentItem:nth-child(6) .p-scene__agentMore {
  top: 77.39%;
}

/* SCENE 02 */
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__crumbs {
    padding-top: 4rem;
  }
}
.p-scene.--scene02 .p-scene__crumbs .p-scene__inner {
  max-width: 140rem;
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__inner {
    padding-inline: 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__eyebrow {
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__ttl {
    font-size: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__hero {
    padding-top: 8.2rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__hero .p-scene__dots {
    display: block;
    width: 11.5rem;
    height: 8.5rem;
    background: url("../img/scene/dot_wide.webp") no-repeat center;
    background-size: contain;
    position: absolute;
    right: 0;
    top: 1.8rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__heroHead {
    padding-bottom: 4.4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__heroLead {
    font-size: 3rem;
    margin-top: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__heroBody {
    font-size: 2rem;
    margin-top: 2rem;
    line-height: 1.8;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__heroCols {
    margin-top: 0;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__secTtl {
    font-size: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__day {
    padding-top: 16rem;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__day .p-scene__line--a {
    top: 22rem;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__day .p-scene__dots--d {
    top: 4.8rem;
    left: 85%;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__day .p-scene__dots--b {
    top: 30.6rem;
    left: calc(50% + 55rem);
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__day .p-scene__stepLine {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    width: 0.1rem;
    height: 8rem;
    background-color: #000000;
    pointer-events: none;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__day .p-scene__steps {
    margin-top: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step {
    flex-direction: column-reverse;
    padding: 4rem 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step + .p-scene__step {
    margin-top: 15rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step:after {
    content: "";
    position: absolute;
    top: calc(100% + 8rem);
    left: 50%;
    transform: translateX(-50%);
    width: 0.8rem;
    height: 4.4rem;
    background: url(../img/front/dots_01.webp) center center/contain no-repeat;
    pointer-events: none;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__day .p-scene__stepHead {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__day .p-scene__stepText {
    margin-top: 1.3rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__day .p-scene__stepNo {
    font-size: 5.4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__day .p-scene__stepTtl {
    font-size: 2.8rem;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--01 {
    padding: 4rem 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--01:before {
    content: "";
    display: block;
    position: absolute;
    width: 7.9rem;
    height: 4.1rem;
    top: calc(100% + 3.8rem);
    right: 0;
    z-index: 0;
    pointer-events: none;
    background: url("../img/scene/qa_dot_blue.webp") no-repeat center;
    background-size: contain;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--01:after {
    left: 89rem;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--01 .p-scene__stepLine {
    left: 90.5rem;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--02:after {
    left: 20.4rem;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--02 .p-scene__stepLine {
    left: 21.5rem;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--02 .p-scene__stepHead {
    gap: 2rem;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--03 {
    padding: 4.1rem 2.4rem 3.4rem;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--03:before {
    content: "";
    position: absolute;
    top: -65%;
    right: 98rem;
    width: 100vw;
    height: 21.9rem;
    border-right: 0.1rem solid #000000;
    border-top: 0.1rem solid #000000;
    border-top-right-radius: 17rem;
    pointer-events: none;
    z-index: -1;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--03:after {
    left: 88rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--03 .p-scene__dots--c {
    display: block;
    position: absolute;
    width: 7.9rem;
    height: 4.1rem;
    top: calc(100% + 1.2rem);
    left: 0;
    z-index: 0;
    pointer-events: none;
    background: url("../img/scene/qa_dot_blue.webp") no-repeat center;
    background-size: contain;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--03 .p-scene__stepHead {
    gap: 2rem;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--03 .p-scene__stepLine {
    left: 89rem;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--04 {
    padding: 3.5rem 2.4rem 4.6rem;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--04:before {
    z-index: -1;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--04:after {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--04 .p-scene__stepHead {
    gap: 2rem;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--04 .p-scene__stepText {
    margin-top: 1rem;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--04 .p-scene__dots--g {
    display: block;
    left: -25.4rem;
    margin-top: 13.5rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__day .p-scene__step--04 .p-scene__dots--g {
    position: absolute;
    width: 17.4rem;
    height: 7.4rem;
    top: calc(100% + 3.8rem);
    left: 0;
    z-index: 0;
    display: block;
    pointer-events: none;
    background: url("../img/scene/qa_dot.webp") no-repeat center;
    background-size: contain;
  }
}
.p-scene.--scene02 .p-scene__benefit {
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__benefit {
    margin-top: 12rem;
    padding: 11.8rem 0 12rem;
  }
}
.p-scene.--scene02 .p-scene__benefit:after {
  content: "";
  width: 31.7rem;
  height: 37.6rem;
  background: url("../img/scene/bg-dot.webp") no-repeat center;
  background-size: contain;
  position: absolute;
  bottom: 14%;
  right: 5%;
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__benefit:after {
    z-index: -1;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__benefitHead {
    padding-bottom: 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__benefit .p-scene__benefits {
    margin-top: 4rem;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__benefitCard {
    padding: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__benefitCard {
    padding: 3.8rem 2.4rem;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__benefitBody {
    margin-top: 2.1rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__benefitBody {
    margin-top: 2.5rem;
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__benefitTtl {
    padding-bottom: 2.4rem;
    font-size: 2.2rem;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__benefit .p-scene__benefitItem:nth-child(1) .p-scene__benefitTtl {
    min-height: 10rem;
    padding-top: 1.8rem;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__benefit .p-scene__benefitItem:nth-child(1) .p-scene__benefitIll {
    padding-top: 0;
    margin-top: 3.8rem;
  }
}
.p-scene.--scene02 .p-scene__benefit .p-scene__benefitItem:nth-child(1) .p-scene__benefitIll img {
  width: 28.7rem;
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__benefit .p-scene__benefitItem:nth-child(2) .p-scene__benefitIll {
    padding-top: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__benefit .p-scene__benefitItem:nth-child(3) {
    position: relative;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__benefit .p-scene__benefitItem:nth-child(3):after {
    content: "";
    position: absolute;
    width: 9.3rem;
    height: 4.7rem;
    top: calc(100% + 3.5rem);
    right: 0;
    z-index: 0;
    pointer-events: none;
    background: url("../img/scene/qa_dot_orange.webp") no-repeat center;
    background-size: contain;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__benefit .p-scene__benefitItem:nth-child(3) .p-scene__benefitIll {
    padding-top: 7rem;
  }
}
.p-scene.--scene02 .p-scene__benefit .p-scene__benefitItem:nth-child(3) .p-scene__benefitIll img {
  width: 15.2rem;
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__agents {
    padding-top: 16.5rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__agents {
    padding-top: 12rem;
    padding-bottom: 12.5rem;
  }
}
.p-scene.--scene02 .p-scene__agents .p-scene__secTtl {
  padding-bottom: 2.4rem;
  border-bottom: 0.1rem solid #000000;
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__agents .p-scene__secTtl {
    padding-bottom: 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__agents .p-scene__agentTtl {
    text-align: center;
    font-size: 2rem;
    margin-bottom: 1.9rem;
    position: unset;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__agents .p-scene__agentBg {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__agents .p-scene__agentBody {
    font-size: 1.4rem;
    line-height: 1.5;
    width: 81%;
    position: unset;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-scene__agents .p-scene__agentLead {
    margin-top: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__agents .p-scene__agentLead {
    font-size: 1.8rem;
    line-height: 1.7;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__agents .p-scene__agentMore {
    font-size: 1.8rem;
    left: unset;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__agents .p-scene__agentMore:after {
    content: "";
    width: 1.8rem;
    height: 1.8rem;
    position: absolute;
    right: -2.4rem;
    top: 50%;
    transform: translateY(-50%);
    background: url("../img/arrow/arrow_r.svg") no-repeat center;
    background-size: contain;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__agents .p-scene__agentItem {
    max-width: 26.2rem;
    margin-left: auto;
    margin-right: auto;
    position: relative;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__agents .p-scene__agentItem:before {
    content: "";
    position: absolute;
    width: 8rem;
    height: 8rem;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 1;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__agents .p-scene__agentItem:nth-child(1):before {
    background-image: url("../img/scene/icon_support_01.webp");
    top: -1%;
    right: -1%;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__agents .p-scene__agentItem:nth-child(2):before {
    background-image: url("../img/scene/icon_support_02.webp");
    top: -1%;
    right: -1%;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__agents .p-scene__agentItem:nth-child(3):before {
    background-image: url("../img/scene/icon_support_03.webp");
    top: 1%;
    right: 6%;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__agents .p-scene__agentItem:nth-child(4):before {
    background-image: url("../img/scene/icon_support_04.webp");
    top: -1%;
    right: -1%;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__agents .p-scene__agentItem:nth-child(5):before {
    width: 9.2rem;
    height: 6.5rem;
    background-image: url("../img/scene/icon_support_05.webp");
    top: 1%;
    right: 4%;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__agents .p-scene__agentItem:nth-child(6):before {
    width: 7.2rem;
    height: 3.5rem;
    background-image: url("../img/scene/icon_support_06.webp");
    top: 15%;
    right: 9%;
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__agents .p-scene__agentItem a {
    width: 26.2rem;
    padding-top: 5.5rem;
    aspect-ratio: 1/1;
    display: flex;
    flex-direction: column;
    align-items: center;
    background: url("../img/scene/bg_circle.webp") no-repeat center;
    background-size: 100% 100%;
  }
}
@media screen and (min-width: 769px) {
  .p-scene.--scene02 .p-front__ctaBand {
    padding-bottom: 17.5rem;
  }
}
@media (max-width: 1100px) {
  .p-scene.--scene02 .p-scene__agentList {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-scene__agentList {
    gap: 4.4rem;
    margin-top: 5rem;
    grid-template-columns: minmax(0, 1fr);
  }
}
@media screen and (max-width: 768px) {
  .p-scene.--scene02 .p-front__ctaBand .p-front__spDots {
    display: none;
  }
}

.p-review {
  overflow-x: clip;
}

.p-review__inner,
.p-review__points__inner,
.p-review__agent__inner,
.p-review__compare__inner,
.p-review__scenes__inner,
.p-review__cases__inner,
.p-review__others__inner {
  width: 100%;
  max-width: 151.2rem;
  margin-inline: auto;
  padding-inline: 6.4rem;
}
@media screen and (max-width: 1000px) {
  .p-review__inner,
  .p-review__points__inner,
  .p-review__agent__inner,
  .p-review__compare__inner,
  .p-review__scenes__inner,
  .p-review__cases__inner,
  .p-review__others__inner {
    padding-inline: 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__inner,
  .p-review__points__inner,
  .p-review__agent__inner,
  .p-review__compare__inner,
  .p-review__scenes__inner,
  .p-review__cases__inner,
  .p-review__others__inner {
    padding-inline: 2rem;
  }
}

.p-review__cases__inner,
.p-review__others__inner {
  padding-inline: 8.8rem;
}
@media screen and (max-width: 1000px) {
  .p-review__cases__inner,
  .p-review__others__inner {
    padding-inline: 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__cases__inner,
  .p-review__others__inner {
    padding-inline: 2rem;
  }
}

.p-review__ttl {
  font-size: 4rem;
  font-weight: 400;
  line-height: 1.2;
  color: #1a1a1a;
}
@media screen and (max-width: 1280px) {
  .p-review__ttl {
    font-size: 3.4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__ttl {
    font-size: 2.6rem;
    line-height: 1.5384615385;
  }
}

.p-review__ttl--lg {
  font-size: 4.8rem;
  line-height: 1.3333333333;
}
@media screen and (max-width: 1280px) {
  .p-review__ttl--lg {
    font-size: 3.8rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__ttl--lg {
    font-size: 2.8rem;
    line-height: 1.5714285714;
  }
}

.p-review__ttl--center {
  text-align: center;
}

.p-review__lead {
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}
@media screen and (max-width: 768px) {
  .p-review__lead {
    font-size: 1.4rem;
    line-height: 1.8571428571;
  }
}

.p-review__lead--center {
  text-align: center;
}

.p-review__head {
  display: flex;
  flex-direction: column;
}

.p-review__head--center {
  align-items: center;
  gap: 1.6rem;
}

.p-review__btn {
  min-height: 8.4rem;
  padding-inline: 4rem;
  border-radius: 0.4rem;
  font-size: 2rem;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .p-review__btn {
    min-height: 6rem;
    padding-inline: 2.4rem;
    font-size: 1.5rem;
  }
}

.p-review__btn--ghost {
  min-width: 0;
  width: 29.4rem;
  min-height: 6.4rem;
  padding-inline: 2.4rem;
  border: 0.1rem solid #1a1a1a;
  background-color: #FFFFFF;
  font-size: 1.5rem;
}
.p-review__btn--ghost, .p-review__btn--ghost:hover, .p-review__btn--ghost:visited, .p-review__btn--ghost:link {
  color: #1a1a1a;
  text-decoration: none;
}

.p-review__strength__inner {
  width: 100%;
  max-width: 151.2rem;
  margin-inline: auto;
  padding-inline: 8rem;
}
@media screen and (max-width: 768px) {
  .p-review__strength__inner {
    padding-inline: 2rem;
  }
}

.p-review__deco {
  position: absolute;
  inset: 0;
  z-index: 0;
  max-width: 151.2rem;
  margin-inline: auto;
  pointer-events: none;
}
.p-review__deco > span {
  position: absolute;
}
@media screen and (max-width: 768px) {
  .p-review__deco {
    display: none;
  }
}

.p-review__ln {
  border-color: #1a1a1a;
  border-style: solid;
  border-width: 0;
}

.p-review__dot3 {
  display: flex;
  gap: 0.4rem;
}
.p-review__dot3 i {
  display: block;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 50%;
}
.p-review__dot3 i:nth-child(1) {
  background: linear-gradient(180deg, #96E8E4 0%, #46D7CF 100%);
}
.p-review__dot3 i:nth-child(2),
.p-review__dot3 i:nth-child(3) {
  background: linear-gradient(180deg, #FFD699 0%, #FFAF34 100%);
}
.p-review__dot3 i:nth-child(3) {
  margin-left: 2rem;
}

.p-review__dot3--v {
  flex-direction: column;
}
.p-review__dot3--v i:nth-child(3) {
  margin-left: 0;
  margin-top: 2rem;
}

.p-review__dotGrid {
  width: 25.9rem;
  height: 10.9rem;
  background: url("../img/review/dot_grid.webp") no-repeat center/contain;
}

.p-review__ln--ba {
  top: 9.3rem;
  left: 8.1rem;
  bottom: -3.9rem;
  width: 10.4rem;
  border-top-width: 0.1rem;
  border-left-width: 0.1rem;
  border-top-left-radius: 7.446rem;
}

.p-review__dot3--ba {
  top: 8.1rem;
  left: 18.4rem;
}

.p-review.has-route-travellers .p-review__dot3--ba,
.p-review__strength.has-route-travellers .p-review__dot3 {
  visibility: hidden;
}

.p-review__routeTravellerLayer {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}

.p-review__routeTraveller {
  position: absolute;
  top: 0;
  left: 0;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 50%;
  background: linear-gradient(180deg, #96E8E4 0%, #46D7CF 100%);
  pointer-events: none;
}
.p-review__routeTraveller--1, .p-review__routeTraveller--2 {
  background: linear-gradient(180deg, #FFD699 0%, #FFAF34 100%);
}

@media (prefers-reduced-motion: reduce) {
  .p-review.has-route-travellers .p-review__dot3--ba,
  .p-review__strength.has-route-travellers .p-review__dot3 {
    visibility: visible;
  }
  .p-review__routeTravellerLayer {
    display: none;
  }
}
.p-review__ln--pt1 {
  top: -22.7rem;
  left: 8.1rem;
  width: 52rem;
  height: 38.9rem;
  border-left-width: 0.1rem;
  border-bottom-width: 0.1rem;
  border-bottom-left-radius: 7.446rem;
}

.p-review__ln--pt2 {
  top: 16.1rem;
  left: 32rem;
  width: 46.6rem;
  height: 9.5rem;
  border-top-width: 0.1rem;
  border-right-width: 0.1rem;
  border-top-right-radius: 5.165rem;
}

.p-review__ln--pt3 {
  bottom: 16rem;
  left: 50%;
  height: 16rem;
  border-left-width: 0.1rem;
}

.p-review__dot3--pt {
  bottom: 4.4rem;
  left: calc(50% - 1.2rem);
}

.p-review__strength .p-review__deco {
  --rv-card-r: min(127.2rem, calc(100% - 8.0rem));
  --rv-card-l: max(8.0rem, calc(100% - 127.2rem));
}

.p-review__ln--st1 {
  top: 12rem;
  right: 50%;
  width: 100vw;
  height: 16rem;
  border-top-width: 0.1rem;
  border-right-width: 0.1rem;
  border-top-right-radius: 5.165rem;
}

.p-review__dot3--st1 {
  top: 29.6rem;
  left: calc(50% - 1.2rem);
}

.p-review__ln--st2 {
  top: 62.8rem;
  left: 50%;
  height: 12rem;
  border-left-width: 0.1rem;
}

.p-review__ln--st3 {
  top: 107.2rem;
  left: var(--rv-card-r);
  width: 7.5rem;
  height: 20.6rem;
  border-top-width: 0.1rem;
  border-right-width: 0.1rem;
  border-top-right-radius: 7.456rem;
}

.p-review__dot3--st2 {
  top: 129.4rem;
  left: calc(var(--rv-card-r) + 6.1rem);
}

.p-review__ln--st4 {
  top: 172rem;
  left: calc(var(--rv-card-l) - 7.6rem);
  width: 7.5rem;
  height: 18.6rem;
  border-top-width: 0.1rem;
  border-left-width: 0.1rem;
  border-top-left-radius: 7.456rem;
}

.p-review__dot3--st3 {
  top: 192.2rem;
  left: calc(var(--rv-card-l) - 8.9rem);
}

@media screen and (max-width: 1352px) {
  .p-review__ln--st4,
  .p-review__dot3--st3 {
    display: none;
  }
}
.p-review__ln--st5 {
  top: 270.2rem;
  left: 50%;
  height: 16rem;
  border-left-width: 0.1rem;
}

.p-review__dot3--st4 {
  top: 287.8rem;
  left: calc(50% - 1.2rem);
}

.p-review__strength.has-connected-lines .p-review__ln--st4 {
  display: block;
}
.p-review__strength.has-connected-lines .p-review__dot3--st3 {
  display: flex;
}
.p-review__strength.has-connected-lines .p-review__ln.is-strength-straight {
  border-width: 0 0 0 0.1rem;
  border-radius: 0;
}

.p-review__dotGrid {
  top: 12rem;
  right: 8.8rem;
}

.p-review__ln--faq {
  bottom: 17.6rem;
  left: 50%;
  height: 16rem;
  border-left-width: 0.1rem;
}

@media screen and (min-width: 769px) {
  .p-review__faq .p-front__faq__inner {
    width: 100%;
    max-width: 133.6rem;
    gap: 8rem;
    padding: 8rem;
  }
  .p-review__faq .p-front__faq__head .p-front__eyebrow {
    line-height: 0.8571428571;
  }
  .p-review__faq .p-front__faq__jp {
    margin-top: 2.4rem;
    line-height: 1;
  }
  .p-review__faq .p-front__faq__q {
    align-items: flex-start;
    padding: 2.5rem 2.4rem 1.9rem 4rem;
  }
  .p-review__faq .p-front__faq__qtext {
    font-size: 2rem;
    line-height: 1.8;
  }
  .p-review__faq .p-front__faq__a {
    padding: 0 2.4rem 2.4rem 4rem;
  }
}
.p-review__dot3--faq {
  bottom: 6rem;
  left: calc(50% - 1.2rem);
}

.p-review__kv {
  padding-block: 0;
  background-color: #FFFFFF;
}

.p-review__kv__inner {
  display: grid;
  grid-template-columns: 76rem minmax(0, 1fr);
  column-gap: 0;
  align-items: start;
  width: 100%;
  max-width: 151.2rem;
  margin-inline: auto;
  padding: 8.3rem 10.3rem 7.1rem 10.9rem;
}
@media screen and (max-width: 1280px) {
  .p-review__kv__inner {
    grid-template-columns: 62rem minmax(0, 1fr);
    column-gap: 2.4rem;
    padding-inline: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__kv__inner {
    grid-template-columns: minmax(0, 1fr);
    padding: 4rem 2rem 4.8rem;
  }
}

.p-review__kv__eyebrow {
  display: inline-block;
  padding-bottom: 0.2rem;
  border-bottom: 0.1rem solid #1a1a1a;
  font-size: 2.4rem;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .p-review__kv__eyebrow {
    font-size: 1.6rem;
  }
}

.p-review__kv__ttl {
  margin-top: 1.3rem;
  font-size: 4rem;
  font-weight: 500;
  line-height: 1.5;
}
@media screen and (max-width: 1280px) {
  .p-review__kv__ttl {
    font-size: 3.2rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__kv__ttl {
    margin-top: 1.6rem;
    font-size: 2.3rem;
    line-height: 1.5833333333;
  }
}

.p-review__kv__lead {
  max-width: 71.3rem;
  margin-top: 1.5rem;
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .p-review__kv__lead {
    margin-top: 1.6rem;
    font-size: 1.4rem;
    line-height: 1.8571428571;
  }
}

.p-review__kv__figures {
  display: flex;
  align-items: flex-start;
  gap: 2.7rem;
  margin-top: 0.9rem;
}
@media screen and (max-width: 768px) {
  .p-review__kv__figures {
    flex-direction: column;
    gap: 1.6rem;
    margin-top: 2.4rem;
  }
}

.p-review__kv__badge {
  position: relative;
  flex-shrink: 0;
  width: 18.8rem;
  height: 12.1rem;
  background: url("../img/review/kv_badge.webp") no-repeat center/contain;
  color: #FFFFFF;
}
.p-review__kv__badge > span {
  position: absolute;
  white-space: nowrap;
}

.p-review__kv__badge--review {
  width: 19.3rem;
  height: 18.1rem;
  background: none;
}
.p-review__kv__badge--review img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.p-review__kv__badgeLabel {
  top: 2.7rem;
  left: 2.9rem;
  font-size: 1.35rem;
  line-height: 1.2;
}

.p-review__kv__badgeNum {
  top: 4.3rem;
  left: 3.1rem;
  font-family: "Roboto", sans-serif;
  font-size: 5rem;
  font-weight: 300;
  line-height: 1;
  letter-spacing: -0.03em;
}

.p-review__kv__badgeUnit {
  top: 5.7rem;
  left: 9.4rem;
  font-family: "Roboto", sans-serif;
  font-size: 2.7rem;
  font-weight: 300;
  line-height: 1;
}

.p-review__kv__badgeWord {
  top: 5.8rem;
  left: 11.6rem;
  font-size: 2rem;
  line-height: 1.215;
}

.p-review__kv__badgeNote {
  top: 5rem;
  left: 15.7rem;
  font-size: 1rem;
  line-height: 1.25;
}

.p-review__kv__note {
  max-width: 52.9rem;
  margin-top: 1rem;
  font-size: 1rem;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .p-review__kv__note {
    font-size: 1rem;
  }
}

.p-review__kv__figure {
  margin-top: -2.2rem;
}
.p-review__kv__figure img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .p-review__kv__figure {
    margin-top: 3.2rem;
  }
  .p-review__kv__figure img {
    max-width: 34rem;
    margin-inline: auto;
  }
}

.p-review__kv__btns {
  grid-column: 1/-1;
  display: flex;
  justify-content: center;
  gap: 1.6rem;
  margin-top: 6.2rem;
}
.p-review__kv__btns .c-btn {
  width: 36rem;
}
@media screen and (max-width: 768px) {
  .p-review__kv__btns {
    flex-direction: column;
    gap: 1.2rem;
    margin-top: 3.2rem;
  }
  .p-review__kv__btns .c-btn {
    width: 100%;
  }
}

.p-review__ba {
  position: relative;
  padding: 6.3rem 0 0;
}
@media screen and (max-width: 768px) {
  .p-review__ba {
    padding: 4.8rem 0;
  }
}

.p-review__ba__inner {
  width: 103.4rem;
  max-width: calc(100% - 20rem);
  margin-left: auto;
  margin-right: max(2.4rem, (100% - 151.2rem) / 2 + 13.6rem);
}
@media screen and (max-width: 1000px) {
  .p-review__ba__inner {
    max-width: calc(100% - 8.8rem);
    margin-right: 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__ba__inner {
    width: 100%;
    max-width: none;
    margin-inline: auto;
    padding-inline: 2rem;
  }
}

.p-review__ba .p-review__ttl {
  line-height: 1.4;
}

.p-review__ba .p-review__lead {
  margin-top: 4rem;
}

.p-review__ba__panels {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 2.4rem minmax(0, 1fr);
  align-items: center;
  gap: 1.6rem;
  max-width: 101.6rem;
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .p-review__ba__panels {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.6rem;
    margin-top: 2.4rem;
  }
}

.p-review__ba__panel {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  align-self: stretch;
  padding: 2.8rem 3.2rem;
  border-radius: 1.6rem;
}
@media screen and (max-width: 768px) {
  .p-review__ba__panel {
    padding: 2rem;
  }
}
.p-review__ba__panel img {
  object-fit: contain;
}

.p-review__ba__panel--before {
  background-color: #E5F9F8;
  border: 0.2rem solid #96e8e4;
}

.p-review__ba__panel--after {
  background-color: #fff8ed;
  border: 0.2rem solid #FFBC57;
}

.p-review__ba__badge {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  padding: 1rem 2rem;
  border-radius: 1rem;
  font-size: 1.7rem;
  line-height: 1.8;
}
.p-review__ba__badge img {
  flex-shrink: 0;
  width: 7rem;
  height: 7rem;
}
@media screen and (max-width: 768px) {
  .p-review__ba__badge {
    gap: 1.2rem;
    padding: 0.8rem 1.2rem;
    font-size: 1.6rem;
  }
  .p-review__ba__badge img {
    width: 5rem;
    height: 5rem;
  }
}

.p-review__ba__panel--before .p-review__ba__badge {
  background-color: #96e8e4;
}

.p-review__ba__panel--after .p-review__ba__badge {
  background-color: #FFD699;
}

.p-review__ba__items {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
.p-review__ba__items li {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  padding: 1.2rem 1.6rem;
  border: 0.1rem solid #E6E6E6;
  border-radius: 0.8rem;
  background-color: #FFFFFF;
}

.p-review__ba__itemTtl,
.p-review__ba__itemTxt {
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .p-review__ba__itemTtl,
  .p-review__ba__itemTxt {
    font-size: 1.4rem;
    line-height: 1.8571428571;
  }
}

.p-review__ba__panel--before .p-review__ba__itemTxt {
  color: #00504C;
}

.p-review__ba__panel--after .p-review__ba__itemTxt {
  color: #A65200;
}

.p-review__ba__arrow {
  position: relative;
  display: block;
  width: 2.4rem;
  height: 1.4rem;
  justify-self: center;
  object-fit: contain;
}
.p-review__ba__arrow::before, .p-review__ba__arrow::after {
  content: none;
}
@media screen and (max-width: 768px) {
  .p-review__ba__arrow {
    transform: rotate(90deg);
  }
}

.p-review__ba__trial {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.6rem;
  margin-top: 4rem;
  padding: 4rem 2rem;
  border: 0.1rem solid #ffaf34;
  background: linear-gradient(180deg, #FFD699 0%, #FFAF34 100%);
}
@media screen and (max-width: 768px) {
  .p-review__ba__trial {
    margin-top: 3.2rem;
    padding: 2.4rem 1.6rem;
  }
}

.p-review__ba__trialLead {
  font-size: 2rem;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .p-review__ba__trialLead {
    font-size: 1.6rem;
  }
}

.p-review__ba__trialBtn .c-btn {
  width: 36rem;
}
@media screen and (max-width: 768px) {
  .p-review__ba__trialBtn .c-btn {
    width: 100%;
    max-width: 32rem;
  }
}

.p-review__points {
  position: relative;
  padding: 29.7rem 0 19.6rem;
}
@media screen and (max-width: 1280px) {
  .p-review__points {
    padding-top: 20rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__points {
    padding: 6.4rem 0 4.8rem;
  }
}

.p-review__points__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 2.4rem;
  row-gap: 2rem;
  margin-top: 8rem;
}
@media screen and (max-width: 768px) {
  .p-review__points__list {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.6rem;
    margin-top: 3.2rem;
  }
}

.p-review__point {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 27.6rem;
  padding: 2.8rem 3.2rem 3.2rem;
  border-radius: 1.6rem;
  background-color: #fff8ed;
}
@media screen and (max-width: 768px) {
  .p-review__point {
    padding: 2rem;
  }
}

.p-review__point__head {
  display: flex;
  align-items: center;
  gap: 1.6rem;
}

.p-review__point__no {
  font-family: "Roboto", sans-serif;
  font-size: 4rem;
  font-weight: 200;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-review__point__no {
    font-size: 3rem;
  }
}

.p-review__point__ttl {
  font-size: 2.4rem;
  line-height: 1.8571428571;
}
@media screen and (max-width: 1280px) {
  .p-review__point__ttl {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__point__ttl {
    font-size: 2rem;
    line-height: 1.6;
  }
}

.p-review__point__body {
  max-width: 46.4rem;
  margin-top: 1.2rem;
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .p-review__point__body {
    max-width: none;
    font-size: 1.4rem;
    line-height: 1.8571428571;
  }
}

.p-review__point__pill {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  margin-top: auto;
  padding-top: 2.8rem;
  padding: 0.8rem 2rem 0.8rem 1.6rem;
  border: 0.1rem solid #FFBC57;
  border-radius: 10rem;
  background-color: #FFFFFF;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.45;
  color: #232323;
}
.p-review__point__pill span {
  flex-shrink: 0;
  font-size: 1.3rem;
  font-weight: 700;
  color: #FFAA06;
}
@media screen and (max-width: 768px) {
  .p-review__point__pill {
    margin-top: 1.6rem;
    font-size: 1.3rem;
  }
}

.p-review__point__ill {
  position: absolute;
  display: block;
}
.p-review__point__ill img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .p-review__point__ill {
    display: none;
  }
}

.p-review__point:nth-child(1) .p-review__point__ill {
  top: 4.2rem;
  right: 3.7rem;
  width: 12.7rem;
}

.p-review__point:nth-child(2) .p-review__point__ill {
  top: 3rem;
  right: 4.1rem;
  width: 15.4rem;
}

.p-review__point:nth-child(3) .p-review__point__ill {
  top: 5.4rem;
  right: 4.5rem;
  width: 11.3rem;
}

.p-review__point:nth-child(4) .p-review__point__ill {
  top: 3.8rem;
  right: 4.7rem;
  width: 13.1rem;
}

@media screen and (min-width: 769px) {
  .p-review__points--review .p-review__ttl {
    letter-spacing: 0.13em;
    font-feature-settings: "palt";
  }
}
.p-review__points--review .p-review__points__list {
  row-gap: 2.4rem;
}
.p-review__points--review .p-review__point {
  min-height: 29rem;
  padding-bottom: 2.6rem;
}
.p-review__points--review .p-review__point:nth-child(n+3) {
  min-height: 35.9rem;
  padding-bottom: 2.9rem;
}
.p-review__points--review .p-review__point__no {
  flex-shrink: 0;
  font-family: "Inter", sans-serif;
}
.p-review__points--review .p-review__point__ttl {
  min-width: 0;
}
.p-review__points--review .p-review__point__content {
  position: relative;
  flex: 1;
  margin: 1.2rem 0 0.8rem;
}
.p-review__points--review .p-review__point__body {
  max-width: min(45.4rem, 100% - 16.2rem);
  margin-top: 0;
}
.p-review__points--review .p-review__point__pill {
  min-height: 3.6rem;
  padding-block: 0.6rem;
  margin-top: 0;
}
.p-review__points--review .p-review__point:nth-child(1) .p-review__point__body {
  max-width: min(46.4rem, 100% - 15rem);
}
.p-review__points--review .p-review__point:nth-child(1) .p-review__point__ill {
  top: -1.2rem;
  right: 0.5rem;
  width: 12.7rem;
}
.p-review__points--review .p-review__point:nth-child(2) .p-review__point__ill {
  top: -0.2rem;
  right: -0.1rem;
  width: 16.3rem;
}
.p-review__points--review .p-review__point:nth-child(3) .p-review__point__ill {
  top: -3.8rem;
  right: 0.4rem;
  width: 13.1rem;
}
.p-review__points--review .p-review__point:nth-child(4) .p-review__point__ill {
  top: -2.7rem;
  right: -3.2rem;
  width: 22.6rem;
}
@media screen and (max-width: 1000px) {
  .p-review__points--review .p-review__points__list {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media screen and (max-width: 768px) {
  .p-review__points--review .p-review__points__list {
    row-gap: 1.6rem;
  }
  .p-review__points--review .p-review__point,
  .p-review__points--review .p-review__point:nth-child(n+3) {
    min-height: 0;
    padding: 2rem;
  }
  .p-review__points--review .p-review__point__head {
    gap: 1.2rem;
  }
  .p-review__points--review .p-review__point__content {
    margin-bottom: 1.6rem;
  }
  .p-review__points--review .p-review__point .p-review__point__body,
  .p-review__points--review .p-review__point:nth-child(1) .p-review__point__body {
    max-width: none;
  }
}

.p-review__agent {
  padding: 8rem 0 0;
  border-top: 0.1rem solid #ffaf34;
  background-color: #FAF5E9;
}
@media screen and (max-width: 768px) {
  .p-review__agent {
    padding-top: 4.8rem;
  }
}

.p-review__agent .p-review__lead {
  margin-top: 8rem;
}
@media screen and (max-width: 768px) {
  .p-review__agent .p-review__lead {
    margin-top: 2.4rem;
  }
}

.p-review__flow {
  display: grid;
  grid-template-columns: 300fr 391fr 391fr 301fr;
  grid-auto-rows: 23.7rem;
  align-items: start;
  margin-top: 10.7rem;
}
@media screen and (max-width: 768px) {
  .p-review__flow {
    grid-template-columns: minmax(0, 1fr);
    grid-auto-rows: auto;
    gap: 4rem;
    margin-top: 5.6rem;
  }
}

.p-review__flow__step {
  position: relative;
  min-height: 21.1rem;
  margin-top: 1.3rem;
  padding: 2.7rem 3rem 2.1rem;
  background-color: #E5F9F8;
  text-align: center;
}
.p-review__flow__step:nth-of-type(1), .p-review__flow__step:nth-of-type(4) {
  min-height: 23.7rem;
}
.p-review__flow__step:nth-of-type(2) {
  border-right: 1px solid #fff;
}
@media screen and (max-width: 768px) {
  .p-review__flow__step {
    height: auto;
    margin-top: 0;
    padding: 4.4rem 2rem 2.4rem;
  }
}

.p-review__flow__step--edge {
  margin-top: 0;
  padding-top: 3.3rem;
  background-color: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .p-review__flow__step--edge {
    height: auto;
    padding-top: 4.4rem;
  }
}

.p-review__flow__arrow {
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 2;
  width: 2.4rem;
  height: 2.4rem;
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.p-review__flow:not(.p-review__flow--review) {
  --flow-arrow-gap: 5rem;
  grid-auto-rows: auto;
  align-items: center;
}
.p-review__flow:not(.p-review__flow--review) .p-review__flow__step {
  margin-top: 0;
}
@media screen and (max-width: 768px) {
  .p-review__flow:not(.p-review__flow--review) {
    gap: var(--flow-arrow-gap);
  }
  .p-review__flow:not(.p-review__flow--review) .p-review__flow__arrow {
    top: calc(var(--flow-arrow-gap) / -2);
    left: 50%;
    transform: translate(-50%, -50%) rotate(90deg);
  }
  .p-review__flow:not(.p-review__flow--review) .p-review__flow__avatar {
    position: static;
    display: block;
    margin: 0 auto 1.6rem;
  }
}

.p-review__flow__avatar {
  position: absolute;
  top: -5.6rem;
  left: 50%;
  width: 7rem;
  height: 7rem;
  margin-left: -3.5rem;
}
.p-review__flow__avatar img {
  width: 100%;
  height: auto;
}

.p-review__flow__avatar--sparkle {
  top: -2.2rem;
  left: 0;
}
@media screen and (max-width: 768px) {
  .p-review__flow__avatar--sparkle {
    top: -3.5rem;
    left: 50%;
  }
}

.p-review__flow--review .p-review__flow__step::before, .p-review__flow--review .p-review__flow__step::after {
  content: none;
}
.p-review__flow--review .p-review__flow__arrow {
  position: absolute;
  top: 9rem;
  left: 0;
  z-index: 2;
  width: 2.4rem;
  height: 2.4rem;
  transform: translateX(-50%);
  pointer-events: none;
}
.p-review__flow--review .p-review__flow__step--edge .p-review__flow__arrow {
  top: 10.3rem;
}
@media screen and (max-width: 768px) {
  .p-review__flow--review {
    gap: 4.8rem;
  }
  .p-review__flow--review .p-review__flow__step {
    padding: 2.4rem 2rem;
  }
  .p-review__flow--review .p-review__flow__avatar {
    position: static;
    display: block;
    margin: 0 auto 1.6rem;
  }
  .p-review__flow--review .p-review__flow__arrow,
  .p-review__flow--review .p-review__flow__step--edge .p-review__flow__arrow {
    top: -3.6rem;
    left: 50%;
    transform: translateX(-50%) rotate(90deg);
  }
}

.p-review__disclaimer,
.p-review__points__note {
  margin-top: 1.6rem;
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.7;
}

.p-review__flow__label {
  font-family: "Inter", sans-serif;
  font-size: 2.4rem;
  font-weight: 200;
  line-height: 1;
}

.p-review__flow__ttl {
  text-wrap: balance;
  margin-top: 0.6rem;
  font-size: 1.9rem;
  line-height: 2.6;
}
@media screen and (max-width: 1280px) {
  .p-review__flow__ttl {
    font-size: 1.7rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__flow__ttl {
    font-size: 1.8rem;
    line-height: 1.7777777778;
  }
}

.p-review__flow__body {
  margin-top: 0.6rem;
  font-size: 1.6rem;
  line-height: 2;
  text-align: left;
}
@media screen and (max-width: 1280px) {
  .p-review__flow__body {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__flow__body {
    font-size: 1.4rem;
    line-height: 1.8571428571;
  }
}
.p-review__flow__body span {
  display: inline-block;
}

.p-review__flow__step:not(.p-review__flow__step--edge) .p-review__flow__ttl {
  margin-top: 0;
}

.p-review__agent__note {
  margin-top: 4.8rem;
  padding-bottom: 0;
}
@media screen and (max-width: 768px) {
  .p-review__agent__note {
    margin-top: 3.2rem;
    padding-bottom: 4.8rem;
  }
}

.p-review__agent__noteTtl {
  font-size: 2.8rem;
  line-height: 1.8571428571;
}
@media screen and (max-width: 768px) {
  .p-review__agent__noteTtl {
    font-size: 2rem;
    line-height: 1.6;
  }
}

.p-review__agent__noteBody {
  margin-top: 1.6rem;
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .p-review__agent__noteBody {
    font-size: 1.4rem;
    line-height: 1.8571428571;
  }
}

.p-review__agent__noteCaption {
  margin-top: 1.6rem;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #000000;
}

.p-review__service {
  padding: 8rem 6.4rem 16rem;
  background-color: #FAF5E9;
}
@media screen and (max-width: 1000px) {
  .p-review__service {
    padding-inline: 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__service {
    padding: 4.8rem 2rem 6.4rem;
  }
}

.p-review__service__card {
  width: 100%;
  max-width: 138.4rem;
  margin-inline: auto;
  padding: 0;
  border-radius: 0;
  background-color: transparent;
}
@media screen and (max-width: 768px) {
  .p-review__service__card {
    padding: 3.2rem 1.6rem;
    border-radius: 1.6rem;
  }
}

.p-review__service .p-review__ttl {
  line-height: 1.4;
}

.p-review__service__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 37.4rem));
  justify-content: center;
  column-gap: 3.3rem;
  row-gap: 6.8rem;
  margin-top: 4.8rem;
}
@media screen and (max-width: 1280px) {
  .p-review__service__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 2rem;
    row-gap: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__service__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 1.2rem;
    row-gap: 2rem;
    margin-top: 3.2rem;
  }
}
@media screen and (max-width: 568px) {
  .p-review__service__list {
    grid-template-columns: minmax(0, 34rem);
    row-gap: 1.2rem;
  }
}

.p-review__svc a {
  position: relative;
  display: block;
  aspect-ratio: 374/372;
}
.p-review__svc a, .p-review__svc a:hover, .p-review__svc a:visited, .p-review__svc a:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-review__svc a:hover .p-review__svc__blob {
  transform: scale(1.02);
}

.p-review__svc__blob {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: bottom center;
  transition: transform 0.3s ease;
}

.p-review__svc__ill {
  position: absolute;
  z-index: 1;
  height: auto;
}

.p-review__svc--review .p-review__svc__ill {
  top: 0;
  left: 56.4%;
  width: 36.1%;
}

.p-review__svc--drafting .p-review__svc__ill {
  top: 2.2%;
  left: 80.2%;
  width: 16.8%;
}

.p-review__svc--research .p-review__svc__ill {
  top: 5.4%;
  left: 54.5%;
  width: 36.4%;
}

.p-review__svc--case .p-review__svc__ill {
  top: 0;
  left: 56.4%;
  width: 43.6%;
}

.p-review__svc--filing .p-review__svc__ill {
  top: 5.9%;
  left: 60.2%;
  width: 41.2%;
}

.p-review__svc--translation .p-review__svc__ill {
  top: 0;
  left: 62.3%;
  width: 34.2%;
}

.p-review__svc__ttl {
  position: absolute;
  z-index: 2;
  top: 26.6%;
  left: 15.2%;
  font-size: 3.2rem;
  line-height: 1;
}
@media screen and (max-width: 1280px) {
  .p-review__svc__ttl {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__svc__ttl {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 568px) {
  .p-review__svc__ttl {
    font-size: 2.6rem;
  }
}

.p-review__svc__body {
  position: absolute;
  z-index: 2;
  top: 41.4%;
  left: 15.2%;
  width: 74%;
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (max-width: 1280px) {
  .p-review__svc__body {
    font-size: 1.3rem;
    line-height: 1.8461538462;
  }
}
@media screen and (max-width: 768px) {
  .p-review__svc__body {
    font-size: 1.2rem;
    line-height: 1.6666666667;
  }
}
@media screen and (max-width: 568px) {
  .p-review__svc__body {
    font-size: 1.5rem;
    line-height: 1.8666666667;
  }
}

.p-review__svc__more {
  position: absolute;
  z-index: 2;
  top: 77.4%;
  left: 29.4%;
  display: inline-flex;
  align-items: center;
  gap: 0.8rem;
  font-size: 2rem;
  line-height: 1.8;
}
.p-review__svc__more::after {
  content: "";
  display: block;
  width: 2.6rem;
  height: 2.6rem;
  border-radius: 50%;
  background-color: #1a1a1a;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M7 13h11M14 9l4 4-4 4' fill='none' stroke='%23fff' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-size: contain;
}
@media screen and (max-width: 1280px) {
  .p-review__svc__more {
    font-size: 1.5rem;
  }
  .p-review__svc__more::after {
    width: 2rem;
    height: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__svc__more {
    left: 20%;
    font-size: 1.2rem;
    gap: 0.4rem;
  }
  .p-review__svc__more::after {
    width: 1.8rem;
    height: 1.8rem;
  }
}
@media screen and (max-width: 568px) {
  .p-review__svc__more {
    left: 29.4%;
    font-size: 1.6rem;
    gap: 0.8rem;
  }
  .p-review__svc__more::after {
    width: 2.2rem;
    height: 2.2rem;
  }
}

.p-review__cta {
  padding-block: 0;
  border: 0.1rem solid #ffaf34;
  border-inline: 0;
  background: linear-gradient(90deg, #FFD699 0%, #FFAF34 100%);
}

.p-review__cta__inner {
  display: grid;
  grid-template-columns: 41.9rem minmax(0, 1fr);
  align-items: center;
  column-gap: 7rem;
  width: 100%;
  max-width: 151.2rem;
  margin-inline: auto;
  padding: 3.3rem 10.3rem 2.5rem 8.4rem;
}
@media screen and (max-width: 1280px) {
  .p-review__cta__inner {
    grid-template-columns: 32rem minmax(0, 1fr);
    column-gap: 4rem;
    padding-inline: 4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__cta__inner {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 2.4rem;
    padding: 3.2rem 2rem;
  }
}

.p-review__cta__figure img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .p-review__cta__figure img {
    max-width: 28rem;
    margin-inline: auto;
  }
}

.p-review__cta__ttl {
  font-size: 4rem;
  line-height: 1.2;
}
@media screen and (max-width: 1280px) {
  .p-review__cta__ttl {
    font-size: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__cta__ttl {
    font-size: 2.2rem;
    line-height: 1.5454545455;
    text-align: center;
  }
}

.p-review__cta__lead {
  margin-top: 2rem;
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .p-review__cta__lead {
    margin-top: 1.2rem;
    font-size: 1.3rem;
    text-align: center;
  }
}

.p-review__cta__btns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.6rem;
  margin-top: 2rem;
}
.p-review__cta__btns .c-btn {
  position: relative;
  justify-content: center;
  min-width: 0;
  min-height: 8rem;
  padding: 0.4rem 4.8rem;
  border-radius: 0.4rem;
  font-size: 2rem;
  text-align: center;
}
.p-review__cta__btns .c-btn::after {
  position: absolute;
  top: 50%;
  right: 2.4rem;
  margin-top: -0.7rem;
}
.p-review__cta__btns .c-btn--white {
  border: 0.1rem solid #000000;
}
@media screen and (max-width: 1280px) {
  .p-review__cta__btns .c-btn {
    min-height: 6.4rem;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 1000px) {
  .p-review__cta__btns {
    gap: 1.2rem;
  }
  .p-review__cta__btns .c-btn {
    min-width: 0;
    padding-inline: 1.2rem;
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__cta__btns {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.2rem;
  }
  .p-review__cta__btns .c-btn {
    min-height: 5.6rem;
    font-size: 1.4rem;
  }
}

.p-review__cta--review {
  background: linear-gradient(137.02deg, #FFD699 5.02%, #FFAF34 98.33%);
}
.p-review__cta--review .p-review__cta__inner {
  grid-template-columns: 42.25rem minmax(0, 1fr);
  column-gap: 6.75rem;
  padding: 3.2rem 10.3rem 2.4rem 8.35rem;
}
.p-review__cta--review .p-review__cta__body {
  padding-top: 4rem;
}
@media screen and (max-width: 1280px) {
  .p-review__cta--review .p-review__cta__inner {
    grid-template-columns: 32rem minmax(0, 1fr);
    column-gap: 4rem;
    padding-inline: 4rem;
  }
}
@media screen and (max-width: 1000px) {
  .p-review__cta--review .p-review__cta__btns {
    grid-template-columns: minmax(0, 1fr);
  }
  .p-review__cta--review .p-review__cta__btns .c-btn {
    padding-inline: 4.8rem;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__cta--review .p-review__cta__inner {
    grid-template-columns: minmax(0, 1fr);
    padding: 3.2rem 2rem;
  }
  .p-review__cta--review .p-review__cta__body {
    padding-top: 0;
  }
  .p-review__cta--review .p-review__cta__btns .c-btn {
    font-size: 1.4rem;
  }
}

.p-review__ctaOrbit {
  position: relative;
  width: 100%;
  aspect-ratio: 422.5/378;
  font-size: 2.4rem;
}
.p-review__ctaOrbit img {
  position: absolute;
  display: block;
  max-width: none;
  margin: 0;
  object-fit: contain;
}
.p-review__ctaOrbit .p-review__ctaOrbit__base {
  top: 11.6402116402%;
  left: 0.8284023669%;
  width: 99.1715976331%;
  height: 81.2169312169%;
}
.p-review__ctaOrbit .p-review__ctaOrbit__icon {
  width: 26.7455621302%;
  height: 29.8941798942%;
}
.p-review__ctaOrbit .p-review__ctaOrbit__icon--review {
  top: 7.9365079365%;
  left: 0;
}
.p-review__ctaOrbit .p-review__ctaOrbit__icon--drafting {
  top: 0;
  left: 36.3313609467%;
}
.p-review__ctaOrbit .p-review__ctaOrbit__icon--research {
  top: 7.9365079365%;
  left: 72.6627218935%;
}
.p-review__ctaOrbit .p-review__ctaOrbit__icon--case {
  top: 62.1693121693%;
  left: 0;
}
.p-review__ctaOrbit .p-review__ctaOrbit__icon--filing {
  top: 70.1058201058%;
  left: 36.3313609467%;
}
.p-review__ctaOrbit .p-review__ctaOrbit__icon--translation {
  top: 62.1693121693%;
  left: 72.6627218935%;
}
@media screen and (max-width: 1280px) {
  .p-review__ctaOrbit {
    font-size: 1.82rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__ctaOrbit {
    max-width: 28rem;
    margin-inline: auto;
    font-size: 1.6rem;
  }
}

.p-review__ctaOrbit__label {
  position: absolute;
  top: 45.7671957672%;
  left: 0;
  width: 100%;
  font-weight: 700;
  line-height: 1.5833333333;
  text-align: center;
  white-space: nowrap;
}

.p-review__strength {
  position: relative;
  padding: 43.6rem 0;
}
@media screen and (max-width: 1280px) {
  .p-review__strength {
    padding-block: 24rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__strength {
    padding-block: 6.4rem;
  }
}

.p-review__strength--review {
  --rv-strength-bottom-space: 43.6rem;
  padding-bottom: var(--rv-strength-bottom-space);
}
.p-review__strength--review .p-review__ln--st5 {
  top: calc(100% - var(--rv-strength-bottom-space));
}
.p-review__strength--review .p-review__dot3--st4 {
  top: calc(100% - var(--rv-strength-bottom-space) + 17.6rem);
}
@media screen and (max-width: 1280px) {
  .p-review__strength--review {
    --rv-strength-bottom-space: 31.6rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__strength--review {
    --rv-strength-bottom-space: 6.4rem;
  }
}

.p-review__strength .p-review__head--center {
  gap: 4rem;
}

.p-review__strength__list {
  display: flex;
  flex-direction: column;
  gap: 8rem;
  margin-top: 16rem;
}
@media screen and (max-width: 768px) {
  .p-review__strength__list {
    gap: 3.2rem;
    margin-top: 4rem;
  }
}

.p-review__str {
  display: grid;
  grid-template-columns: 56.5rem minmax(0, 1fr);
  align-items: center;
  column-gap: 3.2rem;
  max-width: 119.2rem;
  padding: 8rem 3.8rem 8rem 2.9rem;
  border: 0.1rem solid #ffaf34;
  background-color: #fff8ed;
}
@media screen and (max-width: 1280px) {
  .p-review__str {
    grid-template-columns: 42rem minmax(0, 1fr);
    padding: 4.8rem 3.2rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__str {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 2.4rem;
    max-width: none;
    margin-inline: 0;
    padding: 2.4rem 2rem;
  }
}

.p-review__str--01,
.p-review__str--03 {
  margin-right: auto;
}

.p-review__str--02 {
  margin-left: auto;
}

.p-review__str__img img {
  width: 100%;
  height: 37.6rem;
  object-fit: contain;
}
@media screen and (max-width: 768px) {
  .p-review__str__img img {
    height: auto;
  }
}

.p-review__strength--review .p-review__str--01 .p-review__str__img img {
  width: min(100%, 53rem);
  height: auto;
}

.p-review__strength--review .p-review__str--03 .p-review__str__img img {
  width: min(100%, 52.3rem);
  height: auto;
}

.p-review__str__body {
  display: flex;
  flex-direction: column;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .p-review__str__body {
    gap: 1.6rem;
  }
}

.p-review__str__label {
  font-family: "Roboto", sans-serif;
  font-size: 2.4rem;
  font-weight: 200;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-review__str__label {
    font-size: 1.8rem;
  }
}

.p-review__strength--review .p-review__str__label {
  font-family: "Inter", sans-serif;
}

.p-review__str__ttl {
  font-size: 4rem;
  line-height: 1.3;
}
@media screen and (max-width: 1280px) {
  .p-review__str__ttl {
    font-size: 3rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__str__ttl {
    font-size: 2.2rem;
    line-height: 1.5454545455;
  }
}

.p-review__str__text {
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .p-review__str__text {
    font-size: 1.4rem;
    line-height: 1.8571428571;
  }
}

.p-review__str__chips {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.8rem;
}
.p-review__str__chips li {
  display: flex;
  align-items: flex-start;
  gap: 0.8rem;
  padding: 0.8rem 2rem 0.8rem 1.6rem;
  border: 0.1rem solid #FFBC57;
  border-radius: 10rem;
  background-color: #FFFFFF;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.2;
  color: #232323;
}
.p-review__str__chips span {
  flex-shrink: 0;
  font-size: 1.3rem;
  font-weight: 700;
  color: #FFAA06;
}
@media screen and (max-width: 768px) {
  .p-review__str__chips li {
    font-size: 1.3rem;
    line-height: 1.5384615385;
  }
}

.p-review__compare {
  padding: 16rem 0;
  background-color: #FAF5E9;
}
@media screen and (max-width: 1280px) {
  .p-review__compare {
    padding-block: 10rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__compare {
    padding-block: 5.6rem;
  }
}

.p-review__compare__scroll {
  margin-top: 8rem;
  overflow-x: auto;
}
@media screen and (max-width: 768px) {
  .p-review__compare__scroll {
    margin-top: 3.2rem;
  }
}

.p-review__compare__table {
  width: 100%;
  min-width: 76rem;
  border: 0.1rem solid #E6E6E6;
  border-radius: 0.4rem;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  table-layout: fixed;
}
.p-review__compare__table th,
.p-review__compare__table td {
  padding: 1.8rem 2.4rem;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.6;
  text-align: center;
  vertical-align: middle;
}
.p-review__compare__table tbody th,
.p-review__compare__table thead .p-review__compare__th:first-child {
  width: 25.9rem;
  border: 0.1rem solid #fcfbf6;
  background-color: #FFD699;
  text-align: left;
}
.p-review__compare__table tbody td {
  border: 0.1rem solid #E3D5BC;
  background-color: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .p-review__compare__table {
    min-width: 68rem;
  }
  .p-review__compare__table th,
  .p-review__compare__table td {
    padding: 1.2rem 1.6rem;
    font-size: 1.3rem;
  }
  .p-review__compare__table tbody th,
  .p-review__compare__table thead .p-review__compare__th:first-child {
    width: 16rem;
  }
}

.p-review__compare__th--ai {
  background: linear-gradient(90deg, #d8f7f5 0%, #46d7cf 100%);
  font-weight: 700 !important;
  color: #232323;
}

.p-review__compare__th--lisse {
  background: linear-gradient(90deg, #FFD699 0%, #FFAF34 100%);
  font-size: 1.4rem !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;
}

.p-review__compare__own {
  color: #8C4000;
}

.p-review__compare__table--review {
  color: #000000;
}
.p-review__compare__table--review .p-review__compare__th--ai {
  background: linear-gradient(90deg, #F0F0F0 0%, #D5D5D5 100.01%);
}
.p-review__compare__table--review tbody th,
.p-review__compare__table--review thead .p-review__compare__th:first-child {
  border: 0;
  border-bottom: 0.1rem solid #fcfbf6;
}
.p-review__compare__table--review tbody td {
  border: 0;
  border-bottom: 0.1rem solid #E3D5BC;
}
.p-review__compare__table--review tbody td + td {
  border-left: 0.1rem solid #E3D5BC;
}
.p-review__compare__table--review tbody tr:last-child th,
.p-review__compare__table--review tbody tr:last-child td {
  border-bottom: 0;
}

.p-review__scenes {
  padding: 16rem 0;
  background-color: #FFFFFF;
}
@media screen and (max-width: 1280px) {
  .p-review__scenes {
    padding-block: 10rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__scenes {
    padding-block: 5.6rem;
  }
}

.p-review__scenes__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2.4rem;
  margin-top: 8rem;
}
@media screen and (max-width: 768px) {
  .p-review__scenes__list {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.6rem;
    margin-top: 3.2rem;
  }
}

.p-review__scene {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding: 4rem;
  border: 0.1rem solid #ffaf34;
  background-color: #fff8ed;
}
@media screen and (max-width: 768px) {
  .p-review__scene {
    padding: 2.4rem 2rem;
  }
}

.p-review__scene__tag {
  align-self: flex-start;
  padding: 0.4rem 0.8rem;
  border-radius: 0.4rem;
  background-color: #FFD699;
  font-family: "Roboto", sans-serif;
  font-size: 1.2rem;
  line-height: 1.5;
}

.p-review__scene__ttl {
  font-size: 2.4rem;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .p-review__scene__ttl {
    font-size: 1.8rem;
    line-height: 1.6666666667;
  }
}

.p-review__scene__body,
.p-review__scene__answer {
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .p-review__scene__body,
  .p-review__scene__answer {
    font-size: 1.4rem;
    line-height: 1.8571428571;
  }
}

.p-review__scene__answer {
  padding-top: 1.2rem;
  border-top: 0.1rem dashed #D9D9D9;
}

.p-review__scenes--review .p-review__scene {
  color: #000000;
  text-align: justify;
}
.p-review__scenes--review .p-review__scene__detail {
  padding: 1.2rem;
  border: 0.1rem solid #ffaf34;
  border-radius: 1rem;
  background-color: #FFFFFF;
}
.p-review__scenes--review .p-review__scene__answer {
  margin-top: 1.6rem;
  padding: 0;
  border: 0;
  font-weight: 700;
}

.p-review__cases {
  padding: 16rem 0;
  border-top: 0.1rem solid #ffaf34;
  background-color: #FFFFFF;
}
@media screen and (max-width: 1280px) {
  .p-review__cases {
    padding-block: 10rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__cases {
    padding-block: 5.6rem;
  }
}

.p-review__cases__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 37.6rem));
  justify-content: center;
  gap: 2.4rem;
  margin-top: 4.8rem;
}
@media screen and (max-width: 1280px) {
  .p-review__cases__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media screen and (max-width: 768px) {
  .p-review__cases__list {
    grid-template-columns: minmax(0, 1fr);
    gap: 2rem;
    margin-top: 3.2rem;
  }
}

.p-review__case a {
  position: relative;
  display: block;
  height: 100%;
  border: 0.1rem solid #e5e5e5;
  border-radius: 0.4rem;
  background-color: #FFFFFF;
}
.p-review__case a, .p-review__case a:hover, .p-review__case a:visited, .p-review__case a:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-review__case a:hover {
  opacity: 0.8;
}

.p-review__case__badge {
  position: absolute;
  top: 1.6rem;
  left: 1.6rem;
  z-index: 1;
  padding: 0.4rem 0.8rem;
  border-radius: 0.4rem;
  background-color: #E6494D;
  font-family: "Roboto", sans-serif;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.5;
  color: #FFFFFF;
}

.p-review__case__img {
  display: block;
  aspect-ratio: 376/211;
}
.p-review__case__img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.p-review__case__noimg {
  display: block;
  width: 100%;
  height: 100%;
  background-color: #EBEBEB;
}

.p-review__case__body {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.8rem;
  padding: 1.6rem 1.6rem 3.1rem;
}

.p-review__case__tag {
  padding: 0.2rem 0.6rem;
  border-radius: 0.4rem;
  background-color: #FFD699;
  font-family: "Roboto", sans-serif;
  font-size: 1.2rem;
  line-height: 1.5;
}

.p-review__case__ttl {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2;
}

.p-review__case__chip {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  padding: 0.8rem 1.6rem;
  border: 0.1rem solid #FFBC57;
  border-radius: 10rem;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.2;
}
.p-review__case__chip span {
  color: #FFAA06;
  font-weight: 700;
}

.p-review__case__btn {
  width: 100%;
  min-width: 0;
  min-height: 4.8rem;
  margin-top: 1.8rem;
  padding: 0.4rem 2.4rem;
  border: 0.2rem solid #000000;
  border-radius: 0.4rem;
  font-size: 1.6rem;
  line-height: 1.5;
}
@media screen and (max-width: 1280px) {
  .p-review__case__btn {
    padding-inline: 1.6rem;
    font-size: 1.4rem;
  }
}

.p-review__cases__more {
  margin-top: 4.8rem;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-review__cases__more {
    margin-top: 3.2rem;
    font-size: 1.5rem;
  }
}

.p-review__cases__logos {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1.6rem;
  margin-top: 4.8rem;
}
.p-review__cases__logos li {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 8rem;
  border-radius: 0.8rem;
  background-color: transparent;
  font-family: "Inter", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.2125;
  color: #B3B3B3;
  overflow: hidden;
}
.p-review__cases__logos li img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
@media screen and (max-width: 768px) {
  .p-review__cases__logos {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.8rem;
    margin-top: 2.4rem;
  }
  .p-review__cases__logos li {
    height: 4.8rem;
    font-size: 1.2rem;
  }
}

.p-review__cases__btn {
  margin-top: 4.8rem;
  text-align: center;
}
.p-review__cases__btn .c-btn {
  width: 29.4rem;
}
@media screen and (max-width: 768px) {
  .p-review__cases__btn {
    margin-top: 3.2rem;
  }
  .p-review__cases__btn .c-btn {
    width: 100%;
    max-width: 29.4rem;
  }
}

.p-review__faq {
  position: relative;
  padding: 10.5rem 0 33.6rem;
}
@media screen and (max-width: 768px) {
  .p-review__faq {
    padding: 5.6rem 0 4.8rem;
  }
}
.p-review__faq .p-front__faq__q::after,
.p-review__faq .p-front__faq__item[open] .p-front__faq__q::after {
  content: none;
}
.p-review__faq .p-front__faq__icon {
  --faq-icon-line: 0.84rem;
  --faq-icon-stroke: 0.14rem;
  position: relative;
  flex-shrink: 0;
  width: 2.8rem;
  height: 2.8rem;
  margin-left: auto;
  border: 0.1rem solid #000000;
  border-radius: 50%;
  background-color: #000000;
  color: #FFFFFF;
  transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease;
}
.p-review__faq .p-front__faq__icon::before, .p-review__faq .p-front__faq__icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: currentColor;
  transform: translate(-50%, -50%);
}
.p-review__faq .p-front__faq__icon::before {
  width: var(--faq-icon-line);
  height: var(--faq-icon-stroke);
}
.p-review__faq .p-front__faq__icon::after {
  width: var(--faq-icon-stroke);
  height: var(--faq-icon-line);
  transform: translate(-50%, -50%) rotate(0deg);
  transition: transform 0.3s ease;
}
@media screen and (max-width: 768px) {
  .p-review__faq .p-front__faq__icon {
    --faq-icon-line: 0.72rem;
    --faq-icon-stroke: 0.12rem;
    width: 2.4rem;
    height: 2.4rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .p-review__faq .p-front__faq__icon, .p-review__faq .p-front__faq__icon::after {
    transition: none;
  }
}
.p-review__faq .p-front__faq__item[open] .p-front__faq__icon {
  border-color: #1a1a1a;
  background-color: #FFFFFF;
  color: #1a1a1a;
}
.p-review__faq .p-front__faq__item[open] .p-front__faq__icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.p-review__faq--review .p-front__faq__a .p-front__faq__mark {
  color: #000000;
}

.p-review__others {
  padding: 8rem 0;
  background-color: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .p-review__others {
    padding-block: 5.6rem;
  }
}

.p-review__others__tiles {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 1.6rem;
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .p-review__others__tiles {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.8rem;
    margin-top: 2.4rem;
  }
}

.p-review__tile a {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.4rem;
  height: 100%;
  padding: 2.8rem 1rem 2.4rem;
  border: 0.1rem solid #FFBC57;
}
.p-review__tile a, .p-review__tile a:hover, .p-review__tile a:visited, .p-review__tile a:link {
  color: #212121;
  text-decoration: none;
}
.p-review__tile a:hover {
  opacity: 0.8;
}
.p-review__tile img {
  width: 5.6rem;
  height: 5.6rem;
}
@media screen and (max-width: 768px) {
  .p-review__tile a {
    gap: 0.8rem;
    padding: 1.6rem 0.6rem;
  }
  .p-review__tile img {
    width: 4rem;
    height: 4rem;
  }
}

.p-review__tile.is-current a {
  border-color: transparent;
  background: linear-gradient(120deg, #FFD699 0%, #FFAF34 100%);
}

.p-review__tile__label {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-review__tile__label {
    font-size: 1.2rem;
  }
}

.p-review__tile__arrow {
  display: block;
  width: 2.6rem;
  height: 2.6rem;
  border: 0.1rem solid #1a1a1a;
  border-radius: 50%;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M8 13h10M14 9l4 4-4 4' fill='none' stroke='%231A1A1A' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-size: contain;
}
@media screen and (max-width: 768px) {
  .p-review__tile__arrow {
    width: 2rem;
    height: 2rem;
  }
}

.p-review__others .p-review__tile a {
  min-height: 18rem;
  border-radius: 0.8rem;
  background-color: #ffaf34;
  color: #232323;
}
.p-review__others .p-review__tile.is-current a {
  border-color: #FFBC57;
  background: #FFEACB;
  color: #212121;
}
.p-review__others .p-review__tile__arrow {
  width: 2.3rem;
  height: 2.3rem;
  flex-shrink: 0;
  border: 0;
  background: url("../img/review/tile_arrow_renew.webp") no-repeat center/contain;
}
@media screen and (max-width: 768px) {
  .p-review__others .p-review__tile a {
    min-height: 13.2rem;
  }
  .p-review__others .p-review__tile__arrow {
    width: 2rem;
    height: 2rem;
  }
}

.p-review__others__back {
  margin-top: 4rem;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}
.p-review__others__back a, .p-review__others__back a:hover, .p-review__others__back a:visited, .p-review__others__back a:link {
  color: #1a1a1a;
  text-decoration: none;
}
.p-review__others__back a:hover {
  opacity: 0.6;
}
@media screen and (max-width: 768px) {
  .p-review__others__back {
    margin-top: 2.4rem;
    font-size: 1.3rem;
  }
}

.p-review__doc {
  padding: 8.8rem 16rem;
  background: linear-gradient(90deg, #FFD699 0%, #FFAF34 100%);
}
@media screen and (max-width: 1280px) {
  .p-review__doc {
    padding-inline: 6.4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__doc {
    padding: 4.8rem 2rem;
  }
}

.p-review__doc__inner {
  display: grid;
  grid-template-columns: 45.8rem 35.1rem;
  justify-content: center;
  column-gap: 9.6rem;
  width: 100%;
  max-width: 119.2rem;
  margin-inline: auto;
}
@media screen and (max-width: 1280px) {
  .p-review__doc__inner {
    grid-template-columns: minmax(0, 1fr) 28rem;
    column-gap: 4.8rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__doc__inner {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 3.2rem;
  }
}

.p-review__doc__body {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2rem;
}

.p-review__doc__label {
  font-family: "Roboto", sans-serif;
  font-size: 2.4rem;
  font-weight: 200;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .p-review__doc__label {
    font-size: 1.8rem;
  }
}

.p-review__doc--review .p-review__doc__label {
  font-family: "Inter", sans-serif;
}

.p-review__doc__ttl {
  font-size: 4rem;
  line-height: 1.2;
}
@media screen and (max-width: 1280px) {
  .p-review__doc__ttl {
    font-size: 3.2rem;
  }
}
@media screen and (max-width: 768px) {
  .p-review__doc__ttl {
    font-size: 2.4rem;
    line-height: 1.5;
  }
}

.p-review__doc__text {
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .p-review__doc__text {
    font-size: 1.4rem;
    line-height: 1.8571428571;
  }
}

.p-review__doc__chips {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.8rem;
}
.p-review__doc__chips li {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  padding: 0.8rem 2rem 0.8rem 1.6rem;
  border-radius: 10rem;
  background-color: #FFFFFF;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.45;
  color: #232323;
}
.p-review__doc__chips span {
  flex-shrink: 0;
  font-size: 1.3rem;
  font-weight: 700;
  color: #FFAA06;
}

.p-review__doc__btn {
  width: 100%;
}
.p-review__doc__btn .c-btn {
  width: 100%;
  min-width: 0;
  min-height: 8rem;
  padding: 0.4rem 2.4rem;
  border: 0.2rem solid #000000;
  border-radius: 0.4rem;
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .p-review__doc__btn .c-btn {
    min-height: 5.6rem;
    font-size: 1.5rem;
  }
}

.p-review__doc__cover img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .p-review__doc__cover img {
    max-width: 28rem;
    margin-inline: auto;
  }
}

.p-review__company {
  padding: 8rem 0 12rem;
}
@media screen and (max-width: 768px) {
  .p-review__company {
    padding: 4.8rem 0 6.4rem;
  }
}

.p-review__str--02 .p-review__str__img img {
  height: auto;
}

.p-review__cases .c-btn, .p-review__case__btn {
  justify-content: center;
  text-align: center;
}

.p-review__agent__noteCaption {
  display: block;
  font-size: 1.2rem;
}

.p-review--contract .p-review__kv {
  position: relative;
  isolation: isolate;
}
.p-review--contract .p-review__kv::before, .p-review--contract .p-review__kv::after {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
  background-repeat: no-repeat;
  background-size: contain;
}
.p-review--contract .p-review__kv::before {
  top: -6.5rem;
  left: max(-0.6rem, 50% - 76.2rem);
  width: 68.2rem;
  height: 12.1rem;
  background-image: url("../img/review/kv_dots_top.svg");
}
.p-review--contract .p-review__kv::after {
  top: 44rem;
  right: max(-0.7rem, 50% - 76.3rem);
  width: 63.5rem;
  height: 28.5rem;
  background-image: url("../img/review/kv_dots_bottom.svg");
}
@media screen and (max-width: 768px) {
  .p-review--contract .p-review__kv::before, .p-review--contract .p-review__kv::after {
    display: none;
  }
}

.p-review__cases .c-btn {
  position: relative;
  padding-inline: 5.6rem;
}
.p-review__cases .c-btn::after {
  position: absolute;
  top: 50%;
  right: 2.4rem;
  transform: translateY(-50%);
}

.p-review--contract .p-review__kv__lead {
  max-width: none;
}

.p-review__kv__badge--survey {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 19.3rem;
  height: auto;
  aspect-ratio: 1;
  border-radius: 50%;
  background: linear-gradient(135deg, #62c9c9, #8ad9cf 60%, #b7e9da);
  text-align: center;
}
.p-review__kv__badge--survey > span {
  position: static;
}
.p-review__kv__badge--survey .p-review__kv__surveyLabel {
  font-size: 1.45rem;
  line-height: 1.5;
  font-weight: 700;
}
.p-review__kv__badge--survey .p-review__kv__surveyValue {
  font-family: "Roboto", sans-serif;
  font-size: 6.4rem;
  line-height: 1.1;
  font-weight: 500;
}
.p-review__kv__badge--survey .p-review__kv__surveyValue span {
  font-size: 3rem;
}
.p-review__kv__badge--survey .p-review__kv__surveyResult {
  font-size: 2.1rem;
  line-height: 1.4;
}
.p-review__kv__badge--survey sup {
  font-size: 1rem;
  vertical-align: super;
}

@media screen and (min-width: 769px) {
  .p-drafting .p-review__point {
    --drafting-point-icon-width: 12.7rem;
    --drafting-point-icon-ratio: 127 / 122;
    display: grid;
    grid-template-columns: minmax(0, 1fr) var(--drafting-point-icon-width);
    grid-template-rows: auto 1fr auto;
    column-gap: 2.4rem;
    row-gap: 1.2rem;
  }
  .p-drafting .p-review__point__content {
    display: contents;
  }
  .p-drafting .p-review__point:nth-child(2) {
    --drafting-point-icon-width: 12.85rem;
    --drafting-point-icon-ratio: 257 / 183;
  }
  .p-drafting .p-review__point:nth-child(3) {
    --drafting-point-icon-width: 12.9rem;
    --drafting-point-icon-ratio: 1;
  }
  .p-drafting .p-review__point:nth-child(4) {
    --drafting-point-icon-width: 9.6rem;
    --drafting-point-icon-ratio: 96 / 80;
  }
  .p-drafting .p-review__point__head, .p-drafting .p-review__point__body {
    grid-column: 1;
    min-width: 0;
  }
  .p-drafting .p-review__point__body {
    margin-top: 0;
  }
  .p-drafting .p-review__point__pill {
    grid-column: 1/-1;
    grid-row: 3;
    margin-top: 1.2rem;
  }
  .p-drafting .p-review__point:nth-child(n) .p-review__point__ill {
    position: static;
    grid-column: 2;
    grid-row: 1/3;
    align-self: center;
    width: var(--drafting-point-icon-width);
    aspect-ratio: var(--drafting-point-icon-ratio);
  }
  .p-drafting .p-review__point:nth-child(n) .p-review__point__ill img {
    display: block;
    height: 100%;
    object-fit: contain;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .p-drafting .p-review__point__head {
    grid-column: 1/-1;
  }
  .p-drafting .p-review__point:nth-child(n) .p-review__point__ill {
    grid-row: 2;
  }
}
.p-drafting .p-review__kv {
  background: url("../img/drafting/bg_kv_function.webp") no-repeat center;
  background-size: cover;
}
.p-drafting .p-review__kv .p-review__kv__figures {
  align-items: center;
}
.p-drafting .p-review__kv__body {
  padding-top: 1rem;
}
.p-drafting .p-review__kv__eyebrow {
  padding-bottom: 1.2rem;
}
.p-drafting .p-review__kv__ttl {
  margin-top: 0;
}
.p-drafting .p-review__kv__figures {
  margin-top: 0.4rem;
  gap: 3.9rem;
}
.p-drafting .p-review__kv__figures .p-review__kv__badge {
  width: 19.3rem;
  height: auto;
  aspect-ratio: 1;
  border-radius: 50%;
  background: linear-gradient(135deg, #62c9c9, #8ad9cf 60%, #b7e9da);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.p-drafting .p-review__kv__figures .p-review__kv__badgeNum {
  margin: 0.5rem 0;
  font-size: 6.2rem;
  font-weight: 500;
}
.p-drafting .p-review__kv__figures .p-review__kv__badgeWord {
  font-size: 2.3rem;
}
.p-drafting .p-review__kv__figures .p-review__kv__note {
  text-align: center;
}
.p-drafting .p-review__kv__figures .p-review__kv__lead {
  margin-top: 0;
  max-width: 43rem;
}
.p-drafting .p-review__kv__btns {
  margin-top: 8.7rem;
}
.p-drafting .p-review__ba {
  padding-top: 8.5rem;
}
.p-drafting .p-review__ba__panels {
  width: 106.5rem;
  max-width: none;
  grid-template-columns: 44.9rem 2.4rem 52.8rem;
  gap: 3.2rem;
  color: #000000;
}
@media screen and (max-width: 1280px) {
  .p-drafting .p-review__ba__panels {
    width: 100%;
    grid-template-columns: minmax(0, 449fr) 2.4rem minmax(0, 528fr);
    gap: 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-drafting .p-review__ba__panels {
    grid-template-columns: minmax(0, 1fr);
    gap: 3rem;
  }
}
.p-drafting .p-review__ba__panel--before {
  min-width: 0;
  padding: 2.6rem 3rem;
}
.p-drafting .p-review__ba__panel--before .p-review__ba__badge {
  width: 100%;
  font-weight: 400;
  color: #000000;
}
.p-drafting .p-review__ba__panel--before .p-review__ba__items {
  width: 100%;
}
.p-drafting .p-review__ba__panel--before .p-review__ba__items li {
  flex-direction: row;
  align-items: center;
  gap: 1.6rem;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.p-drafting .p-review__ba__panel--before .p-review__ba__items li:nth-child(n) {
  width: 100%;
  max-width: 37.6rem;
  margin: 0;
}
.p-drafting .p-review__ba__panel--before .p-review__ba__items li:nth-child(n)::before {
  content: none;
}
@media screen and (max-width: 768px) {
  .p-drafting .p-review__ba__panel--before {
    padding: 2rem;
  }
  .p-drafting .p-review__ba__panel--before .p-review__ba__items li {
    gap: 1.2rem;
  }
}
.p-drafting .p-review__ba .p-drafting__ba__avatar {
  display: block;
  flex-shrink: 0;
  width: 7rem;
  height: 7rem;
  object-fit: contain;
}
@media screen and (max-width: 768px) {
  .p-drafting .p-review__ba .p-drafting__ba__avatar {
    width: 5rem;
    height: 5rem;
  }
}
.p-drafting .p-review__ba .p-drafting__ba__message {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 0.4rem;
  min-width: 0;
  padding: 1.1rem 1.5rem;
  border: 0.1rem solid #E6E6E6;
  border-radius: 0.8rem;
  background-color: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .p-drafting .p-review__ba .p-drafting__ba__message {
    padding: 1.1rem;
  }
}
.p-drafting .p-review__ba__arrow img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.p-drafting .p-review__ba__arrow::before, .p-drafting .p-review__ba__arrow::after {
  content: none;
}
.p-drafting .p-review__ba .p-drafting__ba__result {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  height: 49.8rem;
}
@media screen and (max-width: 768px) {
  .p-drafting .p-review__ba .p-drafting__ba__result {
    height: auto;
    padding-top: 5rem;
  }
}
.p-drafting .p-review__ba__panel--after {
  position: relative;
  top: 2.55rem;
  align-self: center;
  align-items: center;
  justify-content: center;
  width: calc(100% - 6.4rem);
  height: 39.3rem;
  padding: 2.6rem 3rem;
  background-color: #FFF8ED;
}
.p-drafting .p-review__ba__panel--after .p-review__ba__badge {
  position: absolute;
  top: -5.2rem;
  left: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(100% - 1.4rem);
  min-height: 10rem;
  padding: 1.6rem;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  transform: translateX(-50%);
}
@media screen and (max-width: 1280px) {
  .p-drafting .p-review__ba__panel--after .p-review__ba__badge {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 1280px) {
  .p-drafting .p-review__ba__panel--after {
    width: calc(100% - 3.2rem);
    padding-inline: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .p-drafting .p-review__ba__panel--after {
    top: 0;
    width: 100%;
    height: 33rem;
    margin-top: 0;
    padding: 2rem;
  }
  .p-drafting .p-review__ba__panel--after .p-review__ba__badge {
    min-height: 8rem;
    padding: 1.2rem 0.8rem;
    font-size: 2rem;
  }
}
.p-drafting .p-review__ba .p-drafting__ba__person {
  display: block;
  flex-shrink: 0;
  width: 8.9rem;
  height: 8.9rem;
  object-fit: contain;
}
.p-drafting .p-review__ba .p-drafting__ba__documents {
  width: 100%;
  max-width: 40rem;
  aspect-ratio: 800/287;
}
.p-drafting .p-review__ba .p-drafting__ba__documents img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@media screen and (min-width: 769px) {
  .p-drafting .p-review__points {
    padding: 26rem 0 16rem;
  }
}
.p-drafting .p-review__points .p-review__ttl {
  letter-spacing: 0.03rem;
}
@media screen and (max-width: 768px) {
  .p-drafting .p-review__points .p-review__point {
    min-height: 0;
  }
}
.p-drafting .p-review__points .p-review__point__no {
  flex-shrink: 0;
}
.p-drafting .p-review__points .p-review__point__ttl {
  flex: 1;
  min-width: 0;
  line-height: 1.5;
}
.p-drafting .p-review__points .p-review__point__ttlPart {
  display: inline-block;
  max-width: 100%;
  word-break: keep-all;
}
.p-drafting .p-review__points .p-review__point__pill {
  margin-top: 1.5rem;
}
.p-drafting .p-review__points .p-review__ln--pt3,
.p-drafting .p-review__points .p-review__dot3 {
  display: none;
}
.p-drafting .p-review__agent .p-review__flow {
  grid-auto-rows: auto;
  align-items: center;
}
@media screen and (min-width: 769px) {
  .p-drafting .p-review__agent .p-review__flow {
    margin-top: 12rem;
  }
}
.p-drafting .p-review__agent .p-review__flow__step {
  min-width: 0;
  height: auto;
  min-height: 21.1rem;
  margin-top: 0;
  padding: 2.7rem 2rem;
  border: 0.05rem solid #fff;
}
.p-drafting .p-review__agent .p-review__flow__step--edge {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 30.3rem;
  padding-block: 3.3rem;
}
.p-drafting .p-review__agent .p-review__flow__body {
  text-align: left;
}
.p-drafting .p-review__agent .p-review__flow__phrase {
  display: inline-block;
  white-space: nowrap;
}
.p-drafting .p-review__agent .p-review__flow__step:last-child .p-review__flow__ttl {
  line-height: 1.6;
}
@media screen and (max-width: 1280px) {
  .p-drafting .p-review__agent .p-review__flow__ttl {
    line-height: 1.6;
    font-size: 1.9rem;
  }
  .p-drafting .p-review__agent .p-review__flow__body br {
    display: none;
  }
}
@media screen and (max-width: 1000px) {
  .p-drafting .p-review__agent .p-review__flow {
    grid-template-columns: minmax(0, 1fr);
    max-width: calc(100vw - 4.8rem);
    --flow-arrow-gap: 4.8rem;
    gap: var(--flow-arrow-gap);
    margin-top: 4.8rem;
  }
  .p-drafting .p-review__agent .p-review__flow__step {
    min-height: 0;
    padding: 2.4rem 2rem;
  }
  .p-drafting .p-review__agent .p-review__flow__arrow {
    top: calc(var(--flow-arrow-gap) / -2);
    left: 50%;
    transform: translate(-50%, -50%) rotate(90deg);
  }
  .p-drafting .p-review__agent .p-review__flow__avatar {
    position: static;
    display: block;
    margin: 0 auto 1.6rem;
  }
  .p-drafting .p-review__agent .p-review__flow__body {
    text-align: center;
  }
}
@media screen and (min-width: 769px) {
  .p-drafting .p-review__agent__note {
    margin-top: 9rem;
  }
}
@media screen and (max-width: 768px) {
  .p-drafting .p-review__svc__more {
    left: 50%;
    transform: translateX(-50%);
  }
}
.p-drafting .p-review__strength--review .p-review__ln--st5 {
  top: calc(100% - var(--rv-strength-bottom-space));
}
.p-drafting .p-review__strength--review .p-review__dot3--st4 {
  top: calc(100% - var(--rv-strength-bottom-space) + 17.6rem);
}
.p-drafting .p-review__compare__scroll,
.p-drafting .p-review__scenes__list {
  margin-top: 8rem;
}
@media screen and (max-width: 768px) {
  .p-drafting .p-review__compare__scroll,
  .p-drafting .p-review__scenes__list {
    margin-top: 3.2rem;
  }
}
.p-drafting .p-review__compare__table {
  max-width: none;
  margin: 0;
}
.p-drafting .p-front__faq__a .p-front__faq__mark {
  color: #000000;
}
@media screen and (min-width: 1281px) {
  .p-drafting .p-review__flow__ttl {
    font-size: 1.9rem;
  }
}

@media screen and (min-width: 1001px) {
  .p-drafting .p-review__agent .p-review__flow__step:not(.p-review__flow__step--edge) {
    min-height: 25rem;
  }
  .p-drafting .p-review__agent .p-review__flow__step:not(.p-review__flow__step--edge) .p-review__flow__ttl {
    min-height: 6.1rem;
    margin-top: 0;
  }
}

.p-research .p-review__kv {
  background: url("../img/research/bg_kv_function.webp") no-repeat center;
  background-size: cover;
}
@media screen and (min-width: 769px) {
  .p-research .p-review__kv__inner {
    grid-template-columns: minmax(0, 1fr) 40.9rem;
    padding-top: 10.2rem;
  }
}
.p-research .p-review__ba {
  padding: 6.3rem 0 0;
}
.p-research .p-review__ba .p-review__ttl {
  font-size: 4rem;
  line-height: 1.4;
}
.p-research .p-review__ba .p-review__lead {
  margin-top: 4rem;
}
.p-research .p-review__ba__panels {
  display: grid;
  grid-template-columns: minmax(0, 385fr) 3.6rem minmax(0, 528fr);
  align-items: center;
  gap: 1.6rem;
  width: 100%;
  max-width: 98.1rem;
  margin-top: 3rem;
}
.p-research .p-review__ba__panel--before {
  display: flex;
  flex-direction: column;
  gap: 3.4rem;
  width: 100%;
  max-width: 38.5rem;
  padding: 2.4rem 3.3rem;
  border: 0.2rem solid #96e8e4;
  border-radius: 1.6rem;
  background: #e5f9f8;
}
.p-research .p-review__ba__panel--before .p-review__ba__badge {
  display: block;
  margin: 0;
  padding: 0;
  background: transparent;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3;
  color: #000;
}
.p-research .p-review__ba__arrow {
  width: 2.4rem;
  height: 1.4rem;
}
.p-research .p-review__ba__panel--after {
  position: relative;
  display: block;
  align-self: center;
  min-width: 0;
  margin-top: 0.5rem;
  padding: 6.9rem 3.1rem 2.4rem 4.5rem;
  border: 0.2rem solid #ffbc57;
  border-radius: 1.6rem;
  background: #fff8ed;
}
.p-research .p-review__ba__panel--after .p-review__ba__badge {
  position: absolute;
  top: -5rem;
  left: 50%;
  display: block;
  width: 84.4696969697%;
  margin: 0;
  padding: 1.4rem 1rem;
  border-radius: 1rem;
  background: #ffd699;
  font-size: clamp(2rem, 1.85vw, 2.8rem);
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  color: #000;
  transform: translateX(-50%);
}
@media screen and (max-width: 1280px) {
  .p-research .p-review__ba .p-review__ttl {
    font-size: 3.4rem;
  }
  .p-research .p-review__ba .p-review__ba__panel--before {
    padding-inline: 2rem;
  }
  .p-research .p-review__ba .p-review__ba__panel--after {
    padding-inline: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .p-research .p-review__ba {
    padding: 4.8rem 0;
  }
  .p-research .p-review__ba .p-review__ttl {
    font-size: 2.6rem;
    line-height: 1.5;
  }
  .p-research .p-review__ba .p-review__lead {
    margin-top: 2.4rem;
  }
  .p-research .p-review__ba .p-review__ba__panels {
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
    gap: 1.6rem;
    max-width: 52.8rem;
    margin: 2.4rem auto 0;
  }
  .p-research .p-review__ba .p-review__ba__arrow {
    transform: rotate(90deg);
  }
  .p-research .p-review__ba .p-review__ba__panel--after {
    width: 100%;
    margin-top: 4rem;
    padding: 5.2rem 1.6rem 2.4rem;
  }
  .p-research .p-review__ba .p-review__ba__panel--after .p-review__ba__badge {
    top: -4rem;
    width: calc(100% - 3.2rem);
    font-size: 2rem;
  }
}
.p-research .p-research__baCards {
  display: grid;
  gap: 2rem;
  width: 100%;
}
.p-research .p-research__baCards img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 315/170;
  object-fit: contain;
}
.p-research .p-researchDecision {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 73fr) 11fr minmax(0, 266fr) 23fr minmax(0, 75fr);
  align-items: end;
  width: 100%;
  min-height: 16rem;
}
.p-research .p-researchDecision__arrow {
  position: absolute;
  bottom: 4.87rem;
  left: 16.2946428571%;
  width: 66.7410714286%;
  height: 1.65rem;
}
.p-research .p-researchDecision__ai, .p-research .p-researchDecision__person {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 7.5rem;
  object-fit: contain;
  margin-bottom: 2rem;
}
.p-research .p-researchDecision__ai {
  grid-column: 1;
}
.p-research .p-researchDecision__person {
  grid-column: 5;
}
.p-research .p-researchDecision__items {
  position: relative;
  z-index: 1;
  grid-column: 3;
  grid-row: 1;
  display: grid;
  gap: 0.3rem;
  min-height: 16rem;
  margin: 0;
  padding: 1.1rem;
  border: 0.1344rem solid #e6e6e6;
  border-radius: 1.0756rem;
  background: #fff;
}
.p-research .p-researchDecision__items li {
  display: flex;
  align-items: flex-start;
  gap: 0.2263rem;
  padding: 0.65rem 0.8rem;
  border: 0.1344rem solid #e6e6e6;
  border-radius: 0.5378rem;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.4;
  color: #1a1a1a;
}
.p-research .p-researchDecision__items img {
  flex: 0 0 1.2rem;
  width: 1.2rem;
  height: 1.2rem;
  margin-top: 0.25rem;
  object-fit: contain;
}
.p-research .p-researchDecision__items span {
  min-width: 0;
}
@media screen and (max-width: 768px) {
  .p-research .p-researchDecision {
    grid-template-columns: 4rem 0.8rem minmax(0, 1fr) 1.2rem 4rem;
  }
  .p-research .p-researchDecision .p-researchDecision__ai,
  .p-research .p-researchDecision .p-researchDecision__person {
    height: 4rem;
  }
  .p-research .p-researchDecision .p-researchDecision__arrow {
    left: 4rem;
    bottom: 3.2rem;
    width: calc(100% - 8rem);
  }
  .p-research .p-researchDecision .p-researchDecision__items {
    padding: 0.8rem;
  }
  .p-research .p-researchDecision .p-researchDecision__items li {
    padding: 0.6rem;
  }
}
@media screen and (min-width: 769px) {
  .p-research .p-review__points {
    padding-bottom: 16rem;
  }
}
@media screen and (min-width: 769px) {
  .p-research .p-review__points__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.p-research .p-review__points .p-review__point__head {
  min-width: 0;
}
.p-research .p-review__points .p-review__point__no {
  flex-shrink: 0;
  font-family: "Inter", sans-serif;
  font-weight: 200;
}
.p-research .p-review__points .p-review__point__ttl {
  flex: 1;
  min-width: 0;
  font-size: 2.8rem;
  font-weight: 400;
  line-height: 1.5;
  word-break: keep-all;
}
@media screen and (max-width: 1280px) {
  .p-research .p-review__points .p-review__point__ttl {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .p-research .p-review__points .p-review__point__ttl {
    font-size: 2rem;
  }
}
.p-research .p-review__points .p-review__point__body {
  margin: 1.5rem 0;
}
.p-research .p-review__points .p-review__point__ill {
  position: static;
  display: block;
  flex-shrink: 0;
  width: 14.6rem;
  height: 12rem;
  margin: 0.8rem auto 0;
}
.p-research .p-review__points .p-review__point__ill img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@media screen and (min-width: 769px) {
  .p-research .p-review__points .p-review__point__pill {
    margin-top: 0;
    padding: 1.8rem 2rem 1.8rem 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .p-research .p-review__agent .p-review__flow {
    gap: 5rem;
  }
}
.p-research .p-review__agent .p-review__flow__step {
  border: 0.05rem solid #fff;
}
.p-research .p-review__agent .p-review__flow__step--edge {
  height: 30.3rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .p-research .p-review__agent .p-review__flow__step--edge {
    height: auto;
  }
}
.p-research .p-review__agent .p-review__flow {
  align-items: center;
}
@media screen and (min-width: 769px) {
  .p-research .p-review__agent .p-review__flow__body {
    text-align: left;
  }
}
.p-research .p-review__agent__note {
  margin-top: 9rem;
}
@media screen and (max-width: 768px) {
  .p-research .p-review__agent__note {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .p-research .p-review__flow__avatar {
    top: -4rem;
  }
}
.p-research .p-front__faq__a .p-front__faq__mark {
  color: #000000;
}
@media screen and (min-width: 1281px) {
  .p-research .p-review__flow__ttl {
    font-size: 1.9rem;
  }
}

.p-researchBox {
  background: #fff;
  margin-bottom: 0.4rem;
  border-radius: 0.8rem;
  min-height: 17rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  border: 0.1rem solid #e6e6e6;
}
.p-researchBox:last-of-type {
  margin-bottom: 0;
}
.p-researchBox__desc {
  margin-top: 1rem;
  font-weight: bold;
}

.p-case .p-review__kv {
  background: url("../img/case-management/bg_kv_function.webp") no-repeat left center;
  background-size: contain;
}
.p-case .p-review__ba__txt {
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .p-case .p-review__ba__txt {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .p-case .p-review__ba__panels img {
    height: auto;
  }
}
.p-case .p-review__point__ttl {
  line-height: 1.5;
}
.p-case .p-review__point__body {
  max-width: 43.5rem;
  margin: 1.5rem 0;
}
.p-case .p-review__point__pill {
  margin-top: 0;
}
.p-case .p-review__point:nth-child(1) .p-review__point__ill {
  top: 28%;
  right: 1rem;
  width: 16.3rem;
}
.p-case .p-review__point:nth-child(2) .p-review__point__ill {
  top: 30%;
  right: 1.5rem;
  width: 16.3rem;
}
.p-case .p-review__point:nth-child(3) .p-review__point__ill {
  top: 30%;
  right: 1rem;
  width: 16.3rem;
}
.p-case .p-review__point:nth-child(4) .p-review__point__ill {
  top: 30%;
  right: 1rem;
  width: 16.3rem;
}
.p-case .p-review__agent .p-review__flow__step {
  border: 0.05rem solid #fff;
  height: 18.3rem;
}
@media screen and (max-width: 768px) {
  .p-case .p-review__agent .p-review__flow__step {
    height: auto;
  }
}
.p-case .p-review__agent .p-review__flow__step--edge {
  height: 22.5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .p-case .p-review__agent .p-review__flow__step--edge {
    height: auto;
  }
}
.p-case .p-review__agent .p-review__flow {
  align-items: center;
}
@media screen and (max-width: 768px) {
  .p-case .p-review__agent .p-review__flow {
    gap: 5rem;
  }
}
.p-case .p-review__agent .p-review__flow__body {
  text-align: left;
}
@media screen and (max-width: 768px) {
  .p-case .p-review__agent .p-review__flow__body {
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .p-case .p-review__agent .p-review__flow__avatar {
    top: -3.6rem;
  }
}
.p-case .p-review__agent__note {
  margin-top: 9rem;
}
@media screen and (max-width: 768px) {
  .p-case .p-review__agent__note {
    margin-top: 2rem;
  }
}

@media screen and (min-width: 769px) {
  .p-filling .p-review__kv__inner {
    grid-template-columns: minmax(0, 1fr) 54.1rem;
  }
}
@media screen and (min-width: 769px) {
  .p-filling .p-review__points__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media screen and (min-width: 769px) {
  .p-filling .p-review__points .p-review__point {
    padding: 2rem 1.5rem 2rem 2.7rem;
  }
}
.p-filling .p-review__points .p-review__point__head {
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
}
.p-filling .p-review__points .p-review__point__ttl {
  font-size: 2.5rem;
}
@media screen and (max-width: 768px) {
  .p-filling .p-review__points .p-review__point__ttl {
    font-size: 2rem;
  }
}
.p-filling .p-review__points .p-review__point__body {
  margin: 1.5rem 0;
}
.p-filling .p-review__points .p-review__point__pill {
  margin-top: 0;
}
.p-filling .p-review__agent .p-review__flow__step {
  border: 0.05rem solid #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.p-filling .p-review__agent .p-review__flow {
  align-items: center;
}
@media screen and (max-width: 768px) {
  .p-filling .p-review__agent .p-review__flow {
    gap: 5rem;
  }
}
.p-filling .p-review__agent .p-review__flow__ttl {
  line-height: 2;
}
.p-filling .p-review__agent .p-review__flow__body {
  text-align: left;
}
@media screen and (max-width: 768px) {
  .p-filling .p-review__agent .p-review__flow__body {
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .p-filling .p-review__agent .p-review__flow__avatar {
    top: -3.6rem;
  }
}
.p-filling .p-review__agent__note {
  margin-top: 9rem;
}
@media screen and (max-width: 768px) {
  .p-filling .p-review__agent__note {
    margin-top: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .p-filling .p-review__ba__panels img {
    height: auto;
  }
}
.p-filling .p-review__ba__panels {
  gap: 1.6rem;
}
.p-filling .p-review__ba__panel img {
  object-fit: contain;
}
@media screen and (min-width: 769px) {
  .p-filling .p-review__ba__badge {
    font-size: 1.7rem;
  }
}
@media screen and (min-width: 1281px) {
  .p-filling .p-review__flow__ttl {
    font-size: 1.9rem;
  }
}
.p-filling .p-front__faq__a .p-front__faq__mark {
  color: #000000;
}
.p-filling .p-review__strength--review .p-review__ln--st5 {
  top: calc(100% - var(--rv-strength-bottom-space));
}
.p-filling .p-review__strength--review .p-review__dot3--st4 {
  top: calc(100% - var(--rv-strength-bottom-space) + 17.6rem);
}

.p-filingDiagram {
  width: 100%;
  max-width: 50.8rem;
  margin-inline: auto;
}
.p-filingDiagram__source {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.9rem;
  width: 62.6%;
  padding: 0.8rem;
  min-height: 10rem;
  border-radius: 1rem;
  background: #ffaf34;
  font-size: 1.6rem;
  line-height: 1.2;
}
.p-filingDiagram .p-filingDiagram__source img {
  width: 6.8rem;
  height: 8.5rem;
  margin: 0;
}
.p-filingDiagram .p-filingDiagram__labels {
  width: 100%;
  max-width: none;
  margin-top: 4.7rem;
}
@media screen and (max-width: 768px) {
  .p-filingDiagram {
    max-width: 34rem;
  }
  .p-filingDiagram__source {
    width: 72%;
    font-size: 1.4rem;
  }
}

.p-filingDiagram {
  position: relative;
}
.p-filingDiagram .p-filingDiagram__arrow {
  position: absolute;
  width: 21.7%;
  left: 62.8%;
  top: 5rem;
}
.p-filingDiagram .p-filingDiagram__markTop {
  position: absolute;
  width: 3.15%;
  left: 82.7%;
  top: 14.9rem;
}
.p-filingDiagram .p-filingDiagram__markBottom {
  position: absolute;
  width: 3.15%;
  left: 82.7%;
  top: 20.1rem;
}
@media screen and (max-width: 768px) {
  .p-filingDiagram .p-filingDiagram__arrow {
    left: 72%;
  }
  .p-filingDiagram .p-filingDiagram__markTop, .p-filingDiagram .p-filingDiagram__markBottom {
    display: none;
  }
}

.p-translation .p-review__kv__ttl {
  letter-spacing: 0;
}
@media screen and (min-width: 769px) {
  .p-translation .p-review__kv__inner {
    grid-template-columns: minmax(0, 1fr) 54rem;
  }
}
.p-translation .p-review__ba__panel img {
  margin: auto;
}
@media screen and (max-width: 768px) {
  .p-translation .p-review__ba__panel .img01 {
    display: block;
    width: 100%;
    height: auto;
  }
}
.p-translation .p-review__points .p-review__point__ttl {
  line-height: 1.5;
}
.p-translation .p-review__points .p-review__point__body {
  margin: 1.5rem 0;
}
.p-translation .p-review__points .p-review__point__ill {
  margin: 0 auto;
}
.p-translation .p-review__points .p-review__point__pill {
  margin-top: 0;
}
@media screen and (min-width: 769px) {
  .p-translation .p-review__agent .p-review__flow {
    grid-template-columns: 300fr 300fr 464fr 340fr;
  }
}
.p-translation .p-review__agent .p-review__flow__step {
  border: 0.05rem solid #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media screen and (min-width: 769px) {
  .p-translation .p-review__agent .p-review__flow__step.--second .p-review__flow__avatar {
    left: -1%;
  }
}
@media screen and (min-width: 769px) {
  .p-translation .p-review__agent .p-review__flow__step.--green .p-review__flow__avatar--sparkle {
    left: 50%;
    top: -3.5rem;
  }
}
.p-translation .p-review__agent .p-review__flow {
  align-items: center;
}
@media screen and (max-width: 768px) {
  .p-translation .p-review__agent .p-review__flow {
    gap: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .p-translation .p-review__agent .p-review__flow__avatar {
    top: -4rem;
  }
}
.p-translation .p-review__agent__note {
  margin-top: 9rem;
}
@media screen and (max-width: 768px) {
  .p-translation .p-review__agent__note {
    margin-top: 2rem;
  }
}

.p-trial {
  position: relative;
  overflow-x: clip;
  isolation: isolate;
}

.p-trial > .c-dotGrid {
  z-index: -1;
}

.p-trial__inner {
  width: 92%;
  max-width: 119.2rem;
  margin: 0 auto;
}

.p-trial__inner--wide {
  max-width: 135.2rem;
}

.p-trial__crumbs {
  padding-top: 2.4rem;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #666666;
}
.p-trial__crumbs a, .p-trial__crumbs a:hover, .p-trial__crumbs a:visited, .p-trial__crumbs a:link {
  color: #666666;
  text-decoration: none;
}
.p-trial__crumbs svg {
  margin: 0 0.6rem;
  vertical-align: middle;
}

.p-trial__crumbsCurrent {
  color: #1a1a1a;
}

.p-trial__body {
  padding: 8rem 0 6.3rem;
  margin-bottom: 6rem;
}

.p-trial__grid {
  display: grid;
  grid-template-areas: "hero form" "main form";
  grid-template-columns: minmax(0, 1fr) 47.2rem;
  gap: 8rem;
  align-items: start;
}
@media screen and (max-width: 1000px) {
  .p-trial__grid {
    grid-template-areas: "hero" "form" "main";
    grid-template-columns: minmax(0, 1fr);
    gap: 4.8rem;
  }
}

.p-trial__hero {
  grid-area: hero;
}

.p-trial__aside {
  grid-area: form;
}

.p-trial__main {
  display: flex;
  flex-direction: column;
  gap: 8rem;
  grid-area: main;
}
@media screen and (max-width: 1000px) {
  .p-trial__main {
    gap: 6.4rem;
  }
}

.p-trial__badge {
  display: inline-flex;
  align-items: center;
  padding: 0.4rem 1.6rem;
  font-family: "Roboto", sans-serif;
  font-size: 2rem;
  line-height: 1.9;
  color: #1a1a1a;
  background-color: #FFD699;
  border-radius: 0.4rem;
}

.p-trial__ttl {
  margin-top: 6.3rem;
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1.6666666667;
  color: #1a1a1a;
}
@media screen and (max-width: 1000px) {
  .p-trial__ttl {
    margin-top: 4rem;
    font-size: 3.6rem;
    line-height: 1.6111111111;
  }
}
@media screen and (max-width: 768px) {
  .p-trial__ttl {
    font-size: 2.8rem;
    line-height: 1.5714285714;
  }
}

.p-trial__lead {
  margin-top: 8rem;
  font-size: 2rem;
  line-height: 1.8;
  color: #1a1a1a;
}
@media screen and (max-width: 1000px) {
  .p-trial__lead {
    margin-top: 3.2rem;
  }
}
@media screen and (max-width: 768px) {
  .p-trial__lead {
    font-size: 1.6rem;
    line-height: 1.75;
  }
}

.p-trial__form {
  padding: 4rem 2.4rem 2.4rem;
  background-color: #FAF5E9;
  border-radius: 0.4rem;
}
@media screen and (max-width: 768px) {
  .p-trial__form {
    padding-inline: 1rem;
  }
}

.p-trial__formTtl {
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.6363636364;
  text-align: center;
  color: #1a1a1a;
}

.p-trial__formSub {
  margin-top: 0.4rem;
  font-size: 1.2rem;
  line-height: 1.5;
  text-align: center;
  color: #1a1a1a;
}

.p-trial__formBody {
  margin-top: 2.4rem;
}
.p-trial__formBody iframe {
  display: block;
  width: 100%;
  height: 1100px;
  border: 0;
}

.p-trial__feat {
  padding: 2.4rem 2.4rem 4rem;
  background-color: #FAF5E9;
  border-radius: 0.4rem;
}

.p-trial__featTtl {
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.6363636364;
  color: #1a1a1a;
}

.p-trial__featList {
  display: grid;
  grid-template-columns: 28.8rem minmax(0, 1fr);
  gap: 1.2rem 0;
  margin-top: 2rem;
}
@media screen and (max-width: 568px) {
  .p-trial__featList {
    grid-template-columns: minmax(0, 1fr);
  }
}

.p-trial__featItem {
  display: grid;
  grid-template-columns: 2.4rem minmax(0, 1fr);
  column-gap: 0.8rem;
}

.p-trial__featIcon {
  width: 2.4rem;
  height: 2.4rem;
  margin-top: 0.4rem;
  background: url(../img/trial/check.svg) no-repeat center/contain;
}

.p-trial__featName {
  font-size: 1.6rem;
  line-height: 2;
  color: #1a1a1a;
}

.p-trial__featText {
  grid-column: 2;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #1a1a1a;
}

.p-trial__secTtl {
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.6363636364;
  color: #1a1a1a;
}

.p-trial__flowList {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  margin-top: 1.2rem;
}

.p-trial__flowItem {
  display: flex;
  align-items: center;
  gap: 1.9rem;
}

.p-trial__flowIcon {
  flex-shrink: 0;
  width: 8.5rem;
  height: 8.5rem;
}

.p-trial__flowBody {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.p-trial__flowName {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2;
  color: #1a1a1a;
}

.p-trial__flowText {
  font-size: 1.2rem;
  line-height: 1.5;
  color: #1a1a1a;
}

.p-trial__clientsTtl {
  font-size: 2rem;
  line-height: 1.8;
  color: #1a1a1a;
}

.p-trial__clientsList {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.8rem;
  margin-top: 1.6rem;
}
@media screen and (max-width: 568px) {
  .p-trial__clientsList {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.p-trial__clientsItem {
  aspect-ratio: 154/102;
}
.p-trial__clientsItem img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.p-trial__faqList {
  margin-top: 4rem;
}

.p-trial__deco01 {
  top: 12.2rem;
  left: calc(50% + 40.9rem);
}

.p-trial__deco02 {
  top: 37.3rem;
  left: calc(50% - 66.7rem);
  background-color: #00c8be;
}

.p-trial__deco03 {
  top: 148.2rem;
  left: calc(50% + 41.3rem);
}

.p-trial__deco04 {
  top: 192.8rem;
  left: calc(50% - 74.5rem);
  background-color: #00c8be;
}

.p-thanks {
  position: relative;
  overflow-x: clip;
  isolation: isolate;
}

.p-thanks > .c-dotGrid {
  z-index: -1;
}

.p-thanks__crumbs {
  padding-top: 2.4rem;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #666666;
}
.p-thanks__crumbs a, .p-thanks__crumbs a:hover, .p-thanks__crumbs a:visited, .p-thanks__crumbs a:link {
  color: #666666;
  text-decoration: none;
}
.p-thanks__crumbs svg {
  flex-shrink: 0;
  width: 0.4rem;
  height: 0.6rem;
}

.p-thanks__crumbsInner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 0.8rem;
  width: 92%;
  max-width: 135.2rem;
  margin: 0 auto;
}

.p-thanks__body {
  padding: 15.8rem 0 21rem;
}
@media screen and (max-width: 768px) {
  .p-thanks__body {
    padding: 6.4rem 0 11.2rem;
  }
}

.p-thanks--calendar .p-thanks__body {
  padding-bottom: 13.8rem;
}
@media screen and (max-width: 768px) {
  .p-thanks--calendar .p-thanks__body {
    padding-bottom: 9.6rem;
  }
}

.p-thanks__inner {
  width: 92%;
  max-width: 119.2rem;
  margin: 0 auto;
  text-align: center;
}

.p-thanks__ttl {
  padding-bottom: 2.4rem;
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1.6666666667;
  border-bottom: 0.1rem solid #000000;
}
@media screen and (max-width: 768px) {
  .p-thanks__ttl {
    padding-bottom: 1.6rem;
    font-size: 2rem;
    line-height: 1.6;
  }
}

.p-thanks__txt {
  margin-top: 4rem;
  font-size: 2rem;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .p-thanks__txt {
    margin-top: 2.4rem;
    font-size: 1.4rem;
    line-height: 1.8;
    text-align: left;
  }
  .p-thanks__txt br {
    display: none;
  }
}

.p-thanks__lead {
  margin-top: 6.4rem;
  font-size: 2.8rem;
  font-weight: 500;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .p-thanks__lead {
    margin-top: 4rem;
    font-size: 1.8rem;
    line-height: 1.6;
  }
  .p-thanks__lead br {
    display: none;
  }
}

.p-thanks--trial-thanks .p-thanks__lead {
  margin-top: 2.4rem;
}
@media screen and (max-width: 768px) {
  .p-thanks--trial-thanks .p-thanks__lead {
    margin-top: 4rem;
  }
}

.p-thanks__calendar {
  max-width: 83rem;
  margin: 5.4rem auto 0;
}
.p-thanks__calendar iframe {
  display: block;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .p-thanks__calendar {
    margin-top: 2.4rem;
  }
}

.p-thanks--trial-thanks .p-thanks__calendar {
  margin-top: 2.4rem;
}

.p-thanks__btnWrap {
  margin-top: 3.6rem;
}
@media screen and (max-width: 768px) {
  .p-thanks__btnWrap {
    margin-top: 3.2rem;
  }
}

.p-thanks--calendar .p-thanks__btnWrap {
  margin-top: 9.5rem;
}
@media screen and (max-width: 768px) {
  .p-thanks--calendar .p-thanks__btnWrap {
    margin-top: 4rem;
  }
}

.p-thanks__btn {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  width: 36.5rem;
  max-width: 100%;
  min-height: 6.4rem;
  padding: 1.5rem 7.6rem 1.5rem 7.7rem;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.7777777778;
  background-color: #000000;
  border: 0.1rem solid #000000;
  border-radius: 0.4rem;
  transition: opacity 0.2s ease;
}
.p-thanks__btn, .p-thanks__btn:hover, .p-thanks__btn:visited, .p-thanks__btn:link {
  color: #FFFFFF;
  text-decoration: none;
}
.p-thanks__btn:hover {
  opacity: 0.7;
}
.p-thanks__btn svg {
  flex-shrink: 0;
  width: 1.6rem;
  height: 1rem;
}
@media screen and (max-width: 768px) {
  .p-thanks__btn {
    width: 32rem;
    min-height: 5.6rem;
    padding: 1.2rem 5.6rem;
    font-size: 1.6rem;
  }
}

.p-thanks__deco01 {
  top: 21rem;
  left: calc(50% + 41.6rem);
}

.p-thanks__deco02 {
  top: 46.1rem;
  left: calc(50% - 66rem);
  background-color: #00c8be;
}

.p-thanks__deco03 {
  top: 157rem;
  left: calc(50% + 42rem);
}

.p-legacyService {
  overflow-x: clip;
}
.p-legacyService__intro {
  width: min(94rem, 90%);
  margin: 12rem auto 0;
  text-align: center;
}
.p-legacyService__title {
  font-size: 4rem;
  font-weight: 400;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
.p-legacyService__body {
  margin-top: 4rem;
  font-size: 1.6rem;
  line-height: 2;
  text-align: left;
}
.p-legacyService__cta {
  width: fit-content;
  max-width: 100%;
  margin: 6.4rem auto 0;
  white-space: normal;
}
.p-legacyService__faq {
  display: grid;
  grid-template-columns: 28rem minmax(0, 1fr);
  gap: 8rem;
  width: min(135.2rem, 90%);
  margin: 22rem auto 0;
  padding: 7.2rem 8rem;
  border: 1px solid #bfe7e4;
}
.p-legacyService__faqHead p {
  font-family: "Roboto", sans-serif;
  font-size: 12rem;
  font-weight: 100;
  line-height: 1.1;
}
.p-legacyService__faqHead h2 {
  margin-top: 1.6rem;
  font-size: 2.4rem;
  font-weight: 400;
}
.p-legacyService .p-front__faq__list {
  width: 100%;
  margin: 0;
}
.p-legacyService .p-front__company {
  margin-top: 12.8rem;
}
@media (max-width: 1100px) {
  .p-legacyService__faq {
    grid-template-columns: 22rem minmax(0, 1fr);
    gap: 4rem;
    padding: 4.8rem;
  }
}
@media screen and (max-width: 768px) {
  .p-legacyService__intro {
    margin-top: 5.6rem;
  }
  .p-legacyService__title {
    font-size: 2.4rem;
  }
  .p-legacyService__title br {
    display: none;
  }
  .p-legacyService__body {
    margin-top: 3.2rem;
  }
  .p-legacyService__cta {
    margin-top: 4rem;
  }
  .p-legacyService__faq {
    grid-template-columns: minmax(0, 1fr);
    gap: 3.2rem;
    margin-top: 8rem;
    padding: 3.2rem 2.4rem;
  }
  .p-legacyService__faqHead p {
    font-size: 8rem;
  }
  .p-legacyService__faqHead h2 {
    font-size: 2rem;
  }
  .p-legacyService .p-front__company {
    margin-top: 8rem;
  }
}

.u-border--corners {
  border-radius: 10px;
}

.u-border {
  border: 1px solid #e5e5e5;
}

@media screen and (max-width: 768px) {
  .u-hide_sp {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  .u-hide_pc {
    display: none;
  }
}

@media screen and (max-width: 1280px) {
  .u-hide_less_pc {
    display: none;
  }
}

@media screen and (min-width: 1281px) {
  .u-hide_more_pc {
    display: none;
  }
}

@media screen and (max-width: 1000px) {
  .u-hide_less_spc {
    display: none;
  }
}

@media screen and (min-width: 1001px) {
  .u-hide_more_spc {
    display: none;
  }
}

@media screen and (max-width: 568px) {
  .u-hide_less_sp {
    display: none;
  }
}

@media screen and (min-width: 569px) {
  .u-hide_more_sp {
    display: none;
  }
}

@media screen and (max-width: 414px) {
  .u-hide_less_ssp {
    display: none;
  }
}

@media screen and (min-width: 415px) {
  .u-hide_more_ssp {
    display: none;
  }
}

@media screen and (max-width: 374px) {
  .u-hide_less_sssp {
    display: none;
  }
}

@media screen and (min-width: 375px) {
  .u-hide_more_sssp {
    display: none;
  }
}

.u-hide {
  display: none;
}

.u-link_sp {
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .u-link_sp {
    pointer-events: inherit;
  }
}

.u-mt_10 {
  margin-top: 1rem;
}

.u-mt_20 {
  margin-top: 2rem;
}

.u-mt_30 {
  margin-top: 3rem;
}

.u-mt_50 {
  margin-top: 5rem;
}

.u-mt_100 {
  margin-top: 10rem;
}

@media screen and (max-width: 768px) {
  .u-mt_20 {
    margin-top: 1.5rem;
  }
  .u-mt_30 {
    margin-top: 2rem;
  }
  .u-mt_50 {
    margin-top: 3rem;
  }
  .u-mt_100 {
    margin-top: 5rem;
  }
}
@media screen and (max-width: 568px) {
  .u-mt_20 {
    margin-top: 1.5rem;
  }
  .u-mt_50 {
    margin-top: 2.5rem;
  }
}
.u-mb_10 {
  margin-bottom: 1rem;
}

.u-mb_20 {
  margin-bottom: 2rem;
}

.u-mb_30 {
  margin-bottom: 3rem;
}

.u-mb_50 {
  margin-bottom: 5rem;
}

.u-mb_100 {
  margin-bottom: 10rem;
}

@media screen and (max-width: 768px) {
  .u-mb_20 {
    margin-bottom: 1.5rem;
  }
  .u-mb_30 {
    margin-bottom: 2rem;
  }
  .u-mb_50 {
    margin-bottom: 3rem;
  }
  .u-mb_100 {
    margin-bottom: 5rem;
  }
}
@media screen and (max-width: 568px) {
  .u-mb_20 {
    margin-bottom: 1.5rem;
  }
  .u-mb_50 {
    margin-bottom: 2.5rem;
  }
}
.u-mr_05 {
  margin-right: 0.5rem;
}

.u-mr_10 {
  margin-right: 1rem;
}

.u-mr_15 {
  margin-right: 1.5rem;
}

.u-mr_20 {
  margin-right: 2rem;
}

.u-mr_30 {
  margin-right: 3rem;
}

.u-ml_05 {
  margin-left: 0.5rem;
}

.u-ml_10 {
  margin-left: 1rem;
}

.u-ml_15 {
  margin-left: 1.5rem;
}

.u-ml_20 {
  margin-left: 2rem;
}

.u-ml_30 {
  margin-left: 3rem;
}

.u-text-left {
  text-align: left;
}

.u-text-right {
  text-align: right;
}

.u-text-center {
  text-align: center;
}

.u-text-center_left {
  text-align: center;
}
@media screen and (max-width: 768px) {
  .u-text-center_left {
    text-align: left;
  }
}

.u-text_center {
  text-align: left;
}
@media screen and (max-width: 768px) {
  .u-text_center {
    text-align: center;
  }
}

.u-wth_100 {
  width: 100%;
  height: auto;
}

/*# sourceMappingURL=style.css.map*/