@charset "UTF-8";
/* =========================================================
  Common
========================================================= */
/* =========================================================
    Mixin/index
========================================================= */
.c-scroll-down {
  position: absolute;
  left: 50%;
  bottom: 2rem;
  transform: translateX(-50%);
  width: 2px;
}
.c-scroll-down-border {
  position: relative;
  top: 10px;
  width: 100%;
  height: 100px;
  overflow: hidden;
}
.c-scroll-down-border::before {
  content: "";
  display: block;
  position: absolute;
  width: 1px;
  height: 40px;
  top: 0;
  left: 0;
  right: 0;
  background: #fff;
  animation: scrollbar 3s ease-in-out infinite;
  margin: auto;
}

@keyframes scrollbar {
  0% {
    height: 0;
    top: 0;
  }
  50% {
    top: 0;
    height: 100%;
  }
  100% {
    top: 100%;
  }
}
/* 初期状態：透明で20px下に配置 */
.js-fade-up {
  opacity: 0;
  transform: translateY(200px);
  transition: opacity 1.6s ease-out, transform 1.6s ease-out;
  will-change: opacity, transform; /* パフォーマンス向上 */
}

/* 表示状態：不透明で元の位置に戻る */
.js-fade-up.is-show {
  opacity: 1;
  transform: translateY(0);
}

/* 煙を包むコンテナ */
.u-smoke-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1; /* 背景とコンテンツの間に配置 */
  pointer-events: none; /* クリックを邪魔しない */
  filter: url(#smoke-filter); /* SVGフィルターを適用 */
  opacity: 0.6;
}

/* 煙の粒子（グラデーションの塊） */
.u-smoke-item {
  position: absolute;
  bottom: -20%;
  left: 0;
  width: 150%;
  height: 150%;
  background: radial-gradient(circle at center, rgba(255, 255, 255, 0.4) 0%, rgba(255, 255, 255, 0.1) 40%, transparent 70%);
  animation: smoke-rise 20s linear infinite;
}

.u-smoke-item:nth-child(2) {
  left: -50%;
  animation-duration: 25s;
  animation-delay: -5s;
  opacity: 0.5;
}

/* 下から上へゆっくり昇るアニメーション */
@keyframes smoke-rise {
  0% {
    transform: translateY(0) scale(1) rotate(0deg);
  }
  50% {
    transform: translateY(-10%) scale(1.1) rotate(10deg);
  }
  100% {
    transform: translateY(-20%) scale(1.2) rotate(20deg);
  }
}
/* =========================================================
    Setting/index
========================================================= */
/* =========================================================
  Common
========================================================= */
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
  word-break: normal;
  -moz-tab-size: 4;
  tab-size: 2;
}

/* フォーム要素のリセット */
input,
button,
textarea,
select {
  font: inherit; /* 親要素のフォント設定を継承 */
  color: inherit; /* 親要素の文字色を継承 */
  border: none;
  background: transparent;
  cursor: pointer;
}

/* 3. 要素の視覚的リセット */
/* リストのデフォルトスタイル（点や数字）を削除 */
ol, ul {
  list-style: none;
}

/* 画像のレスポンシブ対応と描画の最適化 */
img {
  display: block; /* インライン要素からブロック要素に変更し、下にできる余白を削除 */
  max-width: 100%; /* 親要素の幅を超えないようにする */
  height: auto; /* 縦横比を維持 */
}

/* リンク要素 */
a {
  color: inherit; /* 親要素の文字色を継承 */
  text-decoration: none; /* デフォルトの下線を削除 */
  cursor: pointer;
}

/* HTML5のセマンティック要素（一部ブラウザでブロック要素にならない問題を修正） */
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

/* 4. アクセシビリティ関連 */
/* タッチデバイスでのタップ時の背景色ハイライトを無効化（デザインを維持） */
/* 5. WordPress固有のリセット */
/* WordPressで標準で挿入される不要な要素の余白をリセット */
.aligncenter,
.alignleft,
.alignright {
  margin-left: auto;
  margin-right: auto;
}

.wp-caption {
  max-width: 100%;
}

/* =========================================================
  Common
========================================================= */
/* =========================================================
  Common
========================================================= */
:root {
  --base-w: 1440;
  --base-w-sp: 760;
  --container-width: 1440;
  --container-width-sm: 1200;
  --container-width-ss: 1024;
  --container-width-sss: 920;
  --container-width-sp: 760;
  --container-width-sp-sm: 480;
  --container-padding: 30.0rem;
  --container-padding-sm: 2.0rem;
  --container-padding-ss: 2.0rem;
  --container-padding-sss: 2.0rem;
  --bp-sp: var(--theme-bp-sp, 767px);
  --bp-tb: var(--theme-bp-tb, 1024px);
  --container-max-width: var(--bp-tb, 1024px);
  --ff-jp: "Noto Serif JP", serif;
  --ff-en: "Montserrat", sans-serif;
  --ff-accent: "02UtsukushiMincho", serif;
  --color-base-1: #A1BFAE;
  --color-base-2: #F4E4B8;
  --color-base-3: #D0FAE5;
  --color-gray-1: #505050;
  --color-gray-2: #b0b0b0;
  --color-gray-3: #eeeeee;
  --color-gray-4: #fafafa;
  --color-accent-1: #E67E73;
  --color-accent-2: #F8F9A7;
  --color-base-1-rgb: 161, 191, 174;
  --color-accent-1-rgb: 230, 126, 115;
  --color-text-1: #333333;
  --color-btn-base-1: #009f41;
  --color-btn-base-2: #06c755;
  --color-btn-accent-1: #d9810c;
  --color-btn-accent-2: #e9ab58;
  --color-btn-accent-1-rgb: 217, 129, 12;
  --color-white: #fff;
  --color-black: #000;
  --color-line: #009F41;
  --color-line-rgb: 0, 159, 65;
}

/* =========================================================
  Common
========================================================= */
html,
body {
  font-size: calc(100 / var(--base-w) * 1vw);
  color: var(--color-text-1);
  font-family: var(--ff-jp);
  scroll-behavior: smooth;
}
@media (width <= 760px) {
  html,
  body {
    font-size: calc(100 / var(--base-w-sp) * 1vw);
  }
}

body.is-fixed {
  overflow: hidden;
  /* iOS（Safari）対策として必要に応じて以下を追加 */
  height: 100%;
  width: 100%;
}

.l-container {
  width: 100%;
  max-width: calc(var(--container-width) * 1px);
  margin-inline: auto;
  padding-inline: var(--container-padding);
}
@media (760px < width <= 1440px) {
  .l-container {
    max-width: calc(var(--container-width) * 1rem);
  }
}
@media (width <= 760px) {
  .l-container {
    max-width: calc(var(--container-width-sp) * 1rem);
  }
}

.l-container.--mw-sm {
  max-width: calc(var(--container-width-sm) * 1px);
  padding-inline: var(--container-padding-sm);
}
@media (760px < width <= 1440px) {
  .l-container.--mw-sm {
    max-width: calc(var(--container-width-sm) * 1rem);
  }
}
@media (width <= 760px) {
  .l-container.--mw-sm {
    max-width: calc(var(--container-width-sp) * 1rem);
  }
}

.l-container.--mw-ss {
  max-width: calc(var(--container-width-ss) * 1px);
  padding-inline: var(--container-padding-ss);
}
@media (760px < width <= 1440px) {
  .l-container.--mw-ss {
    max-width: calc(var(--container-width-ss) * 1rem);
  }
}
@media (width <= 760px) {
  .l-container.--mw-ss {
    max-width: calc(var(--container-width-sp) * 1rem);
  }
}

.l-container.--mw-sss {
  max-width: calc(var(--container-width-sss) * 1px);
  padding-inline: var(--container-padding-sss);
}
@media (760px < width <= 1440px) {
  .l-container.--mw-sss {
    max-width: calc(var(--container-width-sss) * 1rem);
  }
}
@media (width <= 760px) {
  .l-container.--mw-sss {
    max-width: calc(var(--container-width-sp) * 1rem);
  }
}

.l-container.--mw-sp {
  max-width: calc(var(--container-width-sp) * 1rem);
  padding-inline: 0;
}

.l-container.--mw-sp-sm {
  max-width: calc(var(--container-width-sp-sm) * 1rem);
  padding-inline: 0;
}

@media (max-width: 767px) {
  .l-container.--sp {
    padding-inline: 0;
  }
}
/* =========================================================
  Common
========================================================= */
@media (1024px < width) {
  .u-hidden-pc,
  .u-only-sp,
  .u-only-tb {
    display: none !important;
  }
}
@media (760px < width <= 1024px) {
  .u-hidden-tb,
  .u-only-sp,
  .u-only-pc {
    display: none !important;
  }
}
@media (width <= 760px) {
  .u-hidden-sp,
  .u-only-tb,
  .u-only-pc {
    display: none !important;
  }
}
.u-text-base-1 {
  color: var(--color-base-1);
}

.u-bg-base-1 {
  background-color: var(--color-base-1);
}

.u-text-base-2 {
  color: var(--color-base-2);
}

.u-bg-base-2 {
  background-color: var(--color-base-2);
}

.u-text-base-3 {
  color: var(--color-base-3);
}

.u-bg-base-3 {
  background-color: var(--color-base-3);
}

.u-text-gray-1 {
  color: var(--color-gray-1);
}

.u-bg-gray-1 {
  background-color: var(--color-gray-1);
}

.u-text-gray-2 {
  color: var(--color-gray-2);
}

.u-bg-gray-2 {
  background-color: var(--color-gray-2);
}

.u-text-gray-3 {
  color: var(--color-gray-3);
}

.u-bg-gray-3 {
  background-color: var(--color-gray-3);
}

.u-text-gray-4 {
  color: var(--color-gray-4);
}

.u-bg-gray-4 {
  background-color: var(--color-gray-4);
}

.u-text-accent-1 {
  color: var(--color-accent-1);
}

.u-bg-accent-1 {
  background-color: var(--color-accent-1);
}

.u-text-accent-2 {
  color: var(--color-accent-2);
}

.u-bg-accent-2 {
  background-color: var(--color-accent-2);
}

.u-text-base-1-rgb {
  color: var(--color-base-1-rgb);
}

.u-bg-base-1-rgb {
  background-color: var(--color-base-1-rgb);
}

.u-text-accent-1-rgb {
  color: var(--color-accent-1-rgb);
}

.u-bg-accent-1-rgb {
  background-color: var(--color-accent-1-rgb);
}

.u-text-text-1 {
  color: var(--color-text-1);
}

.u-bg-text-1 {
  background-color: var(--color-text-1);
}

.u-text-btn-base-1 {
  color: var(--color-btn-base-1);
}

.u-bg-btn-base-1 {
  background-color: var(--color-btn-base-1);
}

.u-text-btn-base-2 {
  color: var(--color-btn-base-2);
}

.u-bg-btn-base-2 {
  background-color: var(--color-btn-base-2);
}

.u-text-btn-accent-1 {
  color: var(--color-btn-accent-1);
}

.u-bg-btn-accent-1 {
  background-color: var(--color-btn-accent-1);
}

.u-text-btn-accent-2 {
  color: var(--color-btn-accent-2);
}

.u-bg-btn-accent-2 {
  background-color: var(--color-btn-accent-2);
}

.u-text-btn-accent-1-rgb {
  color: var(--color-btn-accent-1-rgb);
}

.u-bg-btn-accent-1-rgb {
  background-color: var(--color-btn-accent-1-rgb);
}

.u-text-white {
  color: var(--color-white);
}

.u-bg-white {
  background-color: var(--color-white);
}

.u-text-black {
  color: var(--color-black);
}

.u-bg-black {
  background-color: var(--color-black);
}

.u-text-line {
  color: var(--color-line);
}

.u-bg-line {
  background-color: var(--color-line);
}

.u-text-line-rgb {
  color: var(--color-line-rgb);
}

.u-bg-line-rgb {
  background-color: var(--color-line-rgb);
}

.u-ff-jp {
  font-family: var(--font-base);
}

.u-ff-en {
  font-family: var(--font-accent);
}

/* Font Weight Utilities */
.u-fw-100 {
  font-weight: 100;
} /* Thin */
.u-fw-200 {
  font-weight: 200;
} /* Extra Light */
.u-fw-300 {
  font-weight: 300;
} /* Light */
.u-fw-400 {
  font-weight: 400;
} /* Regular / Normal */
.u-fw-500 {
  font-weight: 500;
} /* Medium */
.u-fw-600 {
  font-weight: 600;
} /* Semi Bold */
.u-fw-700 {
  font-weight: 700;
} /* Bold */
.u-fw-800 {
  font-weight: 800;
} /* Extra Bold */
.u-fw-900 {
  font-weight: 900;
} /* Black */
.u-ta-c {
  text-align: center;
}

.u-mw-full {
  width: 100%;
}

/* 補助的な別名（より直感的な指定用） */
.u-fw-normal {
  font-weight: 400 !important;
}

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

.u-relative {
  position: relative;
}

.u-block {
  display: block;
}

.u-inline-block {
  display: inline-block;
}

.u-fs-10 {
  font-size: 1rem;
}

.u-fs-12 {
  font-size: 1.2rem;
}

.u-fs-14 {
  font-size: 1.4rem;
}

.u-fs-16 {
  font-size: 1.6rem;
}

.u-fs-18 {
  font-size: 1.8rem;
}

.u-fs-20 {
  font-size: 2rem;
}

.u-fs-22 {
  font-size: 2.2rem;
}

.u-fs-24 {
  font-size: 2.4rem;
}

.u-fs-26 {
  font-size: 2.6rem;
}

.u-fs-28 {
  font-size: 2.8rem;
}

.u-fs-30 {
  font-size: 3rem;
}

.u-fs-32 {
  font-size: 3.2rem;
}

.u-fs-34 {
  font-size: 3.4rem;
}

.u-fs-36 {
  font-size: 3.6rem;
}

.u-fs-38 {
  font-size: 3.8rem;
}

.u-fs-40 {
  font-size: 4rem;
}

.u-fs-42 {
  font-size: 4.2rem;
}

.u-fs-44 {
  font-size: 4.4rem;
}

.u-fs-46 {
  font-size: 4.6rem;
}

.u-fs-48 {
  font-size: 4.8rem;
}

.u-fs-60 {
  font-size: 6rem;
}

.u-fs-80 {
  font-size: 8rem;
}

.u-fs-10-12 {
  font-size: clamp(1rem, 0.76vw + 0.04rem, 1.2rem);
}

.u-fs-12-14 {
  font-size: clamp(1.2rem, 0.76vw + 0.06rem, 1.4rem);
}

.u-fs-14-16 {
  font-size: clamp(1.4rem, 0.76vw + 0.08rem, 1.6rem);
}

.u-fs-16-20 {
  font-size: clamp(1.6rem, 1.52vw + 0.04rem, 2rem);
}

.u-fs-16-24 {
  font-size: clamp(1.6rem, 3.03vw + -0.07rem, 2.4rem);
}

.u-fs-20-28 {
  font-size: clamp(2rem, 3.03vw + -0.03rem, 2.8rem);
}

.u-fs-24-32 {
  font-size: clamp(2.4rem, 3.03vw + 0.01rem, 3.2rem);
}

.u-fs-32-48 {
  font-size: clamp(3.2rem, 6.06vw + -0.14rem, 4.8rem);
}

.u-gap-10-20 {
  gap: clamp(1rem, 3.79vw + -0.19rem, 2rem);
}

.u-gap-20-40 {
  gap: clamp(2rem, 7.58vw + -0.38rem, 4rem);
}

.u-gap-40-60 {
  gap: clamp(4rem, 7.58vw + -0.18rem, 6rem);
}

