.legal-page {background:#fff;font-size:14px;line-height:1.95;letter-spacing:.025em}
.legal-wrap {width:min(1020px,calc(100% - 100px));margin-inline:auto}
.legal-hero {padding:112px 0 64px;background:#f7f4f1;border-bottom:1px solid var(--line)}
.legal-breadcrumb {display:flex;align-items:center;flex-wrap:wrap;gap:14px;font-size:11px;color:#746b62;margin-bottom:52px}
.legal-breadcrumb a:hover {text-decoration:underline;text-underline-offset:4px}
.legal-eyebrow {font:500 23px/1.4 var(--en);letter-spacing:.04em;color:var(--taupe);margin-bottom:17px}
.legal-hero h1 {font-family:var(--serif);font-weight:500;font-size:clamp(28px,3.3vw,43px);line-height:1.55;letter-spacing:.045em;margin:0 0 19px}
.legal-hero h1 span {display:inline-block}
.legal-lead {color:#635c55;line-height:2}
.legal-body {padding-top:38px;padding-bottom:92px}
.legal-notice {padding:20px 25px;background:#faf8f5;border-left:3px solid #a48b70;font-size:13px;line-height:1.9;color:#62594e}
.legal-notice strong {display:block;font-size:14px;margin-bottom:3px;color:#51473b}
.legal-index {display:flex;flex-wrap:wrap;gap:10px 28px;padding:28px 0 4px}
.legal-index a {display:inline-flex;align-items:center;gap:9px;font-size:12px;padding:7px 0;border-bottom:1px solid #d9d0c8}
.legal-index a:hover {color:#9b683c}
.legal-index span {font:500 17px var(--en);color:#998574}
.legal-section {margin-top:62px;scroll-margin-top:114px}
.legal-section h2 {font-family:'Noto Sans JP',sans-serif;font-size:21px;letter-spacing:.04em;display:flex;gap:16px;align-items:center;margin-bottom:23px;font-weight:500;line-height:1.65}
.legal-section h2 > span {font:500 27px var(--en);color:#9c8470}
.legal-table {margin:0;border-top:1px solid #bbae9f}
.legal-row {display:grid;grid-template-columns:235px minmax(0,1fr);border-bottom:1px solid #e4ddd6}
.legal-row dt {background:#faf8f6;padding:25px 25px;font-weight:500;font-size:13px}
.legal-row dd {margin:0;padding:24px 29px;overflow-wrap:anywhere}
.legal-row dd p + p {margin-top:10px}
.legal-pending {display:inline-block;font-size:11px;font-weight:500;border:1px solid #c4b59f;color:#796445;border-radius:3px;padding:0 8px;margin-bottom:7px;line-height:1.8}
.legal-unconfirmed {font-size:12px;color:#796445;border-left:2px solid #cbb99e;padding-left:12px;margin-top:14px!important}
.legal-price {display:flex;justify-content:space-between;align-items:baseline;gap:10px;border-bottom:1px solid #eee8e1;padding:0 0 12px;margin-bottom:14px}
.legal-price strong {font-family:Arial,'Noto Sans JP',sans-serif;font-size:25px;font-weight:500;letter-spacing:.015em;white-space:nowrap}
.legal-price small {font-family:'Noto Sans JP',sans-serif;font-size:11px;margin-left:5px}
.legal-bottom {display:flex;justify-content:space-between;align-items:center;margin-top:48px;padding-top:27px;border-top:1px solid #e4ddd6}
.legal-back {display:inline-flex;gap:13px;align-items:center;font-size:13px;padding:12px 0}
.legal-back:hover {text-decoration:underline;text-underline-offset:5px}
.legal-bottom > p {font-size:13px;letter-spacing:.08em;color:#897b70}
@media(max-width:700px) {
  .legal-wrap {width:calc(100% - 40px)}
  .legal-hero {padding:94px 0 36px}
  .legal-breadcrumb {font-size:10px;gap:9px;margin-bottom:35px}
  .legal-eyebrow {font-size:20px;margin-bottom:14px}
  .legal-hero h1 {font-size:27px;line-height:1.65;letter-spacing:.015em}
  .legal-lead {font-size:13px}
  .legal-body {padding-top:25px;padding-bottom:58px}
  .legal-notice {padding:17px 18px;font-size:12px}
  .legal-notice strong {font-size:13px}
  .legal-index {display:grid;grid-template-columns:1fr;gap:3px;padding-top:24px}
  .legal-index a {padding:10px 0;font-size:12px}
  .legal-section {margin-top:43px;scroll-margin-top:93px}
  .legal-section h2 {font-size:18px;gap:12px;margin-bottom:18px}
  .legal-section h2 > span {font-size:24px}
  .legal-row {display:block}
  .legal-row dt {padding:14px 17px 12px;font-size:13px}
  .legal-row dd {padding:18px 17px 23px;font-size:13px}
  .legal-price {flex-wrap:wrap;gap:3px}
  .legal-price strong {font-size:24px}
  .legal-bottom {margin-top:32px}
}
