@charset "UTF-8";
/* ========================================
リセットCSS
======================================== */
*,
*::before,
*::after {
  box-sizing: border-box;
}

* {
  margin: 0;
  padding: 0;
}

main {
  display: block;
}

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

h1,
h2,
h3,
h4,
h5,
h6,
p,
div {
  overflow-wrap: break-word;
}

img {
  max-width: 100%;
  width: 100%;
  height: auto;
  vertical-align: middle;
}

iframe {
  max-width: 100%;
  vertical-align: middle;
}

span {
  font: inherit;
  letter-spacing: inherit;
}

ul,
ol {
  list-style: none;
}

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

address {
  font: inherit;
}

input,
button,
textarea,
select {
  color: inherit;
  font: inherit;
  vertical-align: middle;
}

button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
  border: none;
  outline: none;
  cursor: pointer;
}

input[type=button], input[type=text], input[type=submit], input[type=checkbox], input[type=image], textarea {
  -webkit-appearance: none;
  border-radius: 0;
}

/* ========================================
変数・関数
======================================== */
:root {
  --color-black: #000;
  --color-white: #fff;
  --color-orange: #C98B00;
  --color-red: #C92700;
  --color-gray: #B2B2B2;
  --color-bg01: #FCF7F2;
  --font-base: 'Zen Old Mincho', 'Noto Sans JP', sans-serif;
  --font-noto: 'Noto Sans JP', sans-serif;
  --font-en: 'EB Garamond', serif;
  --font-extralight: 200;
  --font-light: 300;
  --font-regular: 400;
  --font-medium: 500;
  --font-semibold: 600;
  --font-bold: 700;
  --font-extrabold: 800;
  --font-bold-black: 900;
  --letter-space01: 0.1rem;
  --opacity-weak: 0.3;
  --z-index-header: 110;
  --z-index-header-follow: 109;
  --z-index-header-logo: 112;
  --z-index-header-hamburger: 112;
  --z-index-footer: 100;
  --z-index-g-nav: 120;
  --z-index-g-nav-btn: 121;
}

/* ========================================
mixin
======================================== */
/* ========================================
ベースCSS
======================================== */
html {
  width: 100%;
  height: 100%;
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  html {
    font-size: 14px;
  }
}
@media (max-width: 375px) {
  html {
    font-size: 3.7333333333vw;
  }
}

body {
  width: 100%;
  min-height: 100vh;
  color: var(--color-black);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  font-family: var(--font-base);
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.01rem;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
       text-size-adjust: 100%;
  font-feature-settings: "palt";
  position: relative;
}
a {
  color: inherit;
  text-decoration: none;
}

/* CLEAR-FIX */
/* ========================================
追加される仕様
======================================== */
.grecaptcha-badge {
  visibility: hidden;
}

.js-fadeIn, .js-fadeIn-section, .js-fadeIn-fv {
  /* このクラスを付与した要素の直下の子要素に対してフェードインアニメーションを適用 */
}

.js-fadeIn-section, .js-fadeIn-fv {
  opacity: 0;
  transform: translateY(30px);
  will-change: opacity, transform; /* パフォーマンスヒント */
}
.js-fadeIn-section.is-visible, .js-fadeIn-fv.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.js-fadeIn-section {
  transition: opacity 0.9s cubic-bezier(0.37, 0, 0.63, 1), transform 0.9s cubic-bezier(0.5, 1, 0.89, 1);
}

.js-fadeIn-fv {
  transition: opacity 1.4s cubic-bezier(0.37, 0, 0.63, 1), transform 1.4s cubic-bezier(0.5, 1, 0.89, 1);
}
.js-fadeIn-fv img {
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  filter: grayscale(100%);
  transition: filter 1.8s cubic-bezier(0.37, 0, 0.63, 1);
  will-change: filter; /* パフォーマンスヒント */
}
.js-fadeIn-fv.is-visible {
  opacity: 1;
  transform: translateY(0);
}
.js-fadeIn-fv.is-visible img {
  -moz-filter: grayscale(0%);
  -ms-filter: grayscale(0%);
  filter: grayscale(0%);
}

/* 初期状態 */
.fadeIn-target {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.6s cubic-bezier(0.37, 0, 0.63, 1), transform 0.6s cubic-bezier(0.5, 1, 0.89, 1);
  will-change: opacity, transform; /* パフォーマンスヒント */
}

/* 表示時に付与するクラス */
.fadeIn-target.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.js-swiperPrev.disable,
.js-swiperNext.disable {
  display: none;
}

@media screen and (min-width: 768px) {
  .swiper-wrapper.no-swiper {
    display: flex;
    justify-content: center;
    gap: min(1.8055555556cqw, 32.5px);
  }
  .swiper-wrapper.no-swiper li {
    margin: 0;
  }
}

/* ========================================
モジュール・パーツ m-
======================================== */
.m-inner {
  padding-inline: min(13.75cqw, 247.5px);
  width: 100%;
  position: relative;
}
@media screen and (max-width: 767px) {
  .m-inner {
    padding-inline: min(5.641025641vw, 22px);
  }
}

/* ========================================
ページタイトル・セクションタイトル
======================================== */
.m-pageTtl {
  position: relative;
  z-index: 10;
}
.m-pageTtl__content {
  margin-top: min(3.4722222222cqw, 62.5px);
  padding-right: clamp(353px, 24.5138888889cqw, 441.25px);
  width: 100%;
  position: relative;
}
@media screen and (max-width: 767px) {
  .m-pageTtl__content {
    margin-top: min(3.0769230769vw, 12px);
    padding-right: min(30.7692307692vw, 120px);
  }
}
.m-pageTtl__img {
  display: block;
  width: 100%;
  aspect-ratio: 1087/451;
  height: clamp(451px, 31.3194444444cqw, 563.75px);
}
@media screen and (max-width: 767px) {
  .m-pageTtl__img {
    aspect-ratio: 270/316;
    height: 22.5714285714rem;
  }
}
.m-pageTtl__img img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.m-pageTtl__title--jp {
  margin-top: min(5.6944444444cqw, 102.5px);
  display: flex;
  flex-direction: column;
  gap: min(0.2083333333cqw, 3.75px);
  position: absolute;
  top: 0;
  right: clamp(158px, 10.9722222222cqw, 197.5px);
  font-size: clamp(32px, 2.2222222222cqw, 40px);
  line-height: 1.4;
  letter-spacing: 0.1em;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 767px) {
  .m-pageTtl__title--jp {
    margin-top: min(5.8974358974vw, 23px);
    gap: min(0.7692307692vw, 3px);
    right: 2.4285714286rem;
    font-size: 1.6428571429rem;
  }
}
.m-pageTtl__title--en {
  margin-top: min(0.2083333333cqw, 3.75px);
  display: block;
  font-size: clamp(20px, 1.3888888889cqw, 25px);
  font-family: var(--font-en);
  line-height: 1;
  letter-spacing: 0.06em;
  color: var(--color-gray);
}
@media screen and (max-width: 767px) {
  .m-pageTtl__title--en {
    margin-top: min(0.7692307692vw, 3px);
    font-size: 1rem;
  }
}

.m-pageTtl__title--jp,
.m-pageTtl__title--en {
  transform: translateY(10px);
  opacity: 0;
  transition: 0.7s ease;
}
.m-pageTtl__title--jp.is-visible,
.m-pageTtl__title--en.is-visible {
  transform: translateY(0);
  opacity: 1;
}

.m-secTtl {
  display: flex;
  flex-direction: row-reverse;
  height: -moz-fit-content;
  height: fit-content;
  position: relative;
}
.m-secTtl--jp {
  padding-top: min(9.0972222222cqw, 163.75px);
  padding-right: min(1.3888888889cqw, 25px);
  font-size: clamp(30px, 2.0833333333cqw, 37.5px);
  line-height: 1;
  letter-spacing: 0.08em;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 767px) {
  .m-secTtl--jp {
    padding-top: min(20.2564102564vw, 79px);
    padding-right: min(3.0769230769vw, 12px);
    font-size: 1.6428571429rem;
  }
}
.m-secTtl--en {
  padding-top: min(9.4444444444cqw, 170px);
  margin-right: min(0.6944444444cqw, 12.5px);
  font-size: clamp(20px, 1.3888888889cqw, 25px);
  font-family: var(--font-en);
  line-height: 1;
  letter-spacing: 0.05em;
  color: var(--color-gray);
  writing-mode: vertical-rl;
}
@media screen and (max-width: 767px) {
  .m-secTtl--en {
    padding-top: min(20.2564102564vw, 79px);
    margin-right: min(1.2820512821vw, 5px);
    font-size: 1rem;
  }
}
.m-secTtl span {
  display: block;
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 1px;
  height: 0px;
  background-color: var(--color-black);
  transition: height 1s cubic-bezier(0.65, 0, 0.35, 1);
  will-change: height; /* パフォーマンスヒント */
}
.m-secTtl span.is-visible {
  height: 100%;
}

.m-secTtl--jp,
.m-secTtl--en {
  transform: translateY(10px);
  opacity: 0;
  transition: 0.7s ease;
}
.m-secTtl--jp.is-visible,
.m-secTtl--en.is-visible {
  transform: translateY(0);
  opacity: 1;
}

/* ========================================
VIEW MORE
======================================== */
.m-viewmore {
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  gap: 0 clamp(10px, 0.6944444444cqw, 12.5px);
  font-size: clamp(17px, 1.1805555556cqw, 21.25px);
  font-family: var(--font-en);
  line-height: 1;
  color: var(--color-orange);
}
@media screen and (max-width: 767px) {
  .m-viewmore {
    gap: 0 min(2.0512820513vw, 8px);
    font-size: 1.1428571429rem;
  }
}
.m-viewmore::after {
  content: "";
  display: block;
  width: clamp(35px, 2.4305555556cqw, 43.75px);
  height: auto;
  background-image: url("/assets/img/common/arrow_orange.svg");
  background-position: center bottom clamp(3px, 0.2083333333cqw, 3.75px);
  background-repeat: no-repeat;
  background-size: clamp(36px, 2.5cqw, 45px) clamp(5px, 0.3472222222cqw, 6.25px);
  transition: transform 0.4s ease-out;
}
@media screen and (max-width: 767px) {
  .m-viewmore::after {
    width: 1.7857142857rem;
    background-image: url("/assets/img/common/arrow_orange_sp.svg");
    background-size: 1.8571428571rem 0.3571428571rem;
    background-position: center bottom 0.2857142857rem;
  }
}
@media screen and (min-width: 768px) {
  .m-viewmore:hover::after {
    transform: translateX(clamp(8px, 0.5555555556cqw, 10px));
  }
}

/* ========================================
ページ遷移ボタン　共通パーツ
======================================== */
.m-pageLink-Btn {
  display: flex;
  gap: 0 min(2.0833333333cqw, 37.5px);
}
@media screen and (max-width: 767px) {
  .m-pageLink-Btn {
    margin-top: min(9.2307692308vw, 36px);
    flex-direction: column;
    gap: min(2.0512820513vw, 8px);
  }
}
.m-pageLink-Btn a {
  display: block;
  width: 50%;
  border: 1px solid var(--color-orange);
  border-radius: 7px;
  padding: min(1.7361111111cqw, 31.25px) min(4.8611111111cqw, 87.5px);
  background-color: #fff;
  position: relative;
  transition: background-color 0.5s ease;
}
@media screen and (max-width: 767px) {
  .m-pageLink-Btn a {
    width: 100%;
    padding: min(5.3846153846vw, 21px) min(13.3333333333vw, 52px);
  }
}
.m-pageLink-Btn a::before {
  content: "";
  width: clamp(35px, 2.4305555556cqw, 43.75px);
  height: 100%;
  background-image: url("/assets/img/common/arrow_orange.svg");
  background-repeat: no-repeat;
  background-size: clamp(36px, 2.5cqw, 45px) clamp(5px, 0.3472222222cqw, 6.25px);
  background-position: center;
  position: absolute;
  top: 0;
  right: min(1.9444444444cqw, 35px);
  opacity: 1;
  transition: opacity 0.5s ease;
}
@media screen and (max-width: 767px) {
  .m-pageLink-Btn a::before {
    width: 1.7857142857rem;
    background-image: url("/assets/img/common/arrow_orange_sp.svg");
    background-size: 1.8571428571rem 0.3571428571rem;
    right: min(4.358974359vw, 17px);
  }
}
.m-pageLink-Btn a::after {
  content: "";
  width: clamp(35px, 2.4305555556cqw, 43.75px);
  height: 100%;
  background-image: url("/assets/img/common/arrow_white.svg");
  background-repeat: no-repeat;
  background-size: clamp(36px, 2.5cqw, 45px) clamp(5px, 0.3472222222cqw, 6.25px);
  background-position: center;
  position: absolute;
  top: 0;
  right: min(1.9444444444cqw, 35px);
  opacity: 0;
  transition: opacity 0.5s ease;
}
@media screen and (max-width: 767px) {
  .m-pageLink-Btn a::after {
    width: 1.7857142857rem;
    background-image: url("/assets/img/common/arrow_white_sp.svg");
    background-size: 1.8571428571rem 0.3571428571rem;
    right: min(4.358974359vw, 17px);
  }
}
@media screen and (min-width: 768px) {
  .m-pageLink-Btn a:hover {
    background-color: var(--color-orange);
  }
}
@media screen and (min-width: 768px) {
  .m-pageLink-Btn a:hover .m-pageLink-Btn_text--jp,
  .m-pageLink-Btn a:hover .m-pageLink-Btn_text--en {
    color: var(--color-white);
  }
}
@media screen and (min-width: 768px) {
  .m-pageLink-Btn a:hover::before {
    opacity: 0;
  }
}
@media screen and (min-width: 768px) {
  .m-pageLink-Btn a:hover::after {
    opacity: 1;
  }
}
.m-pageLink-Btn_text--jp {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-size: clamp(19px, 1.3194444444cqw, 23.75px);
  line-height: 1.6;
  letter-spacing: 0.11em;
  transition: color 0.35s ease;
}
@media screen and (max-width: 767px) {
  .m-pageLink-Btn_text--jp {
    font-size: 1.2142857143rem;
    letter-spacing: 0.1em;
  }
}
.m-pageLink-Btn_text--en {
  display: block;
  font-size: clamp(18px, 1.25cqw, 22.5px);
  font-family: var(--font-en);
  text-align: center;
  color: var(--color-orange);
  line-height: 1.3;
  letter-spacing: 0.06em;
  transition: color 0.5s ease;
}
@media screen and (max-width: 767px) {
  .m-pageLink-Btn_text--en {
    font-size: 1rem;
    letter-spacing: 0.05em;
  }
}