.u-gap-60-100 {
  gap: clamp(6rem, 15.15vw + -0.55rem, 10rem);
}

.u-ls-002 {
  letter-spacing: 0.02em;
}

.u-ls-004 {
  letter-spacing: 0.04em;
}

.u-ls-005 {
  letter-spacing: 0.05em;
}

.u-ls-006 {
  letter-spacing: 0.06em;
}

.u-ls-010 {
  letter-spacing: 0.1em;
}

.u-ls-015 {
  letter-spacing: 0.15em;
}

.u-ls-020 {
  letter-spacing: 0.2em;
}

.u-lh-080 {
  line-height: 80%;
}

.u-lh-090 {
  line-height: 90%;
}

.u-lh-100 {
  line-height: 100%;
}

.u-lh-110 {
  line-height: 110%;
}

.u-lh-120 {
  line-height: 120%;
}

.u-lh-130 {
  line-height: 130%;
}

.u-lh-140 {
  line-height: 140%;
}

.u-lh-160 {
  line-height: 160%;
}

.u-lh-180 {
  line-height: 180%;
}

.u-lh-200 {
  line-height: 200%;
}

.u-z-000 {
  z-index: 0;
}

.u-z-001 {
  z-index: 1;
}

.u-z-009 {
  z-index: 9;
}

/* =========================================================
  Common
========================================================= */
/* =========================================================
    Component
========================================================= */
/* =========================================================
  Common
========================================================= */
.u-mt-02 {
  margin-top: 0.2rem;
}

.u-mb-02 {
  margin-bottom: 0.2rem;
}

.u-ml-02 {
  margin-left: 0.2rem;
}

.u-mr-02 {
  margin-right: 0.2rem;
}

.u-m-02 {
  margin: 0.2rem;
}

.u-my-02 {
  margin-top: 0.2rem;
  margin-bottom: 0.2rem;
}

.u-mx-02 {
  margin-left: 0.2rem;
  margin-right: 0.2rem;
}

.u-pt-02 {
  padding-top: 0.2rem;
}

.u-pb-02 {
  padding-bottom: 0.2rem;
}

.u-pl-02 {
  padding-left: 0.2rem;
}

.u-pr-02 {
  padding-right: 0.2rem;
}

.u-p-02 {
  padding: 0.2rem;
}

.u-py-02 {
  padding-top: 0.2rem;
  padding-bottom: 0.2rem;
}

.u-px-02 {
  padding-left: 0.2rem;
  padding-right: 0.2rem;
}

.u-mt-04 {
  margin-top: 0.4rem;
}

.u-mb-04 {
  margin-bottom: 0.4rem;
}

.u-ml-04 {
  margin-left: 0.4rem;
}

.u-mr-04 {
  margin-right: 0.4rem;
}

.u-m-04 {
  margin: 0.4rem;
}

.u-my-04 {
  margin-top: 0.4rem;
  margin-bottom: 0.4rem;
}

.u-mx-04 {
  margin-left: 0.4rem;
  margin-right: 0.4rem;
}

.u-pt-04 {
  padding-top: 0.4rem;
}

.u-pb-04 {
  padding-bottom: 0.4rem;
}

.u-pl-04 {
  padding-left: 0.4rem;
}

.u-pr-04 {
  padding-right: 0.4rem;
}

.u-p-04 {
  padding: 0.4rem;
}

.u-py-04 {
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
}

.u-px-04 {
  padding-left: 0.4rem;
  padding-right: 0.4rem;
}

.u-mt-06 {
  margin-top: 0.6rem;
}

.u-mb-06 {
  margin-bottom: 0.6rem;
}

.u-ml-06 {
  margin-left: 0.6rem;
}

.u-mr-06 {
  margin-right: 0.6rem;
}

.u-m-06 {
  margin: 0.6rem;
}

.u-my-06 {
  margin-top: 0.6rem;
  margin-bottom: 0.6rem;
}

.u-mx-06 {
  margin-left: 0.6rem;
  margin-right: 0.6rem;
}

.u-pt-06 {
  padding-top: 0.6rem;
}

.u-pb-06 {
  padding-bottom: 0.6rem;
}

.u-pl-06 {
  padding-left: 0.6rem;
}

.u-pr-06 {
  padding-right: 0.6rem;
}

.u-p-06 {
  padding: 0.6rem;
}

.u-py-06 {
  padding-top: 0.6rem;
  padding-bottom: 0.6rem;
}

.u-px-06 {
  padding-left: 0.6rem;
  padding-right: 0.6rem;
}

.u-mt-08 {
  margin-top: 0.8rem;
}

.u-mb-08 {
  margin-bottom: 0.8rem;
}

.u-ml-08 {
  margin-left: 0.8rem;
}

.u-mr-08 {
  margin-right: 0.8rem;
}

.u-m-08 {
  margin: 0.8rem;
}

.u-my-08 {
  margin-top: 0.8rem;
  margin-bottom: 0.8rem;
}

.u-mx-08 {
  margin-left: 0.8rem;
  margin-right: 0.8rem;
}

.u-pt-08 {
  padding-top: 0.8rem;
}

.u-pb-08 {
  padding-bottom: 0.8rem;
}

.u-pl-08 {
  padding-left: 0.8rem;
}

.u-pr-08 {
  padding-right: 0.8rem;
}

.u-p-08 {
  padding: 0.8rem;
}

.u-py-08 {
  padding-top: 0.8rem;
  padding-bottom: 0.8rem;
}

.u-px-08 {
  padding-left: 0.8rem;
  padding-right: 0.8rem;
}

.u-mt-10 {
  margin-top: 1rem;
}

.u-mb-10 {
  margin-bottom: 1rem;
}

.u-ml-10 {
  margin-left: 1rem;
}

.u-mr-10 {
  margin-right: 1rem;
}

.u-m-10 {
  margin: 1rem;
}

