/* legal page — LP と同じ白×緑のトンマナ */
.legal{max-width:820px;margin:0 auto;padding:108px 24px 96px}
.legal .lead-back{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted);letter-spacing:.06em;margin-bottom:28px}
.legal .lead-back:hover{color:var(--green-deep)}
.legal h1{font-size:clamp(26px,4.4vw,36px);font-weight:700;letter-spacing:.06em;line-height:1.5;margin:0 0 10px}
.legal .meta{font-size:12.5px;color:var(--muted);letter-spacing:.06em;margin:0 0 40px}
.legal .intro{font-size:14.5px;line-height:2.1;letter-spacing:.03em;color:var(--ink);margin:0 0 44px;text-wrap:pretty}
.legal h2{text-align:left;font-size:16px;font-weight:700;letter-spacing:.08em;color:var(--ink);margin:44px 0 14px;padding-left:12px;border-left:3px solid var(--green)}
.legal p{font-size:14px;line-height:2.15;letter-spacing:.03em;color:var(--ink);margin:0 0 14px;text-wrap:pretty}
.legal ol,.legal ul{margin:0 0 14px;padding-left:0;list-style:none;counter-reset:li}
.legal ol > li{counter-increment:li;position:relative;padding:0 0 10px 30px;font-size:14px;line-height:2.15;letter-spacing:.03em;color:var(--ink)}
.legal ol > li:before{content:counter(li) ".";position:absolute;left:0;top:0;color:var(--green-deep);font-weight:700;font-size:13px}
.legal ul > li{position:relative;padding:0 0 10px 18px;font-size:14px;line-height:2.15;letter-spacing:.03em;color:var(--ink)}
.legal ul > li:before{content:"";position:absolute;left:2px;top:15px;width:5px;height:5px;border-radius:99px;background:var(--green)}
.legal strong{font-weight:400;color:inherit}
.legal a{color:var(--green-deep);text-decoration:underline;text-underline-offset:3px}
.legal a:hover{opacity:.75}
.legal .contact{background:var(--green-pale);border:1px solid var(--green);border-radius:var(--radius);padding:24px 26px;margin-top:14px}
.legal .contact p{margin:0 0 6px}
.legal .contact p:last-child{margin:0}
.legal .dates{border-top:1px solid var(--line);margin-top:56px;padding-top:22px;font-size:12.5px;color:var(--muted);letter-spacing:.06em;line-height:2}
@media(max-width:860px){
  .legal{padding:96px 20px 72px}
  .legal h2{margin:34px 0 12px}
  .legal .intro{margin-bottom:34px}
}
