@charset "UTF-8";
/********************************
* インナー
********************************/
:root {
  --l-inner-wide: 1400px;
  --l-inner: 980px;
  --l-inner-md: 900px;
  --l-inner-short: 840px;
}

:root {
  --padding-pc: 3.3333%;
  --padding-sp: 5.3%;
}

/********************************
* フォント
********************************/
:root {
  --font-family-base: "Shippori Mincho", sans-serif;
  --font-yugothic: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  --font-lato: "Lato", sans-serif;
  --font-en: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
}

:root {
  --font-size-base: 16;
}

/********************************
* カラー
********************************/
:root {
  --color-base: var(--color-white);
  --color-base-background: var(--color-gray-footer);
  --color-text: var(--color-white);
  --color-red: #bb5860;
  --color-gray-border: #9f9f9f;
  --color-gray-background: #818d93;
  --color-gray02: #595758;
  --color-gray03: #e6ebee;
  --color-white: #ffffff;
  --color-black: #000000;
  --color-black02: #1d1d1d;
  --color-green: #5f7b6c;
}

/********************************
* z-index
********************************/
:root {
  --z-index-base: 0;
  --z-index-back: -1;
  --z-index-front: 1;
}

:root {
  --header-pc-height: calc(80 / 16 * 1rem);
  --header-sp-height: calc(60 / 16 * 1rem);
}

/*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.css
  をベースに作成
*/
/* ボックスモデルのリセットとボーダーの設定 */
/* ============================================ */
:where(*, ::before, ::after) {
  box-sizing: border-box;
  min-width: 0;
  border-width: 0;
  border-style: solid;
}

/* ドキュメント */
/* ============================================ */
/**
 * 1. すべてのブラウザで行の高さを修正
 * 2. iOSで向きを変更した後のフォントサイズの自動調整を防止
 * 3. iOSでリンクの灰色のオーバーレイを削除
 */
:where(:root) {
  line-height: 1.5; /* 3*/ /* 2 */ /* 1 */
  -moz-tab-size: 4; /* 4 */
  -o-tab-size: 4;
     tab-size: 4; /* 4 */
  -webkit-tap-highlight-color: transparent; /* 5 */
  -webkit-text-size-adjust: 100%; /* 6 */
  -moz-text-size-adjust: 100%;
       text-size-adjust: 100%; /* 6 */
}

/* セクション */
/* ============================================ */
/**
 * すべてのブラウザでマージンを削除
 */
:where(body) {
  margin: 0;
}

/**
 * IEでmain要素を一貫して表示
 */
:where(main) {
  display: block;
}

/* 垂直リズム */
/* ============================================ */
:where(p, table, blockquote, address, pre, iframe, form, figure, dl) {
  margin: 0;
}

/* 見出し */
/* ============================================ */
:where(h1, h2, h3, h4, h5, h6) {
  margin: 0;
  font-weight: inherit;
  font-size: inherit;
}