.u-my-10 {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.u-mx-10 {
  margin-left: 1rem;
  margin-right: 1rem;
}

.u-pt-10 {
  padding-top: 1rem;
}

.u-pb-10 {
  padding-bottom: 1rem;
}

.u-pl-10 {
  padding-left: 1rem;
}

.u-pr-10 {
  padding-right: 1rem;
}

.u-p-10 {
  padding: 1rem;
}

.u-py-10 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.u-px-10 {
  padding-left: 1rem;
  padding-right: 1rem;
}

.u-mt-12 {
  margin-top: 1.2rem;
}

.u-mb-12 {
  margin-bottom: 1.2rem;
}

.u-ml-12 {
  margin-left: 1.2rem;
}

.u-mr-12 {
  margin-right: 1.2rem;
}

.u-m-12 {
  margin: 1.2rem;
}

.u-my-12 {
  margin-top: 1.2rem;
  margin-bottom: 1.2rem;
}

.u-mx-12 {
  margin-left: 1.2rem;
  margin-right: 1.2rem;
}

.u-pt-12 {
  padding-top: 1.2rem;
}

.u-pb-12 {
  padding-bottom: 1.2rem;
}

.u-pl-12 {
  padding-left: 1.2rem;
}

.u-pr-12 {
  padding-right: 1.2rem;
}

.u-p-12 {
  padding: 1.2rem;
}

.u-py-12 {
  padding-top: 1.2rem;
  padding-bottom: 1.2rem;
}

.u-px-12 {
  padding-left: 1.2rem;
  padding-right: 1.2rem;
}

.u-mt-14 {
  margin-top: 1.4rem;
}

.u-mb-14 {
  margin-bottom: 1.4rem;
}

.u-ml-14 {
  margin-left: 1.4rem;
}

.u-mr-14 {
  margin-right: 1.4rem;
}

.u-m-14 {
  margin: 1.4rem;
}

.u-my-14 {
  margin-top: 1.4rem;
  margin-bottom: 1.4rem;
}

.u-mx-14 {
  margin-left: 1.4rem;
  margin-right: 1.4rem;
}

.u-pt-14 {
  padding-top: 1.4rem;
}

.u-pb-14 {
  padding-bottom: 1.4rem;
}

.u-pl-14 {
  padding-left: 1.4rem;
}

.u-pr-14 {
  padding-right: 1.4rem;
}

.u-p-14 {
  padding: 1.4rem;
}

.u-py-14 {
  padding-top: 1.4rem;
  padding-bottom: 1.4rem;
}

.u-px-14 {
  padding-left: 1.4rem;
  padding-right: 1.4rem;
}

.u-mt-16 {
  margin-top: 1.6rem;
}

.u-mb-16 {
  margin-bottom: 1.6rem;
}

.u-ml-16 {
  margin-left: 1.6rem;
}

.u-mr-16 {
  margin-right: 1.6rem;
}

.u-m-16 {
  margin: 1.6rem;
}

.u-my-16 {
  margin-top: 1.6rem;
  margin-bottom: 1.6rem;
}

.u-mx-16 {
  margin-left: 1.6rem;
  margin-right: 1.6rem;
}

.u-pt-16 {
  padding-top: 1.6rem;
}

.u-pb-16 {
  padding-bottom: 1.6rem;
}

.u-pl-16 {
  padding-left: 1.6rem;
}

.u-pr-16 {
  padding-right: 1.6rem;
}

.u-p-16 {
  padding: 1.6rem;
}

.u-py-16 {
  padding-top: 1.6rem;
  padding-bottom: 1.6rem;
}

.u-px-16 {
  padding-left: 1.6rem;
  padding-right: 1.6rem;
}

.u-mt-18 {
  margin-top: 1.8rem;
}

.u-mb-18 {
  margin-bottom: 1.8rem;
}

.u-ml-18 {
  margin-left: 1.8rem;
}

.u-mr-18 {
  margin-right: 1.8rem;
}

.u-m-18 {
  margin: 1.8rem;
}

.u-my-18 {
  margin-top: 1.8rem;
  margin-bottom: 1.8rem;
}

.u-mx-18 {
  margin-left: 1.8rem;
  margin-right: 1.8rem;
}

.u-pt-18 {
  padding-top: 1.8rem;
}

.u-pb-18 {
  padding-bottom: 1.8rem;
}

.u-pl-18 {
  padding-left: 1.8rem;
}

.u-pr-18 {
  padding-right: 1.8rem;
}

.u-p-18 {
  padding: 1.8rem;
}

.u-py-18 {
  padding-top: 1.8rem;
  padding-bottom: 1.8rem;
}

.u-px-18 {
  padding-left: 1.8rem;
  padding-right: 1.8rem;
}

.u-mt-20 {
  margin-top: 2rem;
}

.u-mb-20 {
  margin-bottom: 2rem;
}

.u-ml-20 {
  margin-left: 2rem;
}

.u-mr-20 {
  margin-right: 2rem;
}

.u-m-20 {
  margin: 2rem;
}

.u-my-20 {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.u-mx-20 {
  margin-left: 2rem;
  margin-right: 2rem;
}

.u-pt-20 {
  padding-top: 2rem;
}

.u-pb-20 {
  padding-bottom: 2rem;
}

.u-pl-20 {
  padding-left: 2rem;
}

.u-pr-20 {
  padding-right: 2rem;
}

.u-p-20 {
  padding: 2rem;
}

.u-py-20 {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.u-px-20 {
  padding-left: 2rem;
  padding-right: 2rem;
}

.u-mt-22 {
  margin-top: 2.2rem;
}

.u-mb-22 {
  margin-bottom: 2.2rem;
}

.u-ml-22 {
  margin-left: 2.2rem;
}

.u-mr-22 {
  margin-right: 2.2rem;
}

.u-m-22 {
  margin: 2.2rem;
}

.u-my-22 {
  margin-top: 2.2rem;
  margin-bottom: 2.2rem;
}

.u-mx-22 {
  margin-left: 2.2rem;
  margin-right: 2.2rem;
}

.u-pt-22 {
  padding-top: 2.2rem;
}

.u-pb-22 {
  padding-bottom: 2.2rem;
}

.u-pl-22 {
  padding-left: 2.2rem;
}

.u-pr-22 {
  padding-right: 2.2rem;
}

.u-p-22 {
  padding: 2.2rem;
}

.u-py-22 {
  padding-top: 2.2rem;
  padding-bottom: 2.2rem;
}

.u-px-22 {
  padding-left: 2.2rem;
  padding-right: 2.2rem;
}

.u-mt-24 {
  margin-top: 2.4rem;
}

.u-mb-24 {
  margin-bottom: 2.4rem;
}

.u-ml-24 {
  margin-left: 2.4rem;
}

.u-mr-24 {
  margin-right: 2.4rem;
}

.u-m-24 {
  margin: 2.4rem;
}

.u-my-24 {
  margin-top: 2.4rem;
  margin-bottom: 2.4rem;
}

.u-mx-24 {
  margin-left: 2.4rem;
  margin-right: 2.4rem;
}

.u-pt-24 {
  padding-top: 2.4rem;
}

.u-pb-24 {
  padding-bottom: 2.4rem;
}

.u-pl-24 {
  padding-left: 2.4rem;
}

.u-pr-24 {
  padding-right: 2.4rem;
}

.u-p-24 {
  padding: 2.4rem;
}

.u-py-24 {
  padding-top: 2.4rem;
  padding-bottom: 2.4rem;
}

.u-px-24 {
  padding-left: 2.4rem;
  padding-right: 2.4rem;
}

.u-mt-26 {
  margin-top: 2.6rem;
}

.u-mb-26 {
  margin-bottom: 2.6rem;
}

.u-ml-26 {
  margin-left: 2.6rem;
}

.u-mr-26 {
  margin-right: 2.6rem;
}

.u-m-26 {
  margin: 2.6rem;
}

.u-my-26 {
  margin-top: 2.6rem;
  margin-bottom: 2.6rem;
}

.u-mx-26 {
  margin-left: 2.6rem;
  margin-right: 2.6rem;
}

.u-pt-26 {
  padding-top: 2.6rem;
}

.u-pb-26 {
  padding-bottom: 2.6rem;
}

.u-pl-26 {
  padding-left: 2.6rem;
}

.u-pr-26 {
  padding-right: 2.6rem;
}

.u-p-26 {
  padding: 2.6rem;
}

.u-py-26 {
  padding-top: 2.6rem;
  padding-bottom: 2.6rem;
}

.u-px-26 {
  padding-left: 2.6rem;
  padding-right: 2.6rem;
}

.u-mt-28 {
  margin-top: 2.8rem;
}

.u-mb-28 {
  margin-bottom: 2.8rem;
}

.u-ml-28 {
  margin-left: 2.8rem;
}

.u-mr-28 {
  margin-right: 2.8rem;
}

.u-m-28 {
  margin: 2.8rem;
}

.u-my-28 {
  margin-top: 2.8rem;
  margin-bottom: 2.8rem;
}

.u-mx-28 {
  margin-left: 2.8rem;
  margin-right: 2.8rem;
}

.u-pt-28 {
  padding-top: 2.8rem;
}

.u-pb-28 {
  padding-bottom: 2.8rem;
}

.u-pl-28 {
  padding-left: 2.8rem;
}

.u-pr-28 {
  padding-right: 2.8rem;
}

.u-p-28 {
  padding: 2.8rem;
}

.u-py-28 {
  padding-top: 2.8rem;
  padding-bottom: 2.8rem;
}

.u-px-28 {
  padding-left: 2.8rem;
  padding-right: 2.8rem;
}

.u-mt-30 {
  margin-top: 3rem;
}

.u-mb-30 {
  margin-bottom: 3rem;
}

.u-ml-30 {
  margin-left: 3rem;
}

.u-mr-30 {
  margin-right: 3rem;
}

.u-m-30 {
  margin: 3rem;
}

.u-my-30 {
  margin-top: 3rem;
  margin-bottom: 3rem;
}

.u-mx-30 {
  margin-left: 3rem;
  margin-right: 3rem;
}

.u-pt-30 {
  padding-top: 3rem;
}

.u-pb-30 {
  padding-bottom: 3rem;
}

.u-pl-30 {
  padding-left: 3rem;
}

.u-pr-30 {
  padding-right: 3rem;
}

.u-p-30 {
  padding: 3rem;
}

.u-py-30 {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.u-px-30 {
  padding-left: 3rem;
  padding-right: 3rem;
}

.u-mt-32 {
  margin-top: 3.2rem;
}

.u-mb-32 {
  margin-bottom: 3.2rem;
}

.u-ml-32 {
  margin-left: 3.2rem;
}

.u-mr-32 {
  margin-right: 3.2rem;
}

.u-m-32 {
  margin: 3.2rem;
}

.u-my-32 {
  margin-top: 3.2rem;
  margin-bottom: 3.2rem;
}

.u-mx-32 {
  margin-left: 3.2rem;
  margin-right: 3.2rem;
}

.u-pt-32 {
  padding-top: 3.2rem;
}

.u-pb-32 {
  padding-bottom: 3.2rem;
}

.u-pl-32 {
  padding-left: 3.2rem;
}

.u-pr-32 {
  padding-right: 3.2rem;
}

.u-p-32 {
  padding: 3.2rem;
}

.u-py-32 {
  padding-top: 3.2rem;
  padding-bottom: 3.2rem;
}

.u-px-32 {
  padding-left: 3.2rem;
  padding-right: 3.2rem;
}

.u-mt-34 {
  margin-top: 3.4rem;
}

.u-mb-34 {
  margin-bottom: 3.4rem;
}

.u-ml-34 {
  margin-left: 3.4rem;
}

.u-mr-34 {
  margin-right: 3.4rem;
}

.u-m-34 {
  margin: 3.4rem;
}

.u-my-34 {
  margin-top: 3.4rem;
  margin-bottom: 3.4rem;
}

.u-mx-34 {
  margin-left: 3.4rem;
  margin-right: 3.4rem;
}

.u-pt-34 {
  padding-top: 3.4rem;
}

.u-pb-34 {
  padding-bottom: 3.4rem;
}

.u-pl-34 {
  padding-left: 3.4rem;
}

.u-pr-34 {
  padding-right: 3.4rem;
}

.u-p-34 {
  padding: 3.4rem;
}

.u-py-34 {
  padding-top: 3.4rem;
  padding-bottom: 3.4rem;
}

.u-px-34 {
  padding-left: 3.4rem;
  padding-right: 3.4rem;
}

.u-mt-36 {
  margin-top: 3.6rem;
}

.u-mb-36 {
  margin-bottom: 3.6rem;
}

.u-ml-36 {
  margin-left: 3.6rem;
}

.u-mr-36 {
  margin-right: 3.6rem;
}

.u-m-36 {
  margin: 3.6rem;
}

.u-my-36 {
  margin-top: 3.6rem;
  margin-bottom: 3.6rem;
}

.u-mx-36 {
  margin-left: 3.6rem;
  margin-right: 3.6rem;
}

.u-pt-36 {
  padding-top: 3.6rem;
}

.u-pb-36 {
  padding-bottom: 3.6rem;
}

.u-pl-36 {
  padding-left: 3.6rem;
}

.u-pr-36 {
  padding-right: 3.6rem;
}

.u-p-36 {
  padding: 3.6rem;
}

.u-py-36 {
  padding-top: 3.6rem;
  padding-bottom: 3.6rem;
}

.u-px-36 {
  padding-left: 3.6rem;
  padding-right: 3.6rem;
}

.u-mt-38 {
  margin-top: 3.8rem;
}

.u-mb-38 {
  margin-bottom: 3.8rem;
}

.u-ml-38 {
  margin-left: 3.8rem;
}

.u-mr-38 {
  margin-right: 3.8rem;
}

.u-m-38 {
  margin: 3.8rem;
}

.u-my-38 {
  margin-top: 3.8rem;
  margin-bottom: 3.8rem;
}

.u-mx-38 {
  margin-left: 3.8rem;
  margin-right: 3.8rem;
}

.u-pt-38 {
  padding-top: 3.8rem;
}

.u-pb-38 {
  padding-bottom: 3.8rem;
}

.u-pl-38 {
  padding-left: 3.8rem;
}

.u-pr-38 {
  padding-right: 3.8rem;
}

.u-p-38 {
  padding: 3.8rem;
}

.u-py-38 {
  padding-top: 3.8rem;
  padding-bottom: 3.8rem;
}

.u-px-38 {
  padding-left: 3.8rem;
  padding-right: 3.8rem;
}

.u-mt-40 {
  margin-top: 4rem;
}

.u-mb-40 {
  margin-bottom: 4rem;
}

.u-ml-40 {
  margin-left: 4rem;
}

.u-mr-40 {
  margin-right: 4rem;
}

.u-m-40 {
  margin: 4rem;
}

.u-my-40 {
  margin-top: 4rem;
  margin-bottom: 4rem;
}

.u-mx-40 {
  margin-left: 4rem;
  margin-right: 4rem;
}

.u-pt-40 {
  padding-top: 4rem;
}

.u-pb-40 {
  padding-bottom: 4rem;
}

.u-pl-40 {
  padding-left: 4rem;
}

.u-pr-40 {
  padding-right: 4rem;
}

.u-p-40 {
  padding: 4rem;
}

.u-py-40 {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.u-px-40 {
  padding-left: 4rem;
  padding-right: 4rem;
}

.u-mt-42 {
  margin-top: 4.2rem;
}

.u-mb-42 {
  margin-bottom: 4.2rem;
}

.u-ml-42 {
  margin-left: 4.2rem;
}

.u-mr-42 {
  margin-right: 4.2rem;
}

.u-m-42 {
  margin: 4.2rem;
}

.u-my-42 {
  margin-top: 4.2rem;
  margin-bottom: 4.2rem;
}

.u-mx-42 {
  margin-left: 4.2rem;
  margin-right: 4.2rem;
}

.u-pt-42 {
  padding-top: 4.2rem;
}

.u-pb-42 {
  padding-bottom: 4.2rem;
}

.u-pl-42 {
  padding-left: 4.2rem;
}

.u-pr-42 {
  padding-right: 4.2rem;
}

.u-p-42 {
  padding: 4.2rem;
}

.u-py-42 {
  padding-top: 4.2rem;
  padding-bottom: 4.2rem;
}

.u-px-42 {
  padding-left: 4.2rem;
  padding-right: 4.2rem;
}

.u-mt-44 {
  margin-top: 4.4rem;
}

.u-mb-44 {
  margin-bottom: 4.4rem;
}

.u-ml-44 {
  margin-left: 4.4rem;
}

.u-mr-44 {
  margin-right: 4.4rem;
}

.u-m-44 {
  margin: 4.4rem;
}

.u-my-44 {
  margin-top: 4.4rem;
  margin-bottom: 4.4rem;
}

.u-mx-44 {
  margin-left: 4.4rem;
  margin-right: 4.4rem;
}

.u-pt-44 {
  padding-top: 4.4rem;
}

.u-pb-44 {
  padding-bottom: 4.4rem;
}

.u-pl-44 {
  padding-left: 4.4rem;
}

.u-pr-44 {
  padding-right: 4.4rem;
}

.u-p-44 {
  padding: 4.4rem;
}

.u-py-44 {
  padding-top: 4.4rem;
  padding-bottom: 4.4rem;
}

.u-px-44 {
  padding-left: 4.4rem;
  padding-right: 4.4rem;
}

.u-mt-46 {
  margin-top: 4.6rem;
}

.u-mb-46 {
  margin-bottom: 4.6rem;
}

.u-ml-46 {
  margin-left: 4.6rem;
}

.u-mr-46 {
  margin-right: 4.6rem;
}

.u-m-46 {
  margin: 4.6rem;
}

.u-my-46 {
  margin-top: 4.6rem;
  margin-bottom: 4.6rem;
}

.u-mx-46 {
  margin-left: 4.6rem;
  margin-right: 4.6rem;
}

.u-pt-46 {
  padding-top: 4.6rem;
}

.u-pb-46 {
  padding-bottom: 4.6rem;
}

.u-pl-46 {
  padding-left: 4.6rem;
}

.u-pr-46 {
  padding-right: 4.6rem;
}

.u-p-46 {
  padding: 4.6rem;
}

.u-py-46 {
  padding-top: 4.6rem;
  padding-bottom: 4.6rem;
}

.u-px-46 {
  padding-left: 4.6rem;
  padding-right: 4.6rem;
}

.u-mt-48 {
  margin-top: 4.8rem;
}

.u-mb-48 {
  margin-bottom: 4.8rem;
}

.u-ml-48 {
  margin-left: 4.8rem;
}

.u-mr-48 {
  margin-right: 4.8rem;
}

.u-m-48 {
  margin: 4.8rem;
}

.u-my-48 {
  margin-top: 4.8rem;
  margin-bottom: 4.8rem;
}

.u-mx-48 {
  margin-left: 4.8rem;
  margin-right: 4.8rem;
}

.u-pt-48 {
  padding-top: 4.8rem;
}

.u-pb-48 {
  padding-bottom: 4.8rem;
}

.u-pl-48 {
  padding-left: 4.8rem;
}

.u-pr-48 {
  padding-right: 4.8rem;
}

.u-p-48 {
  padding: 4.8rem;
}

.u-py-48 {
  padding-top: 4.8rem;
  padding-bottom: 4.8rem;
}

.u-px-48 {
  padding-left: 4.8rem;
  padding-right: 4.8rem;
}

.u-mt-50 {
  margin-top: 5rem;
}

.u-mb-50 {
  margin-bottom: 5rem;
}

.u-ml-50 {
  margin-left: 5rem;
}

.u-mr-50 {
  margin-right: 5rem;
}

.u-m-50 {
  margin: 5rem;
}

.u-my-50 {
  margin-top: 5rem;
  margin-bottom: 5rem;
}

.u-mx-50 {
  margin-left: 5rem;
  margin-right: 5rem;
}

.u-pt-50 {
  padding-top: 5rem;
}

.u-pb-50 {
  padding-bottom: 5rem;
}

.u-pl-50 {
  padding-left: 5rem;
}

.u-pr-50 {
  padding-right: 5rem;
}

.u-p-50 {
  padding: 5rem;
}

.u-py-50 {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.u-px-50 {
  padding-left: 5rem;
  padding-right: 5rem;
}

.u-mt-52 {
  margin-top: 5.2rem;
}

.u-mb-52 {
  margin-bottom: 5.2rem;
}

.u-ml-52 {
  margin-left: 5.2rem;
}

.u-mr-52 {
  margin-right: 5.2rem;
}

.u-m-52 {
  margin: 5.2rem;
}

.u-my-52 {
  margin-top: 5.2rem;
  margin-bottom: 5.2rem;
}

.u-mx-52 {
  margin-left: 5.2rem;
  margin-right: 5.2rem;
}

.u-pt-52 {
  padding-top: 5.2rem;
}

.u-pb-52 {
  padding-bottom: 5.2rem;
}

.u-pl-52 {
  padding-left: 5.2rem;
}

.u-pr-52 {
  padding-right: 5.2rem;
}

.u-p-52 {
  padding: 5.2rem;
}

.u-py-52 {
  padding-top: 5.2rem;
  padding-bottom: 5.2rem;
}

.u-px-52 {
  padding-left: 5.2rem;
  padding-right: 5.2rem;
}

.u-mt-54 {
  margin-top: 5.4rem;
}

.u-mb-54 {
  margin-bottom: 5.4rem;
}

.u-ml-54 {
  margin-left: 5.4rem;
}

.u-mr-54 {
  margin-right: 5.4rem;
}

.u-m-54 {
  margin: 5.4rem;
}

.u-my-54 {
  margin-top: 5.4rem;
  margin-bottom: 5.4rem;
}

.u-mx-54 {
  margin-left: 5.4rem;
  margin-right: 5.4rem;
}

.u-pt-54 {
  padding-top: 5.4rem;
}

.u-pb-54 {
  padding-bottom: 5.4rem;
}

.u-pl-54 {
  padding-left: 5.4rem;
}

.u-pr-54 {
  padding-right: 5.4rem;
}

.u-p-54 {
  padding: 5.4rem;
}

.u-py-54 {
  padding-top: 5.4rem;
  padding-bottom: 5.4rem;
}

.u-px-54 {
  padding-left: 5.4rem;
  padding-right: 5.4rem;
}

.u-mt-56 {
  margin-top: 5.6rem;
}

.u-mb-56 {
  margin-bottom: 5.6rem;
}

.u-ml-56 {
  margin-left: 5.6rem;
}

.u-mr-56 {
  margin-right: 5.6rem;
}

.u-m-56 {
  margin: 5.6rem;
}

.u-my-56 {
  margin-top: 5.6rem;
  margin-bottom: 5.6rem;
}

.u-mx-56 {
  margin-left: 5.6rem;
  margin-right: 5.6rem;
}

.u-pt-56 {
  padding-top: 5.6rem;
}

.u-pb-56 {
  padding-bottom: 5.6rem;
}

.u-pl-56 {
  padding-left: 5.6rem;
}

.u-pr-56 {
  padding-right: 5.6rem;
}

.u-p-56 {
  padding: 5.6rem;
}

.u-py-56 {
  padding-top: 5.6rem;
  padding-bottom: 5.6rem;
}

.u-px-56 {
  padding-left: 5.6rem;
  padding-right: 5.6rem;
}

.u-mt-58 {
  margin-top: 5.8rem;
}

.u-mb-58 {
  margin-bottom: 5.8rem;
}

.u-ml-58 {
  margin-left: 5.8rem;
}

.u-mr-58 {
  margin-right: 5.8rem;
}

.u-m-58 {
  margin: 5.8rem;
}

.u-my-58 {
  margin-top: 5.8rem;
  margin-bottom: 5.8rem;
}

.u-mx-58 {
  margin-left: 5.8rem;
  margin-right: 5.8rem;
}

.u-pt-58 {
  padding-top: 5.8rem;
}

.u-pb-58 {
  padding-bottom: 5.8rem;
}

.u-pl-58 {
  padding-left: 5.8rem;
}

.u-pr-58 {
  padding-right: 5.8rem;
}

.u-p-58 {
  padding: 5.8rem;
}

.u-py-58 {
  padding-top: 5.8rem;
  padding-bottom: 5.8rem;
}

.u-px-58 {
  padding-left: 5.8rem;
  padding-right: 5.8rem;
}

.u-mt-60 {
  margin-top: 6rem;
}

.u-mb-60 {
  margin-bottom: 6rem;
}

.u-ml-60 {
  margin-left: 6rem;
}

.u-mr-60 {
  margin-right: 6rem;
}

.u-m-60 {
  margin: 6rem;
}

.u-my-60 {
  margin-top: 6rem;
  margin-bottom: 6rem;
}

.u-mx-60 {
  margin-left: 6rem;
  margin-right: 6rem;
}

.u-pt-60 {
  padding-top: 6rem;
}

.u-pb-60 {
  padding-bottom: 6rem;
}

.u-pl-60 {
  padding-left: 6rem;
}

.u-pr-60 {
  padding-right: 6rem;
}

.u-p-60 {
  padding: 6rem;
}

.u-py-60 {
  padding-top: 6rem;
  padding-bottom: 6rem;
}

.u-px-60 {
  padding-left: 6rem;
  padding-right: 6rem;
}

.u-mt-62 {
  margin-top: 6.2rem;
}

.u-mb-62 {
  margin-bottom: 6.2rem;
}

.u-ml-62 {
  margin-left: 6.2rem;
}

.u-mr-62 {
  margin-right: 6.2rem;
}

.u-m-62 {
  margin: 6.2rem;
}

.u-my-62 {
  margin-top: 6.2rem;
  margin-bottom: 6.2rem;
}

.u-mx-62 {
  margin-left: 6.2rem;
  margin-right: 6.2rem;
}

.u-pt-62 {
  padding-top: 6.2rem;
}

.u-pb-62 {
  padding-bottom: 6.2rem;
}

.u-pl-62 {
  padding-left: 6.2rem;
}

.u-pr-62 {
  padding-right: 6.2rem;
}

.u-p-62 {
  padding: 6.2rem;
}

.u-py-62 {
  padding-top: 6.2rem;
  padding-bottom: 6.2rem;
}

.u-px-62 {
  padding-left: 6.2rem;
  padding-right: 6.2rem;
}

.u-mt-64 {
  margin-top: 6.4rem;
}

.u-mb-64 {
  margin-bottom: 6.4rem;
}

.u-ml-64 {
  margin-left: 6.4rem;
}

.u-mr-64 {
  margin-right: 6.4rem;
}

.u-m-64 {
  margin: 6.4rem;
}

.u-my-64 {
  margin-top: 6.4rem;
  margin-bottom: 6.4rem;
}

.u-mx-64 {
  margin-left: 6.4rem;
  margin-right: 6.4rem;
}

.u-pt-64 {
  padding-top: 6.4rem;
}

.u-pb-64 {
  padding-bottom: 6.4rem;
}

.u-pl-64 {
  padding-left: 6.4rem;
}

.u-pr-64 {
  padding-right: 6.4rem;
}

.u-p-64 {
  padding: 6.4rem;
}

.u-py-64 {
  padding-top: 6.4rem;
  padding-bottom: 6.4rem;
}

.u-px-64 {
  padding-left: 6.4rem;
  padding-right: 6.4rem;
}

.u-mt-66 {
  margin-top: 6.6rem;
}

.u-mb-66 {
  margin-bottom: 6.6rem;
}

.u-ml-66 {
  margin-left: 6.6rem;
}

.u-mr-66 {
  margin-right: 6.6rem;
}

.u-m-66 {
  margin: 6.6rem;
}

.u-my-66 {
  margin-top: 6.6rem;
  margin-bottom: 6.6rem;
}

.u-mx-66 {
  margin-left: 6.6rem;
  margin-right: 6.6rem;
}

.u-pt-66 {
  padding-top: 6.6rem;
}

.u-pb-66 {
  padding-bottom: 6.6rem;
}

.u-pl-66 {
  padding-left: 6.6rem;
}

.u-pr-66 {
  padding-right: 6.6rem;
}

.u-p-66 {
  padding: 6.6rem;
}

.u-py-66 {
  padding-top: 6.6rem;
  padding-bottom: 6.6rem;
}

.u-px-66 {
  padding-left: 6.6rem;
  padding-right: 6.6rem;
}

.u-mt-68 {
  margin-top: 6.8rem;
}

.u-mb-68 {
  margin-bottom: 6.8rem;
}

.u-ml-68 {
  margin-left: 6.8rem;
}

.u-mr-68 {
  margin-right: 6.8rem;
}

.u-m-68 {
  margin: 6.8rem;
}

.u-my-68 {
  margin-top: 6.8rem;
  margin-bottom: 6.8rem;
}

.u-mx-68 {
  margin-left: 6.8rem;
  margin-right: 6.8rem;
}

.u-pt-68 {
  padding-top: 6.8rem;
}

.u-pb-68 {
  padding-bottom: 6.8rem;
}

.u-pl-68 {
  padding-left: 6.8rem;
}

.u-pr-68 {
  padding-right: 6.8rem;
}

.u-p-68 {
  padding: 6.8rem;
}

.u-py-68 {
  padding-top: 6.8rem;
  padding-bottom: 6.8rem;
}

.u-px-68 {
  padding-left: 6.8rem;
  padding-right: 6.8rem;
}

.u-mt-70 {
  margin-top: 7rem;
}

.u-mb-70 {
  margin-bottom: 7rem;
}

.u-ml-70 {
  margin-left: 7rem;
}

.u-mr-70 {
  margin-right: 7rem;
}

.u-m-70 {
  margin: 7rem;
}

.u-my-70 {
  margin-top: 7rem;
  margin-bottom: 7rem;
}

.u-mx-70 {
  margin-left: 7rem;
  margin-right: 7rem;
}

.u-pt-70 {
  padding-top: 7rem;
}

.u-pb-70 {
  padding-bottom: 7rem;
}

.u-pl-70 {
  padding-left: 7rem;
}

.u-pr-70 {
  padding-right: 7rem;
}

.u-p-70 {
  padding: 7rem;
}

.u-py-70 {
  padding-top: 7rem;
  padding-bottom: 7rem;
}

.u-px-70 {
  padding-left: 7rem;
  padding-right: 7rem;
}

.u-mt-72 {
  margin-top: 7.2rem;
}

.u-mb-72 {
  margin-bottom: 7.2rem;
}

.u-ml-72 {
  margin-left: 7.2rem;
}

.u-mr-72 {
  margin-right: 7.2rem;
}

.u-m-72 {
  margin: 7.2rem;
}

.u-my-72 {
  margin-top: 7.2rem;
  margin-bottom: 7.2rem;
}

.u-mx-72 {
  margin-left: 7.2rem;
  margin-right: 7.2rem;
}

.u-pt-72 {
  padding-top: 7.2rem;
}

.u-pb-72 {
  padding-bottom: 7.2rem;
}

.u-pl-72 {
  padding-left: 7.2rem;
}

.u-pr-72 {
  padding-right: 7.2rem;
}

.u-p-72 {
  padding: 7.2rem;
}

.u-py-72 {
  padding-top: 7.2rem;
  padding-bottom: 7.2rem;
}

.u-px-72 {
  padding-left: 7.2rem;
  padding-right: 7.2rem;
}

.u-mt-74 {
  margin-top: 7.4rem;
}

.u-mb-74 {
  margin-bottom: 7.4rem;
}

.u-ml-74 {
  margin-left: 7.4rem;
}

.u-mr-74 {
  margin-right: 7.4rem;
}

.u-m-74 {
  margin: 7.4rem;
}

.u-my-74 {
  margin-top: 7.4rem;
  margin-bottom: 7.4rem;
}

.u-mx-74 {
  margin-left: 7.4rem;
  margin-right: 7.4rem;
}

.u-pt-74 {
  padding-top: 7.4rem;
}

.u-pb-74 {
  padding-bottom: 7.4rem;
}

.u-pl-74 {
  padding-left: 7.4rem;
}

.u-pr-74 {
  padding-right: 7.4rem;
}

.u-p-74 {
  padding: 7.4rem;
}

.u-py-74 {
  padding-top: 7.4rem;
  padding-bottom: 7.4rem;
}

.u-px-74 {
  padding-left: 7.4rem;
  padding-right: 7.4rem;
}

.u-mt-76 {
  margin-top: 7.6rem;
}

.u-mb-76 {
  margin-bottom: 7.6rem;
}

.u-ml-76 {
  margin-left: 7.6rem;
}

.u-mr-76 {
  margin-right: 7.6rem;
}

.u-m-76 {
  margin: 7.6rem;
}

.u-my-76 {
  margin-top: 7.6rem;
  margin-bottom: 7.6rem;
}

.u-mx-76 {
  margin-left: 7.6rem;
  margin-right: 7.6rem;
}

.u-pt-76 {
  padding-top: 7.6rem;
}

.u-pb-76 {
  padding-bottom: 7.6rem;
}

.u-pl-76 {
  padding-left: 7.6rem;
}

.u-pr-76 {
  padding-right: 7.6rem;
}

.u-p-76 {
  padding: 7.6rem;
}

.u-py-76 {
  padding-top: 7.6rem;
  padding-bottom: 7.6rem;
}

.u-px-76 {
  padding-left: 7.6rem;
  padding-right: 7.6rem;
}

.u-mt-78 {
  margin-top: 7.8rem;
}

.u-mb-78 {
  margin-bottom: 7.8rem;
}

.u-ml-78 {
  margin-left: 7.8rem;
}

.u-mr-78 {
  margin-right: 7.8rem;
}

.u-m-78 {
  margin: 7.8rem;
}

.u-my-78 {
  margin-top: 7.8rem;
  margin-bottom: 7.8rem;
}

.u-mx-78 {
  margin-left: 7.8rem;
  margin-right: 7.8rem;
}

.u-pt-78 {
  padding-top: 7.8rem;
}

.u-pb-78 {
  padding-bottom: 7.8rem;
}

.u-pl-78 {
  padding-left: 7.8rem;
}

.u-pr-78 {
  padding-right: 7.8rem;
}

.u-p-78 {
  padding: 7.8rem;
}

.u-py-78 {
  padding-top: 7.8rem;
  padding-bottom: 7.8rem;
}

.u-px-78 {
  padding-left: 7.8rem;
  padding-right: 7.8rem;
}

.u-mt-80 {
  margin-top: 8rem;
}

.u-mb-80 {
  margin-bottom: 8rem;
}

.u-ml-80 {
  margin-left: 8rem;
}

.u-mr-80 {
  margin-right: 8rem;
}

.u-m-80 {
  margin: 8rem;
}

.u-my-80 {
  margin-top: 8rem;
  margin-bottom: 8rem;
}

.u-mx-80 {
  margin-left: 8rem;
  margin-right: 8rem;
}

.u-pt-80 {
  padding-top: 8rem;
}

.u-pb-80 {
  padding-bottom: 8rem;
}

.u-pl-80 {
  padding-left: 8rem;
}

.u-pr-80 {
  padding-right: 8rem;
}

.u-p-80 {
  padding: 8rem;
}

.u-py-80 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

.u-px-80 {
  padding-left: 8rem;
  padding-right: 8rem;
}

.u-mx-auto {
  margin-inline: auto;
}

.u-mt-10-20 {
  margin-top: clamp(1rem, 3.79vw + -0.19rem, 2rem);
}

.u-mt-20-40 {
  margin-top: clamp(2rem, 7.58vw + -0.38rem, 4rem);
}

.u-mt-20-80 {
  margin-top: clamp(2rem, 22.73vw + -1.53rem, 8rem);
}

.u-mt-40-60 {
  margin-top: clamp(4rem, 7.58vw + -0.18rem, 6rem);
}

.u-mt-60-100 {
  margin-top: clamp(6rem, 15.15vw + -0.55rem, 10rem);
}

.u-mb-10-20 {
  margin-bottom: clamp(1rem, 3.79vw + -0.19rem, 2rem);
}

.u-mb-20-40 {
  margin-bottom: clamp(2rem, 7.58vw + -0.38rem, 4rem);
}

.u-mb-20-80 {
  margin-bottom: clamp(2rem, 22.73vw + -1.53rem, 8rem);
}

.u-mb-40-60 {
  margin-bottom: clamp(4rem, 7.58vw + -0.18rem, 6rem);
}

.u-mb-60-100 {
  margin-bottom: clamp(6rem, 15.15vw + -0.55rem, 10rem);
}

.u-m-10-20 {
  margin: clamp(1rem, 3.79vw + -0.19rem, 2rem);
}

.u-m-20-40 {
  margin: clamp(2rem, 7.58vw + -0.38rem, 4rem);
}

.u-m-20-80 {
  margin: clamp(2rem, 22.73vw + -1.53rem, 8rem);
}

.u-m-40-60 {
  margin: clamp(4rem, 7.58vw + -0.18rem, 6rem);
}

.u-m-60-100 {
  margin: clamp(6rem, 15.15vw + -0.55rem, 10rem);
}

/* =========================================================
  Common
========================================================= */
.c-catch__wrap {
  font-size: 20rem;
  font-weight: 500;
  line-height: 250%;
  letter-spacing: 0;
  writing-mode: vertical-rl;
}
@media (width <= 760px) {
  .c-catch__wrap {
    font-size: 40rem;
    font-weight: 600;
    line-height: 250%;
    letter-spacing: 0em;
  }
}

.c-lbl-base {
  position: relative;
  display: flex;
  justify-content: left;
  align-items: end;
  gap: 20rem;
}
.c-lbl-base__en {
  display: flex;
  font-size: 170rem;
  font-family: var(--ff-en);
  font-weight: 700;
  line-height: 100%;
}
@media (width <= 760px) {
  .c-lbl-base__en {
    font-size: 130rem;
  }
}
.c-lbl-base__jp {
  position: relative;
  font-size: 20rem;
  line-height: 340%;
  letter-spacing: 0.1em;
  padding-left: 20rem;
}
.c-lbl-base__jp::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 3rem;
  height: 1em;
  background-color: var(--color-text-1);
}
@media (width <= 760px) {
  .c-lbl-base__jp {
    position: absolute;
    top: -70rem;
    left: 0;
    font-size: 28rem;
  }
}

body.layout-fixing .c-catch__wrap {
  font-size: 20px;
  font-weight: 500;
  line-height: 250%;
  letter-spacing: 0;
  writing-mode: vertical-rl;
}
@media (760px < width <= 1440px) {
  body.layout-fixing .c-catch__wrap {
    font-size: 20rem;
  }
}
@media (width <= 760px) {
  body.layout-fixing .c-catch__wrap {
    font-size: 40rem;
    font-weight: 600;
    line-height: 250%;
    letter-spacing: 0em;
  }
}
body.layout-fixing .c-lbl-base {
  position: relative;
  display: flex;
  justify-content: left;
  align-items: end;
  gap: 20px;
}
@media (760px < width <= 1440px) {
  body.layout-fixing .c-lbl-base {
    gap: 20rem;
  }
}
body.layout-fixing .c-lbl-base__en {
  display: flex;
  font-size: 170px;
  font-family: var(--ff-en);
  font-weight: 700;
  line-height: 100%;
}
@media (760px < width <= 1440px) {
  body.layout-fixing .c-lbl-base__en {
    font-size: 170rem;
  }
}
@media (width <= 760px) {
  body.layout-fixing .c-lbl-base__en {
    font-size: 130rem;
  }
}
body.layout-fixing .c-lbl-base__jp {
  position: relative;
  font-size: 20px;
  line-height: 340%;
  letter-spacing: 0.1em;
  padding-left: 20px;
}
@media (760px < width <= 1440px) {
  body.layout-fixing .c-lbl-base__jp {
    font-size: 20rem;
    padding-left: 20rem;
  }
}
@media (width <= 760px) {
  body.layout-fixing .c-lbl-base__jp {
    position: absolute;
    top: -70rem;
    left: 0;
    font-size: 28rem;
  }
}
body.layout-fixing .c-lbl-base__jp::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 3px;
  height: 1em;
  background-color: var(--color-text-1);
}
@media (760px < width <= 1440px) {
  body.layout-fixing .c-lbl-base__jp::before {
    width: 3rem;
  }
}

/* =========================================================
  Common
========================================================= */
:root {
  --drawer-bg: var(--color-base-1);
  --drawer-width: 100%;
  --drawer-max-width: auto;
  --drawer-speed: 0.4s;
  --drawer-overlay-bg: rgba(0, 0, 0, 0.5);
  --hamburger-color: #333333;
  --hamburger-line-color: #000;
  --hamburger-line-color-active: #fff;
}

/* ボタンとドロワーの共通設計 */
.c-hamburger {
  position: relative;
  /* display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 0.8rem; */
  width: 40px;
  height: 40px;
  background: none;
  border: none;
  cursor: pointer;
  position: relative;
  z-index: 2100;
}
@media (760px < width <= 1440px) {
  .c-hamburger {
    width: 40rem;
    height: 40rem;
  }
}
@media (width <= 760px) {
  .c-hamburger {
    width: 80rem;
    height: 80rem;
  }
}
.c-hamburger__line {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80%;
  height: 5rem;
  border-radius: 8px;
  background-color: var(--hamburger-line-color);
  transition: all var(--drawer-speed) ease;
}
@media (760px < width <= 1440px) {
  .c-hamburger__line {
    height: 5rem;
  }
}
@media (width <= 760px) {
  .c-hamburger__line {
    height: 3rem;
    background-color: var(--color-white);
  }
}
.c-hamburger__line:nth-child(1) {
  top: 20%;
}
.c-hamburger__line:nth-child(3) {
  top: 80%;
}
.c-hamburger.is-active .c-hamburger__line {
  background-color: var(--hamburger-line-color-active);
}
.c-hamburger.is-active .c-hamburger__line:nth-child(1) {
  top: 50%;
  transform: translate(-50%, -50%) rotate(25deg);
}
.c-hamburger.is-active .c-hamburger__line:nth-child(2) {
  opacity: 0;
  visibility: hidden;
}
.c-hamburger.is-active .c-hamburger__line:nth-child(3) {
  top: 50%;
  transform: translate(-50%, -50%) rotate(155deg);
}

.c-drawer {
  position: fixed;
  top: 0;
  right: 0;
  width: var(--drawer-width);
  max-width: var(--drawer-max-width);
  height: 100vh;
  z-index: 2000;
  padding: 0 30rem;
  background-color: var(--drawer-bg);
  transform: translateX(100%);
  visibility: hidden;
  transition: transform var(--drawer-speed), visibility var(--drawer-speed);
}
.c-drawer.is-active {
  transform: translateX(0);
  visibility: visible;
}
.c-drawer .c-menu-toggle::before, .c-drawer .c-menu-toggle::after {
  background-color: var(--hamburger-color);
}
.c-drawer .c-menu-toggle .l-menu__sp .sub-menu a::before {
  background-color: var(--hamburger-color);
}
.c-drawer-overlay {
  position: fixed;
  inset: 0;
  top: 0;
  background: var(--drawer-overlay-bg);
  z-index: 999;
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--drawer-speed), visibility var(--drawer-speed);
}
.c-drawer-overlay.is-active {
  opacity: 1;
  visibility: visible;
}
.c-drawer__head {
  display: flex;
  justify-content: left;
  align-items: center;
  gap: 20rem;
  height: 100rem;
  padding: 25rem 0;
}
.c-drawer__logo > a {
  display: inline-block;
  width: 100rem;
  height: 100rem;
}
.c-drawer__logo > a > img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.c-drawer__logo-phrase {
  color: #fff;
  font-size: 12rem;
}
.c-drawer__nav {
  padding: 100rem 0 0;
  height: 100%;
  overflow-y: scroll;
}
.c-drawer__nav > ul {
  display: flex;
  flex-direction: column;
  align-items: start;
  gap: 80rem;
}
.c-drawer__nav > ul > li {
  width: 100%;
}
.c-drawer__nav > ul > li > a {
  display: block;
  position: relative;
  font-size: 32rem;
  font-weight: 400;
  color: var(--color-white);
}
.c-drawer__nav > ul > li > a::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1rem;
  left: 0;
  bottom: -10rem;
  background-color: #fff;
}
.c-drawer__nav > ul > li > a::after {
  content: "";
  position: absolute;
  top: -10rem;
  left: 40%;
  transform: translateX(-50%);
  width: 1rem;
  height: 80rem;
  background-color: var(--color-white);
}
.c-drawer__nav > ul > li.c-nav-instagram {
  justify-content: start;
}
.c-drawer__nav > ul > li.c-nav-instagram > a::before {
  display: none;
}
.c-drawer__nav > ul > li.c-nav-instagram > a::after {
  display: none;
}
.c-drawer__nav > ul > li.c-nav-instagram > a > img {
  width: 100rem;
  height: auto;
  fill: var(--color-white);
}
.c-drawer__nav__en {
  color: #fff;
  font-size: 70rem;
  font-family: var(--ff-en);
  font-weight: 600;
  line-height: 100%;
  letter-spacing: 0.02em;
}
.c-drawer__nav__jp {
  position: absolute;
  top: -44rem;
  left: 0;
  color: #fff;
  font-size: 24rem;
  font-weight: 600;
  line-height: 200%;
  letter-spacing: 0.05em;
}
.c-drawer__menu a,
.c-drawer__menu span {
  font-weight: normal !important;
}

.l-drawer__btns {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}

/* =========================================================
  Common
========================================================= */
.c-btn {
  position: relative;
}
.c-btn__line {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 4px;
  color: var(--color-white);
  font-family: var(--ff-en);
  letter-spacing: 0.05em;
  width: max-content;
  border: 2px solid var(--color-white);
  border-radius: 999px;
  padding: 12px 48px;
  background-color: var(--color-line);
  box-shadow: 4px 4px 10px rgba(var(--color-line-rgb), 0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  cursor: pointer;
}
@media (760px < width <= 1440px) {
  .c-btn__line {
    gap: 4rem;
    border: 2rem solid var(--color-white);
    padding: 12rem 48rem;
  }
}
@media (width <= 760px) {
  .c-btn__line {
    gap: 8rem;
    border: 2rem solid var(--color-white);
    padding: 24rem 48rem;
  }
}
.c-btn__line:hover {
  transform: translate(-3px, -3px);
  box-shadow: 6px 12px 12px rgba(var(--color-line-rgb), 0.3);
}
.c-btn__line-title {
  font-size: 18px;
  font-weight: 700;
  line-height: 120%;
  letter-spacing: 0.05em;
}
@media (760px < width <= 1440px) {
  .c-btn__line-title {
    font-size: 18rem;
  }
}
@media (width <= 760px) {
  .c-btn__line-title {
    font-size: 26rem;
  }
}
.c-btn__line-lead {
  font-size: 12px;
  line-height: 120%;
  letter-spacing: 0.05em;
}
@media (760px < width <= 1440px) {
  .c-btn__line-lead {
    font-size: 12rem;
  }
}
@media (width <= 760px) {
  .c-btn__line-lead {
    font-size: 20rem;
  }
}
.c-btn__tel {
  color: var(--color-white);
  font-size: 24px;
  font-weight: 700;
  font-family: var(--ff-en);
  letter-spacing: 0.05em;
  width: max-content;
  border: 2px solid var(--color-accent-1);
  border-radius: 999px;
  padding: 12px 48px;
  background-color: var(--color-accent-1);
  box-shadow: 4px 4px 10px rgba(var(--color-accent-1-rgb), 0.3);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  cursor: pointer;
}
@media (760px < width <= 1440px) {
  .c-btn__tel {
    font-size: 24rem;
    gap: 4rem;
    border: 2rem solid var(--color-white);
    padding: 12rem 48rem;
  }
}
@media (width <= 760px) {
  .c-btn__tel {
    font-size: 24rem;
    gap: 4rem;
    border: 2rem solid var(--color-white);
    padding: 24rem 48rem;
  }
}
.c-btn__tel:hover {
  transform: translate(-3px, -3px);
  box-shadow: 6px 12px 12px rgba(var(--color-accent-1-rgb), 0.3);
}
.c-btn__instagram {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 60px;
  height: 60px;
}
@media (760px < width <= 1440px) {
  .c-btn__instagram {
    width: 60rem;
    height: 60rem;
  }
}
@media (width <= 760px) {
  .c-btn__instagram {
    width: 60rem;
    height: 60rem;
  }
}
.c-btn__instagram span {
  display: block;
  width: 30px;
  height: 30px;
}
@media (760px < width <= 1440px) {
  .c-btn__instagram span {
    width: 30rem;
    height: 30rem;
  }
}
@media (width <= 760px) {
  .c-btn__instagram span {
    width: 60rem;
    height: 60rem;
  }
}
.c-btn__instagram-w {
  background: no-repeat center/cover url("../img/common/ico-instagram-w.svg");
}
.c-btn__instagram-b {
  background: no-repeat center/cover url("../img/common/ico-instagram-b.svg");
}

/* =========================================================
  Common
========================================================= */
.c-card__problem {
  width: 420px;
}
@media (760px < width <= 1440px) {
  .c-card__problem {
    max-width: 420rem;
  }
}
@media (width <= 760px) {
  .c-card__problem {
    max-width: 100%;
  }
}
.c-card__problem-img {
  aspect-ratio: 420/280;
  background-color: bisque;
  margin-bottom: 20px;
  overflow: hidden;
}
@media (760px < width <= 1440px) {
  .c-card__problem-img {
    margin-bottom: 20rem;
  }
}
@media (width <= 760px) {
  .c-card__problem-img {
    margin-bottom: 20rem;
  }
}
.c-card__problem-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-card__problem-ttl {
  color: var(--color-accent-1);
  font-size: 36px;
}
@media (760px < width <= 1440px) {
  .c-card__problem-ttl {
    font-size: 36rem;
  }
}
@media (width <= 760px) {
  .c-card__problem-ttl {
    font-size: 48rem;
  }
}
.c-card__problem-lead {
  font-size: 16px;
}
@media (760px < width <= 1440px) {
  .c-card__problem-lead {
    font-size: 16rem;
  }
}
@media (width <= 760px) {
  .c-card__problem-lead {
    font-size: 24rem;
  }
}
.c-card__value {
  width: 420px;
  padding: 40px;
  background-color: var(--color-base-1);
}
@media (760px < width <= 1440px) {
  .c-card__value {
    max-width: 420rem;
    padding: 40rem;
  }
}
@media (width <= 760px) {
  .c-card__value {
    width: 100%;
    padding: 40rem;
  }
}
.c-card__value-img {
  aspect-ratio: 1/1;
  width: 160px;
  height: 160px;
  border-radius: 50%;
  margin-inline: auto;
  margin-bottom: 20px;
  background-color: bisque;
  overflow: hidden;
}
@media (760px < width <= 1440px) {
  .c-card__value-img {
    width: 160rem;
    height: 160rem;
    margin-bottom: 20rem;
  }
}
@media (width <= 760px) {
  .c-card__value-img {
    width: 160rem;
    height: 160rem;
    margin-bottom: 20rem;
  }
}
.c-card__value-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-card__value-ttl {
  font-size: 36px;
  line-height: 120%;
  margin-bottom: 8px;
}
@media (760px < width <= 1440px) {
  .c-card__value-ttl {
    font-size: 36rem;
  }
}
@media (width <= 760px) {
  .c-card__value-ttl {
    font-size: 48rem;
  }
}
.c-card__value-lead {
  font-size: 16px;
}
@media (760px < width <= 1440px) {
  .c-card__value-lead {
    font-size: 16rem;
  }
}
@media (width <= 760px) {
  .c-card__value-lead {
    font-size: 28rem;
  }
}
.c-card__cta {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  font-family: var(--ff-en);
  width: 280px;
  height: 300px;
  padding: 20px;
  background-color: var(--color-white);
}
@media (760px < width <= 1440px) {
  .c-card__cta {
    width: 280rem;
    height: 300rem;
    padding: 20rem;
  }
}
@media (width <= 760px) {
  .c-card__cta {
    width: 400rem;
    height: 400rem;
    padding: 20rem;
  }
}
.c-card__cta-img {
  aspect-ratio: 1/1;
  width: 80px;
  height: 80px;
  overflow: hidden;
}
@media (760px < width <= 1440px) {
  .c-card__cta-img {
    width: 80rem;
    height: 80rem;
  }
}
@media (width <= 760px) {
  .c-card__cta-img {
    width: 100rem;
    height: 100rem;
  }
}
.c-card__cta-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-card__cta-ttl {
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  line-height: 140%;
  letter-spacing: 0.05em;
}
@media (760px < width <= 1440px) {
  .c-card__cta-ttl {
    font-size: 18rem;
  }
}
@media (width <= 760px) {
  .c-card__cta-ttl {
    font-size: 24rem;
  }
}
.c-card__cta-btn {
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  line-height: 100%;
  letter-spacing: 0.05em;
}
@media (760px < width <= 1440px) {
  .c-card__cta-btn {
    font-size: 18rem;
  }
}
@media (width <= 760px) {
  .c-card__cta-btn {
    font-size: 24rem;
  }
}
.c-card__cta-lead {
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  min-height: 3em;
}
@media (760px < width <= 1440px) {
  .c-card__cta-lead {
    font-size: 14rem;
  }
}
@media (width <= 760px) {
  .c-card__cta-lead {
    font-size: 20rem;
  }
}
.c-card__cta-lead.__tel {
  color: var(--color-accent-1);
}
.c-card__cta-lead.__line {
  color: var(--color-line);
}
.c-card__cta.--fixed {
  gap: 30rem;
  width: max-content;
  height: auto;
  padding: 40rem;
  background-color: rgba(255, 255, 255, 0.9);
}
.c-card__cta.--fixed .c-card__cta-ttl {
  font-size: 30rem;
}
.c-card__cta.--fixed .c-card__cta-btn {
  font-size: 30rem;
}
.c-card__cta.--fixed .c-card__cta-lead {
  font-size: 24rem;
  min-height: 0;
}
.c-card__voice {
  display: flex;
  flex-direction: column;
  align-items: start;
  gap: 20px;
  width: 360px;
  height: max-content;
  padding: 30px;
  border-radius: 16px;
  background-color: var(--color-white);
}
@media (760px < width <= 1440px) {
  .c-card__voice {
    width: 360rem;
    padding: 30rem;
    border-radius: 16rem;
  }
}
@media (width <= 760px) {
  .c-card__voice {
    width: 500rem;
    padding: 30rem;
    border-radius: 16rem;
  }
}
.c-card__voice__head {
  display: flex;
  justify-content: left;
  align-items: center;
  gap: 20px;
}
.c-card__voice__head-img {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background-color: blanchedalmond;
}
.c-card__voice__head-lead {
  font-size: 18px;
}
.c-card__voice__body {
  display: flex;
  flex-direction: column;
  gap: 20px;
  text-align: left;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.05em;
}
@media (760px < width <= 1440px) {
  .c-card__voice__body {
    gap: 20rem;
    font-size: 16rem;
  }
}
@media (width <= 760px) {
  .c-card__voice__body {
    gap: 20rem;
    font-size: 24rem;
  }
}
.c-card__voice__body a {
  color: var(--color-accent-1);
}
.c-card__voice__foot {
  color: var(--color-base-1);
  text-align: left;
  font-size: 14px;
  font-weight: 500;
  width: 100%;
  padding-top: 20px;
  border-top: 1px solid var(--color-base-1);
}
@media (760px < width <= 1440px) {
  .c-card__voice__foot {
    font-size: 14rem;
    padding-top: 20rem;
    border-top: 1rem solid var(--color-base-1);
  }
}
@media (width <= 760px) {
  .c-card__voice__foot {
    font-size: 18rem;
    padding-top: 24rem;
    border-top: 1rem solid var(--color-base-1);
  }
}

.c-card-lineup {
  max-width: 380px;
  width: 100%;
}
.c-card-lineup__img {
  height: 380px;
  object-fit: cover;
  margin-bottom: 2rem;
}
.c-card-lineup__title {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 180%;
  letter-spacing: 0.1em;
  margin-bottom: 1rem;
}
.c-card-lineup__lead {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 160%;
  letter-spacing: 0.1em;
}

/* =========================================================
  Common
========================================================= */
/* -----------------------------------------------------------
* アコーディオン
* ----------------------------------------------------------- */
.c-accordion {
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: 800px;
  margin-inline: auto;
}
@media (760px < width <= 1440px) {
  .c-accordion {
    gap: 20rem;
    width: 800rem;
  }
}
@media (width <= 760px) {
  .c-accordion {
    gap: 20rem;
    width: 100%;
  }
}
.c-accordion__item {
  border-radius: 8px;
  background-color: var(--color-white);
}
.c-accordion__item.is-open .c-accordion__icon::before {
  transform: rotate(0deg);
}
.c-accordion__item.is-open .c-accordion__toggle-arrow::before {
  transform: rotate(180deg);
}
.c-accordion__item.is-open .c-accordion__body {
  opacity: 1;
  visibility: visible;
}
.c-accordion__item.is-open .c-accordion__toggle-cross::before {
  transform: rotate(0deg);
}
.c-accordion__item.is-open .c-accordion__toggle-arrow {
  transform: rotate(-45deg) scaleY(-1);
}
.c-accordion.--flow .c-accordion__item {
  border-bottom: none;
  margin-bottom: 2rem;
}
.c-accordion.--flow .c-accordion__title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  list-style: none;
  font-weight: bold;
  padding: 2.8rem 4rem;
  border-radius: 2rem;
  background-color: var(--color-base-5);
}
@media screen and (max-width: 760px) {
  .c-accordion.--flow .c-accordion__title {
    padding: 1rem 1.6rem;
  }
}
.c-accordion.--flow .c-accordion__description {
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 180%;
  padding: 0 5rem;
}
@media screen and (max-width: 760px) {
  .c-accordion.--flow .c-accordion__description {
    padding: 0 1rem;
  }
}
.c-accordion__label {
  text-align: center;
  font-weight: 500;
  font-size: 20px;
  margin-bottom: clamp(2rem, 4.76vw - 0.38rem, 4rem);
}
@media (760px < width <= 1440px) {
  .c-accordion__label {
    font-size: 20rem;
  }
}
@media (width <= 760px) {
  .c-accordion__label {
    font-size: 20rem;
  }
}
.c-accordion__title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  list-style: none;
  font-weight: 700;
  padding: 20px 30px;
}
@media (760px < width <= 1440px) {
  .c-accordion__title {
    padding: 20rem 30rem;
  }
}
@media (width <= 760px) {
  .c-accordion__title {
    padding: 20rem 30rem;
  }
}
.c-accordion__title::-webkit-details-marker {
  display: none;
}
.c-accordion__title-text, .c-accordion__description {
  text-align: left;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 140%;
}
@media (760px < width <= 1440px) {
  .c-accordion__title-text, .c-accordion__description {
    font-size: 20rem;
  }
}
@media (width <= 760px) {
  .c-accordion__title-text, .c-accordion__description {
    font-size: 24rem;
  }
}
.c-accordion__description {
  font-weight: 400;
  line-height: 180%;
  flex: 1;
}
@media (760px < width <= 1440px) {
  .c-accordion__description {
    font-size: 20rem;
  }
}
@media (width <= 760px) {
  .c-accordion__description {
    font-size: 20rem;
  }
}
.c-accordion__icon-q, .c-accordion__icon-a {
  display: none;
  font-size: 18rem;
  font-weight: 700;
  font-family: var(--font-accent);
  margin-right: clamp(1.6rem, 1.19vw + 1.03rem, 2.4rem);
}
@media screen and (max-width: 760px) {
  .c-accordion__icon {
    width: 1.6rem;
  }
}
.c-accordion__toggle-cross {
  position: relative;
  margin-left: auto;
  width: 2rem;
  height: 2px;
  border-radius: 8px;
  background: var(--color-base-2);
  flex-shrink: 0;
}
.c-accordion__toggle-cross::before {
  content: "";
  position: absolute;
  inset: 0;
  background: currentColor;
  transform: rotate(90deg);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.c-accordion__toggle-arrow {
  position: relative;
  display: inline-block;
  width: 12px;
  height: 7px;
  margin-left: 10px;
  transition: transform 0.3s ease; /* アニメーションの速度 */
}
.c-accordion__toggle-arrow::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 16px;
  height: 16px;
  border-right: 3px solid #00796b; /* 画像に近い緑色 */
  border-bottom: 3px solid #00796b;
  transform: rotate(0deg); /* V字にする */
  box-sizing: border-box;
}
.c-accordion__body {
  overflow: hidden;
  height: 0;
  opacity: 0;
  visibility: hidden; /* 閉じている間は計算から外す */
  padding: 0 24px 12px;
  /* will-change を指定してGPU加速を促す（カクつき防止） */
  will-change: height, opacity;
  /* イージングを linear に近づけると違和感が減ります */
  transition: height 0.4s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.3s ease, visibility 0.4s;
}
.c-accordion__body-inner {
  display: flex;
  justify-content: space-between;
  align-items: start;
  padding-left: 2rem;
  padding-bottom: 2rem;
}

.c-slider {
  width: 100%;
  height: var(--slider-height);
}

/* 画像が枠いっぱいに広がるように設定 */
.c-slider__img {
  width: 100%;
  height: var(--slider-height);
  object-fit: cover;
}

/* Splideの矢印やドットの色をブランドカラーに合わせてカスタマイズ（例） */
.splide__arrow svg {
  fill: #fff;
}

.splide__pagination__page.is-active {
  background: #007bff; /* アクティブなドットの色 */
}

/* =========================================================
  Common
========================================================= */
/* ==========================================================================
   Stagger Animation System
   ========================================================================== */
/**
 * 1. アニメーションの共通基盤
 */
.anim-item {
  opacity: 0;
  transition-property: opacity, transform;
  transition-duration: 0.8s;
  transition-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
  transition-delay: var(--delay, 0.2s);
  will-change: opacity, transform;
}

/**
 * 2. アニメーションのバリエーション
 */
/* 下から上へ */
.anim-fade-up {
  transform: translateY(var(--distance, 30px));
}

/* 上から下へ */
.anim-fade-down {
  transform: translateY(calc(var(--distance, 30px) * -1));
}

/* 左から右へ（通常速度） */
.anim-fade-right {
  transform: translateX(calc(var(--distance, 30px) * -1));
}

/* じわっと拡大 */
.anim-zoom-in {
  transform: scale(0.9);
}

/* --- 【新規追加】左からハイスピード移動 --- */
.anim-slide-left-fast {
  /* 開始位置を左に（デフォルト 100px） */
  transform: translateX(calc(var(--distance, 200rem) * -1));
  /* 共通設定を上書きして「鋭い動き」にする */
  transition-duration: 0.4s;
  transition-timing-function: cubic-bezier(0.56, 1, 0.4, 1); /* 爆速から急ブレーキ */
}

/* --- 【新規追加】幕が上がるような「シュッ」とした上昇 --- */
.anim-rise-up {
  /* 幕が上がる感を出すため、初期位置を少し深めに設定 */
  transform: translateY(var(--distance, 100rem));
  /* 0.6秒で完結させることで「シュッ」とした速度を演出 */
  transition-duration: 0.4s;
  /* クイックに動き出し、滑らかに止まるベジェ曲線 */
  transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1);
}