/* ========================================
contact　共通パーツ
======================================== */
.m-contact {
  margin-bottom: min(11.4583333333cqw, 206.25px);
}
@media screen and (max-width: 767px) {
  .m-contact {
    margin-bottom: min(17.9487179487vw, 70px);
  }
}
.m-contact__inner {
  display: flex;
}
@media screen and (max-width: 767px) {
  .m-contact__inner {
    flex-direction: column;
  }
}
.m-contact__container {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .m-contact__container {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .m-contact__container:nth-of-type(1) {
    width: 51%;
    padding-right: min(4.1666666667cqw, 75px);
    border-right: 1px solid #E6E6E6;
  }
}
@media screen and (max-width: 767px) {
  .m-contact__container:nth-of-type(1) {
    padding-bottom: min(9.2307692308vw, 36px);
    border-bottom: 1px solid #E6E6E6;
  }
}
@media screen and (min-width: 768px) {
  .m-contact__container:nth-of-type(2) {
    width: 49%;
  }
}
.m-contact__title--jp {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: min(0.6944444444cqw, 12.5px) min(1.875cqw, 33.75px);
  font-size: clamp(28px, 1.9444444444cqw, 35px);
  line-height: 1;
  letter-spacing: 0.13em;
}
@media screen and (max-width: 767px) {
  .m-contact__title--jp {
    font-size: 1.6428571429rem;
    gap: 0 min(5.1282051282vw, 20px);
  }
}
.m-contact__title--en {
  margin-top: min(0.4166666667cqw, 7.5px);
  display: block;
  font-size: clamp(21px, 1.4583333333cqw, 26.25px);
  font-family: var(--font-en);
  color: var(--color-gray);
  line-height: 1.2;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 767px) {
  .m-contact__title--en {
    margin-top: min(1.5384615385vw, 6px);
    font-size: 1rem;
    letter-spacing: 0.05em;
  }
}
.m-contact__desc {
  margin-top: min(3.3333333333cqw, 60px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .m-contact__desc {
    margin-top: min(6.6666666667vw, 26px);
    font-size: 1rem;
    letter-spacing: 0.04em;
    line-height: 1.4;
  }
}
.m-contact__lineBtn {
  margin-top: min(2.2916666667cqw, 41.25px);
  padding: min(1.5277777778cqw, 27.5px) min(1.5277777778cqw, 27.5px) min(1.3888888889cqw, 25px);
  width: 100%;
  border: 1px solid var(--color-orange);
  border-radius: 7px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 min(1.5972222222cqw, 28.75px);
  overflow: hidden;
  position: relative;
  background-color: #fff;
  transition: background-color 0.5s ease;
}
@media screen and (max-width: 767px) {
  .m-contact__lineBtn {
    margin-top: min(3.5897435897vw, 14px);
    padding: min(4.1025641026vw, 16px);
    gap: 0 min(5.3846153846vw, 21px);
  }
}
@media screen and (min-width: 768px) {
  .m-contact__lineBtn:hover {
    background-color: var(--color-orange);
  }
}
@media screen and (min-width: 768px) {
  .m-contact__lineBtn:hover .m-contact__lineBtn_text--jp,
  .m-contact__lineBtn:hover .m-contact__lineBtn_text--en {
    color: var(--color-white);
  }
}
@media screen and (min-width: 768px) {
  .m-contact__lineBtn:hover .m-contact__lineBtn_icon img {
    filter: brightness(0) saturate(100%) invert(93%) sepia(99%) saturate(27%) hue-rotate(177deg) brightness(107%) contrast(100%);
  }
}
.m-contact__lineBtn_icon {
  width: min(2.8472222222cqw, 51.25px);
  aspect-ratio: 41/40;
}
@media screen and (max-width: 767px) {
  .m-contact__lineBtn_icon {
    width: min(10.5128205128vw, 41px);
  }
}
.m-contact__lineBtn_icon img {
  transition: filter 0.45s ease;
}
.m-contact__lineBtn_text--jp {
  width: -moz-fit-content;
  width: fit-content;
  font-size: clamp(17px, 1.1805555556cqw, 21.25px);
  line-height: 1.6;
  letter-spacing: 0.12em;
  transition: color 0.5s ease;
}
@media screen and (max-width: 767px) {
  .m-contact__lineBtn_text--jp {
    font-size: 1.1428571429rem;
    letter-spacing: 0.08em;
  }
}
.m-contact__lineBtn_text--en {
  font-size: clamp(19px, 1.3194444444cqw, 23.75px);
  font-family: var(--font-en);
  line-height: 1.6;
  letter-spacing: 0.12em;
  transition: color 0.5s ease;
}
@media screen and (max-width: 767px) {
  .m-contact__lineBtn_text--en {
    font-size: 1.2857142857rem;
  }
}
.m-contact__formBtn {
  margin-top: min(0.625cqw, 11.25px);
  padding: min(1.5972222222cqw, 28.75px) min(4.8611111111cqw, 87.5px);
  width: 100%;
  display: block;
  border: 1px solid var(--color-orange);
  border-radius: 7px;
  position: relative;
  transition: background-color 0.5s ease;
}
@media screen and (max-width: 767px) {
  .m-contact__formBtn {
    margin-top: min(1.5384615385vw, 6px);
    padding: min(5.3846153846vw, 21px) min(13.3333333333vw, 52px);
  }
}
.m-contact__formBtn::before {
  content: "";
  width: clamp(35px, 2.4305555556cqw, 43.75px);
  height: 100%;
  background-image: url("/assets/img/common/arrow_orange.svg");
  background-repeat: no-repeat;
  background-size: clamp(36px, 2.5cqw, 45px) clamp(5px, 0.3472222222cqw, 6.25px);
  background-position: center;
  position: absolute;
  top: 0;
  right: min(1.9444444444cqw, 35px);
  opacity: 1;
  transition: opacity 0.5s ease;
}
@media screen and (max-width: 767px) {
  .m-contact__formBtn::before {
    width: 1.7857142857rem;
    background-image: url("/assets/img/common/arrow_orange_sp.svg");
    background-size: 1.8571428571rem 0.3571428571rem;
    right: min(4.358974359vw, 17px);
  }
}
.m-contact__formBtn::after {
  content: "";
  width: clamp(35px, 2.4305555556cqw, 43.75px);
  height: 100%;
  background-image: url("/assets/img/common/arrow_white.svg");
  background-repeat: no-repeat;
  background-size: clamp(36px, 2.5cqw, 45px) clamp(5px, 0.3472222222cqw, 6.25px);
  background-position: center;
  position: absolute;
  top: 0;
  right: min(1.9444444444cqw, 35px);
  opacity: 0;
  transition: opacity 0.5s ease;
}
@media screen and (max-width: 767px) {
  .m-contact__formBtn::after {
    width: 1.7857142857rem;
    background-image: url("/assets/img/common/arrow_white_sp.svg");
    background-size: 1.8571428571rem 0.3571428571rem;
    right: min(4.358974359vw, 17px);
  }
}
@media screen and (min-width: 768px) {
  .m-contact__formBtn:hover {
    background-color: var(--color-orange);
  }
}
@media screen and (min-width: 768px) {
  .m-contact__formBtn:hover .m-contact__formBtn_text--jp,
  .m-contact__formBtn:hover .m-contact__formBtn_text--en {
    color: var(--color-white);
  }
}
@media screen and (min-width: 768px) {
  .m-contact__formBtn:hover::before {
    opacity: 0;
  }
}
@media screen and (min-width: 768px) {
  .m-contact__formBtn:hover::after {
    opacity: 1;
  }
}
.m-contact__formBtn_text--jp {
  display: block;
  text-align: center;
  font-size: clamp(19px, 1.3194444444cqw, 23.75px);
  line-height: 1.6;
  letter-spacing: 0.11em;
  transition: color 0.35s ease;
}
@media screen and (max-width: 767px) {
  .m-contact__formBtn_text--jp {
    font-size: 1.2142857143rem;
    letter-spacing: 0.1em;
  }
}
.m-contact__formBtn_text--en {
  display: block;
  font-size: clamp(18px, 1.25cqw, 22.5px);
  font-family: var(--font-en);
  text-align: center;
  color: var(--color-orange);
  line-height: 1.3;
  letter-spacing: 0.06em;
  transition: color 0.5s ease;
}
@media screen and (max-width: 767px) {
  .m-contact__formBtn_text--en {
    font-size: 1rem;
    letter-spacing: 0.05em;
  }
}
.m-contact__instagram {
  padding-left: min(3.9583333333cqw, 71.25px);
  display: flex;
  flex-direction: column;
  gap: min(2.0833333333cqw, 37.5px);
}
@media screen and (max-width: 767px) {
  .m-contact__instagram {
    padding-left: 0;
    gap: min(5.8974358974vw, 23px);
  }
}
.m-contact__instagram_link {
  padding-left: min(2.4305555556cqw, 43.75px);
  padding-right: min(3.9583333333cqw, 71.25px);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min(1.5972222222cqw, 28.75px);
  position: relative;
}
@media screen and (max-width: 767px) {
  .m-contact__instagram_link {
    margin-top: min(10.5128205128vw, 41px);
    padding-left: min(11.2820512821vw, 44px);
    padding-right: min(12.8205128205vw, 50px);
    gap: 0 min(6.6666666667vw, 26px);
  }
}
.m-contact__instagram_link::before {
  content: "";
  width: clamp(35px, 2.4305555556cqw, 43.75px);
  height: 100%;
  background-image: url("/assets/img/common/arrow_orange.svg");
  background-repeat: no-repeat;
  background-size: clamp(36px, 2.5cqw, 45px) clamp(5px, 0.3472222222cqw, 6.25px);
  background-position: center;
  position: absolute;
  top: 50%;
  right: 0;
  translate: 0 -43%;
  transition: translate 0.4s ease-out;
}
@media screen and (max-width: 767px) {
  .m-contact__instagram_link::before {
    width: 2.5rem;
    background-size: 2.5714285714rem 0.3571428571rem;
    right: 0;
    translate: 0 -30%;
  }
}
@media screen and (min-width: 768px) {
  .m-contact__instagram_link:hover::before {
    translate: clamp(8px, 0.5555555556cqw, 10px) -43%;
  }
}
.m-contact__instagram_icon {
  width: clamp(19px, 1.3194444444cqw, 23.75px);
  aspect-ratio: 1/1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .m-contact__instagram_icon {
    width: 1.2857142857rem;
  }
}
.m-contact__instagram_text {
  font-size: clamp(20px, 1.3888888889cqw, 25px);
  font-family: var(--font-en);
  line-height: 1.5;
  letter-spacing: 0.08em;
  color: var(--color-orange);
}
@media screen and (max-width: 767px) {
  .m-contact__instagram_text {
    font-size: 1.4285714286rem;
    letter-spacing: 0.05em;
  }
}
.m-contact__instagram_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: min(0.1388888889cqw, 2.5px);
}
@media screen and (max-width: 767px) {
  .m-contact__instagram_list {
    gap: min(0.5128205128vw, 2px);
  }
}
@media screen and (min-width: 768px) {
  .m-contact__instagram_list:hover .m-contact__instagram_item a {
    opacity: 0.5;
  }
}
@media screen and (min-width: 768px) {
  .m-contact__instagram_list .m-contact__instagram_item:hover a {
    opacity: 1;
  }
}
.m-contact__instagram_item {
  width: 100%;
  aspect-ratio: 1/1;
}
.m-contact__instagram_item a {
  width: 100%;
  height: 100%;
  display: block;
  transition: opacity 0.7s ease;
}

/* ========================================
補助的に使用 u-
======================================== */
@media screen and (min-width: 768px) {
  .u-sp {
    display: none !important;
  }
}

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

.u-ib {
  display: inline-block !important;
}

.u-text-center {
  text-align: center !important;
}
.u-text-left {
  text-align: left !important;
}
.u-text-right {
  text-align: right !important;
}

.u-pdTop-0 {
  padding-top: 0 !important;
}

.u-pdBottom-0 {
  padding-bottom: 0 !important;
}

.u-mgTop-0 {
  margin-top: 0 !important;
}

.u-mgBottom-0 {
  margin-bottom: 0 !important;
}

.u-font-base {
  font-family: var(--font-base) !important;
}
.u-font-en {
  font-family: var(--font-en) !important;
}
.u-font-weight-300 {
  font-weight: 300 !important;
}
.u-font-weight-400 {
  font-weight: 400 !important;
}
.u-font-weight-500 {
  font-weight: 500 !important;
}
.u-font-weight-600 {
  font-weight: 600 !important;
}
.u-font-light {
  font-family: var(--font-family-light) !important;
}
.u-font-book {
  font-family: var(--font-family-book) !important;
}
.u-font-regular {
  font-family: var(--font-family-regular) !important;
}
.u-font-medium {
  font-family: var(--font-family-medium) !important;
}

.u-weight-100 {
  font-weight: 100 !important;
}

.u-weight-200 {
  font-weight: 200 !important;
}

.u-weight-300 {
  font-weight: 300 !important;
}

.u-weight-400 {
  font-weight: 400 !important;
}

.u-weight-500 {
  font-weight: 500 !important;
}

.u-weight-600 {
  font-weight: 600 !important;
}

.u-weight-700 {
  font-weight: 700 !important;
}

.u-weight-800 {
  font-weight: 800 !important;
}

.u-weight-900 {
  font-weight: 900 !important;
}

.u-mt-5 {
  margin-top: 5px !important;
}

.u-mt-10 {
  margin-top: 10px !important;
}

.u-mt-15 {
  margin-top: 15px !important;
}

.u-mt-20 {
  margin-top: 20px !important;
}

.u-mt-25 {
  margin-top: 25px !important;
}

.u-mt-30 {
  margin-top: 30px !important;
}

.u-mt-35 {
  margin-top: 35px !important;
}

.u-mt-40 {
  margin-top: 40px !important;
}

.u-mt-45 {
  margin-top: 45px !important;
}

.u-mt-50 {
  margin-top: 50px !important;
}

.u-mt-55 {
  margin-top: 55px !important;
}

.u-mt-60 {
  margin-top: 60px !important;
}

.u-mt-65 {
  margin-top: 65px !important;
}

.u-mt-70 {
  margin-top: 70px !important;
}

.u-mt-75 {
  margin-top: 75px !important;
}

.u-mt-80 {
  margin-top: 80px !important;
}

.u-mt-85 {
  margin-top: 85px !important;
}

.u-mt-90 {
  margin-top: 90px !important;
}

.u-mt-95 {
  margin-top: 95px !important;
}

.u-mt-100 {
  margin-top: 100px !important;
}

.u-mb-5 {
  margin-bottom: 5px !important;
}

.u-mb-10 {
  margin-bottom: 10px !important;
}

.u-mb-15 {
  margin-bottom: 15px !important;
}

.u-mb-20 {
  margin-bottom: 20px !important;
}

.u-mb-25 {
  margin-bottom: 25px !important;
}

.u-mb-30 {
  margin-bottom: 30px !important;
}

.u-mb-35 {
  margin-bottom: 35px !important;
}

.u-mb-40 {
  margin-bottom: 40px !important;
}

.u-mb-45 {
  margin-bottom: 45px !important;
}

.u-mb-50 {
  margin-bottom: 50px !important;
}

.u-mb-55 {
  margin-bottom: 55px !important;
}

.u-mb-60 {
  margin-bottom: 60px !important;
}

.u-mb-65 {
  margin-bottom: 65px !important;
}

.u-mb-70 {
  margin-bottom: 70px !important;
}

.u-mb-75 {
  margin-bottom: 75px !important;
}

.u-mb-80 {
  margin-bottom: 80px !important;
}

.u-mb-85 {
  margin-bottom: 85px !important;
}

.u-mb-90 {
  margin-bottom: 90px !important;
}

.u-mb-95 {
  margin-bottom: 95px !important;
}

.u-mb-100 {
  margin-bottom: 100px !important;
}

/* ========================================
共通で使うレイアウト l-
======================================== */
.l-inner {
  margin-inline: auto;
  width: 100%;
  max-width: 1800px;
  overflow: hidden;
  position: relative;
}

.l-wrapper {
  container-type: inline-size;
  overflow-x: hidden;
  overflow-y: clip;
}

/* ========================================
サブメニュー
======================================== */
.l-subMenu {
  width: 100%;
  position: relative;
}
.l-subMenu__bg {
  content: "";
  width: 100%;
  height: calc(100% + min(2.9166666667cqw, 52.5px));
  background-color: var(--color-bg01);
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .l-subMenu__bg {
    height: calc(100% + min(17.4358974359vw, 68px));
  }
}
.l-subMenu-works {
  padding: min(6.1111111111cqw, 110px) 0 min(4.7222222222cqw, 85px);
}
@media screen and (max-width: 767px) {
  .l-subMenu-works {
    padding: min(10.2564102564vw, 40px) 0 min(12.5641025641vw, 49px);
  }
}
.l-subMenu-works__inner {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .l-subMenu-works__inner {
    width: 100%;
    padding-inline: min(5.641025641vw, 22px);
  }
}
.l-subMenu-works dl {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: min(6.1111111111cqw, 110px);
}
@media screen and (max-width: 767px) {
  .l-subMenu-works dl {
    flex-direction: column;
    align-items: flex-start;
    gap: min(6.6666666667vw, 26px);
  }
}
.l-subMenu-works dl + dl {
  margin-top: min(2.2916666667cqw, 41.25px);
}
@media screen and (max-width: 767px) {
  .l-subMenu-works dl + dl {
    margin-top: min(7.1794871795vw, 28px);
    padding-top: min(7.4358974359vw, 29px);
    border-top: 1px solid #CECECE;
  }
}
.l-subMenu-works dl dt a {
  display: block;
  padding-left: clamp(35px, 2.4305555556cqw, 43.75px);
  font-size: clamp(22px, 1.5277777778cqw, 27.5px);
  line-height: 1.3;
  position: relative;
}
@media screen and (max-width: 767px) {
  .l-subMenu-works dl dt a {
    font-size: 1.3571428571rem;
    padding-left: min(7.6923076923vw, 30px);
    letter-spacing: 0.17em;
  }
}
.l-subMenu-works dl dt a::before {
  content: "";
  width: clamp(17px, 1.1805555556cqw, 21.25px);
  height: clamp(9px, 0.625cqw, 11.25px);
  position: absolute;
  top: 55%;
  left: 0;
  translate: 0 -50%;
  background-image: url("/assets/img/common/arrow_down.png");
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .l-subMenu-works dl dt a::before {
    width: 1.0714285714rem;
    height: 0.6428571429rem;
    background-image: url("/assets/img/common/arrow_down_SP.png");
    top: 56%;
  }
}
.l-subMenu-works dl dd {
  flex: 1;
}
@media screen and (max-width: 767px) {
  .l-subMenu-works dl dd {
    flex: none;
    width: 100%;
  }
}
.l-subMenu-works dl dd ul {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .l-subMenu-works dl dd ul {
    flex-wrap: wrap;
    gap: min(6.1538461538vw, 24px) min(10.7692307692vw, 42px);
  }
}
.l-subMenu-works dl dd ul li {
  width: -moz-fit-content;
  width: fit-content;
}
.l-subMenu-works dl dd ul li a {
  display: block;
  font-size: clamp(16px, 1.1111111111cqw, 20px);
  line-height: 1.5;
  letter-spacing: 0.06em;
  padding-inline: min(2.8472222222cqw, 51.25px);
  transition: color 0.4s ease;
}
@media screen and (max-width: 767px) {
  .l-subMenu-works dl dd ul li a {
    font-size: 1.1428571429rem;
    line-height: 1;
    padding-left: min(5.1282051282vw, 20px);
    padding-right: 0;
    position: relative;
  }
}
@media screen and (max-width: 767px) {
  .l-subMenu-works dl dd ul li a::before {
    content: "";
    width: 0.3571428571rem;
    height: auto;
    aspect-ratio: 1/1;
    border: 1px solid var(--color-black);
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 0.2857142857rem;
    translate: 0 -50%;
  }
}
@media screen and (min-width: 768px) {
  .l-subMenu-works dl dd ul li a:hover {
    color: var(--color-orange);
  }
}
.l-subMenu-works dl dd ul li + li a {
  border-left: 1px solid var(--color-black);
}
@media screen and (max-width: 767px) {
  .l-subMenu-works dl dd ul li + li a {
    border-left: none;
  }
}
@media screen and (min-width: 768px) {
  .l-subMenu-works dl dd ul li:nth-of-type(1) a {
    border-left: none;
    padding-left: 0;
  }
}
.l-subMenu-works dl dd ul li:nth-last-of-type(1) a {
  padding-right: 0;
}
.l-subMenu-service {
  padding-top: min(6.9444444444cqw, 125px);
  padding-bottom: min(4.7916666667cqw, 86.25px);
}
@media screen and (max-width: 767px) {
  .l-subMenu-service {
    padding-top: min(10.2564102564vw, 40px);
    padding-bottom: min(9.4871794872vw, 37px);
  }
}
.l-subMenu-service__title {
  font-size: clamp(22px, 1.5277777778cqw, 27.5px);
  letter-spacing: 0.13em;
}
@media screen and (max-width: 767px) {
  .l-subMenu-service__title {
    font-size: 1.3571428571rem;
  }
}
.l-subMenu-service__desc {
  margin-top: min(2.6388888889cqw, 47.5px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 1.8;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .l-subMenu-service__desc {
    margin-top: min(5.1282051282vw, 20px);
    font-size: 1rem;
  }
}
.l-subMenu-service ul {
  margin-top: min(1.7361111111cqw, 31.25px);
  border-top: 1px solid #D3D3D3;
}
@media screen and (max-width: 767px) {
  .l-subMenu-service ul {
    margin-top: min(7.6923076923vw, 30px);
  }
}
.l-subMenu-service ul li {
  padding: min(1.4583333333cqw, 26.25px) min(4.0277777778cqw, 72.5px);
  width: 100%;
  border-bottom: 1px solid #D3D3D3;
  display: flex;
  justify-content: space-between;
  gap: min(1.7361111111cqw, 31.25px);
}
@media screen and (max-width: 767px) {
  .l-subMenu-service ul li {
    width: 100%;
    padding: min(5.641025641vw, 22px) 0;
    display: block;
  }
}
.l-subMenu-service__itemHead {
  width: 13em;
  font-size: clamp(16px, 1.1111111111cqw, 20px);
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .l-subMenu-service__itemHead {
    width: 100%;
    font-size: 1.1428571429rem;
  }
}
.l-subMenu-service__itemDesc {
  flex: 1;
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 1.8;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .l-subMenu-service__itemDesc {
    flex: none;
    margin-top: min(3.0769230769vw, 12px);
    width: 100%;
    font-size: 1rem;
  }
}
.l-subMenu-faq__list {
  padding: min(6.0416666667cqw, 108.75px) 0;
  display: flex;
}
@media screen and (max-width: 767px) {
  .l-subMenu-faq__list {
    padding: min(10.2564102564vw, 40px) 0;
    flex-wrap: wrap;
    gap: min(4.6153846154vw, 18px) min(7.4358974359vw, 29px);
  }
}
.l-subMenu-faq__list li {
  width: 33.3333333333%;
  display: flex;
  justify-content: center;
  align-items: center;
  border-left: 1px solid #D1D1D1;
}
@media screen and (max-width: 767px) {
  .l-subMenu-faq__list li {
    width: -moz-fit-content;
    width: fit-content;
    border-left: none;
    gap: 0 min(7.4358974359vw, 29px);
  }
}
.l-subMenu-faq__list li:nth-last-of-type(1) {
  border-right: 1px solid #D1D1D1;
}
@media screen and (max-width: 767px) {
  .l-subMenu-faq__list li:nth-last-of-type(1) {
    border-right: none;
  }
}
.l-subMenu-faq__list li a {
  width: -moz-fit-content;
  width: fit-content;
  padding: min(1.1805555556cqw, 21.25px) min(1.3888888889cqw, 25px);
  font-size: clamp(17px, 1.1805555556cqw, 21.25px);
  line-height: 1.4;
  letter-spacing: 0.1em;
  position: relative;
  transition: color 0.4s ease;
}
@media screen and (max-width: 767px) {
  .l-subMenu-faq__list li a {
    padding-left: 1.1428571429rem;
    font-size: 1.1428571429rem;
    line-height: 1;
    letter-spacing: 0.06em;
  }
}
@media screen and (max-width: 767px) {
  .l-subMenu-faq__list li a::before {
    content: "";
    width: 0.3571428571rem;
    height: auto;
    aspect-ratio: 1/1;
    border: 1px solid #000;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 1px;
    translate: 1px -50%;
  }
}
@media screen and (min-width: 768px) {
  .l-subMenu-faq__list li a:hover {
    color: var(--color-orange);
  }
}

/* ========================================
問い合わせフォーム　チェックボックス
======================================== */
.l-radio {
  display: block;
  margin: auto;
  width: clamp(18px, 1.25cqw, 22.5px);
  height: auto;
  aspect-ratio: 1/1;
  border: 1px solid var(--color-black);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .l-radio {
    width: 1.2857142857rem;
  }
}
.l-radio ~ span {
  padding-left: min(1.3194444444cqw, 23.75px);
  display: block;
  flex: 1;
  font-size: clamp(15px, 1.0416666667cqw, 18.75px);
  line-height: 1.3;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .l-radio ~ span {
    padding-left: 0.6428571429rem;
    font-size: 1rem;
    letter-spacing: 0.01em;
  }
}
.l-radio:checked {
  background-color: var(--color-black);
  position: relative;
}
.l-radio:checked::after {
  content: "";
  display: block;
  width: clamp(6px, 0.4166666667cqw, 7.5px);
  height: clamp(10px, 0.6944444444cqw, 12.5px);
  border: solid var(--color-white);
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -60%;
}
@media screen and (max-width: 767px) {
  .l-radio:checked::after {
    width: 0.4285714286rem;
    height: 0.7142857143rem;
  }
}

/* ========================================
works　モーダル表示エリア
======================================== */
.l-works-modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100dvh;
  background-color: rgba(252, 247, 242, 0.9);
  z-index: 1000;
  opacity: 0;
  transition: opacity 0.5s ease;
}
.l-works-modal.is-active {
  opacity: 1;
}
.l-works-modal__container {
  display: block;
  width: 100%;
  height: 100dvh;
  padding: min(8.75cqw, 157.5px) min(10.4166666667cqw, 187.5px);
  position: relative;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__container {
    padding: min(7.4358974359vw, 29px) min(5.641025641vw, 22px);
    overflow-x: hidden;
  }
}
.l-works-modal__closeBtn {
  content: "";
  display: inline-block;
  width: clamp(32px, 2.2222222222cqw, 40px);
  height: auto;
  aspect-ratio: 32/26;
  background-image: url("/assets/img/common/closeBtn_orange.png");
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: min(2.0833333333cqw, 37.5px);
  right: min(2.0833333333cqw, 37.5px);
  z-index: 1002;
  cursor: pointer;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__closeBtn {
    width: 1.7142857143rem;
    top: min(4.358974359vw, 17px);
    right: min(3.8461538462vw, 15px);
  }
}
.l-works-modal__inner {
  padding: min(7.3611111111cqw, 132.5px) min(6.0416666667cqw, 108.75px) min(4.7916666667cqw, 86.25px);
  width: 100%;
  height: 100%;
  position: relative;
  background-color: #fff;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.1607843137);
  z-index: 1001;
  overflow-y: auto;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__inner {
    overflow-x: visible;
    padding: min(11.0256410256vw, 43px) min(6.1538461538vw, 24px) min(8.2051282051vw, 32px);
  }
}
.l-works-modal__content {
  display: block;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__content {
    max-width: 600px;
    margin: auto;
  }
}
.l-works-modal__category {
  padding-left: clamp(18px, 1.25cqw, 22.5px);
  font-size: clamp(21px, 1.4583333333cqw, 26.25px);
  line-height: 1;
  letter-spacing: 0.14em;
  color: var(--color-orange);
  position: relative;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__category {
    padding-left: 1.4285714286rem;
    font-size: 1.2142857143rem;
  }
}
.l-works-modal__category::before {
  content: "";
  width: clamp(7px, 0.4861111111cqw, 8.75px);
  aspect-ratio: 1/1;
  background-image: url("/assets/img/works/worksList_ttl_mark.png");
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 60%;
  transform: translateY(-50%);
}
@media screen and (max-width: 1000px) {
  .l-works-modal__category::before {
    width: 0.5rem;
    top: 50%;
  }
}
.l-works-modal__title {
  margin-top: min(1.25cqw, 22.5px);
  padding-top: min(3.4722222222cqw, 62.5px);
  border-top: 1px solid var(--color-orange);
  font-size: clamp(20px, 1.3888888889cqw, 25px);
  line-height: 1;
  letter-spacing: 0.07em;
  color: var(--color-gray);
  display: flex;
  align-items: center;
  gap: min(1.875cqw, 33.75px);
}
@media screen and (max-width: 1000px) {
  .l-works-modal__title {
    margin-top: min(3.0769230769vw, 12px);
    padding-top: min(6.6666666667vw, 26px);
    font-size: 1.2142857143rem;
    line-height: 1;
    gap: min(3.5897435897vw, 14px);
  }
}
.l-works-modal__title span {
  display: inline-block;
  font-size: clamp(27px, 1.875cqw, 33.75px);
  font-family: var(--font-en);
  letter-spacing: 0.06em;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__title span {
    font-size: 1.5714285714rem;
    line-height: 1.3;
  }
}
.l-works-modal__subtitle {
  margin-top: min(1.7361111111cqw, 31.25px);
  font-size: clamp(22px, 1.5277777778cqw, 27.5px);
  line-height: 1.4;
  letter-spacing: 0.14em;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__subtitle {
    margin-top: min(3.5897435897vw, 14px);
    font-size: 1.3571428571rem;
  }
}
.l-works-modal__desc {
  margin-top: min(1.7361111111cqw, 31.25px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 2;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__desc {
    margin-top: min(5.1282051282vw, 20px);
    font-size: 1rem;
    line-height: 1.6;
  }
}
.l-works-modal__figContainer {
  margin-top: min(4.0277777778cqw, 72.5px);
  margin-inline: auto;
  display: flex;
  gap: 0 min(1.6666666667cqw, 30px);
}
@media screen and (max-width: 1000px) {
  .l-works-modal__figContainer {
    margin-top: min(9.2307692308vw, 36px);
    flex-direction: column;
    gap: min(10.2564102564vw, 40px) 0;
  }
}
.l-works-modal__figContainer_item {
  flex: 1;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__figContainer_item {
    flex: none;
    width: 100%;
  }
}
.l-works-modal__figContainer_text {
  font-size: clamp(17px, 1.1805555556cqw, 21.25px);
  font-family: var(--font-en);
  line-height: 1;
  letter-spacing: 0.02em;
  color: var(--color-gray);
}
@media screen and (max-width: 1000px) {
  .l-works-modal__figContainer_text {
    font-size: 1.2142857143rem;
  }
}
.l-works-modal__figContainer_image {
  margin-top: min(1.1111111111cqw, 20px);
  width: 100%;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__figContainer_image {
    margin-top: min(2.5641025641vw, 10px);
  }
}
.l-works-modal__footer {
  margin-top: min(6.3194444444cqw, 113.75px);
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: min(3.4722222222cqw, 62.5px) min(1.6666666667cqw, 30px);
}
@media screen and (max-width: 1000px) {
  .l-works-modal__footer {
    margin-top: min(10.2564102564vw, 40px);
    display: block;
  }
}
.l-works-modal__footer_container {
  display: block;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__footer_container + .l-works-modal__footer_container {
    margin-top: min(4.358974359vw, 17px);
  }
}
.l-works-modal__footer_container p {
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 2;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__footer_container p {
    font-size: 1rem;
    line-height: 1.6;
  }
}
.l-works-modal__footer_container figure {
  width: 100%;
  aspect-ratio: 470/353;
}
.l-works-modal__footer_container figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__footer_container figure.fig2 {
    width: 80%;
    aspect-ratio: 240/181;
    margin-right: auto;
  }
}
@media screen and (max-width: 1000px) {
  .l-works-modal__footer_container figure.fig3 {
    width: 80%;
    aspect-ratio: 240/181;
    margin-left: auto;
  }
}
.l-works-modal__links {
  margin-top: min(4.0277777778cqw, 72.5px);
  padding: min(2.2916666667cqw, 41.25px) 0;
  gap: min(1.6666666667cqw, 30px);
  position: relative;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__links {
    margin-top: min(6.9230769231vw, 27px);
    padding: min(5.8974358974vw, 23px) 0;
    flex-direction: column;
    gap: min(2.0512820513vw, 8px);
  }
}
@media screen and (max-width: 1000px) {
  .l-works-modal__links a {
    width: 100%;
    padding: min(5.3846153846vw, 21px) min(8.2051282051vw, 32px);
  }
}
.l-works-modal__links::before {
  content: "";
  width: calc(100% + 2 * min(6.0416666667cqw, 108.75px));
  height: 100%;
  background-color: #FAF8F2;
  position: absolute;
  top: 0;
  left: max(-108.75px, -6.0416666667cqw);
}
@media screen and (max-width: 1000px) {
  .l-works-modal__links::before {
    width: calc(100% + 2 * min(6.1538461538vw, 24px));
    left: 50%;
    translate: -50% 0;
  }
}
.l-works-modal__nav {
  margin-top: min(3.1944444444cqw, 57.5px);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: min(1.6666666667cqw, 30px);
}
@media screen and (max-width: 1000px) {
  .l-works-modal__nav {
    margin-top: min(7.1794871795vw, 28px);
    display: block;
  }
}
.l-works-modal__nav span {
  display: inline-block;
  font-size: clamp(20px, 1.3888888889cqw, 25px);
  line-height: 1;
  letter-spacing: 0.03em;
  font-family: var(--font-en);
  color: var(--color-orange);
}
@media screen and (max-width: 1000px) {
  .l-works-modal__nav span {
    font-size: 1.4285714286rem;
  }
}
.l-works-modal__nav--prev {
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  gap: min(1.25cqw, 22.5px);
  align-items: center;
  cursor: pointer;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__nav--prev {
    gap: min(4.358974359vw, 17px);
  }
}
.l-works-modal__nav--prev::before {
  content: "";
  display: inline-block;
  width: clamp(11px, 0.7638888889cqw, 13.75px);
  height: clamp(21px, 1.4583333333cqw, 26.25px);
  background-image: url("/assets/img/common/arrow_orange_left.png");
  background-repeat: no-repeat;
  background-size: contain;
  transition: translate 0.35s ease;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__nav--prev::before {
    width: 0.7857142857rem;
    height: 1.5rem;
  }
}
@media screen and (min-width: 768px) {
  .l-works-modal__nav--prev:hover::before {
    translate: max(-7.5px, -0.4166666667cqw) 0;
  }
}
.l-works-modal__nav--next {
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  gap: min(1.25cqw, 22.5px);
  align-items: center;
  cursor: pointer;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__nav--next {
    gap: min(4.358974359vw, 17px);
  }
}
.l-works-modal__nav--next::after {
  content: "";
  display: inline-block;
  width: clamp(11px, 0.7638888889cqw, 13.75px);
  height: clamp(21px, 1.4583333333cqw, 26.25px);
  background-image: url("/assets/img/common/arrow_orange_right.png");
  background-repeat: no-repeat;
  background-size: contain;
  transition: translate 0.35s ease;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__nav--next::after {
    width: 0.7857142857rem;
    height: 1.5rem;
  }
}
@media screen and (min-width: 768px) {
  .l-works-modal__nav--next:hover::after {
    translate: min(0.4166666667cqw, 7.5px) 0;
  }
}
.l-works-modal__nav--close {
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  gap: min(0.8333333333cqw, 15px);
  align-items: center;
  cursor: pointer;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__nav--close {
    gap: min(3.0769230769vw, 12px);
    margin: auto;
  }
}
.l-works-modal__nav--close::before {
  content: "";
  display: inline-block;
  width: clamp(16px, 1.1111111111cqw, 20px);
  height: clamp(13px, 0.9027777778cqw, 16.25px);
  background-image: url("/assets/img/common/closeBtn_orange.png");
  background-repeat: no-repeat;
  background-size: contain;
  transition: filter 0.38s ease;
}
@media screen and (max-width: 1000px) {
  .l-works-modal__nav--close::before {
    width: 1.1428571429rem;
    height: 0.9285714286rem;
  }
}
@media screen and (max-width: 1000px) {
  .l-works-modal__nav--sp {
    margin-top: min(10.2564102564vw, 40px);
    display: flex;
    justify-content: space-between;
  }
}
@media screen and (max-width: 1000px) {
  .l-works-modal__nav--sp span {
    display: inline-block;
    font-size: 1.4285714286rem;
    line-height: 1;
    letter-spacing: 0.03em;
    font-family: var(--font-en);
    color: var(--color-orange);
  }
}

/* ========================================
コンタクトボックス
======================================== */
.l-contactBox {
  padding: min(4.1666666667cqw, 75px) min(5.3472222222cqw, 96.25px) min(4.375cqw, 78.75px);
  background-color: #FCF7F2;
}
@media screen and (max-width: 767px) {
  .l-contactBox {
    padding: min(7.9487179487vw, 31px) min(6.4102564103vw, 25px) min(7.9487179487vw, 31px);
  }
}
.l-contactBox__title {
  font-size: clamp(22px, 1.5277777778cqw, 27.5px);
  line-height: 1.4;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .l-contactBox__title {
    font-size: 1.2142857143rem;
    line-height: 1.6;
  }
}
.l-contactBox__desc {
  margin-top: min(1.3888888889cqw, 25px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 2;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .l-contactBox__desc {
    margin-top: min(4.1025641026vw, 16px);
    font-size: 1rem;
    line-height: 1.6;
  }
}
.l-contactBox__btns {
  margin-top: min(2.0833333333cqw, 37.5px);
  display: flex;
  gap: min(1.1111111111cqw, 20px);
}
@media screen and (max-width: 767px) {
  .l-contactBox__btns {
    margin-top: min(5.1282051282vw, 20px);
    flex-direction: column;
    gap: min(1.5384615385vw, 6px);
  }
}
.l-contactBox__btns > * {
  flex: 1;
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  .l-contactBox__btns > * {
    width: 100%;
    flex: none;
  }
}
.l-contactBox__btns .m-contact__lineBtn {
  background-color: transparent;
}
@media screen and (min-width: 768px) {
  .l-contactBox__btns .m-contact__lineBtn:hover {
    background-color: var(--color-orange);
  }
}
.l-contactBox__contactBtn {
  padding: min(1.5277777778cqw, 27.5px) min(1.5277777778cqw, 27.5px) min(1.3888888889cqw, 25px);
  width: 100%;
  border: 1px solid var(--color-orange);
  border-radius: 7px;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  position: relative;
  background-color: transparent;
  transition: background-color 0.5s ease;
}
@media screen and (max-width: 767px) {
  .l-contactBox__contactBtn {
    margin-top: min(3.5897435897vw, 14px);
    padding: min(4.1025641026vw, 16px);
    gap: 0 min(5.3846153846vw, 21px);
  }
}
@media screen and (min-width: 768px) {
  .l-contactBox__contactBtn:hover {
    background-color: var(--color-orange);
  }
}
@media screen and (min-width: 768px) {
  .l-contactBox__contactBtn:hover p {
    color: var(--color-white);
  }
}
.l-contactBox__contactBtn p {
  width: -moz-fit-content;
  width: fit-content;
  font-size: clamp(17px, 1.1805555556cqw, 21.25px);
  line-height: 1.6;
  letter-spacing: 0.12em;
  transition: color 0.5s ease;
}
@media screen and (max-width: 767px) {
  .l-contactBox__contactBtn p {
    font-size: 1.1428571429rem;
    letter-spacing: 0.08em;
    text-align: center;
  }
}

/* ========================================
お問い合わせ 送信確認ダイアログ
======================================== */
.l-contact-dialog {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100dvh;
  align-items: center;
  justify-content: center;
  background-color: rgba(252, 247, 242, 0.9);
  z-index: 1000;
  opacity: 0;
  transition: opacity 0.5s ease;
}
.l-contact-dialog.is-active {
  opacity: 1;
}
.l-contact-dialog:not(.is-active) {
  pointer-events: none;
}
.l-contact-dialog__inner {
  width: min(66.6666666667cqw, 1200px);
  max-height: 90dvh;
  overflow-y: auto;
  padding: min(6.9444444444cqw, 125px) min(5.6944444444cqw, 102.5px);
  background-color: var(--color-white);
  position: relative;
  z-index: 1001;
}
@media screen and (max-width: 767px) {
  .l-contact-dialog__inner {
    width: calc(100% - min(11.2820512821vw, 44px));
    padding: min(9.7435897436vw, 38px) min(6.1538461538vw, 24px) min(12.8205128205vw, 50px);
  }
}
.l-contact-dialog__title {
  padding-left: min(1.3888888889cqw, 25px);
  padding-bottom: min(1.0416666667cqw, 18.75px);
  border-bottom: 1px solid var(--color-orange);
  font-size: clamp(18px, 1.25cqw, 22.5px);
  line-height: 1.6111111111;
  letter-spacing: 0.1em;
  color: var(--color-orange);
  position: relative;
}
.l-contact-dialog__title::before {
  content: "";
  width: min(0.4861111111cqw, 8.75px);
  height: min(0.4861111111cqw, 8.75px);
  border: 1px solid var(--color-orange);
  border-radius: 50%;
  position: absolute;
  top: 0.8055555556em;
  left: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .l-contact-dialog__title {
    padding-left: min(5.1282051282vw, 20px);
    padding-bottom: min(1.5384615385vw, 6px);
    font-size: 1.0714285714rem;
    line-height: 1.9333333333;
    letter-spacing: 0.08em;
  }
  .l-contact-dialog__title::before {
    width: min(1.7948717949vw, 7px);
    height: min(1.7948717949vw, 7px);
    top: 0.9666666667em;
  }
}
.l-contact-dialog__text {
  margin-top: min(2.2916666667cqw, 41.25px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 2.0714285714;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .l-contact-dialog__text {
    margin-top: min(4.6153846154vw, 18px);
    font-size: 0.9285714286rem;
    line-height: 1.6923076923;
  }
}
.l-contact-dialog__btns {
  display: flex;
  gap: min(0.9722222222cqw, 17.5px);
  margin-top: min(3.4027777778cqw, 61.25px);
}
@media screen and (max-width: 767px) {
  .l-contact-dialog__btns {
    flex-direction: column-reverse;
    gap: min(2.0512820513vw, 8px);
    margin-top: min(5.641025641vw, 22px);
  }
}
.l-contact-dialog__btn {
  width: min(27.1527777778cqw, 488.75px);
  height: min(4.6527777778cqw, 83.75px);
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid;
  border-radius: 7px;
  background-color: transparent;
  font-family: var(--font-base);
  font-size: clamp(18px, 1.25cqw, 22.5px);
  line-height: 1;
  letter-spacing: 0.05em;
  cursor: pointer;
  position: relative;
  transition: background-color 0.5s ease, color 0.35s ease;
}
@media screen and (max-width: 767px) {
  .l-contact-dialog__btn {
    width: 100%;
    font-size: 1.2142857143rem;
  }
}
.l-contact-dialog__btn::before, .l-contact-dialog__btn::after {
  content: "";
  width: clamp(35px, 2.4305555556cqw, 43.75px);
  height: 100%;
  background-repeat: no-repeat;
  background-size: clamp(36px, 2.5cqw, 45px) clamp(5px, 0.3472222222cqw, 6.25px);
  background-position: center;
  position: absolute;
  top: 0;
  transition: opacity 0.5s ease;
}
@media screen and (max-width: 767px) {
  .l-contact-dialog__btn::before, .l-contact-dialog__btn::after {
    width: 1.9285714286rem;
    background-size: 1.9285714286rem 0.3571428571rem;
  }
}
.l-contact-dialog__btn::before {
  opacity: 1;
}
.l-contact-dialog__btn::after {
  opacity: 0;
  background-image: url("/assets/img/common/arrow_white.svg");
}
@media screen and (max-width: 767px) {
  .l-contact-dialog__btn::after {
    background-image: url("/assets/img/common/arrow_white_sp.svg");
  }
}
.l-contact-dialog__btn.-submit {
  border-color: var(--color-orange);
  color: var(--color-orange);
}
@media screen and (max-width: 767px) {
  .l-contact-dialog__btn.-submit {
    height: min(17.4358974359vw, 68px);
  }
}
.l-contact-dialog__btn.-submit::before, .l-contact-dialog__btn.-submit::after {
  right: min(1.9444444444cqw, 35px);
}
@media screen and (max-width: 767px) {
  .l-contact-dialog__btn.-submit::before, .l-contact-dialog__btn.-submit::after {
    right: min(4.358974359vw, 17px);
  }
}
.l-contact-dialog__btn.-submit::before {
  background-image: url("/assets/img/common/arrow_orange.svg");
}
@media screen and (max-width: 767px) {
  .l-contact-dialog__btn.-submit::before {
    background-image: url("/assets/img/common/arrow_orange_sp.svg");
  }
}
@media screen and (min-width: 768px) {
  .l-contact-dialog__btn.-submit:not(:disabled):hover {
    background-color: var(--color-orange);
    color: var(--color-white);
  }
}
.l-contact-dialog__btn.-back {
  border-color: #8B8B8B;
  color: #8B8B8B;
}
@media screen and (max-width: 767px) {
  .l-contact-dialog__btn.-back {
    height: min(13.3333333333vw, 52px);
  }
}
.l-contact-dialog__btn.-back::before, .l-contact-dialog__btn.-back::after {
  left: min(1.7361111111cqw, 31.25px);
}
@media screen and (max-width: 767px) {
  .l-contact-dialog__btn.-back::before, .l-contact-dialog__btn.-back::after {
    left: min(2.8205128205vw, 11px);
  }
}
.l-contact-dialog__btn.-back::before {
  background-image: url("/assets/img/common/arrow_back_grey.svg");
}
@media screen and (max-width: 767px) {
  .l-contact-dialog__btn.-back::before {
    background-image: url("/assets/img/common/arrow_back_grey_sp.svg");
  }
}
.l-contact-dialog__btn.-back::after {
  background-image: url("/assets/img/common/arrow_back_white.svg");
}
@media screen and (max-width: 767px) {
  .l-contact-dialog__btn.-back::after {
    background-image: url("/assets/img/common/arrow_back_white_sp.svg");
  }
}
@media screen and (min-width: 768px) {
  .l-contact-dialog__btn.-back:not(:disabled):hover {
    background-color: #8B8B8B;
    color: var(--color-white);
  }
}
@media screen and (min-width: 768px) {
  .l-contact-dialog__btn:not(:disabled):hover::before {
    opacity: 0;
  }
}
@media screen and (min-width: 768px) {
  .l-contact-dialog__btn:not(:disabled):hover::after {
    opacity: 1;
  }
}

/* ========================================
header
======================================== */
.header {
  width: 100%;
  height: calc(clamp(170px, 11.8055555556cqw, 212.5px) + min(3.0555555556cqw, 55px) + min(2.2222222222cqw, 40px));
  background-color: #fff;
  position: relative;
  inset: 0;
  z-index: var(--z-index-header);
}
@media screen and (max-width: 767px) {
  .header {
    height: 9.7857142857rem;
  }
}
.header.invisible {
  display: none;
}
.header__container {
  padding: min(3.0555555556cqw, 55px) min(6.875cqw, 123.75px) min(2.2222222222cqw, 40px) min(3.4027777778cqw, 61.25px);
  width: 100%;
  height: calc(clamp(170px, 11.8055555556cqw, 212.5px) + min(3.0555555556cqw, 55px) + min(2.2222222222cqw, 40px));
  display: flex;
  justify-content: flex-end;
}
@media screen and (max-width: 767px) {
  .header__container {
    padding: 1.4285714286rem min(5.641025641vw, 22px) 1.0714285714rem min(5.641025641vw, 22px);
    height: 10.1428571429rem;
  }
}
.header__logo {
  width: clamp(72px, 5cqw, 90px);
  aspect-ratio: 72/161;
  position: fixed;
  top: min(3.0555555556cqw, 55px);
  left: min(3.4027777778cqw, 61.25px);
  z-index: var(--z-index-header-logo);
  transform-origin: top left;
  transform: scale(1);
  transition: transform 0.5s ease, opacity 0.5s ease;
}
@media screen and (max-width: 767px) {
  .header__logo {
    width: 3.0714285714rem;
    top: 1.4285714286rem;
    left: 1.5714285714rem;
  }
}
.header__logo.scaleDown {
  transform: scale(0.8);
}
@media screen and (min-width: 768px) {
  .header__logo:hover {
    opacity: 0.5;
  }
}
.header__menu {
  padding-top: min(1.6666666667cqw, 30px);
  display: flex;
  flex-direction: row-reverse;
  gap: 0 min(2.2916666667cqw, 41.25px);
}
.header__menu_item {
  position: relative;
}
.header__menu_item a {
  font-size: clamp(15px, 1.0416666667cqw, 18.75px);
  writing-mode: vertical-rl;
  line-height: 1;
  transition: color 0.5s ease;
}
@media screen and (min-width: 768px) {
  .header__menu_item a:hover {
    color: var(--color-orange);
  }
}
.header__menu_item.current a {
  color: var(--color-orange);
}
.header__menu_item svg {
  display: block;
  width: min(0.625cqw, 11.25px);
  height: min(3.6111111111cqw, 65px);
  position: absolute;
  top: calc((min(3.6111111111cqw, 65px) + clamp(16px, 1.1111111111cqw, 20px)) * -1);
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 767px) {
  .header__hamburger {
    width: 2.7142857143rem;
    height: 0.5714285714rem;
    position: fixed;
    top: 2.1571428571rem;
    right: 1.7142857143rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    cursor: pointer;
    z-index: var(--z-index-header-hamburger);
    isolation: isolate;
  }
  .header__hamburger span {
    display: block;
    width: 100%;
    height: 1px;
    background-color: var(--color-black);
  }
}

.header-follow {
  width: 100%;
  height: auto;
  background-color: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(3px);
  position: fixed;
  top: clamp(-307.5px, -17.0833333333cqw, -246px);
  left: 0;
  z-index: var(--z-index-header-follow);
  transform: translate(0, 0);
  transition: transform 0.4s ease;
}
@media screen and (max-width: 767px) {
  .header-follow {
    top: -10.7142857143rem;
  }
}
.header-follow.visible {
  transform: translate(0, clamp(246px, 17.0833333333cqw, 307.5px));
  transition: transform 0.6s ease;
}
@media screen and (max-width: 767px) {
  .header-follow.visible {
    transform: translate(0, 10.7142857143rem);
  }
}
.header-follow .header__container {
  height: clamp(224px, 15.5555555556cqw, 280px);
}

/* ========================================
パンくずリスト
======================================== */
.m-breadcrumb {
  margin-inline: auto;
  padding: 0 min(13.75cqw, 247.5px) min(0.3472222222cqw, 6.25px);
  max-width: 1800px;
  font-family: "Inter", var(--font-base);
  font-size: clamp(12px, 0.8333333333cqw, 15px);
  font-weight: var(--font-regular);
  line-height: 2.4166666667;
  letter-spacing: 0.08em;
  color: #767676;
}
@media screen and (max-width: 767px) {
  .m-breadcrumb {
    padding: 0 min(5.641025641vw, 22px) min(0.2564102564vw, 1px);
    font-size: 0.8571428571rem;
  }
}
.m-breadcrumb__list {
  display: flex;
  flex-wrap: wrap;
  column-gap: 0.5714285714rem;
}
.m-breadcrumb__item {
  display: flex;
  align-items: baseline;
  gap: 0.5714285714rem;
}
.m-breadcrumb__separator,
.m-breadcrumb a {
  color: var(--color-black);
}
.m-breadcrumb a {
  width: fit-content;
}
.m-breadcrumb a:hover, .m-breadcrumb a:focus-visible {
  text-decoration: underline;
}

/* ========================================
footer
======================================== */
.footer {
  border-top: 1px solid #EAEAEA;
}
.footer__container {
  margin-inline: auto;
  margin-bottom: min(4.5138888889cqw, 81.25px);
  padding-inline: min(13.75cqw, 247.5px);
  width: 100%;
  max-width: 1800px;
  display: flex;
  justify-content: space-between;
  gap: 0 min(13.4027777778cqw, 241.25px);
  position: relative;
  z-index: var(--z-index-footer);
}
@media screen and (max-width: 767px) {
  .footer__container {
    margin-bottom: min(10.2564102564vw, 40px);
    padding-inline: min(12.0512820513vw, 47px);
    display: block;
  }
}
.footer__logo {
  margin-top: min(4.3055555556cqw, 77.5px);
  width: clamp(50px, 3.4722222222cqw, 62.5px);
  aspect-ratio: 43/112;
  transition: opacity 0.5s ease;
}
@media screen and (max-width: 767px) {
  .footer__logo {
    display: block;
    margin: min(11.7948717949vw, 46px) auto 0;
    width: 3.0714285714rem;
  }
}
@media screen and (min-width: 768px) {
  .footer__logo:hover {
    opacity: 0.5;
  }
}
.footer__menuArea {
  margin-top: min(6.3194444444cqw, 113.75px);
}
@media screen and (max-width: 767px) {
  .footer__menuArea {
    margin-top: min(9.7435897436vw, 38px);
  }
}
.footer__menu {
  display: flex;
  align-items: center;
  gap: min(1.6666666667cqw, 30px) 0;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .footer__menu {
    justify-content: space-between;
    gap: min(4.358974359vw, 17px) 0;
  }
}
.footer__menu_item {
  width: -moz-fit-content;
  width: fit-content;
  font-size: clamp(13px, 0.9027777778cqw, 16.25px);
  line-height: 1;
  color: #5C5C5C;
  margin-right: min(2.3611111111cqw, 42.5px);
}
@media screen and (max-width: 767px) {
  .footer__menu_item {
    width: 10rem;
    margin-right: 0;
  }
  .footer__menu_item a {
    width: -moz-fit-content;
    width: fit-content;
  }
}
.footer__menu_item:nth-last-of-type(2) {
  margin-right: min(1.9444444444cqw, 35px);
}
.footer__menu_item.-sns {
  display: flex;
  align-items: center;
  gap: 0 min(1.0416666667cqw, 18.75px);
  flex-wrap: nowrap;
  margin-right: 0;
}
@media screen and (max-width: 767px) {
  .footer__menu_item.-sns {
    margin-top: min(9.7435897436vw, 38px);
    width: 100%;
    justify-content: center;
    gap: 0 min(5.3846153846vw, 21px);
  }
}
.footer__menu_item a {
  transition: color 0.5s ease, opacity 0.5s ease;
}
.footer__menu_item a.__LINE {
  width: clamp(21px, 1.4583333333cqw, 26.25px);
  aspect-ratio: 21/20;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .footer__menu_item a.__LINE {
    width: 2.0714285714rem;
  }
}
.footer__menu_item a.__instagram {
  width: clamp(18px, 1.25cqw, 22.5px);
  aspect-ratio: 1/1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .footer__menu_item a.__instagram {
    width: 1.7857142857rem;
  }
}
@media screen and (min-width: 768px) {
  .footer__menu_item a:hover {
    color: var(--color-orange);
  }
}
@media screen and (min-width: 768px) {
  .footer__menu_item a:hover.__LINE, .footer__menu_item a:hover.__instagram {
    opacity: 0.5;
  }
}
.footer__menu_bottom {
  margin-top: min(5.5555555556cqw, 100px);
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: min(0.6944444444cqw, 12.5px) min(5.625cqw, 101.25px);
  color: #818181;
}
@media screen and (max-width: 767px) {
  .footer__menu_bottom {
    margin-top: min(8.2051282051vw, 32px);
    padding: min(6.6666666667vw, 26px) 0;
    display: block;
    position: relative;
    color: #5C5C5C;
  }
}
@media screen and (max-width: 767px) {
  .footer__menu_bottom_bg {
    content: "";
    width: 100vw;
    height: 100%;
    background-color: var(--color-bg01);
    position: absolute;
    top: 0;
    left: max(-12.0512820513vw, -47px);
    z-index: -1;
  }
}
.footer__menu_social {
  font-size: clamp(13px, 0.9027777778cqw, 16.25px);
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .footer__menu_social {
    font-size: 0.9285714286rem;
    line-height: 1.6;
    letter-spacing: 0.03em;
  }
}
@media screen and (min-width: 768px) {
  .footer__menu_social-tel a {
    pointer-events: none;
  }
}
.footer__menu_social-reserve {
  margin-top: min(0.3472222222cqw, 6.25px);
  display: flex;
  align-items: center;
  gap: 0 min(0.6944444444cqw, 12.5px);
}
@media screen and (max-width: 767px) {
  .footer__menu_social-reserve {
    margin-top: min(2.0512820513vw, 8px);
    gap: 0 min(2.8205128205vw, 11px);
  }
}
.footer__menu_social-reserve_label {
  padding: 0 min(0.6944444444cqw, 12.5px);
  border: 1px solid #818181;
  border-radius: 2px;
  line-height: 1.55;
}
@media screen and (max-width: 767px) {
  .footer__menu_social-reserve_label {
    padding: 0 min(3.0769230769vw, 12px);
    font-size: 1rem;
  }
}
.footer__menu_copy {
  margin-bottom: min(0.3472222222cqw, 6.25px);
  display: block;
  font-size: clamp(11px, 0.7638888889cqw, 13.75px);
  line-height: 1;
  height: -moz-fit-content;
  height: fit-content;
}
@media screen and (max-width: 767px) {
  .footer__menu_copy {
    margin: min(3.3333333333vw, 13px) 0 0;
    border: none;
    font-size: 0.7857142857rem;
    line-height: 1.4;
    letter-spacing: 0.04em;
    text-align: center;
    color: #818181;
  }
}

/* ========================================
グローバルナビゲーション
======================================== */
.g-nav {
  width: 100%;
  height: 100dvh;
  max-height: 100vh;
  background: var(--color-white);
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--z-index-g-nav);
  overflow-y: auto;
  display: none;
}
.g-nav__inner {
  padding: min(5.1282051282vw, 20px) min(5.641025641vw, 22px);
  position: relative;
}
.g-nav__head {
  width: 100%;
  height: 7.2857142857rem;
  display: flex;
  justify-content: flex-end;
}
.g-nav__head_logo {
  display: block;
  width: 3.0714285714rem;
  aspect-ratio: 72/161;
  position: absolute;
  top: 1.4285714286rem;
  left: 1.5714285714rem;
}
.g-nav__head_close {
  width: 2.7142857143rem;
  height: 0.5714285714rem;
  margin: min(3.0769230769vw, 12px) 0 auto;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  cursor: pointer;
}
.g-nav__head_close span {
  display: block;
  width: 100%;
  height: 1px;
  background: var(--color-black);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(13deg);
}
.g-nav__head_close span:nth-last-of-type(1) {
  transform: translate(-50%, -50%) rotate(-13deg);
}
.g-nav__menu {
  margin-top: min(16.9230769231vw, 66px);
}
.g-nav__menu_item {
  border-bottom: 1px solid #EDEDED;
}
.g-nav__menu_item:nth-of-type(1) a {
  padding-top: 0;
}
.g-nav__menu_item a {
  padding: min(4.8717948718vw, 19px) 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1.0714285714rem;
  line-height: 1;
  letter-spacing: 0.09em;
}
.g-nav__menu_item a span {
  display: block;
  font-size: 0.8571428571rem;
  font-family: var(--font-en);
  color: var(--color-gray);
  letter-spacing: 0.05em;
}
.g-nav__sns {
  margin-top: min(8.4615384615vw, 33px);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 min(9.2307692308vw, 36px);
}
.g-nav__sns--LINE {
  display: block;
  width: 2.2142857143rem;
  aspect-ratio: 31/30;
}
.g-nav__sns--instagram {
  display: block;
  width: 1.8571428571rem;
  aspect-ratio: 1/1;
}

/* ========================================
Home
======================================== */
@media screen and (min-width: 768px) {
  .p-home-mv {
    height: calc(100dvh - (clamp(170px, 11.8055555556cqw, 212.5px) + min(3.0555555556cqw, 55px) + min(2.2222222222cqw, 40px)));
    min-height: calc(min(2.7777777778cqw, 50px) + clamp(552px, 38.3333333333cqw, 690px));
  }
}
@media screen and (max-width: 767px) {
  .p-home-mv {
    height: calc(100dvh - 9.7857142857rem);
    max-height: 121.7948717949vw;
  }
}
.p-home-mv__inner {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 100%;
  height: 100%;
  position: relative;
}
.p-home-mv__content {
  padding: min(2.7777777778cqw, 50px) clamp(305px, 21.1805555556cqw, 381.25px) 0 0;
  width: 100%;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-home-mv__content {
    height: 100%;
  }
}
@media screen and (max-width: 767px) {
  .p-home-mv__content {
    padding: 0 min(33.8461538462vw, 132px) 0 0;
  }
}
.p-home-mv__img {
  display: block;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .p-home-mv__img {
    height: auto;
  }
}
.p-home-mv__img img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-home-mv__img img.fadeIn-fv {
  opacity: 0;
  transform: translateY(20px); /* y座標で +20px（下方向）にオフセット */
  transition: opacity 1.4s cubic-bezier(0.37, 0, 0.63, 1), transform 1.4s cubic-bezier(0.37, 0, 0.63, 1);
  will-change: opacity, transform; /* パフォーマンスヒント */
  /* 表示時に付与するクラス */
}
.p-home-mv__img img.fadeIn-fv.is-visible {
  opacity: 1;
  transform: translateY(0);
}
.p-home-mv__catch {
  position: absolute;
  top: 0;
  right: clamp(123px, 8.5416666667cqw, 153.75px);
  display: flex;
  flex-direction: column;
  gap: clamp(10px, 0.6944444444cqw, 12.5px) 0;
  font-size: clamp(30px, 2.0833333333cqw, 37.5px);
  line-height: 1;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 767px) {
  .p-home-mv__catch {
    top: 1.6428571429rem;
    right: 2.4285714286rem;
    gap: 0.7142857143rem 0;
    font-size: 1.5714285714rem;
  }
}
.p-home-mv__catch_line1 {
  display: flex;
  align-items: center;
  gap: 0 clamp(4px, 0.2777777778cqw, 5px);
}
@media screen and (max-width: 767px) {
  .p-home-mv__catch_line1 {
    gap: 0 0.0714285714rem;
  }
}
.p-home-mv__catch_line1 .fadeIn-fv--text {
  opacity: 0;
  transition: opacity 1s cubic-bezier(0.37, 0, 0.63, 1);
  will-change: opacity; /* パフォーマンスヒント */
}
.p-home-mv__catch_line1 .fadeIn-fv--text.is-visible {
  opacity: 1;
}
.p-home-mv__catch_line2 {
  margin-top: clamp(66px, 4.5833333333cqw, 82.5px);
  display: flex;
  align-items: center;
  gap: 0 clamp(4px, 0.2777777778cqw, 5px);
}
@media screen and (max-width: 767px) {
  .p-home-mv__catch_line2 {
    margin-top: 3.3571428571rem;
    gap: 0 0.0714285714rem;
  }
}
.p-home-mv__catch_line2 .fadeIn-fv--text {
  opacity: 0;
  transition: opacity 1s cubic-bezier(0.37, 0, 0.63, 1);
  will-change: opacity; /* パフォーマンスヒント */
}
.p-home-mv__catch_line2 .fadeIn-fv--text.is-visible {
  opacity: 1;
}
.p-home-about {
  width: 100%;
  display: flex;
}
@media screen and (max-width: 767px) {
  .p-home-about {
    padding-inline: min(5.641025641vw, 22px);
    justify-content: space-between;
    gap: 0 min(11.5384615385vw, 45px);
  }
}
.p-home-about.l-inner {
  overflow-x: visible;
}
.p-home-about__contTtl {
  flex: 1;
  display: flex;
  padding-left: min(13.75cqw, 247.5px);
}
@media screen and (max-width: 767px) {
  .p-home-about__contTtl {
    flex: none;
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    padding-left: 0;
  }
}
.p-home-about__contTtl .m-secTtl--jp {
  padding-top: min(9.0972222222cqw, 163.75px);
}
@media screen and (max-width: 767px) {
  .p-home-about__contTtl .m-secTtl--jp {
    padding-top: min(19.4871794872vw, 76px);
  }
}
.p-home-about__contTtl .m-secTtl--en {
  padding-top: min(9.4444444444cqw, 170px);
}
@media screen and (max-width: 767px) {
  .p-home-about__contTtl .m-secTtl--en {
    padding-top: min(20.2564102564vw, 79px);
  }
}
@media screen and (min-width: 768px) {
  .p-home-about__contDetail {
    width: min(65.6944444444cqw, 1182.5px);
    padding-right: min(20.3472222222cqw, 366.25px);
  }
}
@media screen and (max-width: 767px) {
  .p-home-about__contDetail {
    flex-shrink: 1;
    padding-right: 0;
    display: block;
  }
}
.p-home-about__contDetail_lead {
  margin-top: min(14.7222222222cqw, 265px);
  font-size: clamp(22px, 1.5277777778cqw, 27.5px);
  letter-spacing: 0.13em;
}
@media screen and (max-width: 767px) {
  .p-home-about__contDetail_lead {
    margin-top: min(34.6153846154vw, 135px);
    font-size: 1.3571428571rem;
    letter-spacing: 0.12em;
  }
}
.p-home-about__contDetail_desc {
  margin-top: min(2.4305555556cqw, 43.75px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 2;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-home-about__contDetail_desc {
    margin-top: min(5.8974358974vw, 23px);
    font-size: 1rem;
  }
}
.p-home-about__contDetail_viewmore {
  margin-top: min(4.5138888889cqw, 81.25px);
  margin-left: auto;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 767px) {
  .p-home-about__contDetail_viewmore {
    margin-top: min(5.8974358974vw, 23px);
  }
}
.p-home-about__contDetail_img {
  display: block;
  margin-top: min(6.3888888889cqw, 115px);
  width: min(65.6944444444cqw, 1182.5px);
  height: clamp(385px, 26.7361111111cqw, 481.25px);
}
@media screen and (max-width: 767px) {
  .p-home-about__contDetail_img {
    margin-top: min(11.5384615385vw, 45px);
    margin-left: max(-14.8717948718vw, -58px);
    width: calc(100% + min(5.641025641vw, 22px) + min(14.8717948718vw, 58px));
    height: 11.1428571429rem;
  }
}
.p-home-about__contDetail_img img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-home-works {
  width: 100%;
  display: flex;
  flex-direction: row-reverse;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-home-works {
    padding-inline: min(5.641025641vw, 22px);
    justify-content: space-between;
    gap: 0 min(8.9743589744vw, 35px);
  }
}
.p-home-works.l-inner {
  overflow: visible;
}
@media screen and (min-width: 768px) {
  .p-home-works__contTtl {
    flex: 1;
    display: flex;
    position: relative;
  }
}
@media screen and (max-width: 767px) {
  .p-home-works__contTtl {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.p-home-works__contTtl .m-secTtl {
  position: absolute;
  top: 0;
  right: 37%;
}
@media screen and (max-width: 767px) {
  .p-home-works__contTtl .m-secTtl {
    position: relative;
    top: 0;
    right: 0;
  }
}
.p-home-works__contTtl .m-secTtl--jp {
  padding-top: min(14.0972222222cqw, 253.75px);
}
@media screen and (max-width: 767px) {
  .p-home-works__contTtl .m-secTtl--jp {
    padding-top: min(24.6153846154vw, 96px);
  }
}
.p-home-works__contTtl .m-secTtl--en {
  padding-top: min(14.375cqw, 258.75px);
}
@media screen and (max-width: 767px) {
  .p-home-works__contTtl .m-secTtl--en {
    padding-top: min(25.3846153846vw, 99px);
  }
}
.p-home-works__slideArea {
  margin-top: min(20.1388888889cqw, 362.5px);
  margin-left: max(-267.5px, -14.8611111111cqw);
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-home-works__slideArea {
    width: min(88.1944444444cqw, 1587.5px);
  }
}
@media screen and (max-width: 767px) {
  .p-home-works__slideArea {
    margin-top: min(39.2307692308vw, 153px);
    margin-left: 0;
    flex: 1;
  }
}
.p-home-works__slideInner {
  overflow-x: hidden;
}
@media screen and (max-width: 767px) {
  .p-home-works__slideInner {
    width: min(196.4102564103vw, 766px);
  }
}
.p-home-works__swiper.swiper {
  overflow: visible !important;
}
.p-home-works__swiper .swiper-slide {
  width: min(29.3055555556cqw, 527.5px);
  margin-left: min(0.1388888889cqw, 2.5px);
}
@media screen and (max-width: 767px) {
  .p-home-works__swiper .swiper-slide {
    width: min(65.1282051282vw, 254px);
    margin-left: min(0.5128205128vw, 2px);
  }
}
@media screen and (min-width: 768px) {
  .p-home-works__swiper:hover .swiper-slide .p-home-works__card {
    opacity: 0.6;
  }
}
@media screen and (min-width: 768px) {
  .p-home-works__swiper .swiper-slide:hover .p-home-works__card {
    opacity: 1;
  }
}
.p-home-works__card {
  overflow: hidden;
  display: block;
  width: 100%;
  position: relative;
  transition: opacity 0.7s ease;
}
.p-home-works__card_img {
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
}
.p-home-works__card_img img {
  height: 100%;
}
.p-home-works__card_img::before {
  content: "";
  width: 100%;
  height: 20%;
  position: absolute;
  bottom: 0;
  left: 0;
  opacity: 0.4;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000 100%);
  z-index: 1;
}
.p-home-works__card_before {
  position: absolute;
  bottom: min(0.9722222222cqw, 17.5px);
  left: min(0.9027777778cqw, 16.25px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 1;
  font-family: var(--font-en);
  color: var(--color-white);
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .p-home-works__card_before {
    font-size: 0.8571428571rem;
    bottom: min(2.5641025641vw, 10px);
    left: min(2.5641025641vw, 10px);
  }
}
.p-home-works__card_after {
  position: absolute;
  bottom: min(0.9722222222cqw, 17.5px);
  right: min(0.9027777778cqw, 16.25px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 1;
  font-family: var(--font-en);
  color: var(--color-white);
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .p-home-works__card_after {
    font-size: 0.8571428571rem;
    bottom: min(2.5641025641vw, 10px);
    right: min(2.5641025641vw, 10px);
  }
}
.p-home-works__pagination {
  display: flex;
  position: absolute;
  bottom: max(-30px, -1.6666666667cqw);
  right: max(-266.25px, -14.7916666667cqw);
  z-index: 3;
}
@media screen and (max-width: 767px) {
  .p-home-works__pagination {
    width: calc(100% - min(11.2820512821vw, 44px));
    bottom: max(-12.3076923077vw, -48px);
    left: min(5.641025641vw, 22px);
    justify-content: space-between;
    align-items: center;
  }
}
.p-home-works__pagination_btn {
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  gap: 0 min(1.9444444444cqw, 35px);
}
@media screen and (max-width: 767px) {
  .p-home-works__pagination_btn {
    gap: 0 min(5.1282051282vw, 20px);
  }
}
.p-home-works__slideBtn {
  width: clamp(16px, 1.1111111111cqw, 20px);
  cursor: pointer;
  transition: scale 0.3s ease;
}
@media screen and (max-width: 767px) {
  .p-home-works__slideBtn {
    width: 0.8571428571rem;
  }
}
@media screen and (min-width: 768px) {
  .p-home-works__slideBtn:hover {
    scale: 1.5;
  }
}
.p-home-works__viewmore {
  margin-top: clamp(12px, 0.8333333333cqw, 15px);
  margin-left: min(4.375cqw, 78.75px);
}
@media screen and (max-width: 767px) {
  .p-home-works__viewmore {
    margin-top: 0;
    margin-left: 0;
  }
}
.p-home-service {
  margin-top: min(10.2083333333cqw, 183.75px);
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-home-service {
    margin-top: min(31.5384615385vw, 123px);
  }
}
.p-home-service__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 82.8472222222cqw;
  height: 100%;
  background-color: var(--color-bg01);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .p-home-service__bg {
    width: calc(100cqw - min(5.641025641vw, 22px));
  }
}
.p-home-service__inner {
  padding-top: min(9.4444444444cqw, 170px);
}
@media screen and (max-width: 767px) {
  .p-home-service__inner {
    padding-top: min(15.1282051282vw, 59px);
  }
}
.p-home-service__title--jp {
  font-size: clamp(30px, 2.0833333333cqw, 37.5px);
  line-height: 1.2;
  letter-spacing: 0.14em;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: clamp(9px, 0.625cqw, 11.25px) 0;
}
@media screen and (max-width: 767px) {
  .p-home-service__title--jp {
    font-size: 1.6428571429rem;
    gap: 0.3571428571rem 0;
  }
}
.p-home-service__title--en {
  display: block;
  font-size: clamp(20px, 1.3888888889cqw, 25px);
  font-family: var(--font-en);
  line-height: 1.1;
  letter-spacing: 0.06em;
  color: var(--color-gray);
}
@media screen and (max-width: 767px) {
  .p-home-service__title--en {
    font-size: 1rem;
  }
}
.p-home-service__slideArea {
  margin-top: min(3.6805555556cqw, 66.25px);
  margin-left: 0;
  padding-bottom: min(11.3888888889cqw, 205px);
  width: 100cqw;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-home-service__slideArea {
    margin-top: min(8.4615384615vw, 33px);
    padding-bottom: min(11.0256410256vw, 43px);
  }
}
.p-home-service__slideInner {
  overflow-x: hidden;
}
.p-home-service__swiper.swiper {
  overflow: visible !important;
}
.p-home-service__swiper .swiper-slide {
  width: min(29.3055555556cqw, 527.5px);
  margin-right: min(1.8055555556cqw, 32.5px);
}
@media screen and (max-width: 767px) {
  .p-home-service__swiper .swiper-slide {
    width: min(73.5897435897vw, 287px);
    margin-right: min(0.7692307692vw, 3px);
  }
}
@media screen and (min-width: 768px) {
  .p-home-service__swiper:hover .swiper-slide .p-home-service__card {
    opacity: 0.6;
  }
}
@media screen and (min-width: 768px) {
  .p-home-service__swiper .swiper-slide:hover .p-home-service__card {
    opacity: 1;
  }
}
.p-home-service__card {
  overflow: hidden;
  width: 100%;
  position: relative;
  transition: opacity 0.7s ease;
}
.p-home-service__card_img {
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
  position: relative;
}
.p-home-service__card_img img {
  height: 100%;
}
.p-home-service__card_img::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  background: transparent linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.7647058824) 100%) 0% 0% no-repeat padding-box;
  z-index: 1;
}
.p-home-service__card_title {
  height: -moz-max-content;
  height: max-content;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  font-size: clamp(23px, 1.5972222222cqw, 28.75px);
  writing-mode: vertical-rl;
  line-height: 1;
  color: var(--color-white);
  z-index: 4;
}
@media screen and (max-width: 767px) {
  .p-home-service__card_title {
    font-size: 1.5rem;
  }
}
.p-home-service__card_desc {
  margin-top: min(1.3888888889cqw, 25px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-home-service__card_desc {
    margin-top: min(3.5897435897vw, 14px);
    padding-right: min(5.1282051282vw, 20px);
    font-size: 1rem;
  }
}
.p-home-service__pagination {
  display: flex;
}
@media screen and (min-width: 768px) {
  .p-home-service__pagination {
    position: absolute;
    bottom: min(4.3055555556cqw, 77.5px);
    left: calc(50cqw + min(20.8333333333cqw, 375px));
    z-index: 3;
  }
}
@media screen and (max-width: 767px) {
  .p-home-service__pagination {
    position: relative;
    width: 100%;
    margin-top: min(8.2051282051vw, 32px);
    padding: 0 min(14.358974359vw, 56px) 0 min(12.8205128205vw, 50px);
    justify-content: space-between;
    align-items: center;
  }
}
.p-home-service__pagination_btn {
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  gap: 0 min(1.9444444444cqw, 35px);
}
@media screen and (max-width: 767px) {
  .p-home-service__pagination_btn {
    gap: 0 min(5.1282051282vw, 20px);
  }
}
.p-home-service__slideBtn {
  width: clamp(16px, 1.1111111111cqw, 20px);
  cursor: pointer;
  transition: scale 0.3s ease;
}
@media screen and (max-width: 767px) {
  .p-home-service__slideBtn {
    width: 0.8571428571rem;
  }
}
@media screen and (min-width: 768px) {
  .p-home-service__slideBtn:hover {
    scale: 1.5;
  }
}
.p-home-service__viewmore {
  margin-top: clamp(12px, 0.8333333333cqw, 15px);
  margin-left: min(4.375cqw, 78.75px);
}
@media screen and (max-width: 767px) {
  .p-home-service__viewmore {
    margin-top: 0;
    margin-left: 0;
  }
}
.p-home-flow {
  margin-top: min(7.2222222222cqw, 130px);
  padding-bottom: min(9.0277777778cqw, 162.5px);
}
@media screen and (max-width: 767px) {
  .p-home-flow {
    margin-top: min(9.4871794872vw, 37px);
    padding-bottom: min(13.8461538462vw, 54px);
  }
}
.p-home-flow__title {
  display: block;
  width: clamp(465px, 32.2916666667cqw, 581.25px);
  margin-inline: auto;
  position: relative;
  transition: opacity 0.4s ease-out;
}
@media screen and (min-width: 768px) {
  .p-home-flow__title {
    padding: min(0.4166666667cqw, 7.5px) 0 min(0.2777777778cqw, 5px);
    border-left: 1px solid var(--color-black);
    border-right: 1px solid var(--color-black);
  }
}
@media screen and (max-width: 767px) {
  .p-home-flow__title {
    width: 17.2857142857rem;
    padding-bottom: min(3.3333333333vw, 13px);
    border-bottom: 1px solid #C9C9C9;
  }
}
.p-home-flow__title::before {
  content: "";
  width: clamp(35px, 2.4305555556cqw, 43.75px);
  height: 100%;
  background-image: url("/assets/img/common/arrow_orange.svg");
  background-repeat: no-repeat;
  background-size: clamp(36px, 2.5cqw, 45px) clamp(5px, 0.3472222222cqw, 6.25px);
  background-position: center;
  position: absolute;
  top: 0;
  right: min(2.5cqw, 45px);
  transition: transform 0.4s ease-out;
}
@media screen and (max-width: 767px) {
  .p-home-flow__title::before {
    width: 1.7857142857rem;
    background-image: url("/assets/img/common/arrow_orange_sp.svg");
    background-size: 1.8571428571rem 0.3571428571rem;
    background-position: center top 24%;
    right: 0;
  }
}
.p-home-flow__title--jp {
  font-size: clamp(18px, 1.25cqw, 22.5px);
  line-height: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: min(0.4166666667cqw, 7.5px) 0;
}
@media screen and (max-width: 767px) {
  .p-home-flow__title--jp {
    font-size: 1.1428571429rem;
    gap: 0.3571428571rem 0;
  }
}
.p-home-flow__title--en {
  display: block;
  font-size: clamp(18px, 1.25cqw, 22.5px);
  font-family: var(--font-en);
  text-align: center;
  color: var(--color-orange);
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .p-home-flow__title--en {
    font-size: 1rem;
  }
}
@media screen and (min-width: 768px) {
  .p-home-flow__title:hover {
    opacity: 0.6;
  }
}
@media screen and (min-width: 768px) {
  .p-home-flow__title:hover::before {
    transform: translateX(clamp(8px, 0.5555555556cqw, 10px));
  }
}
.p-home-faq {
  margin-bottom: min(11.8055555556cqw, 212.5px);
  padding-inline: min(7.9861111111cqw, 143.75px);
}
@media screen and (max-width: 767px) {
  .p-home-faq {
    margin-bottom: min(19.7435897436vw, 77px);
    padding-inline: 0;
  }
}
.p-home-faq__inner {
  padding: min(10.2777777778cqw, 185px) min(8.5416666667cqw, 153.75px) min(5.9027777778cqw, 106.25px);
  background-color: var(--color-bg01);
}
@media screen and (max-width: 767px) {
  .p-home-faq__inner {
    padding: min(14.358974359vw, 56px) min(5.641025641vw, 22px) min(10.7692307692vw, 42px);
  }
}
.p-home-faq__titleArea {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}
@media screen and (max-width: 767px) {
  .p-home-faq__titleArea {
    flex-direction: column;
    align-items: center;
  }
}
.p-home-faq__titleCont {
  display: flex;
  align-items: center;
  gap: 0 min(2.3611111111cqw, 42.5px);
}
@media screen and (max-width: 767px) {
  .p-home-faq__titleCont {
    flex-direction: column;
    gap: min(1.2820512821vw, 5px) 0;
  }
}
.p-home-faq__title--jp {
  font-size: clamp(30px, 2.0833333333cqw, 37.5px);
  line-height: 1;
  letter-spacing: 0.12em;
}
@media screen and (max-width: 767px) {
  .p-home-faq__title--jp {
    font-size: 1.6428571429rem;
    letter-spacing: 0.1em;
  }
}
.p-home-faq__title--en {
  margin-top: min(0.4166666667cqw, 7.5px);
  display: block;
  font-size: clamp(22px, 1.5277777778cqw, 27.5px);
  font-family: var(--font-en);
  text-align: center;
  color: var(--color-gray);
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .p-home-faq__title--en {
    margin-top: 0;
    font-size: 1rem;
  }
}
.p-home-faq__list {
  margin-top: min(2.0833333333cqw, 37.5px);
}
@media screen and (max-width: 767px) {
  .p-home-faq__list {
    margin-top: min(10vw, 39px);
  }
}
.p-home-faq__item {
  border-bottom: 1px solid #D5D5D5;
}
@media screen and (min-width: 768px) {
  .p-home-faq__item:nth-last-of-type(1) {
    border-bottom: none;
  }
}
.p-home-faq__item_q {
  padding: min(2.2222222222cqw, 40px) min(3.125cqw, 56.25px);
  position: relative;
  font-size: clamp(16px, 1.1111111111cqw, 20px);
  cursor: pointer;
  transition: opacity 0.5s ease;
}
@media screen and (max-width: 767px) {
  .p-home-faq__item_q {
    padding: min(4.358974359vw, 17px) min(9.7435897436vw, 38px) min(4.358974359vw, 17px) min(8.2051282051vw, 32px);
    font-size: 1.0714285714rem;
  }
}
.p-home-faq__item_q::before {
  content: "";
  width: min(1.6666666667cqw, 30px);
  height: min(0.8333333333cqw, 15px);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  background-image: url("/assets/img/common/arrow_down.png");
  background-repeat: no-repeat;
  background-size: contain;
  transition: transform 0.5s ease;
}
@media screen and (max-width: 767px) {
  .p-home-faq__item_q::before {
    width: 1.7142857143rem;
    height: 0.7857142857rem;
  }
}
@media screen and (min-width: 768px) {
  .p-home-faq__item_q:hover {
    opacity: 0.6;
  }
}
.p-home-faq__item_q.open::before {
  transform: rotate(180deg);
}
.p-home-faq__item_q span {
  font-size: clamp(26px, 1.8055555556cqw, 32.5px);
  font-family: var(--font-en);
  line-height: 1;
  color: var(--color-orange);
  position: absolute;
  top: min(2.0833333333cqw, 37.5px);
  left: 0;
}
@media screen and (max-width: 767px) {
  .p-home-faq__item_q span {
    font-size: 1.8571428571rem;
    top: min(3.5897435897vw, 14px);
  }
}
.p-home-faq__item_a {
  padding: 0 min(3.125cqw, 56.25px) min(2.2222222222cqw, 40px);
  position: relative;
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 2;
  display: none;
}
@media screen and (max-width: 767px) {
  .p-home-faq__item_a {
    padding: 0 0 min(4.358974359vw, 17px) min(8.2051282051vw, 32px);
    font-size: 1rem;
  }
}
.p-home-faq__item_a span {
  font-size: clamp(26px, 1.8055555556cqw, 32.5px);
  font-family: var(--font-en);
  line-height: 1;
  color: var(--color-red);
  position: absolute;
  top: 0;
  left: 0;
}
.p-home-faq__viewmore {
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 767px) {
  .p-home-faq__viewmore {
    margin-top: min(6.6666666667vw, 26px);
    width: 100%;
    display: flex;
    justify-content: end;
  }
}

/* ========================================
About
======================================== */
.p-about-strengths {
  width: 100%;
}
.p-about-strengths__headline {
  padding-bottom: min(10.1388888889cqw, 182.5px);
  display: flex;
}
@media screen and (max-width: 767px) {
  .p-about-strengths__headline {
    padding-bottom: min(12.8205128205vw, 50px);
    padding-inline: min(5.641025641vw, 22px);
    justify-content: space-between;
    gap: 0 min(11.5384615385vw, 45px);
  }
}
.p-about-strengths__headline.l-inner {
  overflow-x: visible;
}
.p-about-strengths__headline_contTtl {
  flex: 1;
  display: flex;
  padding-left: min(13.75cqw, 247.5px);
}
@media screen and (max-width: 767px) {
  .p-about-strengths__headline_contTtl {
    flex: none;
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    padding-left: 0;
  }
}
.p-about-strengths__headline_contTtl .m-secTtl--jp {
  padding-top: min(13.4722222222cqw, 242.5px);
}
@media screen and (max-width: 767px) {
  .p-about-strengths__headline_contTtl .m-secTtl--jp {
    padding-top: min(19.4871794872vw, 76px);
  }
}
.p-about-strengths__headline_contTtl .m-secTtl--en {
  padding-top: min(13.8194444444cqw, 248.75px);
}
@media screen and (max-width: 767px) {
  .p-about-strengths__headline_contTtl .m-secTtl--en {
    padding-top: min(20.2564102564vw, 79px);
  }
}
@media screen and (min-width: 768px) {
  .p-about-strengths__headline_contDetail {
    width: min(65.6944444444cqw, 1182.5px);
    padding-right: min(20.3472222222cqw, 366.25px);
  }
}
@media screen and (max-width: 767px) {
  .p-about-strengths__headline_contDetail {
    flex-shrink: 1;
    padding-right: 0;
    display: block;
  }
}
.p-about-strengths__headline_contDetail-lead {
  margin-top: min(17.7083333333cqw, 318.75px);
  font-size: clamp(22.5px, 1.5625cqw, 28.125px);
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .p-about-strengths__headline_contDetail-lead {
    margin-top: min(34.6153846154vw, 135px);
    font-size: 1.3571428571rem;
  }
}
.p-about-strengths__headline_contDetail-desc {
  margin-top: min(2.9861111111cqw, 53.75px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 2;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-about-strengths__headline_contDetail-desc {
    margin-top: min(5.8974358974vw, 23px);
    font-size: 1rem;
    line-height: 1.8;
  }
}
.p-about-strengths__content {
  width: 100%;
  position: relative;
  overflow: hidden;
}
.p-about-strengths__content_bg {
  width: 100%;
  height: 100%;
  background-color: var(--color-bg01);
  margin-left: min(15.8333333333cqw, 285px);
  position: absolute;
  inset: 0;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .p-about-strengths__content_bg {
    margin-left: min(5.641025641vw, 22px);
  }
}
.p-about-strengths__content_inner {
  padding: min(7.9166666667cqw, 142.5px) 0 min(4.0277777778cqw, 72.5px);
}
@media screen and (max-width: 767px) {
  .p-about-strengths__content_inner {
    padding: min(14.1025641026vw, 55px) 0;
  }
}
.p-about-strengths__content_list {
  width: 100%;
}
.p-about-strengths__content_container {
  display: flex;
}
@media screen and (min-width: 768px) {
  .p-about-strengths__content_container {
    align-items: stretch;
    min-height: min(27.0138888889cqw, 486.25px);
  }
}
@media screen and (max-width: 767px) {
  .p-about-strengths__content_container {
    flex-direction: column;
  }
}
@media screen and (max-width: 767px) {
  .p-about-strengths__content_container + .p-about-strengths__content_container {
    margin-top: min(10.2564102564vw, 40px);
  }
}
.p-about-strengths__content_container-img {
  display: block;
}
@media screen and (min-width: 768px) {
  .p-about-strengths__content_container-img {
    flex: 1;
    height: auto;
    align-self: stretch;
  }
}
@media screen and (max-width: 767px) {
  .p-about-strengths__content_container-img {
    width: 100%;
    padding-right: min(5.641025641vw, 22px);
  }
}
.p-about-strengths__content_container-img img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-about-strengths__content_container-text {
  width: min(53.4722222222cqw, 962.5px);
  padding: min(5.2777777778cqw, 95px) min(6.5277777778cqw, 117.5px);
  display: flex;
}
@media screen and (max-width: 767px) {
  .p-about-strengths__content_container-text {
    width: 100%;
    padding: min(7.6923076923vw, 30px) min(5.641025641vw, 22px) 0 min(13.3333333333vw, 52px);
    flex-direction: column;
  }
}
@media screen and (min-width: 768px) {
  .p-about-strengths__content_container-text dl {
    max-width: min(34.7222222222cqw, 625px);
  }
}
.p-about-strengths__content_container-text dl dt {
  font-size: clamp(22px, 1.5277777778cqw, 27.5px);
  letter-spacing: 0.06em;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .p-about-strengths__content_container-text dl dt {
    font-size: 1.3571428571rem;
  }
}
.p-about-strengths__content_container-text dl dd {
  margin-top: min(3.75cqw, 67.5px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 2;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-about-strengths__content_container-text dl dd {
    margin-top: min(3.3333333333vw, 13px);
    font-size: 1rem;
  }
}
.p-about-profile {
  padding-bottom: min(17.3611111111cqw, 312.5px);
}
@media screen and (max-width: 767px) {
  .p-about-profile {
    padding-bottom: min(14.1025641026vw, 55px);
  }
}
.p-about-profile__container {
  display: flex;
  gap: 0 min(8.5416666667cqw, 153.75px);
  padding-bottom: min(4.1666666667cqw, 75px);
}
@media screen and (max-width: 767px) {
  .p-about-profile__container {
    flex-direction: column-reverse;
    gap: 0;
    padding-inline: min(5.641025641vw, 22px);
    padding-bottom: min(11.7948717949vw, 46px);
  }
}
.p-about-profile__container + .p-about-profile__container .p-about-profile__textArea {
  margin-top: min(5.1388888889cqw, 92.5px);
}
@media screen and (max-width: 767px) {
  .p-about-profile__container + .p-about-profile__container .p-about-profile__textArea {
    margin-top: min(10.2564102564vw, 40px);
  }
}
.p-about-profile__container + .p-about-profile__container .p-about-profile__imgArea_img {
  margin-top: 0;
}
.p-about-profile__textArea {
  margin-top: min(23.4722222222cqw, 422.5px);
  padding-left: min(13.75cqw, 247.5px);
  width: min(47.8472222222cqw, 861.25px);
}
@media screen and (max-width: 767px) {
  .p-about-profile__textArea {
    margin-top: min(8.7179487179vw, 34px);
    padding-left: 0;
    width: 100%;
  }
}
.p-about-profile__name {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-size: clamp(36px, 2.5cqw, 45px);
  line-height: 1;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .p-about-profile__name {
    font-size: 2.3571428571rem;
    letter-spacing: 0.14em;
  }
}
.p-about-profile__name .-role {
  display: block;
  width: 100%;
  font-size: clamp(19px, 1.3194444444cqw, 23.75px);
  margin-bottom: min(1.0416666667cqw, 18.75px);
}
@media screen and (max-width: 767px) {
  .p-about-profile__name .-role {
    font-size: 1.2857142857rem;
    margin-bottom: min(4.6153846154vw, 18px);
  }
}
.p-about-profile__name .-en {
  margin-left: min(2.1527777778cqw, 38.75px);
  font-family: var(--font-en);
  font-size: clamp(15px, 1.0416666667cqw, 18.75px);
  color: #707070;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 767px) {
  .p-about-profile__name .-en {
    margin-top: min(1.2820512821vw, 5px);
    margin-left: min(8.4615384615vw, 33px);
    font-size: 1.0714285714rem;
  }
}
.p-about-profile__desc {
  margin-top: min(2.7777777778cqw, 50px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 2;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-about-profile__desc {
    margin-top: min(5.8974358974vw, 23px);
    font-size: 1rem;
  }
}
.p-about-profile__imgArea {
  flex: 1;
  display: flex;
  gap: 0 min(4.2361111111cqw, 76.25px);
}
@media screen and (max-width: 767px) {
  .p-about-profile__imgArea {
    flex: none;
    width: 100%;
    justify-content: space-between;
    gap: 0 auto;
  }
}
.p-about-profile__imgArea_img {
  margin-top: min(14.7222222222cqw, 265px);
  display: block;
  width: min(23.8194444444cqw, 428.75px);
  aspect-ratio: 343/570;
}
@media screen and (max-width: 767px) {
  .p-about-profile__imgArea_img {
    margin-top: min(25.641025641vw, 100px);
    width: min(61.0256410256vw, 238px);
    aspect-ratio: 238/314;
  }
}
.p-about-profile__imgArea .m-secTtl--jp {
  padding-top: min(14.7222222222cqw, 265px);
}
@media screen and (max-width: 767px) {
  .p-about-profile__imgArea .m-secTtl--jp {
    padding-top: min(24.8717948718vw, 97px);
  }
}
.p-about-profile__imgArea .m-secTtl--en {
  padding-top: min(15cqw, 270px);
}
@media screen and (max-width: 767px) {
  .p-about-profile__imgArea .m-secTtl--en {
    padding-top: min(25.641025641vw, 100px);
  }
}
.p-about-history {
  padding-bottom: min(3.5416666667cqw, 63.75px);
  display: flex;
  gap: 0 min(12.4305555556cqw, 223.75px);
}
@media screen and (max-width: 767px) {
  .p-about-history {
    padding-bottom: min(16.9230769231vw, 66px);
    flex-direction: column;
    gap: 0;
  }
}
.p-about-history__img {
  display: block;
  width: min(28.4722222222cqw, 512.5px);
  aspect-ratio: 410/907;
}
@media screen and (max-width: 767px) {
  .p-about-history__img {
    width: 100%;
    aspect-ratio: auto;
    padding-right: min(5.641025641vw, 22px);
  }
}
.p-about-history__textArea {
  flex: 1;
  padding-right: min(13.75cqw, 247.5px);
}
@media screen and (max-width: 767px) {
  .p-about-history__textArea {
    flex: none;
    width: 100%;
    padding-inline: min(5.641025641vw, 22px);
  }
}
.p-about-history__title {
  margin-right: auto;
  width: -moz-fit-content;
  width: fit-content;
}
.p-about-history__title .m-secTtl--jp {
  padding-top: min(7.5694444444cqw, 136.25px);
}
@media screen and (max-width: 767px) {
  .p-about-history__title .m-secTtl--jp {
    padding-top: min(14.1025641026vw, 55px);
  }
}
.p-about-history__title .m-secTtl--en {
  padding-top: min(7.7083333333cqw, 138.75px);
}
@media screen and (max-width: 767px) {
  .p-about-history__title .m-secTtl--en {
    padding-top: min(14.8717948718vw, 58px);
  }
}
.p-about-history__lead {
  margin-top: min(8.8888888889cqw, 160px);
  font-size: clamp(22px, 1.5277777778cqw, 27.5px);
  line-height: 1.5;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .p-about-history__lead {
    margin-top: min(13.5897435897vw, 53px);
    font-size: 1.3571428571rem;
  }
}
.p-about-history__desc {
  margin-top: min(2.5cqw, 45px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 2;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-about-history__desc {
    margin-top: min(4.6153846154vw, 18px);
    font-size: 1rem;
  }
}
.p-about-works {
  margin-bottom: min(19.2361111111cqw, 346.25px);
  width: 100%;
  display: flex;
  flex-direction: row-reverse;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-about-works {
    margin-bottom: min(36.9230769231vw, 144px);
    padding-inline: min(5.641025641vw, 22px);
    justify-content: space-between;
    gap: 0 min(8.9743589744vw, 35px);
  }
}
.p-about-works.l-inner {
  overflow: visible;
}
@media screen and (min-width: 768px) {
  .p-about-works__contTtl {
    flex: 1;
    display: flex;
    justify-content: center;
  }
}
@media screen and (max-width: 767px) {
  .p-about-works__contTtl {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.p-about-works__contTtl .m-secTtl--jp {
  padding-top: min(14.0972222222cqw, 253.75px);
}
@media screen and (max-width: 767px) {
  .p-about-works__contTtl .m-secTtl--jp {
    padding-top: min(24.6153846154vw, 96px);
  }
}
.p-about-works__contTtl .m-secTtl--en {
  padding-top: min(14.375cqw, 258.75px);
}
@media screen and (max-width: 767px) {
  .p-about-works__contTtl .m-secTtl--en {
    padding-top: min(25.3846153846vw, 99px);
  }
}
.p-about-works__slideArea {
  margin-top: min(20.1388888889cqw, 362.5px);
  margin-left: max(-267.5px, -14.8611111111cqw);
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-about-works__slideArea {
    width: min(88.1944444444cqw, 1587.5px);
  }
}
@media screen and (max-width: 767px) {
  .p-about-works__slideArea {
    margin-top: min(39.2307692308vw, 153px);
    margin-left: 0;
    flex: 1;
  }
}
.p-about-works__slideInner {
  overflow-x: hidden;
}
@media screen and (max-width: 767px) {
  .p-about-works__slideInner {
    width: min(196.4102564103vw, 766px);
  }
}
.p-about-works__swiper.swiper {
  overflow: visible !important;
}
.p-about-works__swiper .swiper-slide {
  width: min(29.3055555556cqw, 527.5px);
  margin-left: min(0.1388888889cqw, 2.5px);
}
@media screen and (max-width: 767px) {
  .p-about-works__swiper .swiper-slide {
    width: min(65.1282051282vw, 254px);
    margin-left: min(0.5128205128vw, 2px);
  }
}
@media screen and (min-width: 768px) {
  .p-about-works__swiper:hover .swiper-slide .p-about-works__card {
    opacity: 0.3;
  }
}
@media screen and (min-width: 768px) {
  .p-about-works__swiper .swiper-slide:hover .p-about-works__card {
    opacity: 1;
  }
}
.p-about-works__card {
  overflow: hidden;
  width: 100%;
  position: relative;
  transition: opacity 0.7s ease;
}
.p-about-works__card_img {
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
}
.p-about-works__card_img img {
  height: 100%;
}
.p-about-works__card_img::before {
  content: "";
  width: 100%;
  height: 20%;
  position: absolute;
  bottom: 0;
  left: 0;
  opacity: 0.4;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000 100%);
  z-index: 1;
}
.p-about-works__card_before {
  position: absolute;
  bottom: min(0.9722222222cqw, 17.5px);
  left: min(0.9027777778cqw, 16.25px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 1;
  font-family: var(--font-en);
  color: var(--color-white);
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .p-about-works__card_before {
    font-size: 0.8571428571rem;
    bottom: min(2.5641025641vw, 10px);
    left: min(2.5641025641vw, 10px);
  }
}
.p-about-works__card_after {
  position: absolute;
  bottom: min(0.9722222222cqw, 17.5px);
  right: min(0.9027777778cqw, 16.25px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 1;
  font-family: var(--font-en);
  color: var(--color-white);
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .p-about-works__card_after {
    font-size: 0.8571428571rem;
    bottom: min(2.5641025641vw, 10px);
    right: min(2.5641025641vw, 10px);
  }
}
.p-about-works__pagination {
  display: flex;
  position: absolute;
  bottom: max(-30px, -1.6666666667cqw);
  right: max(-266.25px, -14.7916666667cqw);
  z-index: 3;
}
@media screen and (max-width: 767px) {
  .p-about-works__pagination {
    width: calc(100% - min(11.2820512821vw, 44px));
    bottom: max(-12.3076923077vw, -48px);
    left: min(5.641025641vw, 22px);
    justify-content: space-between;
    align-items: center;
  }
}
.p-about-works__pagination_btn {
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  gap: 0 min(1.9444444444cqw, 35px);
}
@media screen and (max-width: 767px) {
  .p-about-works__pagination_btn {
    gap: 0 min(5.1282051282vw, 20px);
  }
}
.p-about-works__slideBtn {
  width: clamp(16px, 1.1111111111cqw, 20px);
  cursor: pointer;
  transition: scale 0.3s ease;
}
@media screen and (max-width: 767px) {
  .p-about-works__slideBtn {
    width: 0.8571428571rem;
  }
}
@media screen and (min-width: 768px) {
  .p-about-works__slideBtn:hover {
    scale: 1.5;
  }
}
.p-about-works__viewmore {
  margin-top: clamp(12px, 0.8333333333cqw, 15px);
  margin-left: min(4.375cqw, 78.75px);
}
@media screen and (max-width: 767px) {
  .p-about-works__viewmore {
    margin-top: 0;
    margin-left: 0;
  }
}
.p-about__links {
  margin-bottom: min(12.9861111111cqw, 233.75px);
}
@media screen and (max-width: 767px) {
  .p-about__links {
    margin-bottom: min(12.8205128205vw, 50px);
    padding-bottom: min(13.5897435897vw, 53px);
    border-bottom: 1px solid #CECECE;
  }
}

/* ========================================
Works
======================================== */
.p-works__section {
  margin-top: min(7.4305555556cqw, 133.75px);
}
@media screen and (max-width: 767px) {
  .p-works__section {
    margin-top: min(14.358974359vw, 56px);
  }
}
.p-works__section + .p-works__section {
  margin-top: min(5.2083333333cqw, 93.75px);
  padding-top: min(6.25cqw, 112.5px);
  border-top: 1px solid #D3D3D3;
}
@media screen and (max-width: 767px) {
  .p-works__section + .p-works__section {
    margin-top: min(21.2820512821vw, 83px);
    padding-top: 0;
    border-top: none;
  }
}
.p-works__section_title {
  display: flex;
  align-items: center;
  gap: min(1.7361111111cqw, 31.25px);
  font-size: clamp(30px, 2.0833333333cqw, 37.5px);
  line-height: 1;
  letter-spacing: 0.16em;
}
@media screen and (max-width: 767px) {
  .p-works__section_title {
    gap: min(6.6666666667vw, 26px);
    font-size: 1.6428571429rem;
    line-height: 1.1;
  }
}
.p-works__section_title span {
  display: inline-block;
  font-size: clamp(20px, 1.3888888889cqw, 25px);
  font-family: var(--font-en);
  letter-spacing: 0.06em;
  color: var(--color-gray);
}
@media screen and (max-width: 767px) {
  .p-works__section_title span {
    font-size: 1rem;
    line-height: 1.1;
    padding-top: 0.3571428571rem;
  }
}
.p-works__section_comingSoon {
  margin-top: min(4.3055555556cqw, 77.5px);
  font-size: clamp(15px, 1.0416666667cqw, 18.75px);
  font-family: var(--font-en);
  line-height: 1;
  letter-spacing: 0.08em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-works__section_comingSoon {
    margin-top: min(10.2564102564vw, 40px);
    font-size: 1.0714285714rem;
  }
}
.p-works__worksList {
  margin-top: min(6.5972222222cqw, 118.75px);
}
@media screen and (max-width: 767px) {
  .p-works__worksList {
    margin-top: min(11.7948717949vw, 46px);
  }
}
.p-works__worksList_item {
  width: 100%;
}
.p-works__worksList_item + .p-works__worksList_item {
  margin-top: min(5.2083333333cqw, 93.75px);
  padding-top: min(4.8611111111cqw, 87.5px);
  border-top: 1px solid #D3D3D3;
}
@media screen and (max-width: 767px) {
  .p-works__worksList_item + .p-works__worksList_item {
    margin-top: min(14.6153846154vw, 57px);
    padding-top: 0;
    border-top: none;
  }
}
.p-works__worksList_category {
  font-size: clamp(21px, 1.4583333333cqw, 26.25px);
  line-height: 1;
  letter-spacing: 0.14em;
  color: var(--color-orange);
  padding-left: clamp(18px, 1.25cqw, 22.5px);
  margin-bottom: min(3.6111111111cqw, 65px);
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-works__worksList_category {
    font-size: 1.3571428571rem;
    padding-left: 1.2857142857rem;
    margin-bottom: min(6.1538461538vw, 24px);
  }
}
.p-works__worksList_category::before {
  content: "";
  width: clamp(7px, 0.4861111111cqw, 8.75px);
  aspect-ratio: 1/1;
  background-image: url("/assets/img/works/worksList_ttl_mark.png");
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 60%;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .p-works__worksList_category::before {
    width: 0.5rem;
    top: 50%;
  }
}
.p-works__case {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 0 min(4.4444444444cqw, 80px);
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .p-works__case {
    flex-direction: column;
    gap: min(6.1538461538vw, 24px) 0;
    padding: min(6.9230769231vw, 27px) min(4.8717948718vw, 19px) min(6.4102564103vw, 25px) min(4.8717948718vw, 19px);
    border: 1px solid #DDDDDD;
    box-shadow: 0px 3px 5px rgba(0, 0, 0, 0.1215686275);
  }
}
.p-works__case + .p-works__case {
  margin-top: min(4.375cqw, 78.75px);
}
@media screen and (max-width: 767px) {
  .p-works__case + .p-works__case {
    margin-top: min(4.1025641026vw, 16px);
  }
}
.p-works__case_img {
  width: min(33.3333333333cqw, 600px);
  aspect-ratio: 480/260;
  margin-left: min(0.625cqw, 11.25px);
}
@media screen and (max-width: 767px) {
  .p-works__case_img {
    width: 100%;
    margin-left: 0;
  }
}
.p-works__case_img img {
  transition: transform 0.4s ease;
}
.p-works__case_content {
  flex: 1;
}
@media screen and (max-width: 767px) {
  .p-works__case_content {
    flex: none;
    width: 100%;
  }
}
.p-works__case_title {
  margin-top: min(2.5694444444cqw, 46.25px);
  font-size: clamp(17px, 1.1805555556cqw, 21.25px);
  line-height: 1;
  letter-spacing: 0.07em;
  color: var(--color-gray);
  display: flex;
  align-items: center;
  gap: min(1.25cqw, 22.5px);
}
@media screen and (max-width: 767px) {
  .p-works__case_title {
    margin-top: 0;
    font-size: 1.1428571429rem;
    gap: min(3.0769230769vw, 12px);
  }
}
.p-works__case_title span {
  display: inline-block;
  font-size: clamp(22px, 1.5277777778cqw, 27.5px);
  font-family: var(--font-en);
  letter-spacing: 0.06em;
}
@media screen and (max-width: 767px) {
  .p-works__case_title span {
    font-size: 1.3571428571rem;
  }
}
.p-works__case_subtitle {
  margin-top: min(1.0416666667cqw, 18.75px);
  font-size: clamp(20px, 1.3888888889cqw, 25px);
  line-height: 1.4;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-works__case_subtitle {
    margin-top: min(1.7948717949vw, 7px);
    font-size: 1.2142857143rem;
  }
}
.p-works__case_desc {
  margin-top: min(2.4305555556cqw, 43.75px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 1.9;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-works__case_desc {
    margin-top: min(2.5641025641vw, 10px);
    font-size: 1rem;
    line-height: 1.6;
  }
}
.p-works__case_viewmore {
  margin-top: min(2.7777777778cqw, 50px);
  margin-left: auto;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 767px) {
  .p-works__case_viewmore {
    margin-top: min(3.3333333333vw, 13px);
  }
}
.p-works__case_viewmore-btn {
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  gap: 0 clamp(10px, 0.6944444444cqw, 12.5px);
  font-size: clamp(17px, 1.1805555556cqw, 21.25px);
  font-family: var(--font-en);
  line-height: 1;
  color: var(--color-orange);
}
@media screen and (max-width: 767px) {
  .p-works__case_viewmore-btn {
    gap: 0 min(2.0512820513vw, 8px);
    font-size: 1.1428571429rem;
  }
}
.p-works__case_viewmore-btn::after {
  content: "";
  display: block;
  width: clamp(35px, 2.4305555556cqw, 43.75px);
  height: auto;
  background-image: url("/assets/img/common/arrow_orange.svg");
  background-position: center bottom clamp(3px, 0.2083333333cqw, 3.75px);
  background-repeat: no-repeat;
  background-size: clamp(36px, 2.5cqw, 45px) clamp(5px, 0.3472222222cqw, 6.25px);
  transition: transform 0.4s ease-out;
}
@media screen and (max-width: 767px) {
  .p-works__case_viewmore-btn::after {
    width: 1.7857142857rem;
    background-image: url("/assets/img/common/arrow_orange_sp.svg");
    background-size: 1.8571428571rem 0.3571428571rem;
    background-position: center bottom 0.2857142857rem;
  }
}
@media screen and (min-width: 768px) {
  .p-works__case:hover .p-works__case_img img {
    transform: scale(1.05);
  }
}
@media screen and (min-width: 768px) {
  .p-works__case:hover .p-works__case_viewmore-btn::after {
    transform: translateX(clamp(8px, 0.5555555556cqw, 10px));
  }
}
.p-works__instagramLink {
  margin-top: min(5.2083333333cqw, 93.75px);
  padding-top: min(7.6388888889cqw, 137.5px);
  border-top: 1px solid #D3D3D3;
}
@media screen and (max-width: 767px) {
  .p-works__instagramLink {
    margin-top: min(12.0512820513vw, 47px);
    padding-top: 0;
    border-top: none;
  }
}
.p-works__instagramLink_inner {
  display: flex;
}
@media screen and (max-width: 767px) {
  .p-works__instagramLink_inner {
    flex-direction: column;
  }
}
@media (hover: hover) {
  .p-works__instagramLink_inner {
    transition: opacity 0.3s ease;
  }
  .p-works__instagramLink_inner:hover {
    opacity: 0.8;
  }
}
.p-works__instagramLink_img {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .p-works__instagramLink_img {
    width: 100%;
  }
}
.p-works__instagramLink_img img {
  border-radius: 7px 0 0 7px;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 767px) {
  .p-works__instagramLink_img img {
    border-radius: 7px 7px 0 0;
  }
}
.p-works__instagramLink_content {
  width: 50%;
  padding: min(3.2638888889cqw, 58.75px) min(3.2638888889cqw, 58.75px) min(2.9861111111cqw, 53.75px);
  background-color: #F8F1EA;
  border-radius: 0 7px 7px 0;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-works__instagramLink_content {
    width: 100%;
    padding: min(6.6666666667vw, 26px) min(17.9487179487vw, 70px) min(5.641025641vw, 22px);
    border-radius: 0 0 7px 7px;
  }
}
.p-works__instagramLink_content::before {
  content: "";
  width: clamp(35px, 2.4305555556cqw, 43.75px);
  height: 100%;
  background-image: url("/assets/img/common/arrow_orange.svg");
  background-repeat: no-repeat;
  background-size: clamp(36px, 2.5cqw, 45px) clamp(5px, 0.3472222222cqw, 6.25px);
  background-position: center;
  position: absolute;
  top: 0;
  right: min(1.9444444444cqw, 35px);
  opacity: 1;
  transition: opacity 0.5s ease;
}
@media screen and (max-width: 767px) {
  .p-works__instagramLink_content::before {
    width: 1.7857142857rem;
    background-image: url("/assets/img/common/arrow_orange_sp.svg");
    background-size: 1.8571428571rem 0.3571428571rem;
    right: min(4.358974359vw, 17px);
  }
}
.p-works__instagramLink_text {
  font-size: clamp(19px, 1.3194444444cqw, 23.75px);
  line-height: 1.5;
  letter-spacing: 0.07em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-works__instagramLink_text {
    font-size: 1.2142857143rem;
    line-height: 1;
  }
}
.p-works__instagramLink_icon {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin: min(0.7638888889cqw, 13.75px) auto 0 auto;
}
@media screen and (max-width: 767px) {
  .p-works__instagramLink_icon {
    margin: min(2.0512820513vw, 8px) auto 0 auto;
  }
}
.p-works__instagramLink_icon p {
  font-size: clamp(20px, 1.3888888889cqw, 25px);
  line-height: 1;
  letter-spacing: 0.05em;
  color: var(--color-orange);
  padding-left: clamp(32px, 2.2222222222cqw, 40px);
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-works__instagramLink_icon p {
    font-size: 1.2142857143rem;
    padding-left: 2rem;
  }
}
.p-works__instagramLink_icon p::before {
  content: "";
  width: clamp(18px, 1.25cqw, 22.5px);
  aspect-ratio: 1/1;
  background-image: url("/assets/img/common/icon_instagram.png");
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .p-works__instagramLink_icon p::before {
    width: 1.1428571429rem;
  }
}
.p-works__links {
  margin-top: min(2.5694444444cqw, 46.25px);
  margin-bottom: min(12.9861111111cqw, 233.75px);
}
@media screen and (max-width: 767px) {
  .p-works__links {
    margin-top: min(3.0769230769vw, 12px);
    margin-bottom: min(12.8205128205vw, 50px);
    padding-bottom: min(13.5897435897vw, 53px);
    border-bottom: 1px solid #CECECE;
  }
}

/* ========================================
Service
======================================== */
.p-service__section {
  margin-top: min(6.9444444444cqw, 125px);
  margin-bottom: min(11.1111111111cqw, 200px);
}
@media screen and (max-width: 767px) {
  .p-service__section {
    margin-top: min(14.358974359vw, 56px);
    margin-bottom: min(12.0512820513vw, 47px);
    padding-bottom: min(12.0512820513vw, 47px);
    border-bottom: 1px solid #CECECE;
  }
}
.p-service__section + .p-service__section {
  margin-top: min(13.8194444444cqw, 248.75px);
}
@media screen and (max-width: 767px) {
  .p-service__section + .p-service__section {
    margin-top: min(21.2820512821vw, 83px);
    padding-top: min(17.9487179487vw, 70px);
    border-top: 1px solid #D3D3D3;
  }
}
.p-service__section_title {
  margin-bottom: min(3.3333333333cqw, 60px);
  display: flex;
  align-items: center;
  gap: min(1.7361111111cqw, 31.25px);
  font-size: clamp(30px, 2.0833333333cqw, 37.5px);
  line-height: 1;
  letter-spacing: 0.16em;
}
@media screen and (max-width: 767px) {
  .p-service__section_title {
    margin-bottom: min(11.7948717949vw, 46px);
    gap: min(6.6666666667vw, 26px);
    font-size: 1.6428571429rem;
    line-height: 1.1;
  }
}
.p-service__section_title span {
  display: inline-block;
  font-size: clamp(20px, 1.3888888889cqw, 25px);
  font-family: var(--font-en);
  letter-spacing: 0.06em;
  color: var(--color-gray);
}
@media screen and (max-width: 767px) {
  .p-service__section_title span {
    font-size: 1rem;
    line-height: 1.1;
    padding-top: 0.3571428571rem;
  }
}
.p-service__list {
  width: calc(100% + min(13.75cqw, 247.5px));
  margin-left: max(-247.5px, -13.75cqw);
}
@media screen and (max-width: 767px) {
  .p-service__list {
    width: 100%;
    margin-left: 0;
  }
}
.p-service__list + .p-service__list {
  margin-top: min(6.5972222222cqw, 118.75px);
}
@media screen and (max-width: 767px) {
  .p-service__list + .p-service__list {
    margin-top: min(21.2820512821vw, 83px);
  }
}
.p-service__case {
  display: flex;
  justify-content: space-between;
  gap: min(4.6527777778cqw, 83.75px);
}
@media screen and (max-width: 767px) {
  .p-service__case {
    flex-direction: column;
    gap: 0;
  }
}
.p-service__case + .p-service__case {
  margin-top: min(6.3888888889cqw, 115px);
}
@media screen and (max-width: 767px) {
  .p-service__case + .p-service__case {
    margin-top: min(8.7179487179vw, 34px);
    padding-top: min(7.4358974359vw, 29px);
    border-top: 1px solid #CECECE;
  }
}
.p-service__case_mainImg {
  display: block;
  width: min(42.2222222222cqw, 760px);
  aspect-ratio: 608/515;
}
@media screen and (max-width: 767px) {
  .p-service__case_mainImg {
    margin-top: min(4.8717948718vw, 19px);
    width: 100%;
    aspect-ratio: 346/200;
  }
}
.p-service__case_content {
  flex: 1;
}
@media screen and (max-width: 767px) {
  .p-service__case_content {
    width: 100%;
    flex: none;
  }
}
.p-service__case_title {
  margin-top: min(2.0833333333cqw, 37.5px);
  padding-left: clamp(21px, 1.4583333333cqw, 26.25px);
  font-size: clamp(23px, 1.5972222222cqw, 28.75px);
  line-height: 1;
  letter-spacing: 0.08em;
  color: var(--color-orange);
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-service__case_title {
    margin-top: 0;
    padding-left: 1.2857142857rem;
    font-size: 1.3571428571rem;
    line-height: 1.1;
    letter-spacing: 0.1em;
  }
}
.p-service__case_title::before {
  content: "";
  width: clamp(7px, 0.4861111111cqw, 8.75px);
  aspect-ratio: 1/1;
  background-image: url("/assets/img/works/worksList_ttl_mark.png");
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 60%;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .p-service__case_title::before {
    width: 0.5rem;
    top: 50%;
  }
}
.p-service__case_desc {
  margin-top: min(2.7083333333cqw, 48.75px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 2;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-service__case_desc {
    margin-top: min(5.1282051282vw, 20px);
    font-size: 1rem;
    line-height: 1.5;
  }
}
.p-service__case_priceBox {
  margin-top: min(3.6111111111cqw, 65px);
}
@media screen and (max-width: 767px) {
  .p-service__case_priceBox {
    margin-top: min(5.8974358974vw, 23px);
    border: 1px solid var(--color-orange);
  }
}
.p-service__case_priceBox + .p-service__case_caseBox {
  margin-top: min(3.0555555556cqw, 55px);
}
@media screen and (max-width: 767px) {
  .p-service__case_priceBox + .p-service__case_caseBox {
    margin-top: min(2.3076923077vw, 9px);
  }
}
.p-service__case_priceBox-title {
  padding-left: clamp(18px, 1.25cqw, 22.5px);
  border-left: 3px solid var(--color-black);
}
@media screen and (max-width: 767px) {
  .p-service__case_priceBox-title {
    padding: 1.4285714286rem 1.2857142857rem;
    border-left: none;
    position: relative;
  }
}
.p-service__case_priceBox-title p {
  font-size: clamp(16px, 1.1111111111cqw, 20px);
  line-height: 1.4;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-service__case_priceBox-title p {
    font-size: 1.1428571429rem;
    line-height: 1.1;
    font-weight: 500;
    padding-left: 1.0714285714rem;
    border-left: 3px solid var(--color-black);
  }
}
.p-service__case_priceBox-content {
  margin-top: min(0.9722222222cqw, 17.5px);
}
@media screen and (max-width: 767px) {
  .p-service__case_priceBox-content {
    margin-top: 0;
    padding: min(4.358974359vw, 17px) min(3.8461538462vw, 15px) min(4.8717948718vw, 19px);
    border-top: 1px solid var(--color-orange);
  }
}
.p-service__case_priceBox-content li {
  padding: min(0.6944444444cqw, 12.5px) min(0.4861111111cqw, 8.75px) min(0.8333333333cqw, 15px) min(0.4861111111cqw, 8.75px);
  display: flex;
  justify-content: space-between;
  border-top: 1px solid #AAAAAA;
}
@media screen and (max-width: 767px) {
  .p-service__case_priceBox-content li {
    padding: min(3.5897435897vw, 14px) 0;
    border-top: none;
    border-bottom: 1px solid #AAAAAA;
  }
}
@media screen and (max-width: 767px) {
  .p-service__case_priceBox-content li:nth-of-type(1) {
    padding-top: 0;
  }
}
.p-service__case_priceBox-content li:nth-last-child(1) {
  border-bottom: 1px solid #AAAAAA;
}
@media screen and (max-width: 767px) {
  .p-service__case_priceBox-content li:nth-last-child(1) {
    padding-bottom: 0;
    border-bottom: none;
  }
}
.p-service__case_priceBox-content li p {
  width: -moz-fit-content;
  width: fit-content;
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 1.4;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-service__case_priceBox-content li p {
    font-size: 1rem;
  }
}
.p-service__case_priceBox-content li p.-name {
  padding-left: clamp(16px, 1.1111111111cqw, 20px);
  position: relative;
}
.p-service__case_priceBox-content li p.-name::before {
  content: "・";
  position: absolute;
  left: 0;
}
@media screen and (max-width: 767px) {
  .p-service__case_priceBox-content li p.-name {
    padding-left: 1.1428571429rem;
  }
}
.p-service__case_priceBox-content li p.-price {
  margin-left: min(2.0833333333cqw, 37.5px);
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .p-service__case_priceBox-content li p.-price {
    margin-left: min(7.6923076923vw, 30px);
  }
}
.p-service__case_caseBox {
  margin-top: min(3.6111111111cqw, 65px);
}
@media screen and (max-width: 767px) {
  .p-service__case_caseBox {
    margin-top: min(5.8974358974vw, 23px);
    border: 1px solid var(--color-orange);
  }
}
.p-service__case_caseBox-title {
  padding-left: clamp(18px, 1.25cqw, 22.5px);
  border-left: 3px solid var(--color-black);
}
@media screen and (max-width: 767px) {
  .p-service__case_caseBox-title {
    padding: 1.4285714286rem 1.2857142857rem;
    border-left: none;
    position: relative;
  }
}
.p-service__case_caseBox-title p {
  font-size: clamp(16px, 1.1111111111cqw, 20px);
  line-height: 1.4;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-service__case_caseBox-title p {
    font-size: 1.1428571429rem;
    line-height: 1.1;
    font-weight: 500;
    padding-left: 1.0714285714rem;
    border-left: 3px solid var(--color-black);
  }
}
.p-service__case_caseBox-content {
  margin-top: min(0.9722222222cqw, 17.5px);
  padding: min(0.6944444444cqw, 12.5px) min(0.3472222222cqw, 6.25px) min(0.6944444444cqw, 12.5px) min(0.4861111111cqw, 8.75px);
  display: block;
  border-block: 1px solid #AAAAAA;
}
@media screen and (max-width: 767px) {
  .p-service__case_caseBox-content {
    margin-top: 0;
    padding: min(4.358974359vw, 17px) min(3.8461538462vw, 15px) min(4.8717948718vw, 19px);
    border-top: 1px solid var(--color-orange);
    border-bottom: none;
  }
}
.p-service__case_caseBox-content--inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.p-service__case_caseBox-content--inner ul {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
}
.p-service__case_caseBox-content--inner ul li {
  font-size: clamp(15px, 1.0416666667cqw, 18.75px);
  line-height: 2;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-service__case_caseBox-content--inner ul li {
    font-size: 1.0714285714rem;
    line-height: 1.4;
  }
}
.p-service__case_caseBox-content--price {
  font-size: clamp(15px, 1.0416666667cqw, 18.75px);
  line-height: 1.4;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-service__case_caseBox-content--price {
    font-size: 1.0714285714rem;
  }
}
.p-service__links {
  margin-top: min(5cqw, 90px);
  margin-bottom: min(12.9861111111cqw, 233.75px);
}
@media screen and (max-width: 767px) {
  .p-service__links {
    margin-top: min(11.5384615385vw, 45px);
    margin-bottom: min(12.8205128205vw, 50px);
    padding-top: min(13.5897435897vw, 53px);
    padding-bottom: min(13.5897435897vw, 53px);
    border-block: 1px solid #CECECE;
  }
}

/* ========================================
Faq
======================================== */
.p-faq__category {
  margin-top: min(7.2222222222cqw, 130px);
}
@media screen and (max-width: 767px) {
  .p-faq__category {
    margin-top: min(14.8717948718vw, 58px);
  }
}
.p-faq__category + .p-faq__category {
  margin-top: min(7.5694444444cqw, 136.25px);
}
@media screen and (max-width: 767px) {
  .p-faq__category + .p-faq__category {
    margin-top: min(16.6666666667vw, 65px);
  }
}
.p-faq__category:nth-last-of-type(1) {
  margin-bottom: min(7.6388888889cqw, 137.5px);
}
@media screen and (max-width: 767px) {
  .p-faq__category:nth-last-of-type(1) {
    margin-bottom: min(10.7692307692vw, 42px);
  }
}
.p-faq__category_title {
  font-size: clamp(21px, 1.4583333333cqw, 26.25px);
  line-height: 1;
  letter-spacing: 0.1em;
  margin-bottom: min(1.9444444444cqw, 35px);
}
@media screen and (max-width: 767px) {
  .p-faq__category_title {
    font-size: 1.4285714286rem;
    margin-bottom: min(5.8974358974vw, 23px);
  }
}
.p-faq__category_item {
  border-bottom: 1px solid #D5D5D5;
}
.p-faq__category_item:nth-of-type(1) {
  border-top: 1px solid #D5D5D5;
}
.p-faq__category_item_q {
  padding: min(2.2222222222cqw, 40px) min(3.4722222222cqw, 62.5px) min(2.2222222222cqw, 40px) clamp(45px, 3.125cqw, 56.25px);
  position: relative;
  font-size: clamp(16px, 1.1111111111cqw, 20px);
  cursor: pointer;
  transition: opacity 0.5s ease;
}
@media screen and (max-width: 767px) {
  .p-faq__category_item_q {
    padding: min(4.358974359vw, 17px) min(9.7435897436vw, 38px) min(4.358974359vw, 17px) min(8.2051282051vw, 32px);
    font-size: 1.0714285714rem;
  }
}
.p-faq__category_item_q::before {
  content: "";
  width: min(1.6666666667cqw, 30px);
  height: min(0.8333333333cqw, 15px);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  background-image: url("/assets/img/common/arrow_down.png");
  background-repeat: no-repeat;
  background-size: contain;
  transition: transform 0.5s ease;
}
@media screen and (max-width: 767px) {
  .p-faq__category_item_q::before {
    width: 1.7142857143rem;
    height: 0.7857142857rem;
  }
}
@media screen and (min-width: 768px) {
  .p-faq__category_item_q:hover {
    opacity: 0.5;
  }
}
.p-faq__category_item_q.open::before {
  transform: rotate(180deg);
}
.p-faq__category_item_q span {
  font-size: clamp(26px, 1.8055555556cqw, 32.5px);
  font-family: var(--font-en);
  line-height: 1;
  color: var(--color-orange);
  position: absolute;
  top: min(2.0833333333cqw, 37.5px);
  left: 0;
}
@media screen and (max-width: 767px) {
  .p-faq__category_item_q span {
    font-size: 1.8571428571rem;
    top: min(3.5897435897vw, 14px);
  }
}
.p-faq__category_item_a {
  padding: 0 min(3.4722222222cqw, 62.5px) min(2.2222222222cqw, 40px);
  position: relative;
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 2;
  display: none;
}
@media screen and (max-width: 767px) {
  .p-faq__category_item_a {
    padding: 0 0 min(4.358974359vw, 17px) min(8.2051282051vw, 32px);
    font-size: 1rem;
  }
}
.p-faq__category_item_a span {
  font-size: clamp(26px, 1.8055555556cqw, 32.5px);
  font-family: var(--font-en);
  line-height: 1;
  color: var(--color-red);
  position: absolute;
  top: 0;
  left: 0;
}
.p-faq__links {
  margin-top: min(6.5277777778cqw, 117.5px);
  margin-bottom: min(12.9861111111cqw, 233.75px);
}
@media screen and (max-width: 767px) {
  .p-faq__links {
    margin-top: min(12.8205128205vw, 50px);
    margin-bottom: min(12.8205128205vw, 50px);
    padding-bottom: min(13.5897435897vw, 53px);
    border-bottom: 1px solid #CECECE;
  }
}

/* ========================================
Flow
======================================== */
.p-flow-steps {
  margin-top: min(12.9166666667cqw, 232.5px);
}
@media screen and (max-width: 767px) {
  .p-flow-steps {
    margin-top: min(21.2820512821vw, 83px);
  }
}
.p-flow-steps__list {
  width: 100%;
}
.p-flow-steps__item {
  display: flex;
  justify-content: space-between;
  gap: 0 min(4.0277777778cqw, 72.5px);
}
@media screen and (max-width: 767px) {
  .p-flow-steps__item {
    gap: 0 min(5.641025641vw, 22px);
  }
}
.p-flow-steps__item + .p-flow-steps__item {
  margin-top: min(1.3194444444cqw, 23.75px);
}
@media screen and (max-width: 767px) {
  .p-flow-steps__item + .p-flow-steps__item {
    margin-top: min(3.0769230769vw, 12px);
  }
}
.p-flow-steps__item:nth-last-of-type(1) .p-flow-steps__content {
  padding-bottom: 0;
}
.p-flow-steps__step {
  width: clamp(68px, 4.7222222222cqw, 85px);
  display: flex;
  flex-direction: column;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__step {
    width: 4.1428571429rem;
  }
}
.p-flow-steps__step-num {
  width: 100%;
  aspect-ratio: 1/1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border: 1px solid var(--color-gray);
  border-radius: 50%;
  font-size: clamp(18px, 1.25cqw, 22.5px);
  font-family: var(--font-en);
  color: var(--color-gray);
  line-height: 1.2;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__step-num {
    font-size: 1rem;
  }
}
.p-flow-steps__step-num span {
  font-size: clamp(26px, 1.8055555556cqw, 32.5px);
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__step-num span {
    font-size: 1.6428571429rem;
  }
}
.p-flow-steps__step-arrow {
  flex: 1;
  margin-top: min(1.1805555556cqw, 21.25px);
  display: block;
  width: 100%;
  height: auto;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__step-arrow {
    margin-top: min(3.3333333333vw, 13px);
  }
}
.p-flow-steps__step-arrow::after {
  content: "";
  width: 5px;
  height: 100%;
  background: url("/assets/img/flow/flow_arrow.png") center bottom no-repeat;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 50%;
}
.p-flow-steps__content {
  flex: 1;
  display: flex;
  justify-content: space-between;
  gap: 0 min(3.8888888889cqw, 70px);
  margin-top: min(0.5555555556cqw, 10px);
  padding-bottom: min(3.4722222222cqw, 62.5px);
}
@media screen and (max-width: 767px) {
  .p-flow-steps__content {
    flex-direction: column;
    gap: min(4.8717948718vw, 19px);
    margin-top: 0;
    padding-bottom: min(15.3846153846vw, 60px);
  }
}
.p-flow-steps__content_icon {
  width: clamp(114px, 7.9166666667cqw, 142.5px);
}
@media screen and (max-width: 767px) {
  .p-flow-steps__content_icon {
    width: 100%;
  }
}
.p-flow-steps__content_icon img {
  margin-inline: auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
.p-flow-steps__content_icon .-step01 {
  width: 100%;
  aspect-ratio: 114/87;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__content_icon .-step01 {
    width: min(22.5641025641vw, 88px);
  }
}
.p-flow-steps__content_icon .-step02 {
  width: 100%;
  aspect-ratio: 114/72;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__content_icon .-step02 {
    width: min(22.3076923077vw, 87px);
  }
}
.p-flow-steps__content_icon .-step03 {
  width: min(3.1944444444cqw, 57.5px);
  aspect-ratio: 46/58;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__content_icon .-step03 {
    width: min(8.9743589744vw, 35px);
  }
}
.p-flow-steps__content_icon .-step04 {
  width: min(4.375cqw, 78.75px);
  aspect-ratio: 63/41;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__content_icon .-step04 {
    width: min(12.3076923077vw, 48px);
  }
}
.p-flow-steps__content_icon .-step05 {
  width: min(6.8055555556cqw, 122.5px);
  aspect-ratio: 98/42;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__content_icon .-step05 {
    width: min(19.2307692308vw, 75px);
  }
}
.p-flow-steps__content_icon .-step06 {
  width: 100%;
  aspect-ratio: 114/86;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__content_icon .-step06 {
    width: min(22.5641025641vw, 88px);
  }
}
.p-flow-steps__content_text {
  flex: 1;
  margin-top: min(0.4861111111cqw, 8.75px);
}
@media screen and (max-width: 767px) {
  .p-flow-steps__content_text {
    margin-top: 0;
  }
}
.p-flow-steps__content_title {
  font-size: clamp(20px, 1.3888888889cqw, 25px);
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__content_title {
    font-size: 1.2857142857rem;
    text-align: center;
  }
}
.p-flow-steps__content_desc {
  margin-top: min(1.25cqw, 22.5px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__content_desc {
    margin-top: min(4.1025641026vw, 16px);
    font-size: 1rem;
    line-height: 1.8;
  }
}
.p-flow-steps__content_desc.-note {
  margin-top: 0;
  color: #BC1616;
}
.p-flow-steps__content_detail {
  margin-top: min(1.25cqw, 22.5px);
  padding: min(1.6666666667cqw, 30px) min(2.0833333333cqw, 37.5px) min(1.8055555556cqw, 32.5px);
  border: 1px solid #D3D3D3;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__content_detail {
    margin-top: min(4.6153846154vw, 18px);
    padding: min(3.8461538462vw, 15px) min(4.1025641026vw, 16px);
  }
}
.p-flow-steps__content_detail dt {
  font-size: clamp(15px, 1.0416666667cqw, 18.75px);
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__content_detail dt {
    font-size: 1.0714285714rem;
    line-height: 1.2;
  }
}
.p-flow-steps__content_detail dt.-red {
  color: #BC1616;
}
.p-flow-steps__content_detail dd {
  margin-top: min(0.5555555556cqw, 10px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__content_detail dd {
    margin-top: min(1.5384615385vw, 6px);
    font-size: 1rem;
    line-height: 1.6;
  }
}
.p-flow-steps__note {
  margin-top: min(7.8472222222cqw, 141.25px);
  margin-bottom: min(1.0416666667cqw, 18.75px);
  padding: min(2.7777777778cqw, 50px) min(5.3472222222cqw, 96.25px) min(3.125cqw, 56.25px);
  background-color: var(--color-bg01);
}
@media screen and (max-width: 767px) {
  .p-flow-steps__note {
    margin-top: min(13.3333333333vw, 52px);
    padding: min(8.4615384615vw, 33px) min(6.4102564103vw, 25px);
  }
}
.p-flow-steps__note_title {
  font-size: clamp(21px, 1.4583333333cqw, 26.25px);
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__note_title {
    font-size: 1.5rem;
  }
}
.p-flow-steps__note_lead {
  margin-top: min(0.5555555556cqw, 10px);
  font-size: clamp(16px, 1.1111111111cqw, 20px);
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__note_lead {
    margin-top: min(2.0512820513vw, 8px);
    font-size: 1rem;
  }
}
.p-flow-steps__note_content {
  margin-top: min(1.0416666667cqw, 18.75px);
  padding-top: min(1.5972222222cqw, 28.75px);
  border-top: 1px solid #D3D3D3;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__note_content {
    margin-top: min(3.5897435897vw, 14px);
    padding-top: min(4.1025641026vw, 16px);
  }
}
.p-flow-steps__note_planeText {
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__note_planeText {
    font-size: 1rem;
    line-height: 1.8;
  }
}
.p-flow-steps__note_process {
  margin: min(1.6666666667cqw, 30px) auto min(2.0138888889cqw, 36.25px);
  width: -moz-fit-content;
  width: fit-content;
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: min(0.3472222222cqw, 6.25px) 0;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__note_process {
    margin: min(6.4102564103vw, 25px) auto;
    grid-template-columns: auto 1fr;
    gap: 0 min(4.358974359vw, 17px);
  }
}
.p-flow-steps__note_process .col1-1 {
  grid-column: 1/2;
  grid-row: 1/2;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__note_process .col1-1 {
    grid-column: 1/2;
    grid-row: 1/3;
  }
}
.p-flow-steps__note_process .col1-2 {
  grid-column: 2/3;
  grid-row: 1/2;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__note_process .col1-2 {
    grid-column: 2/3;
    grid-row: 1/2;
  }
}
.p-flow-steps__note_process .col1-3 {
  grid-column: 3/4;
  grid-row: 1/2;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__note_process .col1-3 {
    grid-column: 2/3;
    grid-row: 2/3;
  }
}
.p-flow-steps__note_process .col2-1 {
  grid-column: 1/2;
  grid-row: 2/3;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__note_process .col2-1 {
    grid-column: 1/2;
    grid-row: 3/5;
    margin-top: min(3.0769230769vw, 12px);
  }
}
.p-flow-steps__note_process .col2-2 {
  grid-column: 2/3;
  grid-row: 2/3;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__note_process .col2-2 {
    grid-column: 2/3;
    grid-row: 3/4;
    margin-top: min(3.0769230769vw, 12px);
  }
}
.p-flow-steps__note_process .col2-3 {
  grid-column: 3/4;
  grid-row: 2/3;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__note_process .col2-3 {
    grid-column: 2/3;
    grid-row: 4/5;
  }
}
.p-flow-steps__note_process .col3-1 {
  grid-column: 1/2;
  grid-row: 3/4;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__note_process .col3-1 {
    grid-column: 1/2;
    grid-row: 5/7;
    margin-top: min(3.0769230769vw, 12px);
  }
}
.p-flow-steps__note_process .col3-2 {
  grid-column: 2/3;
  grid-row: 3/4;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__note_process .col3-2 {
    grid-column: 2/3;
    grid-row: 5/6;
    margin-top: min(3.0769230769vw, 12px);
  }
}
.p-flow-steps__note_process .col3-3 {
  grid-column: 3/4;
  grid-row: 3/4;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__note_process .col3-3 {
    grid-column: 2/3;
    grid-row: 6/7;
  }
}
.p-flow-steps__note_process-order {
  font-size: clamp(15px, 1.0416666667cqw, 18.75px);
  line-height: 1.4;
  color: var(--color-orange);
  padding: min(0.2083333333cqw, 3.75px) min(0.5555555556cqw, 10px);
  border: 1px solid var(--color-orange);
}
@media screen and (max-width: 767px) {
  .p-flow-steps__note_process-order {
    font-size: 1rem;
    padding: min(3.5897435897vw, 14px) min(2.0512820513vw, 8px);
  }
}
.p-flow-steps__note_process-context {
  margin-left: min(0.9722222222cqw, 17.5px);
  font-size: clamp(15px, 1.0416666667cqw, 18.75px);
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__note_process-context {
    margin-left: 0;
    font-size: 1.0714285714rem;
    line-height: 1.4;
  }
}
.p-flow-steps__note_process-term {
  font-size: clamp(15px, 1.0416666667cqw, 18.75px);
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .p-flow-steps__note_process-term {
    font-size: 1.0714285714rem;
    line-height: 1.4;
  }
}
.p-flow-steps__links {
  margin-top: min(4.8611111111cqw, 87.5px);
  margin-bottom: min(12.9861111111cqw, 233.75px);
}
@media screen and (max-width: 767px) {
  .p-flow-steps__links {
    margin-top: min(9.2307692308vw, 36px);
    margin-bottom: min(12.8205128205vw, 50px);
    padding-bottom: min(13.5897435897vw, 53px);
    border-bottom: 1px solid #CECECE;
  }
}

/* ========================================
contact
======================================== */
.p-contact__guide {
  margin-top: min(5.0694444444cqw, 91.25px);
}
@media screen and (max-width: 767px) {
  .p-contact__guide {
    margin-top: min(10vw, 39px);
  }
}
.p-contact__guide_text {
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 1.1;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-contact__guide_text {
    font-size: 1rem;
    line-height: 1.4;
  }
}
.p-contact__guide_contactBlock {
  margin-top: min(2.7083333333cqw, 48.75px);
  padding: min(3.4027777778cqw, 61.25px) 0 min(3.6805555556cqw, 66.25px);
  display: flex;
  background-color: #FCF7F2;
}
@media screen and (max-width: 767px) {
  .p-contact__guide_contactBlock {
    margin-top: min(4.6153846154vw, 18px);
    padding: 0;
    flex-direction: column;
    gap: min(1.0256410256vw, 4px);
    background-color: inherit;
  }
}
.p-contact__guide_tel {
  width: -moz-fit-content;
  width: fit-content;
  padding: 0 min(4.2361111111cqw, 76.25px) 0 min(6.5277777778cqw, 117.5px);
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-contact__guide_tel {
    width: 100%;
    padding: min(5.641025641vw, 22px) min(4.6153846154vw, 18px) min(8.2051282051vw, 32px);
    background-color: #FCF7F2;
  }
}
.p-contact__guide_tel-title {
  width: -moz-fit-content;
  width: fit-content;
  font-size: clamp(16px, 1.1111111111cqw, 20px);
  line-height: 1.7;
  letter-spacing: 0.02em;
  text-align: center;
  border-bottom: 1px solid #D5D5D5;
}
@media screen and (max-width: 767px) {
  .p-contact__guide_tel-title {
    font-size: 1.0714285714rem;
  }
}
.p-contact__guide_tel-number {
  margin-top: min(2.0138888889cqw, 36.25px);
  font-family: var(--font-en);
  display: flex;
  align-items: baseline;
  gap: min(1.1805555556cqw, 21.25px);
}
@media screen and (max-width: 767px) {
  .p-contact__guide_tel-number {
    margin-top: min(3.3333333333vw, 13px);
    gap: min(2.5641025641vw, 10px);
  }
}
.p-contact__guide_tel-number p {
  font-size: clamp(21px, 1.4583333333cqw, 26.25px);
  line-height: 1;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .p-contact__guide_tel-number p {
    font-size: 1.1428571429rem;
  }
}
.p-contact__guide_tel-number a {
  font-size: clamp(40px, 2.7777777778cqw, 50px);
  line-height: 1;
  letter-spacing: 0.06em;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .p-contact__guide_tel-number a {
    font-size: 2.2142857143rem;
    pointer-events: all;
  }
}
.p-contact__guide_tel-hours {
  margin-top: min(0.7638888889cqw, 13.75px);
  font-size: clamp(15px, 1.0416666667cqw, 18.75px);
  line-height: 1.3;
  letter-spacing: 0.13em;
}
@media screen and (max-width: 767px) {
  .p-contact__guide_tel-hours {
    margin-top: min(2.3076923077vw, 9px);
    font-size: 1rem;
    letter-spacing: 0.08em;
  }
}
.p-contact__guide_LINE {
  flex: 1;
  padding: 0 min(6.5277777778cqw, 117.5px) 0 min(6.6666666667cqw, 120px);
  border-left: 1px solid #D5D5D5;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-contact__guide_LINE {
    width: 100%;
    padding: min(6.1538461538vw, 24px) min(5.8974358974vw, 23px) min(5.1282051282vw, 20px);
    border-left: none;
    background-color: #FCF7F2;
  }
}
.p-contact__guide_LINE-title {
  width: -moz-fit-content;
  width: fit-content;
  font-size: clamp(16px, 1.1111111111cqw, 20px);
  line-height: 1.7;
  letter-spacing: 0.02em;
  text-align: center;
  border-bottom: 1px solid #D5D5D5;
}
@media screen and (max-width: 767px) {
  .p-contact__guide_LINE-title {
    font-size: 1.0714285714rem;
  }
}
.p-contact__guide_LINE-link {
  margin-top: min(1.5625cqw, 28.125px);
  padding-inline: min(3.6111111111cqw, 65px);
}
@media screen and (max-width: 767px) {
  .p-contact__guide_LINE-link {
    margin-top: min(5.1282051282vw, 20px);
    padding: min(4.358974359vw, 17px) min(5.1282051282vw, 20px) min(5.0769230769vw, 19.8px) min(4.2820512821vw, 16.7px);
  }
}
.p-contact__form {
  margin-top: min(6.9444444444cqw, 125px);
  margin-bottom: min(11.1111111111cqw, 200px);
}
@media screen and (max-width: 767px) {
  .p-contact__form {
    margin-top: min(15.3846153846vw, 60px);
    margin-bottom: min(20.5128205128vw, 80px);
  }
}
.p-contact__form_error {
  margin-top: min(0.5555555556cqw, 10px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 1.6;
  letter-spacing: 0.03em;
  color: #BC1616;
}
@media screen and (max-width: 767px) {
  .p-contact__form_error {
    margin-top: min(2.0512820513vw, 8px);
    font-size: 0.9285714286rem;
  }
}
.p-contact__form_globalError {
  margin-top: min(1.6666666667cqw, 30px);
  padding: min(1.1111111111cqw, 20px) min(1.3888888889cqw, 25px);
  font-size: clamp(15px, 1.0416666667cqw, 18.75px);
  line-height: 1.8;
  letter-spacing: 0.03em;
  color: #BC1616;
  background-color: #FCF7F2;
  border: 1px solid #BC1616;
}
.p-contact__form_globalError[hidden] {
  display: none;
}
@media screen and (max-width: 767px) {
  .p-contact__form_globalError {
    margin-top: min(5.1282051282vw, 20px);
    padding: min(3.5897435897vw, 14px) min(4.1025641026vw, 16px);
    font-size: 0.9285714286rem;
  }
}
.p-contact__form_fileNotice {
  margin-top: min(0.6944444444cqw, 12.5px);
  font-size: clamp(13px, 0.9027777778cqw, 16.25px);
  line-height: 1.6;
  letter-spacing: 0.03em;
  color: #BC1616;
}
@media screen and (max-width: 767px) {
  .p-contact__form_fileNotice {
    font-size: 0.8571428571rem;
  }
}
.p-contact__form_recaptchaNotice {
  margin-top: min(1.1111111111cqw, 20px);
  font-size: clamp(12px, 0.8333333333cqw, 15px);
  line-height: 1.6;
  text-align: center;
  color: #888888;
}
.p-contact__form_recaptchaNotice a {
  color: inherit;
  text-decoration: underline;
}
@media screen and (max-width: 767px) {
  .p-contact__form_recaptchaNotice {
    font-size: 0.7857142857rem;
  }
}
.p-contact__form_title {
  font-size: clamp(21px, 1.4583333333cqw, 26.25px);
  line-height: 1;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 767px) {
  .p-contact__form_title {
    font-size: 1.4285714286rem;
  }
}
.p-contact__form_attention {
  margin-top: min(1.0416666667cqw, 18.75px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 1;
  letter-spacing: 0.03em;
  color: #BC1616;
}
@media screen and (max-width: 767px) {
  .p-contact__form_attention {
    margin-top: min(3.5897435897vw, 14px);
    font-size: 0.9285714286rem;
  }
}
.p-contact__form_area {
  margin-top: min(3.125cqw, 56.25px);
}
@media screen and (max-width: 767px) {
  .p-contact__form_area {
    margin-top: min(7.1794871795vw, 28px);
  }
}
.p-contact__form_area input,
.p-contact__form_area select,
.p-contact__form_area textarea {
  scroll-margin-top: min(16.6666666667cqw, 300px);
}
@media screen and (max-width: 767px) {
  .p-contact__form_area input,
  .p-contact__form_area select,
  .p-contact__form_area textarea {
    scroll-margin-top: min(41.0256410256vw, 160px);
  }
}
.p-contact__form_item {
  width: 100%;
  padding: min(1.0416666667cqw, 18.75px) min(0.7638888889cqw, 13.75px) min(1.0416666667cqw, 18.75px) min(1.1111111111cqw, 20px);
  border-top: 1px solid #D5D5D5;
}
@media screen and (max-width: 767px) {
  .p-contact__form_item {
    padding: min(3.5897435897vw, 14px) 0 min(4.8717948718vw, 19px);
  }
}
.p-contact__form_item:nth-last-of-type(1) {
  border-bottom: 1px solid #D5D5D5;
}
.p-contact__form_item dl {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0 min(5.7638888889cqw, 103.75px);
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl {
    flex-direction: column;
    gap: min(1.7948717949vw, 7px) 0;
  }
}
.p-contact__form_item dl.-radio {
  padding: min(1.0416666667cqw, 18.75px) 0;
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl.-radio {
    padding: 0;
    gap: min(3.5897435897vw, 14px) 0;
  }
}
.p-contact__form_item dl.-alignTop {
  align-items: flex-start;
}
@media screen and (min-width: 768px) {
  .p-contact__form_item dl.-alignTop dt {
    margin-top: clamp(15px, 1.0416666667cqw, 18.75px);
  }
}
.p-contact__form_item dl.-alignTop.-radio dt {
  margin-top: 0;
}
.p-contact__form_item dl dt {
  width: clamp(173px, 12.0138888889cqw, 216.25px);
  font-size: clamp(16px, 1.1111111111cqw, 20px);
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dt {
    width: 100%;
    font-size: 1rem;
  }
}
.p-contact__form_item dl dt.-required span {
  color: #BC1616;
}
.p-contact__form_item dl dd {
  flex: 1;
  font-family: var(--font-noto);
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dd {
    flex: none;
    width: 100%;
  }
}
.p-contact__form_item dl dd.-postcode input[type=text] {
  width: clamp(241px, 16.7361111111cqw, 301.25px);
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dd.-postcode input[type=text] {
    width: 100%;
  }
}
.p-contact__form_item dl dd .selectFile li {
  display: flex;
  align-items: center;
}
.p-contact__form_item dl dd .selectFile li span {
  margin-left: min(0.5555555556cqw, 10px);
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dd .selectFile li span {
    margin-left: min(1.0256410256vw, 4px);
  }
}
.p-contact__form_item dl dd.-file li {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dd.-file li {
    align-items: flex-start;
  }
}
.p-contact__form_item dl dd.-file li + li {
  margin-top: min(0.3472222222cqw, 6.25px);
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dd.-file li + li {
    margin-top: min(1.2820512821vw, 5px);
  }
}
.p-contact__form_item dl dd.-file li button {
  width: clamp(136px, 9.4444444444cqw, 170px);
  height: clamp(40px, 2.7777777778cqw, 50px);
  padding: min(0.7638888889cqw, 13.75px) min(1.0416666667cqw, 18.75px);
  background-color: #EDEDED;
  border: 1px solid #CBCBCB;
  border-radius: 6px;
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  letter-spacing: 0.1em;
  line-height: 1;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dd.-file li button {
    width: 9.2857142857rem;
    height: 2.6428571429rem;
    padding: min(2.5641025641vw, 10px) min(3.0769230769vw, 12px) min(2.8205128205vw, 11px);
  }
}
.p-contact__form_item dl dd.-file li .js-fileName {
  margin-left: min(0.5555555556cqw, 10px);
  flex: 1;
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dd.-file li .js-fileName {
    margin-left: min(2.5641025641vw, 10px);
    font-size: 1rem;
  }
}
.p-contact__form_item dl dd input[type=text],
.p-contact__form_item dl dd input[type=email],
.p-contact__form_item dl dd input[type=tel] {
  width: 100%;
  height: clamp(50px, 3.4722222222cqw, 62.5px);
  padding: 0 min(0.8333333333cqw, 15px);
  background-color: #FCF7F2;
  border: 1px solid #E8E8E8;
  font-size: clamp(16px, 1.1111111111cqw, 20px);
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dd input[type=text],
  .p-contact__form_item dl dd input[type=email],
  .p-contact__form_item dl dd input[type=tel] {
    height: min(10.2564102564vw, 40px);
    padding: 0 0.8571428571rem;
    font-size: clamp(16px, 1.1111111111cqw, 20px);
  }
}
.p-contact__form_item dl dd input[type=file] {
  display: none;
}
.p-contact__form_item dl dd textarea {
  resize: none;
  width: 100%;
  height: clamp(215px, 14.9305555556cqw, 268.75px);
  padding: min(0.8333333333cqw, 15px);
  background-color: #FCF7F2;
  border: 1px solid #E8E8E8;
  font-size: clamp(16px, 1.1111111111cqw, 20px);
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dd textarea {
    height: 13.0714285714rem;
    padding: 0.8571428571rem;
    font-size: clamp(16px, 1.1111111111cqw, 20px);
  }
}
.p-contact__form_item dl dd .column1 {
  width: 100%;
}
.p-contact__form_item dl dd .column1 li + li {
  margin-top: min(0.9722222222cqw, 17.5px);
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dd .column1 li + li {
    margin-top: min(3.5897435897vw, 14px);
  }
}
.p-contact__form_item dl dd .column1 label {
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  cursor: pointer;
}
.p-contact__form_item dl dd .column2 {
  width: 100%;
  display: grid;
  grid-template-columns: 38.3033419023% 61.6966580977%;
  gap: min(0.9722222222cqw, 17.5px) 0;
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dd .column2 {
    grid-template-columns: 1fr;
    gap: min(3.5897435897vw, 14px) 0;
  }
}
.p-contact__form_item dl dd .column2 label {
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  cursor: pointer;
}
.p-contact__form_item dl dd select {
  width: auto;
  min-width: min(100%, clamp(200px, 13.8888888889cqw, 250px));
  max-width: 100%;
  height: clamp(50px, 3.4722222222cqw, 62.5px);
  padding: 0 min(2.5cqw, 45px) 0 min(1.25cqw, 22.5px);
  background-color: #FCF7F2;
  border: 1px solid #E8E8E8;
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 1.5;
  letter-spacing: 0.02em;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url("/assets/img/contact/arrow_down.png");
  background-repeat: no-repeat;
  background-position: right min(0.8333333333cqw, 15px) center;
  background-size: auto min(0.4166666667cqw, 7.5px);
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dd select {
    width: auto;
    height: 3.3571428571rem;
    padding: 0 2.8571428571rem 0 1.0714285714rem;
    font-size: clamp(16px, 1.1111111111cqw, 20px);
    background-position: right min(3.8461538462vw, 15px) center;
    background-size: auto 0.5rem;
  }
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dd.-privacy {
    margin-bottom: min(3.8461538462vw, 15px);
  }
}
.p-contact__form_item dl dd.-privacy label {
  padding-top: min(0.4861111111cqw, 8.75px);
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dd.-privacy label {
    padding-top: min(1.7948717949vw, 7px);
  }
}
.p-contact__form_item dl dd.-privacy label input[type=checkbox] {
  display: block;
  margin: auto;
  width: clamp(18px, 1.25cqw, 22.5px);
  height: auto;
  aspect-ratio: 1/1;
  border: 1px solid var(--color-black);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dd.-privacy label input[type=checkbox] {
    width: 1.2857142857rem;
  }
}
.p-contact__form_item dl dd.-privacy label input[type=checkbox] ~ span {
  padding-left: min(0.5555555556cqw, 10px);
  display: block;
  flex: 1;
  font-size: clamp(15px, 1.0416666667cqw, 18.75px);
  line-height: 1.3;
  letter-spacing: 0.02em;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dd.-privacy label input[type=checkbox] ~ span {
    padding-left: 0.9285714286rem;
    font-size: 1rem;
    letter-spacing: 0.01em;
  }
}
.p-contact__form_item dl dd.-privacy label input[type=checkbox]:checked {
  background-color: var(--color-black);
  position: relative;
}
.p-contact__form_item dl dd.-privacy label input[type=checkbox]:checked::after {
  content: "";
  display: block;
  width: clamp(6px, 0.4166666667cqw, 7.5px);
  height: clamp(10px, 0.6944444444cqw, 12.5px);
  border: solid var(--color-white);
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -60%;
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dd.-privacy label input[type=checkbox]:checked::after {
    width: 0.4285714286rem;
    height: 0.7142857143rem;
  }
}
.p-contact__form_item dl dd .consentBox {
  margin: min(1.1805555556cqw, 21.25px) 0 0 min(1.1805555556cqw, 21.25px);
  padding: min(1.1805555556cqw, 21.25px) min(0.8333333333cqw, 15px);
  border: 1px solid #CECECE;
  height: min(12.7777777778cqw, 230px);
  overflow-y: scroll;
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dd .consentBox {
    margin: min(3.5897435897vw, 14px) 0 0;
    padding: min(4.358974359vw, 17px) min(4.6153846154vw, 18px);
    height: 13.1428571429rem;
  }
}
.p-contact__form_item dl dd .consentBox .consentText {
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  font-weight: normal;
  line-height: 1.45;
  letter-spacing: 0.02em;
  color: #343434;
}
@media screen and (max-width: 767px) {
  .p-contact__form_item dl dd .consentBox .consentText {
    font-size: 0.9285714286rem;
  }
}
.p-contact__form_btn {
  margin: min(4.1666666667cqw, 75px) auto 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-contact__form_btn {
    margin: min(6.6666666667vw, 26px) 0 0;
  }
}
.p-contact__form_btn button {
  width: min(27.1527777778cqw, 488.75px);
  padding: min(1.5277777778cqw, 27.5px) 0;
  border: 1px solid var(--color-orange);
  border-radius: 7px;
  font-size: clamp(23px, 1.5972222222cqw, 28.75px);
  font-family: var(--font-en);
  line-height: 1;
  letter-spacing: 0.01em;
  background-color: var(--color-white);
  color: var(--color-orange);
  cursor: pointer;
  position: relative;
  transition: background-color 0.5s ease, color 0.35s ease;
}
@media screen and (max-width: 767px) {
  .p-contact__form_btn button {
    width: 100%;
    padding: min(5.8974358974vw, 23px) 0;
    font-size: 1.5714285714rem;
  }
}
.p-contact__form_btn button::before {
  content: "";
  width: clamp(35px, 2.4305555556cqw, 43.75px);
  height: 100%;
  background-image: url("/assets/img/common/arrow_orange.svg");
  background-repeat: no-repeat;
  background-size: clamp(36px, 2.5cqw, 45px) clamp(5px, 0.3472222222cqw, 6.25px);
  background-position: center;
  position: absolute;
  top: 0;
  right: min(1.9444444444cqw, 35px);
  opacity: 1;
  transition: opacity 0.5s ease;
}
@media screen and (max-width: 767px) {
  .p-contact__form_btn button::before {
    width: 1.7857142857rem;
    background-image: url("/assets/img/common/arrow_orange_sp.svg");
    background-size: 1.8571428571rem 0.3571428571rem;
    right: min(4.358974359vw, 17px);
  }
}
.p-contact__form_btn button::after {
  content: "";
  width: clamp(35px, 2.4305555556cqw, 43.75px);
  height: 100%;
  background-image: url("/assets/img/common/arrow_white.svg");
  background-repeat: no-repeat;
  background-size: clamp(36px, 2.5cqw, 45px) clamp(5px, 0.3472222222cqw, 6.25px);
  background-position: center;
  position: absolute;
  top: 0;
  right: min(1.9444444444cqw, 35px);
  opacity: 0;
  transition: opacity 0.5s ease;
}
@media screen and (max-width: 767px) {
  .p-contact__form_btn button::after {
    width: 1.7857142857rem;
    background-image: url("/assets/img/common/arrow_white_sp.svg");
    background-size: 1.8571428571rem 0.3571428571rem;
    right: min(4.358974359vw, 17px);
  }
}
.p-contact__form_btn button:disabled, .p-contact__form_btn button.disabled {
  background-color: var(--color-white);
  border-color: #8B8B8B;
  color: #8B8B8B;
  cursor: default;
}
.p-contact__form_btn button:disabled::before, .p-contact__form_btn button.disabled::before {
  opacity: 1;
  background-image: url("/assets/img/common/arrow_grey.svg");
}
@media screen and (max-width: 767px) {
  .p-contact__form_btn button:disabled::before, .p-contact__form_btn button.disabled::before {
    background-image: url("/assets/img/common/arrow_grey_sp.svg");
  }
}
.p-contact__form_btn button:disabled::after, .p-contact__form_btn button.disabled::after {
  opacity: 0;
}
@media screen and (min-width: 768px) {
  .p-contact__form_btn button:not(:disabled):hover {
    background-color: var(--color-orange);
    color: var(--color-white);
  }
  .p-contact__form_btn button:not(:disabled):hover::before {
    opacity: 0;
  }
  .p-contact__form_btn button:not(:disabled):hover::after {
    opacity: 1;
  }
}
.p-contact-confirm__lead {
  margin-top: min(5.0694444444cqw, 91.25px);
}
@media screen and (max-width: 767px) {
  .p-contact-confirm__lead {
    margin-top: min(10vw, 39px);
  }
}
.p-contact-confirm__lead_text {
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 1.7;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-contact-confirm__lead_text {
    font-size: 1rem;
    line-height: 1.5;
  }
}
.p-contact-confirm__form {
  margin-top: min(6.6666666667cqw, 120px);
  margin-bottom: min(11.1111111111cqw, 200px);
}
@media screen and (max-width: 767px) {
  .p-contact-confirm__form {
    margin-top: min(15.3846153846vw, 60px);
    margin-bottom: min(20.5128205128vw, 80px);
  }
}
.p-contact-confirm__form_title {
  font-size: clamp(21px, 1.4583333333cqw, 26.25px);
  line-height: 1;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 767px) {
  .p-contact-confirm__form_title {
    font-size: 1.4285714286rem;
  }
}
.p-contact-confirm__form_attention {
  margin-top: min(1.0416666667cqw, 18.75px);
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 1;
  letter-spacing: 0.03em;
  color: #BC1616;
}
@media screen and (max-width: 767px) {
  .p-contact-confirm__form_attention {
    margin-top: min(3.5897435897vw, 14px);
    font-size: 0.9285714286rem;
  }
}
.p-contact-confirm__form_area {
  margin-top: min(3.125cqw, 56.25px);
}
@media screen and (max-width: 767px) {
  .p-contact-confirm__form_area {
    margin-top: min(7.1794871795vw, 28px);
  }
}
.p-contact-confirm__form_item {
  width: 100%;
  padding: min(1.7361111111cqw, 31.25px) min(0.7638888889cqw, 13.75px) min(1.6666666667cqw, 30px) min(1.1111111111cqw, 20px);
  border-top: 1px solid #D5D5D5;
}
@media screen and (max-width: 767px) {
  .p-contact-confirm__form_item {
    padding: min(3.5897435897vw, 14px) 0 min(4.8717948718vw, 19px);
  }
}
.p-contact-confirm__form_item:nth-last-of-type(1) {
  border-bottom: 1px solid #D5D5D5;
}
.p-contact-confirm__form_item dl {
  display: flex;
  align-items: flex-start;
  gap: 0 min(5.7638888889cqw, 103.75px);
}
@media screen and (max-width: 767px) {
  .p-contact-confirm__form_item dl {
    flex-direction: column;
    gap: min(1.7948717949vw, 7px) 0;
  }
}
.p-contact-confirm__form_item dt {
  width: clamp(173px, 12.0138888889cqw, 216.25px);
  font-size: clamp(15px, 1.0416666667cqw, 18.75px);
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .p-contact-confirm__form_item dt {
    width: 100%;
    font-size: 1rem;
  }
}
.p-contact-confirm__form_item dt span {
  margin-left: min(0.2777777778cqw, 5px);
  color: #BC1616;
}
@media screen and (max-width: 767px) {
  .p-contact-confirm__form_item dt span {
    margin-left: min(1.0256410256vw, 4px);
  }
}
.p-contact-confirm__form_item dd {
  flex: 1;
  font-size: clamp(15px, 1.0416666667cqw, 18.75px);
  line-height: 1.6;
  letter-spacing: 0.02em;
  color: #343434;
  overflow-wrap: anywhere;
}
@media screen and (max-width: 767px) {
  .p-contact-confirm__form_item dd {
    flex: none;
    width: 100%;
    font-size: 1rem;
    line-height: 1.5;
  }
}
.p-contact-confirm__form_btn {
  margin: min(4.1666666667cqw, 75px) auto 0;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 min(1.0416666667cqw, 18.75px);
}
@media screen and (max-width: 767px) {
  .p-contact-confirm__form_btn {
    margin: min(6.6666666667vw, 26px) 0 0;
    flex-direction: column-reverse;
    gap: min(2.0512820513vw, 8px) 0;
  }
}
.p-contact-confirm__form_btn button {
  width: min(27.1527777778cqw, 488.75px);
  padding: min(1.5277777778cqw, 27.5px) min(4.8611111111cqw, 87.5px);
  border-radius: 7px;
  background-color: var(--color-white);
  font-size: clamp(23px, 1.5972222222cqw, 28.75px);
  font-family: var(--font-en);
  line-height: 1;
  letter-spacing: 0.01em;
  text-align: center;
  cursor: pointer;
  position: relative;
  transition: background-color 0.5s ease, color 0.5s ease, border-color 0.5s ease;
}
@media screen and (max-width: 767px) {
  .p-contact-confirm__form_btn button {
    width: 100%;
    padding: min(5.8974358974vw, 23px) min(13.8461538462vw, 54px);
    font-size: 1.5714285714rem;
  }
}
.p-contact-confirm__form_btn-back {
  border: 1px solid #B2B2B2;
  color: #8F8F8F;
}
.p-contact-confirm__form_btn-back::before {
  content: "";
  width: clamp(35px, 2.4305555556cqw, 43.75px);
  height: 100%;
  background-image: url("/assets/img/common/arrow_orange.svg");
  background-repeat: no-repeat;
  background-size: clamp(36px, 2.5cqw, 45px) clamp(5px, 0.3472222222cqw, 6.25px);
  background-position: center;
  filter: grayscale(1);
  opacity: 0.45;
  position: absolute;
  top: 0;
  left: min(1.9444444444cqw, 35px);
  transform: scaleX(-1);
  transition: translate 0.35s ease;
}
@media screen and (max-width: 767px) {
  .p-contact-confirm__form_btn-back::before {
    width: 1.7857142857rem;
    background-image: url("/assets/img/common/arrow_orange_sp.svg");
    background-size: 1.8571428571rem 0.3571428571rem;
    left: min(4.358974359vw, 17px);
  }
}
@media screen and (min-width: 768px) {
  .p-contact-confirm__form_btn-back:hover {
    border-color: #8F8F8F;
  }
}
@media screen and (min-width: 768px) {
  .p-contact-confirm__form_btn-back:hover::before {
    translate: max(-10px, -0.5555555556cqw) 0;
  }
}
.p-contact-confirm__form_btn-submit {
  border: 1px solid var(--color-orange);
  color: var(--color-orange);
}
.p-contact-confirm__form_btn-submit::before, .p-contact-confirm__form_btn-submit::after {
  content: "";
  width: clamp(35px, 2.4305555556cqw, 43.75px);
  height: 100%;
  background-repeat: no-repeat;
  background-size: clamp(36px, 2.5cqw, 45px) clamp(5px, 0.3472222222cqw, 6.25px);
  background-position: center;
  position: absolute;
  top: 0;
  right: min(1.9444444444cqw, 35px);
  transition: opacity 0.5s ease;
}
@media screen and (max-width: 767px) {
  .p-contact-confirm__form_btn-submit::before, .p-contact-confirm__form_btn-submit::after {
    width: 1.7857142857rem;
    background-size: 1.8571428571rem 0.3571428571rem;
    right: min(4.358974359vw, 17px);
  }
}
.p-contact-confirm__form_btn-submit::before {
  background-image: url("/assets/img/common/arrow_orange.svg");
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .p-contact-confirm__form_btn-submit::before {
    background-image: url("/assets/img/common/arrow_orange_sp.svg");
  }
}
.p-contact-confirm__form_btn-submit::after {
  background-image: url("/assets/img/common/arrow_white.svg");
  opacity: 0;
}
@media screen and (max-width: 767px) {
  .p-contact-confirm__form_btn-submit::after {
    background-image: url("/assets/img/common/arrow_white_sp.svg");
  }
}
@media screen and (min-width: 768px) {
  .p-contact-confirm__form_btn-submit:hover {
    background-color: var(--color-orange);
    color: var(--color-white);
  }
}
@media screen and (min-width: 768px) {
  .p-contact-confirm__form_btn-submit:hover::before {
    opacity: 0;
  }
}
@media screen and (min-width: 768px) {
  .p-contact-confirm__form_btn-submit:hover::after {
    opacity: 1;
  }
}
.p-contact-complete {
  margin-top: min(5.0694444444cqw, 91.25px);
}
@media screen and (max-width: 767px) {
  .p-contact-complete {
    margin-top: min(10vw, 39px);
  }
}
.p-contact-complete__text {
  font-size: clamp(14px, 0.9722222222cqw, 17.5px);
  line-height: 2;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-contact-complete__text {
    font-size: 1rem;
    line-height: 1.4;
  }
}
.p-contact-complete .p-contact__guide_contactBlock {
  margin-top: min(4.3055555556cqw, 77.5px);
  margin-bottom: min(8.9583333333cqw, 161.25px);
}
@media screen and (max-width: 767px) {
  .p-contact-complete .p-contact__guide_contactBlock {
    margin-top: min(10vw, 39px);
    margin-bottom: min(23.0769230769vw, 90px);
  }
}
