/* リプライス 規約・表記ページ共通スタイル（LPの index.html とトーンを揃える） */
:root { --blue:#1f6feb; --navy:#1b2330; --soft:#eef2f8; --line:#e1e7f0; }
html,body { margin:0; padding:0; }
body {
  font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo",sans-serif;
  color:var(--navy);
  background:var(--soft);
  line-height:1.9;
  -webkit-font-smoothing:antialiased;
  font-size:15px;
}
header.site {
  background:rgba(255,255,255,.85);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);
  position:sticky; top:0; z-index:10;
}
header.site .inner {
  max-width:860px; margin:0 auto; padding:12px 20px;
  display:flex; align-items:center; justify-content:space-between; gap:10px 16px;
  flex-wrap:wrap;
}
header.site .brand { display:flex; align-items:center; gap:8px; font-weight:700; color:var(--navy); text-decoration:none; }
header.site .logo {
  width:30px; height:30px; border-radius:8px; background:var(--blue); color:#fff;
  display:flex; align-items:center; justify-content:center; font-weight:700; font-size:15px;
}
header.site nav { display:flex; flex-wrap:wrap; gap:4px 16px; }
header.site nav a { color:#5a6473; text-decoration:none; font-size:13px; }
header.site nav a:hover { color:var(--blue); }

main { max-width:860px; margin:0 auto; padding:40px 20px 72px; }
.sheet { background:#fff; border:1px solid var(--line); border-radius:16px; padding:40px 36px; box-shadow:0 8px 30px rgba(27,35,48,.06); }
@media (max-width:640px){ .sheet { padding:26px 20px; } main { padding:24px 14px 56px; } }

h1 { font-size:1.5rem; font-weight:800; margin:0 0 6px; letter-spacing:.01em; }
.lead { color:#5a6473; font-size:.9rem; margin:0 0 28px; }
h2 { font-size:1.05rem; font-weight:700; margin:34px 0 10px; padding-top:20px; border-top:1px solid var(--line); }
h2:first-of-type { border-top:none; padding-top:0; margin-top:24px; }
h3 { font-size:.98rem; font-weight:700; margin:20px 0 6px; }
p { margin:0 0 12px; }
ol,ul { margin:0 0 12px; padding-left:1.5em; }
li { margin-bottom:6px; }
small,.note { color:#6b7686; font-size:.85rem; }
strong { font-weight:700; }
a { color:var(--blue); }

table.spec { width:100%; border-collapse:collapse; margin:8px 0 20px; font-size:.92rem; }
table.spec th, table.spec td { border:1px solid var(--line); padding:11px 13px; text-align:left; vertical-align:top; }
table.spec th { background:#f6f9fd; width:32%; font-weight:700; white-space:nowrap; }
@media (max-width:640px){
  table.spec th, table.spec td { display:block; width:auto; }
  table.spec th { border-bottom:none; white-space:normal; }
  table.spec td { border-top:none; }
}

.warn { background:#fff7ed; border-left:4px solid #f59e0b; border-radius:8px; padding:14px 16px; color:#5a4319; font-size:.9rem; margin:0 0 20px; }
.info { background:#eff6ff; border-left:4px solid var(--blue); border-radius:8px; padding:14px 16px; color:#1a3258; font-size:.9rem; margin:0 0 20px; }
.meta { margin-top:32px; padding-top:18px; border-top:1px solid var(--line); color:#6b7686; font-size:.85rem; }

footer.site { padding:32px 20px 48px; text-align:center; color:#6b7686; font-size:.78rem; }
footer.site nav { margin-bottom:12px; }
footer.site nav a { margin:0 9px; color:#5a6473; }
footer.site p { margin:3px 0; }