/* --- 【新規追加】純粋なフェードイン（移動なし） --- */
/* 背景画像や、すでに位置が決まっている静かな要素に最適 */
.anim-fade-in-only {
  transform: none; /* 移動させない */
  transition-duration: 0.8s; /* ゆっくり時間をかける */
  transition-timing-function: ease-in-out;
}

/* --- 【新規追加】極小のズームアップ（ふんわり拡大） --- */
/* 奥行き感を出したい時や、キャッチコピーに最適 */
.anim-soft-zoom {
  transform: scale(0.96); /* わずかに小さくしておく */
  transition-duration: 1.2s;
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* --- 【新規追加】ミスト・アップ（霧が晴れるような上昇） --- */
/* fade-upよりもさらに「ふわっ」とした質感 */
.anim-mist-up {
  transform: translateY(15px); /* 移動距離を最小限に */
  transition-duration: 1.8s; /* かなり長く時間をかける */
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

/**
 * 3. 発火状態
 */
.is-ready .anim-item {
  opacity: 1;
  transform: translate(0, 0) scale(1);
}

/**
 * 4. アクセシビリティ対応
 */
@media (prefers-reduced-motion: reduce) {
  .anim-item {
    transition: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}
/* 初期状態 */
.js-fade-up {
  opacity: 0;
  transform: translateY(30rem); /* 30px下に下げておく */
  transition: opacity 0.4s ease-out, transform 0.4s ease-out;
  will-change: opacity, transform; /* ブラウザに最適化を促す */
}

/* 発火時の状態 */
.js-fade-up.is-active {
  opacity: 1;
  transform: translateY(0);
}

/* =========================================================
  Common
========================================================= */
/* =========================================================
  Common
========================================================= */
/* =========================================================
  Common
========================================================= */
.l-header {
  z-index: 999;
  width: 100%;
  transition: background-color 0.4s;
}
@media (width <= 760px) {
  .l-header {
    position: fixed;
  }
}
.l-header.is-scrolled {
  background-color: var(--color-base-1);
}
.l-header__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100px;
  padding-inline: 30px;
}
@media (760px < width <= 1440px) {
  .l-header__inner {
    height: 100rem;
    padding-inline: 30rem;
  }
}
@media (width <= 760px) {
  .l-header__inner {
    height: 120rem;
    padding-inline: 15rem;
  }
}
.l-header__logo {
  width: 80px;
  height: 80px;
}
@media (760px < width <= 1440px) {
  .l-header__logo {
    width: 80rem;
    height: 80rem;
  }
}
@media (width <= 760px) {
  .l-header__logo {
    width: 120rem;
    height: 120rem;
  }
}
.l-header__menu {
  display: flex;
  justify-content: end;
  align-items: center;
}
.l-header__menu a {
  font-size: 16px;
  padding-inline: 10px;
}
@media (760px < width <= 1440px) {
  .l-header__menu a {
    font-size: 16rem;
    padding-inline: 10rem;
  }
}
.c-nav-instagram {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 60px;
  height: 60px;
}
@media (760px < width <= 1440px) {
  .c-nav-instagram {
    width: 60rem;
    height: 60rem;
  }
}
@media (width <= 760px) {
  .c-nav-instagram {
    width: 60rem;
    height: 60rem;
  }
}

/* =========================================================
  Common
========================================================= */
/* =========================================================
  Common
========================================================= */
.l-footer {
  padding: 40px 0;
  background-color: var(--color-base-1);
}
@media (760px < width <= 1440px) {
  .l-footer {
    padding: 40rem 0;
  }
}
@media (width <= 760px) {
  .l-footer {
    padding: 40rem 0;
  }
}
.l-footer__info {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (760px < width <= 1440px) {
  .l-footer__info {
    gap: 20rem;
  }
}
@media (width <= 760px) {
  .l-footer__info {
    gap: 20rem;
  }
}
.l-footer__logo {
  display: flex;
  align-items: center;
  gap: 10px;
}
@media (760px < width <= 1440px) {
  .l-footer__logo {
    gap: 10rem;
  }
}
@media (width <= 760px) {
  .l-footer__logo {
    gap: 10rem;
  }
}
.l-footer__logo > img {
  width: 80px;
  height: 80px;
}
@media (760px < width <= 1440px) {
  .l-footer__logo > img {
    width: 80rem;
    height: 80rem;
  }
}
@media (width <= 760px) {
  .l-footer__logo > img {
    width: 120rem;
    height: 120rem;
  }
}
.l-footer__logo > span {
  font-size: 20px;
  font-weight: 700;
  font-family: var(--ff-accent);
}
@media (760px < width <= 1440px) {
  .l-footer__logo > span {
    font-size: 20rem;
  }
}
@media (width <= 760px) {
  .l-footer__logo > span {
    font-size: 36rem;
  }
}
.l-footer__lead {
  font-size: 16px;
  font-weight: 500;
  line-height: 140%;
  letter-spacing: 0.1em;
}
@media (760px < width <= 1440px) {
  .l-footer__lead {
    font-size: 16rem;
  }
}
@media (width <= 760px) {
  .l-footer__lead {
    font-size: 28rem;
  }
}
.l-footer__copyright {
  text-align: right;
  font-size: 14px;
  padding-top: 10px;
  border-top: 1px solid var(--color-black);
  margin-top: 20px;
}
@media (760px < width <= 1440px) {
  .l-footer__copyright {
    font-size: 14rem;
    padding-top: 10rem;
    border-top: 1rem solid var(--color-black);
    margin-top: 20rem;
  }
}
@media (width <= 760px) {
  .l-footer__copyright {
    font-size: 20rem;
    padding-top: 40rem;
    border-top: 1rem solid var(--color-black);
    margin-top: 40rem;
  }
}

/* =========================================================
  Common
========================================================= */
.l-section {
  padding-block: clamp(4rem, 9.51vw - 0.56rem, 12rem);
}

.l-contact {
  position: relative;
  background: no-repeat center/cover url("../img/top/bg-contact.webp");
  z-index: 0;
}
.l-contact::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: 1;
}

/* =========================================================
  Common
========================================================= */
/* -----------------------------------------------------------
* お問い合わせフォーム
* ----------------------------------------------------------- */
.c-contact-form {
  display: flex;
  flex-direction: column;
}
.c-contact-form > li {
  padding: 2rem 0;
}
.c-contact-form__title {
  display: inline-flex;
  justify-content: left;
  align-items: center;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 140%;
  width: max-content;
  gap: 1rem;
  margin-bottom: 1rem;
}
.c-contact-form .wpcf7-form-control-wrap {
  flex: 1;
  width: 100%;
}
.c-contact-form .wpcf7-form-control-wrap select, .c-contact-form .wpcf7-form-control-wrap input, .c-contact-form .wpcf7-form-control-wrap textarea {
  width: 100%;
  font-size: 1.8rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  padding: 0.2rem 1rem;
  border: 1px solid var(--color-gray-2);
  border-radius: 8px;
  background-color: var(--color-white);
}
.c-contact-form .wpcf7-form-control-wrap textarea {
  resize: vertical;
  max-height: 600px;
}
.c-contact-form .wpcf7-form-control-wrap select::placeholder, .c-contact-form .wpcf7-form-control-wrap input::placeholder, .c-contact-form .wpcf7-form-control-wrap textarea::placeholder {
  color: var(--color-gray-3);
}
.c-contact-form .wpcf7-checkbox {
  display: block;
  width: 100%;
}
.c-contact-form .wpcf7-checkbox .wpcf7-list-item {
  display: block;
  width: 100%;
  margin: auto;
}
.c-contact-form .wpcf7-checkbox label {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
}
.c-contact-form .wpcf7-checkbox .wpcf7-list-item-label {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 140%;
}
.c-contact-form .wpcf7-checkbox input {
  width: auto;
}
.c-contact-form__privacy {
  padding: 4rem 0 6rem;
}
.c-contact-form__privacy .wpcf7-not-valid-tip {
  text-align: center;
}
.c-contact-form__submit {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}
.c-contact-form__submit::after {
  content: "";
  position: absolute;
  top: 24px;
  right: 4em;
  transform: rotate(-45deg);
  width: 1rem;
  height: 1rem;
  border-right: 2px solid var(--color-white);
  border-bottom: 2px solid var(--color-white);
}
.c-contact-form .wpcf7 form .wpcf7-response-output {
  text-align: center;
  font-size: 1.8rem;
  border: none;
  background-color: var(--color-base-5);
}
.c-contact-form .c-hissu {
  color: var(--color-white);
  font-size: 1.2rem;
  padding: 0.1rem 0.6rem;
  border-radius: 4px;
  background-color: #f00;
}
@media (max-width: 767px) {
  .c-contact-form > li {
    flex-direction: column;
    gap: 1rem;
  }
  .c-contact-form__title {
    width: 100%;
  }
}

/* =========================================================
  Common
========================================================= */
.u-sec-ttl {
  font-size: 48px;
  font-weight: 700;
  line-height: 180%;
  letter-spacing: 0.02em;
}
@media (760px < width <= 1440px) {
  .u-sec-ttl {
    font-size: 48rem;
  }
}
@media (width <= 760px) {
  .u-sec-ttl {
    font-size: 48rem;
  }
}
.u-sec-ttl > span {
  color: #f00;
}
.u-sec-ttl-ss {
  font-size: 24px;
}
@media (760px < width <= 1440px) {
  .u-sec-ttl-ss {
    font-size: 24rem;
  }
}
@media (width <= 760px) {
  .u-sec-ttl-ss {
    font-size: 24rem;
  }
}
.u-sec-ttl-sm {
  font-size: 36px;
}
@media (760px < width <= 1440px) {
  .u-sec-ttl-sm {
    font-size: 36rem;
  }
}
@media (width <= 760px) {
  .u-sec-ttl-sm {
    font-size: 36rem;
  }
}
.u-sec-ttl-lg {
  font-size: 64px;
}
@media (760px < width <= 1440px) {
  .u-sec-ttl-lg {
    font-size: 64rem;
  }
}
@media (width <= 760px) {
  .u-sec-ttl-lg {
    font-size: 64rem;
  }
}
.u-sec-ttl-en {
  position: relative;
  color: var(--color-base-1);
  font-size: 36px;
  padding-bottom: 1em;
  margin-bottom: 1em;
}
@media (760px < width <= 1440px) {
  .u-sec-ttl-en {
    font-size: 36rem;
  }
}
@media (width <= 760px) {
  .u-sec-ttl-en {
    font-size: 36rem;
  }
}
.u-sec-ttl-en::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 1em;
  height: 4px;
  background-color: var(--color-base-1);
}
@media (760px < width <= 1440px) {
  .u-sec-ttl-en::before {
    height: 4rem;
  }
}
@media (width <= 760px) {
  .u-sec-ttl-en::before {
    height: 4rem;
  }
}

.u-triangle-under {
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 80px solid transparent;
  border-left: 80px solid transparent;
  border-top: 40px solid var(--color-base-2);
  border-bottom: 0;
}
@media (760px < width <= 1440px) {
  .u-triangle-under {
    border-right: 80rem solid transparent;
    border-left: 80rem solid transparent;
    border-top: 40rem solid var(--color-base-2);
  }
}
@media (width <= 760px) {
  .u-triangle-under {
    border-right: 80rem solid transparent;
    border-left: 80rem solid transparent;
    border-top: 40rem solid var(--color-base-2);
  }
}
.u-triangle-right {
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 60px solid transparent;
  border-bottom: 60px solid transparent;
  border-left: 40px solid var(--color-base-2);
  border-right: 0;
}
@media (760px < width <= 1440px) {
  .u-triangle-right {
    border-top: 60rem solid transparent;
    border-bottom: 60rem solid transparent;
    border-left: 40rem solid var(--color-base-2);
  }
}
@media (width <= 760px) {
  .u-triangle-right {
    border-top: 60rem solid transparent;
    border-bottom: 60rem solid transparent;
    border-left: 40rem solid var(--color-base-2);
  }
}

.c-lbl {
  color: var(--color-white);
  font-size: 20px;
  font-weight: 500;
  width: max-content;
  border-radius: 16px;
  padding: 4px 24px;
}
.c-lbl__before {
  background-color: var(--color-accent-1);
}
.c-lbl__after {
  background-color: var(--color-base-1);
}
.c-lbl__case {
  background-color: var(--color-base-1);
}

.u-ico {
  position: relative;
}
.u-ico::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 24px;
  height: 24px;
}
@media (760px < width <= 1440px) {
  .u-ico::before {
    width: 24rem;
    height: 24rem;
  }
}
@media (width <= 760px) {
  .u-ico::before {
    width: 24rem;
    height: 24rem;
  }
}
.u-ico__address::before {
  background: no-repeat center/contain url("../img/common/ico-address.svg");
}
.u-ico__tel::before {
  background: no-repeat center/contain url("../img/common/ico-tel.svg");
}
.u-ico__time::before {
  background: no-repeat center/contain url("../img/common/ico-time.svg");
}