/* リスト（列挙） */
/* ============================================ */
:where(ul, ol) {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* リスト（定義） */
/* ============================================ */
:where(dt) {
  font-weight: bold;
}

:where(dd) {
  margin-left: 0;
}

/* グループコンテンツ */
/* ============================================ */
/**
 * 1. Firefoxで正しいボックスサイズを追加
 * 2. EdgeとIEでオーバーフローを表示
 */
:where(hr) {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  margin: 0;
  clear: both;
  overflow: visible; /* 2 */
  border-top-width: 1px;
  color: inherit;
}

/**
 * 1. すべてのブラウザでフォントサイズの継承とスケーリングを修正
 * 2. すべてのブラウザで奇数のemフォントサイズを修正
 */
:where(pre) {
  font-size: inherit; /* 2 */
  font-family: monospace, monospace; /* 1 */
}

:where(address) {
  font-style: inherit;
}

/* テキストレベルのセマンティクス */
/* ============================================ */
/**
 * IE 10でアクティブなリンクの灰色の背景を削除
 */
:where(a) {
  background-color: transparent;
  color: inherit;
  text-decoration: none;
}

/**
 * 1. Chrome 57-で下部の境界線を削除
 * 2. Chrome、Edge、IE、Opera、Safariで正しいテキスト装飾を追加
 */
:where(abbr[title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}

/**
 * Chrome、Edge、Safariで正しいフォントの太さを追加
 */
:where(b, strong) {
  font-weight: bolder;
}

/**
 * 1. すべてのブラウザでフォントサイズの継承とスケーリングを修正
 * 2. すべてのブラウザで奇数のemフォントサイズを修正
 */
:where(code, kbd, samp) {
  font-size: inherit; /* 2 */
  font-family: monospace, monospace; /* 1 */
}

/**
 * すべてのブラウザで正しいフォントサイズを追加
 */
:where(small) {
  font-size: 80%;
}

/**
 * すべてのブラウザでsubとsup要素が行の高さに影響を与えるのを防止
 */
:where(sub, sup) {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

:where(sub) {
  bottom: -0.25em;
}

:where(sup) {
  top: -0.5em;
}

/* 置換コンテンツ */
/* ============================================ */
/**
 * 垂直方向の配置の問題を防止
 */
:where(svg, img, embed, object, iframe) {
  vertical-align: bottom;
}

/* フォーム */
/* ============================================ */
/**
 * フォームフィールドをスタイル可能にリセット
 * 1. 特にiOSでフォーム要素をスタイル可能に
 * 2. 親要素からtext-transformを継承
 */
:where(button, input, optgroup, select, textarea) {
  -webkit-appearance: none; /* 1 */
  -moz-appearance: none;
       appearance: none;
  margin: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: inherit;
  text-transform: inherit; /* 2 */
  vertical-align: middle;
}

/**
 * クリック可能な要素のカーソルを修正
 */
:where(button, [type=button], [type=reset], [type=submit]) {
  cursor: pointer;
}

:where(button:disabled, [type=button]:disabled, [type=reset]:disabled, [type=submit]:disabled) {
  cursor: default;
}

/**
 * Firefoxのアウトラインを改善し、入力要素とボタンのスタイルを統一
 */
:where(:-moz-focusring) {
  outline: auto;
}

:where(select:disabled) {
  opacity: inherit;
}

/**
 * パディングを削除
 */
:where(option) {
  padding: 0;
}

/**
 * 非表示にリセット
 */
:where(fieldset) {
  min-width: 0;
  margin: 0;
  padding: 0;
}

:where(legend) {
  padding: 0;
}

/**
 * Chrome、Firefox、Operaで正しい垂直方向の配置を追加
 */
:where(progress) {
  vertical-align: baseline;
}

/**
 * IE 10+でデフォルトの垂直スクロールバーを削除
 */
:where(textarea) {
  overflow: auto;
}

/**
 * Chromeで増減ボタンのカーソルスタイルを修正
 */
:where([type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button) {
  height: auto;
}

/**
 * Safariでアウトラインスタイルを修正
 */
:where([type=search]) {
  outline-offset: -2px; /* 1 */
}

/**
 * macOS上のChromeとSafariで内部パディングを削除
 */
:where([type=search]::-webkit-search-decoration) {
  -webkit-appearance: none;
}

/**
 * 1. iOSとSafariでクリック可能な種類のスタイルを設定できない問題を修正
 * 2. フォントの継承を修正
 */
:where(::-webkit-file-upload-button) {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/**
 * Firefoxの表示を修正
 */
:where([type=number]) {
  -moz-appearance: textfield;
}

/**
 * クリック可能なラベル
 */
:where(label[for]) {
  cursor: pointer;
}

/* インタラクティブ */
/* ============================================ */
/*
 * Edge、IE 10+、Firefoxで正しい表示を追加
 */
:where(details) {
  display: block;
}

/*
 * すべてのブラウザで正しい表示を追加
 */
:where(summary) {
  display: list-item;
}

/*
 * 編集可能なコンテンツのアウトラインを削除
 */
:where([contenteditable]:focus) {
  outline: auto;
}

/* テーブル */
/* ============================================ */
/**
1. ChromeとSafariですべてのテーブルボーダーカラーの継承を修正
*/
:where(table) {
  border-color: inherit; /* 1 */
  border-collapse: collapse;
}

:where(caption) {
  text-align: left;
}

:where(td, th) {
  padding: 0;
  vertical-align: top;
}

:where(th) {
  font-weight: bold;
  text-align: left;
}

/* アクセシビリティ
 * ========================================================================== */
/**
 * すべてのブラウザでビジー状態の要素のカーソルを変更（推奨）
 */
:where([aria-busy=true i]) {
  cursor: progress;
}

/*
 * すべてのブラウザで無効化された要素、編集不可能な要素、
 * または操作不可能な要素のカーソルを変更（推奨）
 */
:where([aria-disabled=true i], [disabled]) {
  cursor: not-allowed;
}

/*
 * すべてのブラウザで視覚的に隠されたアクセシブルな要素の
 * 表示を変更（推奨）
 */
:where([aria-hidden=false i][hidden]) {
  display: inline;
  display: initial;
}

:where([aria-hidden=false i][hidden]:not(:focus)) {
  clip: rect(0, 0, 0, 0);
  position: absolute;
}

:where(html) {
  font-size: inherit;
  font-size: unset;
}

:where(:root) {
  -webkit-hyphens: auto;
          hyphens: auto; /* ハイフンで単語を分割 */
  line-break: strict; /* 禁則処理を厳格に適用 */
  word-break: normal; /* 単語の分割はデフォルトに依存 */
  /* テキストの折り返し設定 */
  overflow-wrap: anywhere; /* 収まらない場合に折り返す */
  /* フォントサイズの調整 */
  -moz-text-size-adjust: 100%;
       text-size-adjust: 100%; /* フォントサイズをユーザーの設定に合わせる */
  -webkit-text-size-adjust: 100%; /* フォントサイズをユーザーの設定に合わせる */
  overflow-x: clip; /* 横スクロールを禁止 */
  /* スクロールバーとレイアウト */
  line-height: 1.8; /* 行の高さを設定 */
  /* タップ時のハイライト無効化 */
  -webkit-tap-highlight-color: transparent;
  color: #ffffff;
  color: var(--color-text);
  /* 基本スタイル */
  font-family: "Shippori Mincho", sans-serif;
  font-family: var(--font-family-base);
  scroll-behavior: smooth;
}

/* body要素の基本スタイル */
:where(body) {
  min-block-size: 100svb; /* bodyの高さを画面高さに合わせる */
}

/* インタラクティブ要素のタッチ操作最適化 */
:where(a, area, button, [role=button], input:not([type=range]), label, select, summary, textarea) {
  touch-action: manipulation;
}

/*
 * リンクスタイル
 * ============================================
 */
:where(a) {
  color: inherit; /* 親要素の色を継承 */
  text-decoration: none; /* 下線を削除 */
  cursor: pointer; /* カーソルをポインターに */
  opacity: 1;
  opacity: initial;
  opacity: unset; /* 透明度をリセット */
}

/* ホバー可能なデバイスでの電話番号リンクの無効化 */
/*
 * 画像スタイル
 * ============================================
 */
:where(img) {
  width: 100%;
  max-width: 100%; /* 親要素に収まるように最適化 */
  height: auto; /* アスペクト比を維持 */
  vertical-align: bottom; /* 画像下の余白を削除 */
}

/*
 * ダイアログスタイル
 * ============================================
 */
:where(dialog) {
  /* ダイアログのデフォルトスタイルをリセット */
  width: auto;
  width: initial;
  width: unset;
  max-width: none;
  max-width: initial;
  max-width: unset;
  height: auto;
  height: initial;
  height: unset;
  max-height: none;
  max-height: initial;
  max-height: unset;
  padding: 0;
  padding: initial;
  padding: unset;
  overflow: visible;
  overflow: initial;
  overflow: unset;
  border: medium none currentcolor;
  border: initial;
  border: unset;
  background-color: transparent;
  background-color: initial;
  background-color: unset;
  color: inherit;
  color: unset;
}

/* ダイアログ表示時のスクロール制御 */
:root:has(dialog[open]) {
  overflow: hidden; /* ダイアログが開いている間はスクロールを禁止 */
}

/* ダイアログ背景のスタイル */
::backdrop {
  background-color: transparent;
  background-color: initial;
  background-color: unset; /* ダイアログの背景色をリセット */
}

/*
 * フォームスタイル
 * ============================================
 */
/* テキストエリアの基本設定 */
textarea {
  field-sizing: content; /* コンテンツに基づくサイズ調整 */
  min-height: 4lh; /* 最小高さを4行分に設定 */
}
/* フェード設定 */
/* ============================================ */
.l-container {
  margin-top: 80px;
}

.l-header {
  z-index: 50;
  position: fixed;
  top: 0;
  left: 0;
}

.l-inner {
  width: 100%;
  height: inherit;
  margin: 0 auto;
  padding-inline: 5.3%;
  padding-inline: var(--padding-sp);
}

/*=====================
c-button01
=====================*/
.c-button01 {
  display: inline-flex;
  z-index: 0;
  position: relative;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 18rem;
  height: 3.75rem;
  padding: 0.625rem 3.5625rem;
  overflow: hidden;
  gap: 0.5rem;
  border-radius: 6.25rem;
  background-color: #000000;
  background-color: var(--color-black);
  color: #ffffff;
  color: var(--color-white);
  transition: opacity 0.2s ease;
}
.c-button01::after {
  z-index: 1;
  position: absolute;
  width: 19.5rem;
  height: 5.9375rem;
  inset: -3.6875rem auto auto 50%;
  translate: -50% 0;
  border-radius: 50%;
  background-color: #1d1d1d;
  background-color: var(--color-black02);
  content: "";
  transition: background-color 0.2s ease;
}

.c-button01__icon {
  display: flex;
  z-index: 2;
  position: relative;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
}

.c-button01__text {
  z-index: 2;
  position: relative;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.125;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.06em;
  white-space: nowrap;
}

/*=====================
c-button02
=====================*/
.c-button02 {
  z-index: 0;
  position: relative;
  width: 100%;
  max-width: 19.6875rem;
  height: 3.125rem;
  border: 0.6px solid #000000;
  border: 0.6px solid var(--color-black);
  border-radius: 0.5rem;
  background-color: #000000;
  background-color: var(--color-black);
  color: #ffffff;
  color: var(--color-white);
  color: #fff;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.8;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.06em;
  text-align: center;
  transition: background-color 0.3s ease, color 0.3s ease;
}
/*=====================
c-button03
=====================*/
.c-button03 {
  display: grid;
  place-items: center;
  height: 2rem;
  padding: 0 0.5rem;
  border: 0.6px solid #ffffff;
  border: 0.6px solid var(--color-white);
  border-radius: 0.5rem;
  font-weight: 500;
  font-size: 0.75rem;
  line-height: 1.5714285714;
  letter-spacing: 0.04em;
  transition: background-color 0.3s ease, color 0.3s ease;
}
.c-button03._black {
  border-color: #000000;
  border-color: var(--color-black);
  background-color: #000000;
  background-color: var(--color-black);
  color: #ffffff;
  color: var(--color-white);
}
.c-drawer__button {
  display: flex;
  z-index: 100;
  position: fixed;
  align-items: center;
  justify-content: center;
  width: 3.75rem;
  height: 3.75rem;
  inset: 0 0 auto auto;
  transition: all 0.3s ease-out;
}

.c-drawer__button._close {
  position: fixed;
  right: 0;
}

.c-drawer__button::after {
  position: absolute;
  width: 100%;
  inset: auto auto 0.75rem 50%;
  translate: -50% 0;
  content: "MENU";
  font-size: 0.5625rem;
  letter-spacing: 0;
  letter-spacing: -0.1em;
  text-align: center;
}

.c-drawer__line {
  top: 1.25rem;
  font-size: 0;
}

.c-drawer__line,
.c-drawer__line::before,
.c-drawer__line::after {
  display: block;
  position: absolute;
  width: 1.6875rem;
  height: 0.0625rem;
  background-color: #ffffff;
  background-color: var(--color-white);
  content: "";
  transition: all 0.3s ease-out;
}

.c-drawer__line::before {
  bottom: 0.5rem;
}

.c-drawer__line::after {
  top: 0.5rem;
}

.c-drawer__dialog.is-open .c-drawer__button._close .c-drawer__line,
.c-drawer__button[aria-expanded=true] .c-drawer__line {
  background-color: transparent;
}

.c-drawer__dialog.is-open .c-drawer__button._close .c-drawer__line::before,
.c-drawer__button[aria-expanded=true] .c-drawer__line::before {
  bottom: 0;
  transform: rotate(45deg);
}

.c-drawer__dialog.is-open .c-drawer__button._close .c-drawer__line::after,
.c-drawer__button[aria-expanded=true] .c-drawer__line::after {
  top: 0;
  transform: rotate(-45deg);
}

.c-drawer__dialog {
  display: block;
  position: relative;
  position: fixed;
  max-width: 100vw;
  height: 100dvh;
  max-height: 100dvh;
  inset-block: 0;
  inset-inline: auto 0;
  padding: 0;
  overflow-y: auto;
  transform: translateX(100%);
  background-color: transparent;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.c-drawer__dialog::-webkit-scrollbar {
  display: none;
}

.c-drawer__dialog.is-open {
  animation: modalContainerOpen 0.3s ease-out 0.1s forwards;
}

.c-drawer__dialog.is-close {
  animation: modalContainerClose 0.3s ease-out forwards;
}

.c-drawer__dialog::backdrop {
  opacity: 0;
  transition: opacity 0.3s ease-out, transform 0.3s ease-out, background-color 0.3s ease-out;
}

.c-drawer__dialog.is-open::backdrop {
  animation: modalOpen 0.3s ease-out forwards;
}

.c-drawer__dialog.is-close::backdrop {
  animation: modalClose 0.3s ease-out forwards;
}

.c-drawer__container {
  height: 100%;
  height: 100dvh;
  overflow: auto;
  background-color: #818d93;
  background-color: var(--color-gray-background);
  scrollbar-width: none;
  transition: transform 0.3s ease-out;
  -ms-overflow-style: none;
  padding-top: 4.6875rem;
  padding-bottom: 6.25rem;
}

.c-drawer__container::-webkit-scrollbar {
  display: none;
}

@keyframes modalContainerOpen {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes modalContainerClose {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(100%);
  }
}
@keyframes modalOpen {
  0% {
    visibility: hidden;
    opacity: 0;
  }
  100% {
    visibility: visible;
    opacity: 1;
  }
}
@keyframes modalClose {
  0% {
    visibility: visible;
    opacity: 1;
  }
  100% {
    visibility: hidden;
    opacity: 0;
  }
}
.c-drawer__logo {
  max-width: 7.5rem;
  margin-inline: auto;
}

.c-drawer__nav {
  max-width: 80%;
  margin-inline: auto;
  overflow-y: auto;
}

.c-drawer__list {
  display: grid;
  grid-gap: 0.25rem;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  margin-top: 1.5rem;
  gap: 0.25rem;
}

.c-drawer__item a {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.c-drawer__itemEn {
  font-weight: 500;
  font-size: 1.375rem;
  line-height: 2.2;
  font-family: "Shippori Mincho", sans-serif;
  font-family: var(--font-family-base);
  letter-spacing: 0.88px;
}
.c-drawer__itemJa {
  font-weight: 500;
  font-size: 0.8125rem;
  line-height: 1.4;
  font-family: var(--font-family-yugothic);
  letter-spacing: 0.06em;
}

.c-drawer._full .c-drawer__dialog {
  visibility: hidden;
  transform: translateX(0);
  opacity: 0;
}

.c-drawer._full .c-drawer__dialog.is-open {
  animation: modalOpen 0.3s ease-out forwards;
}

.c-drawer._full .c-drawer__dialog.is-close {
  animation: modalClose 0.3s ease-out forwards;
}

.c-drawer._full .c-drawer__container {
  width: 100vw;
}

.c-drawer__snsLink {
  display: block;
  max-width: 2rem;
  margin-inline: auto;
  margin-top: 1.5rem;
}

.c-drawer__buttonBlock {
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 2rem;
  margin-inline: auto;
}

/*=====================
c-faq-list
=====================*/
.c-faq-list {
  display: grid;
  grid-gap: 2.25rem;
  gap: 2.25rem;
}

.c-faq-list__question {
  display: flex;
  align-items: baseline;
  padding-inline: 0.375rem;
  padding-bottom: 0.5rem;
  gap: 1rem;
  border-bottom: 0.6px solid #9f9f9f;
  border-bottom: 0.6px solid var(--color-gray-border);
  color: #5f7b6c;
  color: var(--color-green);
  font-weight: 700;
  font-size: 0.9375rem;
  line-height: 1.8;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.06em;
}

.c-faq-list__question::before {
  content: "Q";
  color: #5f7b6c;
  color: var(--color-green);
  font-weight: 400;
  font-size: 1.125rem;
  line-height: 1;
  font-family: var(--font-shippori-mincho);
  letter-spacing: 0.05em;
}

.c-faq-list__answer {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: baseline;
  color: #000000;
  color: var(--color-black);
  font-weight: 500;
  font-size: 0.9375rem;
  line-height: 1.8;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.06em;
  grid-gap: 1rem;
  padding-inline: 0.375rem;
  padding-top: 0.5rem;
  gap: 1rem;
}

.c-faq-list__answer::before {
  content: "A";
  color: #595758;
  color: var(--color-gray02);
  font-weight: 400;
  font-size: 1.125rem;
  line-height: 1;
  font-family: var(--font-shippori-mincho);
  letter-spacing: 0.05em;
}

.c-faq-list__answerList {
  width: 100%;
  counter-reset: answer-counter;
}

.c-faq-list__answerItem {
  position: relative;
  padding-left: 1em;
  color: #000000;
  color: var(--color-black);
  font-weight: 500;
  font-size: 0.8125rem;
  line-height: 1.4;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.06em;
  text-indent: -1em;
}

.c-faq-list__answerItem::before {
  content: counter(answer-counter) ".";
  counter-increment: answer-counter;
}

.c-faq-list__answerContent {
  display: grid;
  grid-template-columns: 1fr;
  grid-column: 2/-1;
  align-items: center;
  grid-gap: 1rem;
  gap: 1rem;
}

.c-faq-list__answerImage {
  margin-right: 1.875rem;
}

:root {
  /* Form variables */
  --form-font-size: 1.125rem; /* 18px */
  --form-padding-vertical: 0.9375rem; /* 15px */
  --form-padding-horizontal: 0.625rem; /* 10px */
  --form-border-radius: 0.3125rem; /* 5px */
  --form-border-color-default: #aaaaaa;
  --form-border-color-focus: #0068b7;
  --form-background-color: #fafafa;
  /* Radio button variables */
  --radio-font-size: 1.125rem; /* 18px */
  --radio-size: 1.125rem; /* 18px */
  --radio-background: #fff;
  --radio-border-color: #d3d3d3;
  --radio-inner-size: 0.75rem; /* 12px */
  --radio-inner-background: #0068b7;
  --radio-spacing: 0.625rem; /* 10px */
  --radio-gap: 1.375rem; /* 22px */
  /* Checkbox variables */
  --checkbox-font-size: 1.125rem; /* 18px */
  --checkbox-size: 1.75rem; /* 30px */
  --checkbox-background: var(--color-gray-border);
  --checkbox-border-color: var(--color-gray-border);
  --checkbox-spacing: 0.3125rem; /* 5px */
  --checkbox-gap: 1.25rem; /* 20px */
  --checkbox-checkmark-weight: 2px;
  /* Textarea variables */
  --textarea-height: 12.5rem; /* 200px */
}

[type=text],
[type=search],
[type=tel],
[type=url],
[type=email],
[type=password],
[type=date],
textarea {
  width: 100%;
  padding: 0.625rem;
  border: 0.6px solid #9f9f9f;
  border: 0.6px solid var(--color-gray-border);
  border-radius: 0.5rem;
  background-image: none;
  color: #000000;
  color: var(--color-black);
  /*↓リセットCSS */
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  text-align: inherit;
  text-align: unset;
  resize: vertical;
  transition: border-color 0.3s ease;
  /*↓↓選択されているときの色*/
}
[type=text].is-error,
[type=search].is-error,
[type=tel].is-error,
[type=url].is-error,
[type=email].is-error,
[type=password].is-error,
[type=date].is-error,
textarea.is-error {
  border: 0.6px solid #bb5860;
  border: 0.6px solid var(--color-red);
}

[type=tel] {
  width: 100%;
}

[type=radio],
[type=checkbox] {
  position: absolute;
  left: -9999px;
}

.p-form__radio input[type=radio]:focus + span::before {
  border-color: #0068b7;
  border-color: var(--form-border-color-focus);
  box-shadow: 0 0 0 0.0625rem #0068b7;
  box-shadow: 0 0 0 0.0625rem var(--form-border-color-focus);
}

[type=checkbox]:focus + span::before {
  border-color: #0068b7;
  border-color: var(--form-border-color-focus);
  box-shadow: 0 0 0 0.125rem #0068b7;
  box-shadow: 0 0 0 0.125rem var(--form-border-color-focus);
}

[type=radio] + span {
  display: inline-block;
  position: relative;
  margin: 0 1.375rem 0 0;
  margin: 0 var(--radio-gap) 0 0;
  padding: 0 0 0 calc(1.125rem + 0.625rem);
  padding: 0 0 0 calc(var(--radio-size) + var(--radio-spacing));
  font-weight: 500;
  font-size: 1.125rem;
  font-size: var(--radio-font-size);
  line-height: 1;
  cursor: pointer;
}
[type=radio] + span::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 1.125rem;
  width: var(--radio-size);
  height: 1.125rem;
  height: var(--radio-size);
  transform: translateY(-50%);
  border: 1px solid #d3d3d3;
  border: 1px solid var(--radio-border-color);
  border-radius: 50%;
  background: #fff;
  background: var(--radio-background);
  content: "";
}
[type=radio] + span::after {
  opacity: 0;
  transition: 0.3s ease;
}
[type=radio]:checked + span::after {
  display: block;
  position: absolute;
  top: 50%;
  left: 4px;
  width: 0.75rem;
  width: var(--radio-inner-size);
  height: 0.75rem;
  height: var(--radio-inner-size);
  transform: translateY(-50%);
  border-radius: 50%;
  background: #0068b7;
  background: var(--radio-inner-background);
  content: "";
  opacity: 1;
}

[type=checkbox] + span {
  display: inline-block;
  position: relative;
  padding: 0 0 0 calc(1.75rem + 0.3125rem);
  padding: 0 0 0 calc(var(--checkbox-size) + var(--checkbox-spacing));
  background-color: transparent;
  color: #9f9f9f;
  color: var(--color-gray-border);
  font-weight: 500;
  font-size: 0.8125rem;
  line-height: 1;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  cursor: pointer;
  transition: 0.3s ease;
}
[type=checkbox] + span::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 0.75rem;
  height: 0.75rem;
  transform: translateY(-50%);
  border: 0.6px solid #9f9f9f;
  border: 0.6px solid var(--checkbox-border-color);
  border-radius: 0.125rem;
  content: "";
}
[type=checkbox] + span::after {
  opacity: 0;
  transition: 0.3s ease;
}
[type=checkbox]:checked + span::before {
  border-color: #9f9f9f;
  border-color: var(--color-gray-border);
}
[type=checkbox]:checked + span::after {
  display: block;
  position: absolute;
  top: 50%;
  left: 2px;
  width: calc(1.75rem * 0.7);
  width: calc(var(--checkbox-size) * 0.7);
  height: calc(1.75rem * 0.3);
  height: calc(var(--checkbox-size) * 0.3);
  margin-top: -0.1em;
  margin-left: 0.1em;
  transform: translateY(-50%) rotate(-45deg);
  border-bottom: 2px solid #9f9f9f;
  border-bottom: var(--checkbox-checkmark-weight) solid var(--color-gray-border);
  border-left: 2px solid #9f9f9f;
  border-left: var(--checkbox-checkmark-weight) solid var(--color-gray-border);
  content: "";
  opacity: 1;
}

select {
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
  width: 100%;
  /*↓カスタム */
  margin-top: 0.625rem;
  padding: 0.9375rem 0.625rem;
  padding: var(--form-padding-vertical) var(--form-padding-horizontal);
  border: 0.6px solid #aaaaaa;
  border: 0.6px solid var(--form-border-color-default);
  border-radius: 0.3125rem;
  border-radius: var(--form-border-radius);
  background-color: #fafafa;
  background-color: var(--form-background-color);
  color: inherit;
  font-size: 1.125rem;
  font-size: var(--form-font-size);
  /*↓リセットCSS */
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  cursor: pointer;
}
select:focus {
  border: 0.6px solid #0068b7;
  border: 0.6px solid var(--form-border-color-focus);
}

textarea {
  width: 100%;
  height: 12.5rem;
  height: var(--textarea-height);
}

::-moz-placeholder {
  color: #a4a4a4;
  font-weight: 400;
  font-size: 1.125rem;
  line-height: 1;
}

::placeholder {
  color: #a4a4a4;
  font-weight: 400;
  font-size: 1.125rem;
  line-height: 1;
}

/*=====================
  c-heading01
=====================*/
.c-heading__en {
  width: -moz-fit-content;
  width: fit-content;
  padding-bottom: 0.1875rem;
  border-bottom: 0.6px solid #ffffff;
  border-bottom: 0.6px solid var(--color-white);
  color: #ffffff;
  color: var(--color-white);
  font-size: 1rem;
  line-height: 1.4;
  font-family: "Shippori Mincho", sans-serif;
  font-family: var(--font-family-base);
}

.c-heading__jp {
  color: #ffffff;
  color: var(--color-white);
  font-weight: 400;
  font-size: 1.6875rem;
  line-height: 1.6;
  font-family: "Shippori Mincho", sans-serif;
  font-family: var(--font-family-base);
  letter-spacing: 0.04em;
}

.c-heading__en + .c-heading__jp {
  margin-top: 1rem;
}

.c-heading._black .c-heading__en {
  border-bottom-color: #000000;
  border-bottom-color: var(--color-black);
  color: #000000;
  color: var(--color-black);
}
.c-heading._black .c-heading__jp {
  color: #000000;
  color: var(--color-black);
}

/*=====================
  c-heading02
=====================*/

.c-heading02__number {
  color: #ffffff;
  color: var(--color-white);
  font-weight: 400;
  font-size: 3.125rem;
  line-height: 1.4;
  font-family: "Shippori Mincho", sans-serif;
  font-family: var(--font-family-base);
}

.c-heading02__title {
  color: #ffffff;
  color: var(--color-white);
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 1.6;
  font-family: "Shippori Mincho", sans-serif;
  font-family: var(--font-family-base);
  letter-spacing: 0.04em;
}

.c-heading02__number + .c-heading02__title {
  margin-top: 0.375rem;
}

.c-note-list {
  color: #ffffff;
  color: var(--color-white);
  font-weight: 500;
  font-size: 0.6875rem;
  line-height: 1.4;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
}

.c-pagetop {
  display: inline-block;
  z-index: 1000;
  position: fixed;
  right: 1.25rem;
  bottom: 1.25rem;
  width: 4.375rem;
  height: 4.375rem;
  transition: 0.3s cubic-bezier(0.45, 0, 0.55, 1);
}
/*=====================
c-price-item
=====================*/
.c-price-item {
  display: grid;
  grid-template-columns: 1fr auto;
  border-bottom: 0.6px solid #ffffff;
  border-bottom: 0.6px solid var(--color-white);
}

.c-price-item__name {
  font-weight: 400;
  font-size: 1.25rem;
  line-height: 1.8;
  letter-spacing: 0.06em;
}

.c-price-item__nameSmall {
  font-weight: 500;
  font-size: 0.6875rem;
  line-height: 1.9636363636;
}

.c-price-item__nameMedium {
  font-weight: 500;
  font-size: 0.9375rem;
  line-height: 1.8;
}

.c-price-item__nameNumber {
  font-family: "Lato", sans-serif;
  font-family: var(--font-lato);
}

.c-price-item__value {
  font-weight: 400;
  font-size: 1.25rem;
  line-height: 180%;
  letter-spacing: 0.06em;
}

.c-price-item__value::before {
  margin-inline: 0.5rem;
  content: "/";
  font-weight: 400;
  font-size: 0.9375rem;
  line-height: 1.8;
  font-family: "Lato", sans-serif;
  font-family: var(--font-lato);
  letter-spacing: 0.06em;
}

.c-price-item__valueSmall {
  font-weight: 400;
  font-size: 0.6875rem;
  line-height: 1.9636363636;
  letter-spacing: 0.06em;
}

.c-price-item__valueMedium {
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.8;
  letter-spacing: 0.06em;
}

.c-price-item__valueNumber {
  font-family: "Lato", sans-serif;
  font-family: var(--font-lato);
}

.c-remarks {
  position: relative;
  top: -0.5em;
  font-size: 0.5rem;
}

.c-remarks._large {
  top: -0.75em;
  font-size: 0.875rem;
}

/*=====================
c-step
=====================*/
.c-step {
  display: grid;
  grid-gap: 1.875rem;
  gap: 1.875rem;
}

.c-step__item {
  display: grid;
  grid-template-columns: auto 5rem;
  grid-gap: 1.25rem;
  gap: 1.25rem;
}

.c-step__number {
  font-weight: 400;
  font-size: 1.125rem;
  line-height: 1.4;
  font-family: var(--font-shippori-mincho);
}

.c-step__text {
  margin-top: 0.5rem;
  font-weight: 500;
  font-size: 0.8125rem;
  line-height: 1.4;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.06em;
}

/*=====================
c-text
=====================*/
.c-text {
  color: #ffffff;
  color: var(--color-white);
  font-weight: 500;
  font-size: 0.9375rem;
  line-height: 1.8;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.06em;
}

.p-contact {
  display: flex;
  z-index: 101;
  position: relative;
  justify-content: flex-end;
  overflow-x: clip;
}

.p-contact__contents {
  position: relative;
  width: 93.28125vw;
  margin-inline: calc(50% - 50vw);
  border-radius: 2.5rem 0 0 2.5rem;
  background: var(--color-blue-dark);
}

.p-contact__contents::before {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  inset: 0;
  background: url(/assets/images/common/contact-background@2x.webp) no-repeat left center/cover;
  content: "";
}

.p-contact__inner.l-inner {
  display: grid;
  grid-template-columns: 30rem 28.125rem;
  justify-content: space-between;
  padding-block: 7.625rem 8.125rem;
  padding-right: calc(3.3333% * 2);
  padding-right: calc(var(--padding-pc) * 2);
  padding-left: 0;
}

.p-contact__content {
  width: -moz-fit-content;
  width: fit-content;
}

.p-contact__headingEn {
  color: var(--color-gray-light06);
  font-weight: 600;
  font-size: 1.5rem;
  line-height: 2.0833333333;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-en);
  text-transform: capitalize;
}

.p-contact__headingJa {
  color: #ffffff;
  color: var(--color-white);
  font-weight: 700;
  font-size: 2.625rem;
  line-height: 1;
}

.p-contact__text {
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 2.5rem;
  color: #ffffff;
  color: var(--color-white);
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.8888888889;
}

.p-contact__wrapper {
  position: relative;
  text-align: center;
}

.p-contact__button {
  width: 100%;
  max-width: 28.125rem;
  margin-inline: auto;
}

.p-contact__tel {
  display: block;
  margin-top: 1.5625rem;
  color: #ffffff;
  color: var(--color-white);
  font-weight: 600;
  font-size: 3.125rem;
  line-height: 1;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-en);
  text-transform: uppercase;
}

.p-contact__telSmall {
  padding-right: 0.3125rem;
  color: #ffffff;
  color: var(--color-white);
  font-weight: 600;
  font-size: 1.875rem;
  line-height: 1.6666666667;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-en);
}

.p-contact__description {
  color: var(--color-gray-light07);
  font-weight: 500;
  font-size: 1rem;
  line-height: 2.125;
}

/*=====================
 .p-contact._top
=====================*/
.p-contact._top::before {
  z-index: 1;
  z-index: var(--z-index-front);
  position: absolute;
  top: max(-15.875rem, -13.2291666667vw);
  right: calc(50% - min(40.6875rem, 33.90625vw));
  width: min(22.375rem, 18.6458333333vw);
  height: min(23.625rem, 19.6875vw);
  background: url(/assets/images/top/contact-dog@2x.webp) no-repeat left center/cover;
  content: "";
}

.p-footer-cert {
  position: fixed;
  right: 0.5rem;
  bottom: 0.5rem;
  max-width: 5rem;
}

.p-footer {
  padding-block: 3rem;
  background: #818d93;
  background: var(--color-gray-background);
  text-align: center;
}

.p-footer__logo {
  width: 7.5rem;
  margin-inline: auto;
}

.p-footer__nav {
  display: none;
}

.p-footer__list {
  display: flex;
  justify-content: center;
  gap: 2rem;
}

.p-footer__link {
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 2.2;
  font-family: "Shippori Mincho", sans-serif;
  font-family: var(--font-family-base);
  letter-spacing: 0.04em;
  text-decoration: none;
}

.p-footer__sns {
  display: flex;
  justify-content: center;
  margin-top: 1.5rem;
}

.p-footer__sns-link {
  display: block;
  width: 2rem;
  height: 2rem;
}

.p-footer__copyright {
  margin-top: 1.5rem;
  color: #ffffff;
  color: var(--color-white);
  font-weight: 500;
  font-size: 0.6875rem;
  line-height: 1.3636363636;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
}

.p-form-section__error {
  margin-top: 1.25rem;
  padding: 0.625rem;
  border-radius: 0.5rem;
  background-color: rgba(255, 255, 255, 0.7);
  color: #bb5860;
  color: var(--color-red);
  font-weight: 500;
  font-size: 0.8125rem;
  line-height: 1.4;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.06em;
}

.p-form-section__errorText {
  font-weight: bold;
  font-size: 0.875rem;
  line-height: 1.4428571429;
  letter-spacing: 0.06em;
}

.p-form-section__errorList {
  margin-top: 0.625rem;
  padding-left: 0;
  list-style: none;
}

.p-form-section__errorList li {
  font-weight: 500;
  font-size: 0.8125rem;
  line-height: 1.4;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.06em;
}

.p-form-section__errorList li em {
  font-style: normal;
}

.p-header {
  height: calc(60 / 16 * 1rem);
  height: var(--header-sp-height);
}

.p-header__inner {
  display: grid;
  grid-template-columns: auto auto;
  align-items: center;
  width: 100%;
  padding-inline: 2.5vw;
}

.p-header__logo {
  display: none;
}

.p-header__nav {
  display: none;
}

.p-header__list {
  display: flex;
  justify-self: end;
  gap: 1.5rem;
}

.p-header__link {
  position: relative;
  font-weight: 500;
  font-size: 0.75rem;
  line-height: 2.2;
  font-family: "Shippori Mincho", sans-serif;
  font-family: var(--font-family-base);
  letter-spacing: 0.04em;
  text-decoration: none;
}

.p-header__link::after {
  display: block;
  position: absolute;
  right: 0;
  bottom: -0.125rem;
  left: 0;
  height: 0.6px;
  transform: scaleX(0);
  transform-origin: right center;
  background: #ffffff;
  background: var(--color-white);
  content: "";
  pointer-events: none;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.p-header__link:hover::after,
.p-header__link:focus-visible::after {
  transform: scaleX(1);
  transform-origin: left center;
}

.p-top-sec {
  z-index: 0;
  position: relative;
}

.p-top-bg {
  z-index: -1;
  position: absolute;
  inset: 0;
}

.p-top-bg__image {
  display: block;
  width: 100%;
  height: 100%;
}

.p-top-bg__image img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-top-bg._bottom .p-top-bg__image img {
  -o-object-position: bottom;
     object-position: bottom;
}

.p-top-bg._top .p-top-bg__image img {
  -o-object-position: top;
     object-position: top;
}

/*=====================
  p-top-kv
=====================*/
.p-top-fv {
  z-index: 0;
  position: relative;
  min-height: 40.625rem;
  max-height: 100svh;
  padding-block: 7rem 86.1333333333vw;
}

.p-top-fv__logo {
  max-width: 3.75rem;
  margin-inline: auto;
}

.p-top-fv__heading {
  margin-top: 3.0625rem;
  text-align: center;
}

.p-top-fv__headingText {
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 1.6;
  letter-spacing: 0.16em;
}

.p-top-fv__headingMain {
  display: block;
  font-weight: 400;
  font-size: 1.875rem;
  line-height: 1.6;
  letter-spacing: 0.16em;
}

/*=====================
  p-top-sec01
=====================*/
.p-top-sec01 {
  padding-block: 8.5rem 4.5rem;
}

.p-top-sec01__text {
  margin-top: 2.5rem;
  line-height: 2.2;
}

.p-top-sec01__image {
  max-width: 25rem;
  margin-top: 2.5rem;
  margin-inline: auto;
}

/*=====================
  p-top-sec02
=====================*/
.p-top-sec02 {
  padding-block: 5.5rem 4.5rem;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
}

.p-top-sec02__heading {
  text-align: center;
}

.p-top-sec02__image {
  max-width: 25rem;
  margin-top: 1.1875rem;
  margin-inline: auto;
}

.p-top-sec02__brand {
  margin-top: -1.875rem;
  text-align: center;
}

.p-top-sec02__brandName {
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.8;
  letter-spacing: 0.06em;
}

.p-top-sec02__brandSub {
  font-weight: 600;
  font-size: 1.0625rem;
  line-height: 1.8;
  letter-spacing: 0.06em;
}

.p-top-sec02__description {
  margin-top: 0.5rem;
  font-weight: 500;
  font-size: 0.8125rem;
  line-height: 1.8;
  letter-spacing: 0.06em;
  text-align: center;
}

.p-top-sec02__price {
  width: 100%;
  max-width: 20rem;
  margin-inline: auto;
  margin-top: 1.75rem;
}

.p-top-sec02__button {
  max-width: 18rem;
  margin-top: 2.5rem;
  margin-inline: auto;
}

/*=====================
  p-top-sec03
=====================*/
.p-top-sec03 {
  padding-block: 8rem;
}

.p-top-sec03__heading {
  text-align: center;
}

.p-top-sec03__heading .c-heading__en {
  margin-inline: auto;
}

.p-top-sec03__image {
  max-width: 25rem;
  margin-top: 1.5rem;
  margin-inline: auto;
}

.p-top-sec03__features {
  width: 100%;
  max-width: 15.625rem;
  margin-top: 2.5rem;
  margin-inline: auto;
}

.p-top-sec03__text {
  margin-top: 2.5rem;
}

/*=====================
  p-top-sec04
=====================*/
.p-top-sec04 {
  padding-block: 12rem 7.0625rem;
}

.p-top-sec04__heading {
  text-align: center;
}

.p-top-sec04__tags {
  display: flex;
  flex-wrap: wrap;
  margin-top: 2.5rem;
  gap: 0.5rem;
}

.p-top-sec04__tag {
  padding: 0.375rem 0.625rem;
  border: 0.6px solid #ffffff;
  border: 0.6px solid var(--color-white);
  font-weight: 500;
  font-size: 0.8125rem;
  line-height: 1;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.04em;
}

.p-top-sec04__description {
  margin-top: 2.5rem;
}

.p-top-sec04__note {
  margin-top: 1.25rem;
}

.p-top-sec04__content {
  margin-top: 2.5rem;
}

.p-top-sec04__contentHeading {
  font-weight: 500;
  font-size: 0.9375rem;
  line-height: 1.8;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.06em;
}

.p-top-sec04__contentBox {
  margin-top: 0.5rem;
}

.p-top-sec04__contentText {
  margin-top: 0.5rem;
  font-weight: 500;
  font-size: 0.8125rem;
  line-height: 1.4;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.06em;
}

/*=====================
  p-top-sec05
=====================*/
.p-top-sec05 {
  padding-block: 12rem 7.125rem;
}

.p-top-sec05__heading02 {
  margin-top: 0.375rem;
}

.p-top-sec05__ingredients {
  margin-top: 2.5rem;
}

.p-top-sec05__ingredientItem {
  padding-block: 0.75rem;
  border: 0.6px solid #ffffff;
  border: 0.6px solid var(--color-white);
  border-bottom: none;
}

.p-top-sec05__ingredientItem:last-child {
  border-bottom: 0.6px solid #ffffff;
  border-bottom: 0.6px solid var(--color-white);
}

.p-top-sec05__ingredientTitle {
  color: #fff;
  font-weight: 600;
  font-size: 0.9375rem;
  line-height: 1.4;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.06em;
  text-align: center;
}

.p-top-sec05__ingredientText {
  margin-top: 0.5rem;
  font-weight: 500;
  font-size: 0.8125rem;
  line-height: 1.4;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.06em;
  text-align: center;
}

.p-top-sec05__note {
  margin-top: 1rem;
}

/*=====================
  p-top-sec06
=====================*/
.p-top-sec06 {
  padding-block: 12rem 7rem;
}

.p-top-sec06__heading {
  margin-top: 0.375rem;
}

.p-top-sec06__content {
  margin-top: 2.5rem;
}

.p-top-sec06__note {
  margin-top: 1rem;
}

/*=====================
  p-top-sec07
=====================*/
.p-top-sec07 {
  padding-block: 12rem 7rem;
}

.p-top-sec07__heading02 {
  margin-top: 0.375rem;
}

.p-top-sec07__freeList {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: 2.5rem;
  grid-gap: 0.625rem 0.375rem;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  gap: 0.625rem 0.375rem;
}

.p-top-sec07__freeItem {
  display: grid;
  place-items: center;
  width: 4.625rem;
  height: 4.625rem;
  border-radius: 50%;
  background-image: url(../../assets/images/top/circle-background.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  color: #ffffff;
  color: var(--color-white);
  font-weight: 500;
  font-size: 0.75rem;
  line-height: 1.3;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.06em;
  text-align: center;
}

/*=====================
  p-top-sec08
=====================*/
.p-top-sec08 {
  padding-block: 12rem 7rem;
}

.p-top-sec08__heading {
  text-align: center;
}

.p-top-sec08__heading .c-heading__en {
  margin-inline: auto;
}

.p-top-sec08__text {
  margin-top: 1.25rem;
}

.p-top-sec08__quality {
  margin-top: 2.5rem;
}

.p-top-sec08__qualityTitle {
  min-height: 1.875rem;
  padding-block: 0.125rem;
  background: rgba(255, 255, 255, 0.8);
  color: #000000;
  color: var(--color-black);
  font-weight: 600;
  font-size: 0.9375rem;
  line-height: 1.8;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  text-align: center;
}

.p-top-sec08__qualityList {
  display: grid;
  grid-gap: 1.25rem;
  margin-top: 1.25rem;
  gap: 1.25rem;
}

.p-top-sec08__qualityItem {
  position: relative;
  place-content: center;
  min-height: 3.75rem;
  padding: 0.625rem;
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
  background: rgba(0, 0, 0, 0.3);
  color: #fff;
  font-weight: 500;
  font-size: 0.8125rem;
  line-height: 1.4;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.06em;
  text-align: center;
}

.p-top-sec08__qualityItem:not(:last-child)::before {
  position: absolute;
  width: 0.6px;
  height: calc(100% - 2.5rem);
  inset: auto auto 0 50%;
  translate: -50% 100%;
  background: #ffffff;
  background: var(--color-white);
  content: "";
}

.p-top-sec08__qualityItem._bg-gray {
  background: rgba(148, 163, 171, 0.5);
}

.p-top-sec08__icons {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 1.25rem;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 1.25rem;
  margin-inline: auto;
  gap: 1.25rem;
}

.p-top-sec08__icon img {
  width: auto;
}

/*=====================
  p-top-sec09
=====================*/
.p-top-sec09 {
  padding-block: 5.5rem;
}

.p-top-sec09__heading .c-heading__en {
  margin-inline: auto;
}

.p-top-sec09__heading .c-heading__jp {
  text-align: center;
}

.p-top-sec09__step {
  margin-top: 1.25rem;
}

.p-top-sec09__stepItem {
  display: flex;
  align-items: center;
  gap: 1.25rem;
}

.p-top-sec09__stepNumber {
  font-weight: 600;
  font-size: 1.5rem;
}

/*=====================
  p-top-sec10
=====================*/
.p-top-sec10 {
  padding-block: 5.5rem;
}

.p-top-sec10__heading .c-heading__en {
  margin-inline: auto;
}

.p-top-sec10__heading .c-heading__jp {
  text-align: center;
}

.p-top-sec10__faq {
  margin-top: 1.875rem;
}

/*=====================
  p-top-sec11
=====================*/
.p-top-sec11 {
  padding-block: 5.5rem;
  background-color: #e6ebee;
  background-color: var(--color-gray03);
}

.p-top-sec11__heading .c-heading__en {
  margin-inline: auto;
}

.p-top-sec11__heading .c-heading__jp {
  text-align: center;
}

.p-top-sec11__table {
  width: 100%;
  margin-top: 1.25rem;
}

.p-top-sec11__tableItem {
  color: #000000;
  color: var(--color-black);
  font-weight: 500;
  font-size: 0.8125rem;
  line-height: 1.4;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.06em;
  text-align: center;
}

.p-top-sec11__tableHeader {
  place-content: center;
  height: 4rem;
  padding: 0.625rem;
  border: 0.6px solid #9f9f9f;
  border: 0.6px solid var(--color-gray-border);
  font-weight: 500;
  text-align: center;
}

.p-top-sec11__tableData {
  place-content: center;
  height: 4rem;
  padding: 0.625rem;
  border: 0.6px solid #9f9f9f;
  border: 0.6px solid var(--color-gray-border);
  text-align: left;
}

/*=====================
  p-top-sec12
=====================*/
.p-top-sec12 {
  padding-block: 5.5rem;
}

.p-top-sec12__heading .c-heading__en {
  margin-inline: auto;
}

.p-top-sec12__heading .c-heading__jp {
  text-align: center;
}

.p-top-sec12__form {
  margin-top: 1.25rem;
}

.p-top-sec12__formItem:not(:first-child) {
  margin-top: 1.5rem;
}

.p-top-sec12__formLabel {
  display: flex;
  align-items: center;
  margin-bottom: 0.5rem;
  gap: 0.5rem;
}

.p-top-sec12__labelText {
  color: #000000;
  color: var(--color-black);
  font-weight: 500;
  font-size: 0.9375rem;
  line-height: 1.8;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.06em;
}

.p-top-sec12__required {
  display: inline-block;
  padding-inline: 0.375rem;
  border-radius: 0.25rem;
  background-color: #bb5860;
  background-color: var(--color-red);
  color: #ffffff;
  color: var(--color-white);
  font-weight: 500;
  font-size: 0.6875rem;
  line-height: 1.3636363636;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.06em;
}

.p-top-sec12__nameGroup {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 0.5rem;
  gap: 0.5rem;
}

.p-top-sec12__emailGroup {
  display: grid;
  grid-gap: 0.5rem;
  gap: 0.5rem;
}

.p-top-sec12__privacyBox {
  margin-top: 0.5rem;
  padding: 0.625rem;
  border: 0.6px solid #9f9f9f;
  border: 0.6px solid var(--color-gray-border);
  border-radius: 0.5rem;
  color: #9f9f9f;
  color: var(--color-gray-border);
  font-weight: 500;
  font-size: 0.8125rem;
  line-height: 1.4;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-family: var(--font-yugothic);
  letter-spacing: 0.06em;
}

.p-top-sec12__checkbox {
  display: block;
  margin-top: 0.5rem;
  padding: 0.625rem;
  border: 0.6px solid #9f9f9f;
  border: 0.6px solid var(--color-gray-border);
  border-radius: 0.5rem;
}

.p-top-sec12__button {
  margin-top: 2.5rem;
  margin-inline: auto;
  text-align: center;
}

.u-hidden-pc {
  display: block;
}

.u-hidden-sp {
  display: none;
}

.u-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
}

.u-text-red {
  color: #bb5860;
  color: var(--color-red);
}

.u-text-bold {
  font-weight: 700;
}

.u-text-right {
  text-align: right;
}

.js-mv-text {
  opacity: 0;
}

@media screen and (min-width: 768px){
  :where(html) {
    font-size: 1.6vw;
  }
  .l-container {
    margin-top: 40px;
  }
  .l-inner {
    max-width: calc(980px + 3.3333% * 2);
    max-width: calc(var(--l-inner) + var(--padding-pc) * 2);
    padding-inline: 3.3333%;
    padding-inline: var(--padding-pc);
  }
  .l-inner._wide {
    max-width: calc(1400px + 3.3333% * 2);
    max-width: calc(var(--l-inner-wide) + var(--padding-pc) * 2);
  }
  .l-inner._md {
    max-width: calc(900px + 3.3333% * 2);
    max-width: calc(var(--l-inner-md) + var(--padding-pc) * 2);
  }
  .l-inner._short {
    max-width: calc(840px + 3.3333% * 2);
    max-width: calc(var(--l-inner-short) + var(--padding-pc) * 2);
  }
  .c-button01:hover {
    opacity: 0.8;
  }
  .c-button01:hover::after {
    opacity: 0.8;
  }
  .c-drawer__button {
    display: none;
  }
  .c-drawer__container {
    padding-block: 3.125rem;
  }
  .c-drawer__nav {
    max-width: 88%;
  }
  .c-faq-list__answerContent {
    grid-template-columns: auto auto;
    gap: 0.625rem;
  }
  [type=text],
  [type=search],
  [type=tel],
  [type=url],
  [type=email],
  [type=password],
  [type=date],
  textarea {
    font-size: 1rem;
  }
  [type=radio] + span {
    font-size: 1rem;
  }
  [type=checkbox] + span {
    font-size: 1rem;
    line-height: 1.5;
  }
  [type=checkbox] + span::before {
    width: 1.125rem;
    height: 1.125rem;
  }
  [type=checkbox]:checked + span::after {
    width: 0.7rem;
    height: 0.3rem;
    margin-top: -0.1em;
    margin-left: 0.1em;
  }
  ::-moz-placeholder {
    font-size: 0.96875rem;
  }
  ::placeholder {
    font-size: 0.96875rem;
  }
  .c-heading__en {
    font-size: 1.125rem;
    line-height: 1.4;
  }
  .c-heading__jp {
    font-size: 2rem;
    line-height: 1.6;
  }
  .c-heading02 {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    grid-gap: 2.0625rem;
    gap: 2.0625rem;
  }
  .c-heading02__number {
    font-size: 5rem;
    line-height: 1.4;
  }
  .c-heading02__title {
    font-size: 1.6875rem;
    line-height: 1.6;
    letter-spacing: 0.04em;
  }
  .c-pagetop {
    right: 0.625rem;
    bottom: 0.625rem;
    width: 3.125rem;
    height: 3.125rem;
  }
  .c-step__text {
    font-size: 0.9375rem;
  }
  .c-text {
    line-height: 2.2;
  }
  .p-contact__inner.l-inner {
    padding-inline: 5.3%;
    padding-inline: var(--padding-sp);
    padding-block: 2.5rem;
    gap: 1.75rem;
  }
  .p-contact__headingJa {
    font-size: 2rem;
  }
  .p-contact._top::before {
    top: -10rem;
    right: 0.625rem;
    width: 15.625rem;
    height: 15.625rem;
    background-size: contain;
  }
  .p-footer-cert {
    right: 1.125rem;
    bottom: 1.125rem;
    max-width: 6.25rem;
  }
  .p-footer__nav {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    margin-top: 1.5rem;
  }
  .p-header {
    width: 100%;
    height: calc(80 / 16 * 1rem);
    height: var(--header-pc-height);
  }
  .p-header._company {
    background: #818d93;
    background: var(--color-gray-background);
  }
  .p-header__logo {
    display: block;
    max-width: 5rem;
  }
  .p-header__nav {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    grid-gap: 1.5rem;
    padding-block: 1.25rem;
    gap: 1.5rem;
  }
  .p-header__drawer {
    display: none;
  }
  .p-top-fv {
    aspect-ratio: 1280/832;
    max-width: 100cqi;
    min-height: 0;
    min-height: initial;
    min-height: unset;
    max-height: none;
    max-height: initial;
    max-height: unset;
    padding-block: unset;
  }
  .p-top-fv__inner {
    position: absolute;
    inset: 17.421875vw auto auto 15.46875vw;
  }
  .p-top-fv__logo {
    max-width: 7.8125vw;
  }
  .p-top-fv__headingText {
    font-size: 2.34375vw;
  }
  .p-top-fv__headingMain {
    font-size: 3.4375vw;
  }
  .p-top-sec01 {
    padding-block: 11rem 10.8125rem;
  }
  .p-top-sec01__inner {
    display: grid;
    grid-template-columns: auto auto;
    grid-template-areas: "heading image" "text image";
    align-items: start;
    grid-gap: 0 min(4.125rem, 5.15625vw);
    gap: 0 min(4.125rem, 5.15625vw);
  }
  .p-top-sec01__heading {
    grid-area: heading;
  }
  .p-top-sec01__text {
    grid-area: text;
  }
  .p-top-sec01__image {
    grid-area: image;
    max-width: 30.4375rem;
    margin-top: 0;
  }
  .p-top-sec02 {
    padding-block: 7.75rem;
  }
  .p-top-sec02__inner {
    display: grid;
    grid-template-rows: auto auto auto auto 1fr;
    grid-template-columns: auto auto;
    grid-template-areas: "image heading" "image brand" "image description" "image price" "image button";
    align-items: start;
  }
  .p-top-sec02__heading {
    grid-template-columns: 1fr;
    grid-area: heading;
  }
  .p-top-sec02__image {
    grid-area: image;
    margin-top: 0;
  }
  .p-top-sec02__brand {
    grid-area: brand;
    margin-top: 1.5rem;
  }
  .p-top-sec02__description {
    grid-area: description;
  }
  .p-top-sec02__price {
    grid-area: price;
    max-width: 24.1875rem;
  }
  .p-top-sec02__button {
    grid-area: button;
  }
  .p-top-sec03 {
    padding-block: 10.875rem;
  }
  .p-top-sec03__inner {
    display: grid;
    grid-template-columns: auto auto;
    grid-template-areas: "heading heading" "image features" "text text";
    align-items: start;
  }
  .p-top-sec03__heading {
    grid-area: heading;
  }
  .p-top-sec03__image {
    grid-area: image;
    max-width: 29.6875rem;
    margin-top: 3rem;
  }
  .p-top-sec03__features {
    grid-area: features;
    max-width: 21.125rem;
    margin-top: 3rem;
  }
  .p-top-sec03__text {
    grid-area: text;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
    margin-top: 3rem;
  }
  .p-top-sec04 {
    padding-block: 10.875rem 11.625rem;
  }
  .p-top-sec04__inner {
    max-width: calc(880px + 3.3333% * 2);
    max-width: calc(880px + var(--padding-pc) * 2);
  }
  .p-top-sec04__tags {
    margin-top: 4rem;
  }
  .p-top-sec04__tag {
    font-size: 0.9375rem;
    letter-spacing: 0.04em;
  }
  .p-top-sec04__note {
    display: flex;
    margin-top: 0.75rem;
    gap: 1rem;
  }
  .p-top-sec04__content {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-areas: "heading heading" "box text";
    align-items: center;
    margin-top: 3rem;
    grid-gap: 0 2.6875rem;
    gap: 0 2.6875rem;
  }
  .p-top-sec04__contentHeading {
    grid-area: heading;
    line-height: 2.2;
  }
  .p-top-sec04__contentBox {
    grid-area: box;
    width: 22.8125rem;
  }
  .p-top-sec04__contentText {
    grid-area: text;
    line-height: 1.8;
  }
  .p-top-sec05 {
    padding-block: 10.875rem;
  }
  .p-top-sec05__heading02 {
    margin-top: 0;
  }
  .p-top-sec05__ingredients {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin-top: 4rem;
  }
  .p-top-sec05__ingredientItem {
    place-content: center;
    min-height: 6.875rem;
  }
  .p-top-sec05__ingredientItem:last-child {
    grid-column: span 2;
  }
  .p-top-sec05__ingredientItem:nth-child(2),
  .p-top-sec05__ingredientItem:nth-child(4) {
    border-left: none;
  }
  .p-top-sec06 {
    padding-block: 10.875rem;
  }
  .p-top-sec06__content {
    margin-top: 4rem;
  }
  .p-top-sec07 {
    padding-block: 10.875rem;
  }
  .p-top-sec07__freeList {
    grid-template-columns: repeat(8, 1fr);
    margin-top: 4rem;
    gap: 0.875rem;
  }
  .p-top-sec07__freeItem {
    width: 5.75rem;
    height: 5.75rem;
    font-size: 0.875rem;
  }
  .p-top-sec08 {
    padding-block: 10.875rem;
  }
  .p-top-sec08__inner {
    max-width: calc(660px + 3.3333% * 2);
    max-width: calc(660px + var(--padding-pc) * 2);
  }
  .p-top-sec08__text {
    margin-top: 3rem;
  }
  .p-top-sec08__quality {
    margin-top: 3rem;
  }
  .p-top-sec09 {
    padding-block: 10.875rem;
  }
  .p-top-sec09__inner {
    max-width: calc(660px + 3.3333% * 2);
    max-width: calc(660px + var(--padding-pc) * 2);
  }
  .p-top-sec09__step {
    margin-top: 4.4375rem;
  }
  .p-top-sec10 {
    padding-block: 10.875rem;
  }
  .p-top-sec10__inner {
    max-width: calc(660px + 3.3333% * 2);
    max-width: calc(660px + var(--padding-pc) * 2);
  }
  .p-top-sec10__faq {
    margin-top: 3.625rem;
  }
  .p-top-sec11 {
    padding-block: 10.875rem;
  }
  .p-top-sec11__inner {
    max-width: calc(660px + 3.3333% * 2);
    max-width: calc(660px + var(--padding-pc) * 2);
  }
  .p-top-sec11__table {
    margin-top: 2.75rem;
  }
  .p-top-sec11__tableItem {
    font-size: 0.9375rem;
  }
  .p-top-sec11__tableHeader {
    width: 5.5rem;
  }
  .p-top-sec12__inner {
    max-width: calc(660px + 3.3333% * 2);
    max-width: calc(660px + var(--padding-pc) * 2);
  }
  .u-hidden-pc {
    display: none;
  }
  .u-hidden-sp {
    display: block;
  }
}

@media screen and (min-width: 1000px){
  :where(html) {
    font-size: inherit;
    font-size: unset;
  }
  .c-button03 {
    height: 2.5rem;
    padding: 0 1.125rem;
    font-size: 0.875rem;
  }
  .p-contact__contents {
    grid-template-columns: 1fr;
  }
  .p-contact__inner.l-inner {
    grid-template-columns: 1fr;
    padding-block: 5rem;
    gap: 2.5rem;
  }
  .p-contact__content {
    margin-inline: auto;
  }
  .p-contact__headingEn {
    font-size: 1.25rem;
  }
  .p-contact__headingJa {
    font-size: 2.375rem;
  }
  .p-contact__text {
    font-size: 1rem;
  }
  .p-contact__tel {
    font-size: 1.875rem;
  }
  .p-contact__telSmall {
    font-size: 1.25rem;
  }
  .p-contact._top::before {
    top: -10.875rem;
    width: 14.75rem;
    height: 15.75rem;
  }
  .p-contact._top::before {
    top: -9.625rem;
  }
  .p-header__logo {
    max-width: 7.5rem;
  }
  .p-header__nav {
    gap: 2rem;
  }
  .p-header__list {
    gap: 2rem;
  }
  .p-header__link {
    font-size: 0.875rem;
  }
  .p-top-sec01__inner {
    grid-template-columns: auto 1fr;
  }
}

@media screen and (min-width: 1500px){
  .p-contact__inner.l-inner {
    grid-template-columns: 27.5rem 25rem;
    padding-inline: 3.3333%;
    padding-inline: var(--padding-pc);
    padding-block: 6.375rem 6.875rem;
  }
  .p-contact__button {
    max-width: 25rem;
    margin-inline: auto;
  }
}

@media (any-hover: hover){
  .c-button02:hover {
    background-color: #ffffff;
    background-color: var(--color-white);
    color: #000000;
    color: var(--color-black);
  }
  .c-button03:hover {
    background-color: #000000;
    background-color: var(--color-black);
    color: #ffffff;
    color: var(--color-white);
  }
  .c-button03._black:hover {
    background-color: #ffffff;
    background-color: var(--color-white);
    color: #000000;
    color: var(--color-black);
  }
  .c-drawer__item a:hover .c-drawer__itemEn {
    color: var(--color-blue);
  }
  .c-pagetop:hover {
    opacity: 0.7;
  }
}

@media print{
  .p-header {
    position: relative;
  }
  .p-main {
    margin-top: 0;
  }
  body {
    margin: 0;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
    zoom: 0.5;
  }
  .js-fade-in {
    opacity: 1 !important;
  }
}.splide__container{box-sizing:border-box;position:relative}.splide__list{display:-ms-flexbox;display:flex;height:100%;margin:0!important;padding:0!important;backface-visibility:hidden}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{-ms-flex-align:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;align-items:center;-ms-flex-pack:center;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;margin:0;line-height:1;list-style-type:none;pointer-events:auto}.splide:not(.is-overflow) .splide__pagination{display:none}.splide__progress__bar{width:0}.splide{visibility:hidden;position:relative}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{box-sizing:border-box;backface-visibility:hidden;-ms-flex-negative:0;position:relative;flex-shrink:0;margin:0;list-style-type:none!important}.splide__slide img{vertical-align:bottom}.splide__spinner{contain:strict;display:inline-block;position:absolute;top:0;right:0;bottom:0;left:0;width:20px;height:20px;margin:auto;border:2px solid #999;border-radius:50%;border-left-color:transparent;animation:splide-loading 1s linear infinite}.splide__sr{clip:rect(0 0 0 0);position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;border:0}.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}.splide__toggle.is-active .splide__toggle__pause{display:inline}.splide__track{z-index:0;position:relative;overflow:hidden}@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.splide__track--fade>.splide__list>.splide__slide{z-index:0;margin:0!important;opacity:0}.splide__track--fade>.splide__list>.splide__slide.is-active{z-index:1;opacity:1}.splide--rtl{direction:rtl}.splide__track--ttb>.splide__list{display:block}.splide__arrow{-ms-flex-align:center;display:-ms-flexbox;display:flex;align-items:center;height:2em;border:0;border-radius:50%;background:#ccc;cursor:pointer;-ms-flex-pack:center;z-index:1;position:absolute;top:50%;justify-content:center;width:2em;padding:0;transform:translateY(-50%);opacity:.7}.splide__arrow svg{fill:#000;width:1.2em;height:1.2em}.splide__arrow:hover:not(:disabled){opacity:.9}.splide__arrow:disabled{opacity:.3}.splide__arrow:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide__arrow--prev{left:1em}.splide__arrow--prev svg{transform:scaleX(-1)}.splide__arrow--next{right:1em}.splide.is-focus-in .splide__arrow:focus{outline:3px solid #0bf;outline-offset:3px}.splide__pagination{z-index:1;position:absolute;right:0;bottom:.5em;left:0;padding:0 1em}.splide__pagination__page{display:inline-block;position:relative;width:8px;height:8px;margin:3px;padding:0;border:0;border-radius:50%;background:#ccc;opacity:.7;transition:transform .2s linear}.splide__pagination__page.is-active{z-index:1;transform:scale(1.4);background:#fff}.splide__pagination__page:hover{cursor:pointer;opacity:.9}.splide__pagination__page:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__pagination__page:focus{outline:3px solid #0bf;outline-offset:3px}.splide__progress__bar{height:3px;background:#ccc}.splide__slide{-webkit-tap-highlight-color:rgba(0,0,0,0)}.splide__slide:focus{outline:0}@supports(outline-offset:-3px){.splide__slide:focus-visible{outline:3px solid #0bf;outline-offset:-3px}}@supports(outline-offset:-3px){.splide.is-focus-in .splide__slide:focus{outline:3px solid #0bf;outline-offset:-3px}}.splide__toggle{cursor:pointer}.splide__toggle:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__toggle:focus{outline:3px solid #0bf;outline-offset:3px}.splide__track--nav>.splide__list>.splide__slide{border:3px solid transparent;cursor:pointer}.splide__track--nav>.splide__list>.splide__slide.is-active{border:3px solid #000}.splide__arrows--rtl .splide__arrow--prev{right:1em;left:auto}.splide__arrows--rtl .splide__arrow--prev svg{transform:scaleX(1)}.splide__arrows--rtl .splide__arrow--next{right:auto;left:1em}.splide__arrows--rtl .splide__arrow--next svg{transform:scaleX(-1)}.splide__arrows--ttb .splide__arrow{left:50%;transform:translate(-50%)}.splide__arrows--ttb .splide__arrow--prev{top:1em}.splide__arrows--ttb .splide__arrow--prev svg{transform:rotate(-90deg)}.splide__arrows--ttb .splide__arrow--next{top:auto;bottom:1em}.splide__arrows--ttb .splide__arrow--next svg{transform:rotate(90deg)}.splide__pagination--ttb{display:-ms-flexbox;display:flex;top:0;right:.5em;bottom:0;left:auto;-ms-flex-direction:column;flex-direction:column;padding:1em 0}@media screen and (-ms-high-contrast:none){.splide__slide:focus-visible{border:3px solid #0bf}.splide.is-focus-in .splide__slide:focus{border:3px solid #0bf}.splide.is-focus-in .splide__track>.splide__list>.splide__slide:focus{border-color:#0bf}}