/* shared styles for tokushoho.html / privacy.html — extracted to avoid duplicating the same rules in two <style> blocks */
.legal{max-width:760px;margin:0 auto;padding:clamp(7rem,14vw,10rem) 1.5rem 6rem;font-family:var(--sans)}
.legal h1{font:600 clamp(1.5rem,4vw,2rem)/1.3 var(--serif);margin-bottom:2.25rem;color:var(--ink)}
.legal h2{font:600 1.05rem/1.4 var(--serif);margin-top:2.5rem;margin-bottom:.75rem;color:var(--ink)}
.legal p,.legal li{color:var(--ink-2);font-size:.9rem;line-height:1.9}
.legal ul{padding-left:1.25rem;margin-top:.5rem}
.legal table{width:100%;border-collapse:collapse;margin-top:.5rem}
.legal th,.legal td{text-align:left;padding:1rem .75rem;border-bottom:1px solid var(--line);font-size:.9rem;vertical-align:top}
.legal th{width:180px;color:var(--ink-2);font-weight:500}
.legal td{color:var(--ink)}
.legal .fill{color:var(--coral-dark);font-style:italic}
.legal .note,.legal .updated{margin-top:2.5rem;font-size:.8rem;color:var(--ink-2)}
.legal--wide{max-width:900px}
.legal h2{margin-top:3.5rem;padding:.85rem 1rem;border-radius:.8rem;background:#eef4f8;font:700 1.1rem/1.5 var(--sans)}
.legal h3{margin:2.2rem 0 .65rem;color:var(--ink);font:700 1rem/1.6 var(--sans)}
.legal a{color:var(--coral-dark);text-underline-offset:.2em;transition:color var(--dur-hover) var(--ease-smooth)}
.legal address{font-style:normal}
.legal-contact{display:grid;gap:.45rem;margin-top:1rem;padding:1.2rem 1.35rem;border:1px solid var(--line);border-radius:1rem;background:#f7fafc}
.legal-contact strong{color:var(--ink)}
.legal td strong{color:var(--ink);font-weight:700}
@media (max-width:620px){
  .legal{padding-inline:1rem}
  .legal table,.legal tbody,.legal tr,.legal th,.legal td{display:block;width:100%}
  .legal tr{padding:.9rem 0;border-bottom:1px solid var(--line)}
  .legal th,.legal td{padding:.25rem 0;border:0}
  .legal th{font-weight:700}
}