.c-service {
  position: relative;
  padding-top: 300px;
}
@media (760px < width <= 1440px) {
  .c-service {
    padding-top: 300rem;
  }
}
@media (width <= 760px) {
  .c-service {
    display: flex;
    flex-direction: column;
    gap: 20rem;
    padding-top: 0;
  }
}
.c-service__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 800px;
  height: 600px;
  background-color: teal;
  z-index: 0;
  overflow: hidden;
}
@media (760px < width <= 1440px) {
  .c-service__img {
    width: 800rem;
    height: 600rem;
  }
}
@media (width <= 760px) {
  .c-service__img {
    position: relative;
    width: 100%;
    height: auto;
    aspect-ratio: 800/600;
    order: 2;
  }
}
.c-service__img > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-service__ttl {
  text-align: right;
  font-size: 128px;
  line-height: 70%;
  letter-spacing: 0.25em;
}
@media (760px < width <= 1440px) {
  .c-service__ttl {
    font-size: 128rem;
  }
}
@media (width <= 760px) {
  .c-service__ttl {
    order: 1;
    font-size: 84rem;
  }
}
.c-service__ttl > span {
  font-size: 0.5em;
  letter-spacing: 0.05em;
}
.c-service__info {
  position: relative;
  width: 1000px;
  padding: 60px;
  margin-inline: auto 0;
  background-color: var(--color-base-2);
  z-index: 9;
}
@media (760px < width <= 1440px) {
  .c-service__info {
    width: 1000rem;
    padding: 60rem;
  }
}
@media (width <= 760px) {
  .c-service__info {
    width: 100%;
    padding: 60rem 30rem;
    margin: 0;
    order: 3;
  }
}
.c-service__info-ttl {
  font-size: 36px;
  font-weight: 700;
  margin-bottom: 0.5em;
}
@media (760px < width <= 1440px) {
  .c-service__info-ttl {
    font-size: 36rem;
  }
}
@media (width <= 760px) {
  .c-service__info-ttl {
    text-align: center;
    font-size: 48rem;
  }
}
.c-service__info-lead {
  font-size: 24px;
  font-weight: 500;
  line-height: 140%;
  margin-bottom: 1em;
}
@media (760px < width <= 1440px) {
  .c-service__info-lead {
    font-size: 24rem;
  }
}
@media (width <= 760px) {
  .c-service__info-lead {
    font-size: 28rem;
    line-height: 180%;
  }
}
.c-service__info__detail {
  padding: 40px;
  border-radius: 16px;
  background-color: var(--color-white);
}
@media (760px < width <= 1440px) {
  .c-service__info__detail {
    padding: 40rem;
    border-radius: 16rem;
  }
}
@media (width <= 760px) {
  .c-service__info__detail {
    padding: 40rem;
    border-radius: 16rem;
  }
}
.c-service__info__detail-list {
  display: flex;
  justify-content: start;
  align-items: start;
  gap: 20px 0;
  flex-wrap: wrap;
}
@media (760px < width <= 1440px) {
  .c-service__info__detail-list {
    gap: 20rem 0;
  }
}
@media (width <= 760px) {
  .c-service__info__detail-list {
    flex-direction: column;
    gap: 20rem 0;
  }
}
.c-service__info__detail-list dt {
  color: var(--color-base-1);
  font-size: 24px;
  font-weight: 700;
  line-height: 140%;
  letter-spacing: 0.05em;
  width: 150px;
}
@media (760px < width <= 1440px) {
  .c-service__info__detail-list dt {
    font-size: 24rem;
    width: 150rem;
  }
}
@media (width <= 760px) {
  .c-service__info__detail-list dt {
    font-size: 36rem;
    width: 100%;
  }
}
.c-service__info__detail-list dt.__w-max {
  width: 100%;
}
.c-service__info__detail-list dd {
  font-size: 16px;
  font-weight: 500;
  line-height: 180%;
  letter-spacing: 0.05em;
  width: calc(100% - 150px);
}
@media (760px < width <= 1440px) {
  .c-service__info__detail-list dd {
    font-size: 16rem;
    width: calc(100% - 150rem);
  }
}
@media (width <= 760px) {
  .c-service__info__detail-list dd {
    font-size: 24rem;
    width: 100%;
  }
}
.c-service__info__detail-list dd.__w-max {
  width: 100%;
}
.c-service__info__detail-list dd > span {
  font-size: 24px;
  font-weight: 700;
}
@media (760px < width <= 1440px) {
  .c-service__info__detail-list dd > span {
    font-size: 24rem;
  }
}
@media (width <= 760px) {
  .c-service__info__detail-list dd > span {
    font-size: 36rem;
  }
}
.c-service__info__detail-list ul {
  list-style-type: disc;
  margin-left: 2em;
  margin-bottom: 1em;
}
.c-service.__rev .c-service__img {
  left: auto;
  right: 0;
}
.c-service.__rev .c-service__ttl {
  text-align: left;
}
.c-service.__rev .c-service__info {
  margin-inline: 0 auto;
}

