@charset "UTF-8";
/* ============================================================
   price.css ― 料金のご案内ページ専用
   色は tokens.css の変数のみ。背景を書く規則には必ず文字色も書く。
   ============================================================ */

.p-price { padding-block: var(--sp-page-top) var(--sp-page-btm); }

.p-price__lead {
  margin-bottom: 64px;
  text-align: center;
  font-size: 14.5px;
  line-height: 2.3;
  letter-spacing: 0.06em;
  color: var(--c-ink-mid);
}

.p-price__groups { display: flex; flex-direction: column; gap: 64px; }

.p-price__head {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin-bottom: 24px;
}
.p-price__en {
  font-family: var(--f-latin);
  font-size: 13px;
  letter-spacing: 0.28em;
  color: var(--c-gold);
}
.p-price__title {
  font-family: var(--f-mincho);
  font-size: 24px;
  font-weight: 500;
  letter-spacing: var(--ls-mincho);
  color: var(--c-ink-strong);
}

/* --- 料金表（dl。行は wrap するため横スクロールしない） ----- */
.p-price__table {
  border: var(--border);
  border-radius: var(--radius);
  overflow: hidden;
}
.p-price__row {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px 24px;
  padding: 22px 28px;
  background: var(--c-card);
  color: var(--c-ink);
  border-bottom: 1px solid var(--c-base-alt);
}
.p-price__row:last-child { border-bottom: none; }
.p-price__name {
  flex: 1;
  min-width: 160px;
  font-family: var(--f-mincho);
  font-size: 16px;
  letter-spacing: 0.06em;
  color: var(--c-ink-strong);
}
.p-price__fee {
  margin-left: auto;
  text-align: right;
  font-family: var(--f-latin);
  font-size: 19px;
  letter-spacing: 0.04em;
  color: var(--c-brand);
  white-space: nowrap;
}
.p-price__note {
  width: 100%;
  font-size: 12.5px;
  line-height: 1.9;
  letter-spacing: 0.04em;
  color: var(--c-ink-sub);
}

/* --- お支払いについて ---------------------------------------- */
.p-price__pay {
  margin-top: 72px;
  padding: 40px 44px;
  background: var(--c-base-alt);
  color: var(--c-ink);
  border: var(--border);
  border-radius: var(--radius);
}
.p-price__pay-title {
  margin-bottom: 20px;
  font-family: var(--f-mincho);
  font-size: 20px;
  font-weight: 500;
  letter-spacing: var(--ls-mincho);
  color: var(--c-ink-strong);
}
.p-price__pay-list {
  padding-left: 20px;
  list-style: disc;
  font-size: 13.5px;
  line-height: 2.3;
  letter-spacing: 0.05em;
  color: var(--c-ink-mid);
}
