/* ============================================================
   法務2ページの共通デザイン。白地・紺見出し・金の罫でLPに合わせます。
   編集する: 下の色・文字・余白トークン。本文は各HTMLを編集してください。
   触らない: .legal-row の minmax(0,1fr)（長い住所やメールの横あふれを防ぎます）。
   ============================================================ */
:root{
  --c-bg:#F7F8FA; /* ページの外側 */
  --c-paper:#FDFCF9; /* 本文の紙面 */
  --c-navy:#011B39; /* 見出しとリンク */
  --c-text:#293649; /* 本文 */
  --c-muted:#526175; /* 補足文字 */
  --c-gold:#8A6B25; /* 金の罫と小見出し */
  --c-rule:#D7DEE6; /* 項目間の罫線 */
  --t-title:clamp(24px,4vw,32px); /* 主見出し */
  --t-heading:24px; /* 各節の見出し */
  --t-body:16px; /* 本文。スマホでも縮めません */
  --t-note:12px; /* 小さな補足 */
  --tracking:.09em; /* 和文の字間 */
  --space-xs:8px; /* 小さな間隔 */
  --space-sm:16px; /* 項目内の間隔 */
  --space-md:24px; /* 本文間の間隔 */
  --space-lg:32px; /* 中見出しとの間隔 */
  --space-xl:48px; /* セクション間の間隔 */
  --gutter:clamp(16px,4vw,32px); /* 紙面の左右余白 */
  --page-max:800px; /* 長文を読みやすく保つ最大幅 */
  --tap-min:48px; /* リンクの最小タップ高さ */
}
*{box-sizing:border-box}
html{line-break:strict;scroll-padding-top:var(--space-md)}
body{margin:0;background:var(--c-bg);color:var(--c-text);
  font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;
  font-size:var(--t-body);line-height:1.9;letter-spacing:var(--tracking)}
h1,h2,p,dl,dd,ul{margin:0}
a{color:var(--c-navy);text-decoration:underline;text-underline-offset:4px}
a:focus-visible{outline:2px solid var(--c-gold);outline-offset:4px}
.legal-page{width:100%;max-width:var(--page-max);margin-inline:auto;
  padding:var(--space-lg) var(--gutter) var(--space-xl);background:var(--c-paper)}
.legal-header{padding-bottom:var(--space-lg);border-bottom:2px solid var(--c-gold)}
.back-link{display:inline-flex;align-items:center;min-height:var(--tap-min);font-weight:700}
.brand{margin-top:var(--space-md);color:var(--c-gold);font-weight:700}
h1{margin-top:var(--space-xs);font-size:var(--t-title);line-height:1.6;color:var(--c-navy);font-weight:700}
h2{font-size:var(--t-heading);line-height:1.6;color:var(--c-navy);font-weight:700}
.legal-section{margin-top:var(--space-xl)}
.legal-section h2{margin-bottom:var(--space-md)}
.legal-section p+p{margin-top:var(--space-sm)}
.legal-section ul{padding-left:var(--space-md)}
.legal-section li+li{margin-top:var(--space-xs)}
.legal-intro{margin-top:var(--space-md)}
.legal-details{border-top:1px solid var(--c-rule)}
.legal-row{display:grid;grid-template-columns:12em minmax(0,1fr);gap:var(--space-md);
  padding-block:var(--space-md);border-bottom:1px solid var(--c-rule)}
dt{font-weight:700;color:var(--c-navy)}
dd{min-width:0}
/* メールだけは長い英数字を折り返せます。和文本文にbreak-allは使いません。 */
.contact-link{overflow-wrap:anywhere}
.nw{white-space:nowrap}
.legal-footer{margin-top:var(--space-xl);padding-top:var(--space-md);border-top:1px solid var(--c-rule)}
.legal-nav{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-xs)}
.legal-nav a{display:flex;align-items:center;min-height:var(--tap-min)}
.copyright{margin-top:var(--space-md);font-size:var(--t-note);color:var(--c-muted)}
/* 狭い画面は項目名→値の縦並び。字の大きさを変えずに読みやすさを保ちます。 */
@media(max-width:639px){.legal-row{grid-template-columns:minmax(0,1fr);gap:var(--space-xs)}}