.c-case {
  width: 1000px;
  border-radius: 16px;
  margin-inline: auto;
  overflow: hidden;
}
@media (760px < width <= 1440px) {
  .c-case {
    width: 1000rem;
    border-radius: 16rem;
  }
}
@media (width <= 760px) {
  .c-case {
    width: 100%;
    border-radius: 16rem;
  }
}
.c-case__head {
  padding: 12px 32px;
  background-color: var(--color-base-1);
}
@media (760px < width <= 1440px) {
  .c-case__head {
    padding: 12rem 32rem;
  }
}
@media (width <= 760px) {
  .c-case__head {
    padding: 12rem 32rem;
  }
}
.c-case__head-ttl {
  color: var(--color-gray-1);
  font-size: 36px;
  font-weight: 500;
}
@media (760px < width <= 1440px) {
  .c-case__head-ttl {
    font-size: 36rem;
  }
}
@media (width <= 760px) {
  .c-case__head-ttl {
    font-size: 36rem;
  }
}
.c-case__head-ttl > span {
  font-size: 0.75em;
  padding-left: 0.5em;
  letter-spacing: 0.05em;
}
.c-case__body {
  display: flex;
  flex-direction: column;
  gap: 40px;
  padding: 40px;
  background-color: var(--color-gray-3);
}
@media (760px < width <= 1440px) {
  .c-case__body {
    gap: 40rem;
    padding: 40rem;
  }
}
@media (width <= 760px) {
  .c-case__body {
    gap: 40rem;
    padding: 40rem;
  }
}
.c-case__body__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 40px;
}
@media (760px < width <= 1440px) {
  .c-case__body__inner {
    gap: 40rem;
  }
}
@media (width <= 760px) {
  .c-case__body__inner {
    flex-direction: column;
    gap: 40rem;
  }
}
.c-case__img {
  width: 400px;
  height: 320px;
  border: 2px solid var(--color-base-1);
  border-radius: 16px;
  background-color: antiquewhite;
  box-shadow: 8px 8px 10px rgba(var(--color-base-1-rgb), 0.1);
  overflow: hidden;
}
@media (760px < width <= 1440px) {
  .c-case__img {
    width: 400rem;
    height: 320rem;
    border: 2rem solid var(--color-base-1);
    border-radius: 16rem;
    box-shadow: 8rem 8rem 10rem rgba(var(--color-base-1-rgb), 0.1);
  }
}
@media (width <= 760px) {
  .c-case__img {
    width: 100%;
    height: 320rem;
    aspect-ratio: 360/240;
    border: 2rem solid var(--color-base-1);
    border-radius: 16rem;
    box-shadow: 8rem 8rem 10rem rgba(var(--color-base-1-rgb), 0.1);
  }
}
.c-case__img > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-case__img-wrap {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (760px < width <= 1440px) {
  .c-case__img-wrap {
    gap: 20rem;
  }
}
@media (width <= 760px) {
  .c-case__img-wrap {
    gap: 20rem;
  }
}
.c-case__comment {
  display: flex;
  flex-direction: column;
  gap: 20px;
  font-size: 24px;
  font-weight: 500;
  line-height: 160%;
  letter-spacing: 0.05em;
}
@media (760px < width <= 1440px) {
  .c-case__comment {
    gap: 20rem;
    font-size: 24rem;
  }
}
@media (width <= 760px) {
  .c-case__comment {
    gap: 20rem;
    font-size: 24rem;
  }
}
.c-case__comment ul {
  list-style: disc;
  margin-left: 2em;
}
.c-case__comment-under {
  border-radius: 24px;
  padding: 20px 40px;
  background-color: var(--color-base-1);
}
@media (760px < width <= 1440px) {
  .c-case__comment-under {
    border-radius: 24rem;
    padding: 20rem 40rem;
  }
}
@media (width <= 760px) {
  .c-case__comment-under {
    border-radius: 16rem;
    padding: 20rem 40rem;
  }
}
.c-case__comment-under span {
  font-weight: 700;
}

/* =========================================================
  Common
========================================================= */
.l-mv {
  position: relative;
  font-family: var(--ff-accent);
  height: 800px;
  margin-inline: 30px;
  background: no-repeat center/cover url("../img/top/mv.webp");
}
@media (760px < width <= 1440px) {
  .l-mv {
    height: 800rem;
    margin-inline: 30rem;
  }
}
@media (width <= 760px) {
  .l-mv {
    height: 1000rem;
    margin-inline: 0;
  }
}
.l-mv::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
}
.l-mv__inner {
  position: absolute;
  display: flex;
  flex-direction: column;
  gap: 20px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -70%);
}
@media (760px < width <= 1440px) {
  .l-mv__inner {
    gap: 20rem;
  }
}
@media (width <= 760px) {
  .l-mv__inner {
    width: max-content;
    transform: translate(-50%, -100%);
    gap: 20rem;
  }
}
.l-mv__lead-wrap {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: 700px;
  padding-top: 20px;
  border-top: 1px solid var(--color-white);
  margin-left: 96px;
}
@media (760px < width <= 1440px) {
  .l-mv__lead-wrap {
    gap: 20rem;
    width: 700rem;
    padding-top: 20rem;
    margin-left: 96rem;
  }
}
@media (width <= 760px) {
  .l-mv__lead-wrap {
    gap: 10rem;
    width: 540rem;
    padding-top: 20rem;
    margin-left: 90rem;
  }
}
.l-mv__lead-wrap::after {
  content: "";
  position: absolute;
  top: -90px;
  right: 90px;
  height: 260px;
  width: 1px;
  background-color: var(--color-white);
}
@media (760px < width <= 1440px) {
  .l-mv__lead-wrap::after {
    top: -90rem;
    right: 90rem;
    height: 260rem;
    width: 1rem;
  }
}
@media (width <= 760px) {
  .l-mv__lead-wrap::after {
    top: -45rem;
    right: 45rem;
    height: 160rem;
    width: 1rem;
  }
}
.l-mv__title {
  color: var(--color-white);
  font-size: 96px;
}
@media (760px < width <= 1440px) {
  .l-mv__title {
    font-size: 96rem;
  }
}
@media (width <= 760px) {
  .l-mv__title {
    font-size: 80rem;
  }
}
.l-mv__title-sub {
  color: var(--color-white);
  font-size: 24px;
  line-height: 120%;
  letter-spacing: 0.02em;
}
@media (760px < width <= 1440px) {
  .l-mv__title-sub {
    font-size: 24rem;
  }
}
@media (width <= 760px) {
  .l-mv__title-sub {
    font-size: 26rem;
  }
}
.l-mv__lead {
  color: var(--color-white);
  font-size: 24px;
  line-height: 120%;
  letter-spacing: 0.02em;
}
@media (760px < width <= 1440px) {
  .l-mv__lead {
    font-size: 24rem;
  }
}
@media (width <= 760px) {
  .l-mv__lead {
    font-size: 20rem;
  }
}
.l-mv__label-wrap {
  position: absolute;
  display: flex;
  flex-direction: row-reverse;
  gap: 10px;
  top: -60px;
  right: 0;
}
@media (760px < width <= 1440px) {
  .l-mv__label-wrap {
    gap: 10rem;
    top: -60rem;
  }
}
@media (width <= 760px) {
  .l-mv__label-wrap {
    flex-direction: column;
    gap: 8rem;
    top: auto;
    left: 50%;
    right: auto;
    bottom: -200rem;
    transform: translateX(-50%);
  }
}
.l-mv__label-wrap > p {
  color: var(--text-1);
  font-size: 36px;
  line-height: 110%;
  letter-spacing: 0.01em;
  writing-mode: vertical-rl;
  padding: 15px 10px;
  height: max-content;
  background-color: var(--color-white);
}
@media (760px < width <= 1440px) {
  .l-mv__label-wrap > p {
    font-size: 36rem;
    padding: 15rem 10rem;
  }
}
@media (width <= 760px) {
  .l-mv__label-wrap > p {
    writing-mode: horizontal-tb;
    font-size: 28rem;
    padding: 10rem 15rem;
    width: max-content;
    letter-spacing: 0.2em;
  }
}
.l-mv__label-wrap > p.__sub {
  margin-top: 1em;
}
@media (760px < width <= 1440px) {
  .l-mv__label-wrap > p.__sub {
    margin-top: 1em;
  }
}
@media (width <= 760px) {
  .l-mv__label-wrap > p.__sub {
    margin-top: 0;
    margin-left: 1em;
  }
}
.l-mv__cta {
  position: absolute;
  left: 50%;
  bottom: -200px;
  transform: translateX(-50%);
}
@media (760px < width <= 1440px) {
  .l-mv__cta {
    bottom: -200rem;
  }
}
@media (width <= 760px) {
  .l-mv__cta {
    bottom: -400rem;
  }
}

