/* 法務ページ共通。アプリ本体とは独立して読めるようにしてある
   (App Store の審査、Stripe の Checkout、消費者からの参照が
    アプリの外から直接この URL を開くため) */
:root{
  --bg:#F7F5F0; --card:#FFFFFF; --navy:#14161A; --tx2:#6B6E75; --dim:#8A8D94;
  --bd:#DCDAD4; --blue:#2B5CE0; --blue-soft:#E8EDFC; --gold-soft:#FFF0C4; --gold-ink:#5C4300;
  --jp:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,system-ui,sans-serif;
  --mono:ui-monospace,"SF Mono",Menlo,monospace;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#101114; --card:#191B1F; --navy:#F2F3F5; --tx2:#A0A4AB; --dim:#686D75;
    --bd:#2A2D33; --blue:#5F87EE; --blue-soft:#1C2740;
    --gold-soft:#332A10; --gold-ink:#FFD98A;
  }
}
*{box-sizing:border-box;margin:0;padding:0;}
body{background:var(--bg);color:var(--navy);font-family:var(--jp);
  line-height:1.9;font-size:15px;-webkit-text-size-adjust:100%;}
.wrap{max-width:760px;margin:0 auto;padding:40px 20px 90px;}

.back{display:inline-block;font-size:13px;color:var(--blue);text-decoration:none;
  margin-bottom:22px;font-weight:700;}
.back:hover{text-decoration:underline;}

h1{font-size:26px;font-weight:800;letter-spacing:-.02em;line-height:1.4;margin-bottom:8px;}
.lead{font-size:14px;color:var(--tx2);margin-bottom:6px;}
.rev{font-family:var(--mono);font-size:12px;color:var(--dim);margin-bottom:26px;}
hr{border:none;border-top:2px solid var(--navy);margin:0 0 30px;}

h2{font-size:17px;font-weight:800;letter-spacing:-.01em;margin:34px 0 10px;
  padding-top:20px;border-top:1px solid var(--bd);}
h2:first-of-type{border-top:none;padding-top:0;}
h3{font-size:14.5px;font-weight:800;margin:20px 0 6px;}
p{margin-bottom:12px;}
ol,ul{margin:0 0 12px 1.4em;}
li{margin-bottom:7px;}
ol.num{counter-reset:i;list-style:none;margin-left:0;}
ol.num>li{counter-increment:i;padding-left:2em;position:relative;}
ol.num>li::before{content:counter(i)".";position:absolute;left:0;
  font-family:var(--mono);font-size:13px;color:var(--dim);}

table{width:100%;border-collapse:collapse;font-size:14px;margin:0 0 16px;
  background:var(--card);border:2px solid var(--bd);border-radius:12px;overflow:hidden;}
th,td{text-align:left;padding:12px 14px;border-top:1px solid var(--bd);vertical-align:top;}
tr:first-child th,tr:first-child td{border-top:none;}
th{width:34%;font-weight:800;background:var(--bg);font-size:13.5px;}
@media(max-width:560px){
  th,td{display:block;width:100%;}
  th{border-top:1px solid var(--bd);padding-bottom:2px;}
  td{border-top:none;padding-top:2px;}
}

.note{background:var(--card);border:2px solid var(--bd);border-radius:12px;
  padding:14px 16px;font-size:13.5px;color:var(--tx2);margin:0 0 18px;}
.warn{background:var(--gold-soft);border-color:transparent;color:var(--gold-ink);}
.warn b{color:inherit;}
.todo{background:var(--blue-soft);border-color:transparent;color:var(--blue);
  font-family:var(--mono);font-size:12.5px;line-height:1.8;}

strong,b{font-weight:800;}
a{color:var(--blue);}
footer{margin-top:50px;padding-top:20px;border-top:1px solid var(--bd);
  font-size:12.5px;color:var(--dim);}
footer a{margin-right:14px;}
