@charset "UTF-8";
/* ==========================================================================
   DH VALISE — 下層ページ（特定商取引法に基づく表記／プライバシーポリシー）

   LP 本体と同じトークン・同じ寸法系（1rem = 10 デザイン px、
   ルートの font-size をビューポート幅に連動）で組んでいる。
   ヘッダーは LP と同じく position:absolute のオーバーレイなので、
   その分の余白を .lpage の padding-top で確保する。
   ========================================================================== */

.lpage {
  position: relative;
  padding: 17rem 0 11rem;
  background: linear-gradient(160deg, #EFE6D2 0%, var(--cream) 34%, var(--cream) 100%);
}

/* --- 見出し -------------------------------------------------------------- */
.lpage__head {
  width: 100rem;
  margin: 0 auto 5.5rem;
  text-align: center;
}

.lpage__title {
  font-family: var(--mincho);
  font-weight: 600;
  font-size: 4rem;
  line-height: 1.5;
  letter-spacing: .16rem;
  color: var(--ink);
}
.lpage__title span {
  display: block;
  margin-top: 1rem;
  font-family: var(--gothic);
  font-weight: 500;
  font-size: 1.4rem;
  letter-spacing: .28rem;
  color: var(--gold);
}

/* 見出し下の飾り罫 */
.lpage__head::after {
  content: "";
  display: block;
  width: 6rem;
  height: .2rem;
  margin: 2.6rem auto 0;
  background: var(--gold);
}

/* --- 本文カード ---------------------------------------------------------- */
.lpage__inner {
  width: 100rem;
  margin-inline: auto;
  padding: 6.5rem 8rem;
  border: .1rem solid var(--tan-line);
  background: var(--white);
}

.lpage__lead {
  margin-bottom: 4.5rem;
  font-family: var(--gothic);
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 2;
  color: var(--ink);
}

/* --- 定義リスト（特商法） ------------------------------------------------ */
.lpage__dl { border-top: .1rem solid var(--tan-line); }

.lpage__row {
  display: flex;
  align-items: flex-start;
  gap: 4rem;
  padding: 2.6rem 0;
  border-bottom: .1rem solid var(--tan-line);
}
.lpage__row dt {
  flex: none;
  width: 24rem;
  font-family: var(--gothic);
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.9;
  color: var(--gold-deep);
}
.lpage__row dd {
  flex: 1;
  font-family: var(--gothic);
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 1.9;
  color: var(--ink);
}
.lpage__row dd li + li { margin-top: .4rem; }

/* --- 条文（プライバシーポリシー） ---------------------------------------- */
.lpage__sec + .lpage__sec { margin-top: 4rem; }

.lpage__sec h2 {
  padding-left: 1.4rem;
  border-left: .4rem solid var(--gold);
  font-family: var(--mincho);
  font-weight: 600;
  font-size: 2.2rem;
  line-height: 1.6;
  color: var(--ink);
}
.lpage__sec p,
.lpage__sec li {
  margin-top: 1.4rem;
  font-family: var(--gothic);
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 2;
  color: var(--ink);
}
.lpage__sec li + li { margin-top: .4rem; }

/* --- ページ下部の戻り導線 ------------------------------------------------ */
.lpage__back {
  width: 100rem;
  margin: 5rem auto 0;
  text-align: center;
}
.lpage__back a {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
  padding: 1.6rem 4rem;
  border: .1rem solid var(--gold);
  border-radius: 10rem;
  font-family: var(--gothic);
  font-weight: 500;
  font-size: 1.5rem;
  letter-spacing: .1rem;
  color: var(--gold-deep);
  background: var(--white);
  transition: background .25s ease, color .25s ease;
}
.lpage__back a:hover,
.lpage__back a:focus-visible {
  background: var(--gold);
  color: var(--white);
}

/* ==========================================================================
   SP（390px 基準／768px 未満）
   ========================================================================== */
@media (max-width: 767.98px) {

  .lpage { padding: 10.5rem 0 7rem; }

  .lpage__head {
    width: 34rem;
    margin: 0 auto 3.5rem;
  }
  .lpage__title { font-size: 2.6rem; letter-spacing: .1rem; }
  .lpage__title span { margin-top: .8rem; font-size: 1.2rem; letter-spacing: .2rem; }
  .lpage__head::after { width: 4.4rem; margin-top: 1.8rem; }

  .lpage__inner {
    width: 34rem;
    padding: 3.5rem 2.4rem;
  }

  .lpage__lead { margin-bottom: 3rem; font-size: 1.4rem; line-height: 1.9; }

  /* 特商法：ラベルと内容を縦積みに */
  .lpage__row {
    display: block;
    padding: 1.8rem 0;
  }
  .lpage__row dt {
    width: auto;
    margin-bottom: .6rem;
    font-size: 1.35rem;
  }
  .lpage__row dd { font-size: 1.4rem; line-height: 1.85; }

  .lpage__sec + .lpage__sec { margin-top: 3rem; }
  .lpage__sec h2 { padding-left: 1rem; border-left-width: .3rem; font-size: 1.8rem; }
  .lpage__sec p,
  .lpage__sec li { margin-top: 1.1rem; font-size: 1.4rem; line-height: 1.9; }

  .lpage__back { width: 34rem; margin-top: 3.5rem; }
  .lpage__back a { padding: 1.4rem 3rem; font-size: 1.3rem; }
}