.l-problems {
  text-align: center;
  padding: 120px 0 0;
}
@media (760px < width <= 1440px) {
  .l-problems {
    padding: 120rem 0 0;
  }
}
@media (width <= 760px) {
  .l-problems {
    padding: 120rem 0 0;
  }
}
.l-problems__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 80px;
}
@media (760px < width <= 1440px) {
  .l-problems__inner {
    gap: 80rem;
  }
}
@media (width <= 760px) {
  .l-problems__inner {
    gap: 80rem;
  }
}
.l-problems__card-wrap {
  display: flex;
  justify-content: center;
  gap: 40px;
}
@media (760px < width <= 1440px) {
  .l-problems__card-wrap {
    gap: 40rem;
  }
}
@media (width <= 760px) {
  .l-problems__card-wrap {
    flex-direction: column;
    align-items: center;
    gap: 40rem;
    width: 100%;
  }
}

.l-solve {
  position: relative;
  text-align: center;
  padding-top: 60px;
  padding-bottom: 360px;
}
@media (760px < width <= 1440px) {
  .l-solve {
    padding-top: 60rem;
    padding-bottom: 360rem;
  }
}
@media (width <= 760px) {
  .l-solve {
    padding-top: 60rem;
    padding-bottom: 360rem;
  }
}
.l-solve::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 240px;
  background: repeat-x center/contain url("../img/top/bg-solve.svg");
}
@media (760px < width <= 1440px) {
  .l-solve::before {
    height: 240rem;
  }
}
@media (width <= 760px) {
  .l-solve::before {
    height: 180rem;
  }
}
.l-solve__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 80px;
}
@media (760px < width <= 1440px) {
  .l-solve__inner {
    gap: 80rem;
  }
}
@media (width <= 760px) {
  .l-solve__inner {
    gap: 80rem;
  }
}

.l-value {
  text-align: center;
  background: no-repeat center/cover url("../img/top/bg-value.webp");
}
.l-value__inner {
  padding-block: 100px;
}
@media (760px < width <= 1440px) {
  .l-value__inner {
    padding-block: 100rem;
  }
}
@media (width <= 760px) {
  .l-value__inner {
    padding-block: 100rem;
  }
}
.l-value__card-wrap {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 60px;
}
@media (760px < width <= 1440px) {
  .l-value__card-wrap {
    gap: 10rem;
    margin-top: 60rem;
  }
}
@media (width <= 760px) {
  .l-value__card-wrap {
    flex-direction: column;
    align-items: center;
    gap: 10rem;
    margin-top: 60rem;
    width: 100%;
  }
}
.l-value__message {
  position: relative;
  height: 800px;
  background: no-repeat center/cover url("../img/top/bg-value-message.webp");
}
.l-value__message::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.7);
}
@media (760px < width <= 1440px) {
  .l-value__message {
    height: 800rem;
  }
}
@media (width <= 760px) {
  .l-value__message {
    height: 1400rem;
  }
}
.l-value__message-wrap {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(-20%, -50%);
  display: flex;
  flex-direction: column;
  gap: 20px;
  text-align: left;
}
@media (760px < width <= 1440px) {
  .l-value__message-wrap {
    gap: 20rem;
  }
}
@media (width <= 760px) {
  .l-value__message-wrap {
    left: 50%;
    right: auto;
    transform: translate(-50%, -50%);
    gap: 20rem;
    width: max-content;
  }
}
.l-value__message-wrap h3 {
  color: var(--color-base-1);
  font-size: 48px;
  font-weight: 700;
  letter-spacing: 0.05em;
}
@media (760px < width <= 1440px) {
  .l-value__message-wrap h3 {
    font-size: 48rem;
  }
}
@media (width <= 760px) {
  .l-value__message-wrap h3 {
    font-size: 60rem;
  }
}
.l-value__message-wrap p {
  font-size: 28px;
}
@media (760px < width <= 1440px) {
  .l-value__message-wrap p {
    font-size: 28rem;
  }
}
@media (width <= 760px) {
  .l-value__message-wrap p {
    font-size: 36rem;
  }
}

.l-cta {
  padding-block: 40px;
  background-color: var(--color-accent-1);
}
@media (760px < width <= 1440px) {
  .l-cta {
    padding-block: 40rem;
  }
}
@media (width <= 760px) {
  .l-cta {
    padding-block: 40rem;
  }
}
.l-cta__inner {
  display: flex;
  justify-content: center;
  align-items: start;
  gap: 40px;
}
@media (760px < width <= 1440px) {
  .l-cta__inner {
    gap: 40rem;
  }
}
@media (width <= 760px) {
  .l-cta__inner {
    flex-direction: column;
    align-items: center;
    gap: 40rem;
  }
}
.l-cta-fixed {
  position: fixed;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s, visibility 0.4s;
  right: 0;
  bottom: 0;
  z-index: 999;
}
.l-cta-fixed.is-visible {
  opacity: 1;
  visibility: visible;
}

.l-service {
  background-color: rgba(var(--color-base-1-rgb), 0.5);
}
.l-service__inner {
  padding-block: 100px;
}
@media (760px < width <= 1440px) {
  .l-service__inner {
    padding-block: 100rem;
  }
}
@media (width <= 760px) {
  .l-service__inner {
    padding-block: 100rem;
  }
}
.l-service__inner > h2,
.l-service__inner > h3,
.l-service__inner > p {
  text-align: center;
}
.l-service__detail {
  display: flex;
  flex-direction: column;
  gap: 100px;
  margin-top: 100px;
}
@media (760px < width <= 1440px) {
  .l-service__detail {
    gap: 100rem;
    margin-top: 100rem;
  }
}
@media (width <= 760px) {
  .l-service__detail {
    gap: 100rem;
    margin-top: 100rem;
  }
}

.l-case {
  background-color: var(--color-white);
}
.l-case__inner {
  padding-block: 100px;
}
@media (760px < width <= 1440px) {
  .l-case__inner {
    padding-block: 100rem;
  }
}
@media (width <= 760px) {
  .l-case__inner {
    padding-block: 100rem;
  }
}
.l-case__inner > h2,
.l-case__inner > h3,
.l-case__inner > p {
  text-align: center;
}
.l-case__detail {
  display: flex;
  flex-direction: column;
  gap: 100px;
  margin-top: 100px;
}
@media (760px < width <= 1440px) {
  .l-case__detail {
    gap: 100rem;
    margin-top: 100rem;
  }
}
@media (width <= 760px) {
  .l-case__detail {
    gap: 100rem;
    margin-top: 100rem;
  }
}

.l-voice {
  text-align: center;
  background: no-repeat center/cover url("../img/top/bg-value.webp");
}
.l-voice__inner {
  padding-block: 100px;
}
@media (760px < width <= 1440px) {
  .l-voice__inner {
    padding-block: 100rem;
  }
}
@media (width <= 760px) {
  .l-voice__inner {
    padding-block: 100rem;
  }
}
.l-voice__card-wrap {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 60px;
}
@media (760px < width <= 1440px) {
  .l-voice__card-wrap {
    gap: 10rem;
    margin-top: 60rem;
  }
}
@media (width <= 760px) {
  .l-voice__card-wrap {
    flex-direction: column;
    align-items: center;
    gap: 40rem;
    margin-top: 60rem;
  }
}

.l-qa {
  text-align: center;
  background-color: var(--color-gray-3);
}
.l-qa__inner {
  padding-block: 100px;
}
@media (760px < width <= 1440px) {
  .l-qa__inner {
    padding-block: 100rem;
  }
}
@media (width <= 760px) {
  .l-qa__inner {
    padding-block: 100rem;
  }
}
.l-qa__card-wrap {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 60px;
}
@media (760px < width <= 1440px) {
  .l-qa__card-wrap {
    gap: 10rem;
    margin-top: 60rem;
  }
}
@media (width <= 760px) {
  .l-qa__card-wrap {
    gap: 10rem;
    margin-top: 60rem;
  }
}
.l-qa .c-accordion {
  margin-top: 60px;
}
@media (760px < width <= 1440px) {
  .l-qa .c-accordion {
    margin-top: 60rem;
  }
}
@media (width <= 760px) {
  .l-qa .c-accordion {
    margin-top: 60rem;
  }
}

.l-company {
  text-align: center;
  background-color: var(--color-white);
}
.l-company__inner {
  padding-block: 100px;
}
@media (760px < width <= 1440px) {
  .l-company__inner {
    padding-block: 100rem;
  }
}
@media (width <= 760px) {
  .l-company__inner {
    padding-block: 100rem;
  }
}
.l-company__card-wrap {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 60px;
}
@media (760px < width <= 1440px) {
  .l-company__card-wrap {
    gap: 10rem;
    margin-top: 60rem;
  }
}
@media (width <= 760px) {
  .l-company__card-wrap {
    gap: 10rem;
    margin-top: 60rem;
  }
}
.l-company__contents {
  display: flex;
  justify-content: center;
  align-items: start;
  gap: 40px;
  width: 1200px;
  margin-top: 60px;
  margin-inline: auto;
}
@media (760px < width <= 1440px) {
  .l-company__contents {
    gap: 40rem;
    width: 1000rem;
    margin-top: 60rem;
  }
}
@media (width <= 760px) {
  .l-company__contents {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40rem;
    width: 100%;
    margin-top: 60rem;
  }
}
.l-company__info, .l-company__map {
  width: 50%;
}
@media (760px < width <= 1440px) {
  .l-company__info, .l-company__map {
    width: 50%;
  }
}
@media (width <= 760px) {
  .l-company__info, .l-company__map {
    width: 100%;
  }
}
.l-company__info {
  display: flex;
  flex-direction: column;
  gap: 20px;
  text-align: left;
}
@media (760px < width <= 1440px) {
  .l-company__info {
    gap: 20rem;
  }
}
@media (width <= 760px) {
  .l-company__info {
    gap: 20rem;
  }
}
.l-company__info__top {
  display: flex;
  flex-direction: column;
  gap: 20px;
  border-radius: 16px;
  padding: 40px;
  background-color: var(--color-base-3);
}
@media (760px < width <= 1440px) {
  .l-company__info__top {
    gap: 20rem;
    border-radius: 16rem;
    padding: 40rem;
  }
}
@media (width <= 760px) {
  .l-company__info__top {
    gap: 40rem;
    border-radius: 16rem;
    padding: 40rem;
  }
}
.l-company__info-ttl {
  font-size: 24px;
  font-weight: 600;
  line-height: 120%;
  letter-spacing: 0.05em;
}
@media (760px < width <= 1440px) {
  .l-company__info-ttl {
    font-size: 24rem;
  }
}
@media (width <= 760px) {
  .l-company__info-ttl {
    font-size: 36rem;
  }
}
.l-company__info-lead {
  font-size: 16px;
  font-weight: 500;
  line-height: 120%;
  letter-spacing: 0.05em;
}
@media (760px < width <= 1440px) {
  .l-company__info-lead {
    font-size: 16rem;
  }
}
@media (width <= 760px) {
  .l-company__info-lead {
    font-size: 24rem;
  }
}
.l-company__info__list {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (760px < width <= 1440px) {
  .l-company__info__list {
    gap: 20rem;
  }
}
@media (width <= 760px) {
  .l-company__info__list {
    gap: 28rem;
  }
}
.l-company__info__list > li {
  display: flex;
  justify-content: left;
  gap: 20px;
}
@media (760px < width <= 1440px) {
  .l-company__info__list > li {
    gap: 20rem;
  }
}
@media (width <= 760px) {
  .l-company__info__list > li {
    gap: 20rem;
  }
}
.l-company__info__list-img {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-color: var(--color-line);
}
@media (760px < width <= 1440px) {
  .l-company__info__list-img {
    width: 48rem;
    height: 48rem;
  }
}
@media (width <= 760px) {
  .l-company__info__list-img {
    width: 60rem;
    height: 60rem;
  }
}
.l-company__info__list__info {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
@media (760px < width <= 1440px) {
  .l-company__info__list__info {
    gap: 4rem;
  }
}
@media (width <= 760px) {
  .l-company__info__list__info {
    gap: 4rem;
  }
}
.l-company__info__list__info-ttl {
  font-size: 16px;
  font-weight: 600;
}
@media (760px < width <= 1440px) {
  .l-company__info__list__info-ttl {
    font-size: 16rem;
  }
}
@media (width <= 760px) {
  .l-company__info__list__info-ttl {
    font-size: 24rem;
  }
}
.l-company__info__list__info-data {
  font-size: 16px;
  font-weight: 500;
}
@media (760px < width <= 1440px) {
  .l-company__info__list__info-data {
    font-size: 16rem;
  }
}
@media (width <= 760px) {
  .l-company__info__list__info-data {
    font-size: 24rem;
  }
}
.l-company__info__bottom {
  display: flex;
  flex-direction: column;
  gap: 20px;
  border-radius: 16px;
  padding: 40px;
  background-color: var(--color-gray-4);
}
@media (760px < width <= 1440px) {
  .l-company__info__bottom {
    gap: 20rem;
    border-radius: 16rem;
    padding: 40rem;
  }
}
@media (width <= 760px) {
  .l-company__info__bottom {
    gap: 20rem;
    border-radius: 16rem;
    padding: 40rem;
  }
}
.l-company__info__bottom ul {
  display: flex;
  justify-content: start;
  align-items: start;
  flex-wrap: wrap;
  gap: 10px;
  list-style-type: disc;
  margin-left: 20px;
}
@media (760px < width <= 1440px) {
  .l-company__info__bottom ul {
    gap: 10rem;
    margin-left: 20rem;
  }
}
@media (width <= 760px) {
  .l-company__info__bottom ul {
    gap: 10rem;
    margin-left: 40rem;
  }
}
.l-company__info__bottom ul li {
  width: 45%;
}
.l-company__map {
  border-radius: 16px;
  height: stretch;
  background-color: antiquewhite;
  overflow: hidden;
}
@media (760px < width <= 1440px) {
  .l-company__map {
    border-radius: 16rem;
  }
}
@media (width <= 760px) {
  .l-company__map {
    border-radius: 16rem;
    height: 600rem;
  }
}

/*# sourceMappingURL=style.css.map */
