/* Article opt-in. Direction 3 palette; source content and shared styles stay intact. */
.article-guide {
  --bg:#fff; --bg-2:#eff4f7; --ink:#14233b; --ink-soft:#344b66; --ink-faint:#52647a;
  --card:#fff; --card-2:#f3f6f8; --brand:#294c73; --brand-dark:#294c73; --brand-deep:#19334f;
  --gold:#8b670f; --gold-dark:#8b670f; --gold-soft:#f7f2e5; --gold-line:#d5c399;
  --accent:#fff; --line:#c9d2dc; --line-soft:#dfe5eb; --radius:4px; --radius-sm:4px;
  --shadow:none; --shadow-soft:none; --warn-bg:#f7f2e5; --warn-line:#d5c399; --warn-ink:#5a471c;
  --article-width:860px; --article-space:40px;
  font-family:"Yu Gothic",Meiryo,sans-serif; line-height:1.9; background:#fff; color:var(--ink);
}
.article-guide::before,.article-guide::after,.article-guide header.site::after,.article-guide .logo::before,.article-guide h1::after { display:none; }
.article-guide header.site { padding:22px 32px; background:#fff; border-bottom:1px solid var(--line-soft); box-shadow:none; backdrop-filter:none; }
.article-guide header.site .inner { max-width:1120px; align-items:center; gap:28px; }
.article-guide .logo { color:#101b30; font-family:"Yu Mincho","Hiragino Mincho ProN",serif; font-size:36px; font-weight:700; line-height:1.3; letter-spacing:.01em; }
.article-guide .tagline { color:var(--ink-soft); font-size:12px; font-weight:600; }
.article-guide .article-page { max-width:var(--article-width); padding:0 32px 64px; }
.article-guide .crumb { margin:24px 0 10px; color:var(--ink-faint); font-size:12px; }
.article-guide .crumb a { color:var(--brand); }
.article-guide .article-page>.sub { font-size:12px; line-height:1.8; color:var(--ink-faint); }
.article-guide .article-page h1 { margin:24px 0 16px; color:var(--ink); font-family:"Yu Mincho","Hiragino Mincho ProN",serif; font-size:34px; font-weight:700; letter-spacing:.015em; line-height:1.5; }
.article-guide .lede { font-size:16px; line-height:1.9; color:var(--ink-soft); margin:0 0 22px; }
.article-guide .lede strong { color:var(--ink); }
.article-guide .article-page>.card { border:0; border-top:1px solid var(--line); border-radius:0; box-shadow:none; padding:30px 0 0; margin:0 0 var(--article-space); background:#fff!important; }
.article-guide .card::before,.article-guide .card::after { display:none; }
.article-guide .article-page .card h2 { border:0; padding:0; margin:0 0 18px; color:var(--ink); font-family:"Yu Mincho","Hiragino Mincho ProN",serif; font-size:25px!important; font-weight:700; letter-spacing:.01em; line-height:1.6; }
.article-guide .article-page .card h3 { color:var(--ink); font-size:18px!important; font-weight:700; line-height:1.6; margin:28px 0 12px!important; }
.article-guide .article-page .card { font-size:16px; line-height:1.9; }
.article-guide .article-page .card p { font-size:16px!important; line-height:1.9; margin-bottom:16px; }
.article-guide .article-page .card p.sub { color:var(--ink-faint); font-size:13px!important; line-height:1.85; }
.article-guide .article-page .card ol,.article-guide .article-page .card ul { font-size:16px!important; }
.article-guide .article-page .card li { margin-bottom:10px; }
.article-guide .article-page .card li::marker { color:var(--brand); font-weight:700; }
.article-guide .article-page>nav.card { padding:0; border-top:2px solid var(--gold-line); border-bottom:1px solid var(--line); margin:0 0 34px; }
.article-guide .article-page .linklist { margin:0; padding:0; list-style:none; }
.article-guide .article-page .linklist li { margin:0; }
.article-guide .linklist a { min-height:48px; padding:12px 2px; color:var(--brand); font-size:15px; line-height:1.6; text-decoration:underline; text-underline-offset:4px; text-decoration-color:var(--gold-line); }
.article-guide .linklist a::before,.article-guide .linklist a::after { display:none; }
.article-guide .article-page>#tosen-bango { padding-top:0; border-top:0!important; }
.article-guide .article-page .card table { table-layout:fixed; width:100%; border-collapse:collapse; margin:14px 0 24px; font-variant-numeric:tabular-nums; }
.article-guide .article-page .card table th,.article-guide .article-page .card table td { padding:12px 10px; vertical-align:top; border-bottom:1px solid var(--line); color:var(--ink); font-size:15px; line-height:1.65; overflow-wrap:anywhere; }
.article-guide .article-page .card table th { background:var(--bg-2); color:var(--ink-soft); font-size:14px; font-weight:700; }
.article-guide #tosen-bango table th:nth-child(1),.article-guide #tosen-bango table td:nth-child(1) { width:28%; }
.article-guide #tosen-bango table th:nth-child(2),.article-guide #tosen-bango table td:nth-child(2) { width:23%; }
.article-guide #tosen-bango table th:nth-child(3),.article-guide #tosen-bango table td:nth-child(3) { width:20%; }
.article-guide #tosen-bango table th:nth-child(4),.article-guide #tosen-bango table td:nth-child(4) { width:29%; }
.article-guide #tosen-bango>div[style] { background:var(--gold-soft)!important; color:var(--ink-soft); border-color:var(--gold-line)!important; border-radius:4px!important; padding:18px 20px!important; }
.article-guide #tosen-bango>div[style] strong { color:var(--ink); }
.article-guide .article-page #receive h3 { padding:12px 16px; background:var(--bg-2); border-left:3px solid var(--gold-line); }
.article-guide .article-page #receive h3:not(:first-of-type) { margin-top:36px!important; }
.article-guide .article-page .card a { color:var(--brand); text-decoration-color:var(--brand); text-underline-offset:3px; text-decoration-thickness:1px; }
.article-guide .article-page .card a:hover,.article-guide .crumb a:hover,.article-guide .back-home:hover { color:#142d48; text-decoration-thickness:2px; }
.article-guide .article-page .card a.cta-shindan { min-height:48px; background:var(--brand-deep); color:#fff; border:0; border-radius:4px; box-shadow:none; font-weight:700; font-size:16px; padding:16px 20px; }
.article-guide .article-page .card a.cta-shindan:hover { color:#fff; background:var(--brand); transform:none; filter:none; box-shadow:none; }
.article-guide .article-page>.card[style*="#f6f6f4"] { background:#fff!important; }
.article-guide .article-page>.card[style*="#f6f6f4"] ul { color:var(--ink-soft); font-size:13px!important; line-height:1.9; }
.article-guide .note { color:var(--ink-soft); background:var(--bg-2); border:0; border-left:3px solid var(--line); border-radius:0; font-size:13px; line-height:1.9; padding:20px; }
.article-guide .note strong { color:var(--ink); }
.article-guide .back-home { color:var(--brand); min-height:48px; padding:12px 0; margin-top:16px; }
.article-guide footer.site { background:var(--bg-2); color:var(--ink-faint); border-color:var(--line); margin-top:0; padding:28px 32px; }
.article-guide footer.site .inner { max-width:796px; }
.article-guide footer.site a,.article-guide footer.site a:hover { color:var(--brand); }
.article-guide a:focus-visible { outline:3px solid var(--gold); outline-offset:4px; }
.article-guide [id] { scroll-margin-top:24px; }
@media(max-width:767px) {
  .article-guide { --article-space:32px; }
  .article-guide header.site { padding:18px 20px; }
  .article-guide header.site .inner { display:block; }
  .article-guide .logo { font-size:30px; }
  .article-guide .tagline { display:block; margin-top:5px; font-size:10px; }
  .article-guide .article-page { padding:0 18px 42px; }
  .article-guide .crumb { margin-top:20px; font-size:11px; }
  .article-guide .article-page>.sub { font-size:11px; }
  .article-guide .article-page h1 { font-size:26px; line-height:1.6; letter-spacing:0; margin:20px 0 14px; }
  .article-guide .lede { font-size:15px; line-height:1.9; margin-bottom:18px; }
  .article-guide .article-page>.card { padding-top:24px; }
  .article-guide .article-page .card h2 { font-size:23px!important; line-height:1.6; margin-bottom:16px; }
  .article-guide .article-page .card h3 { font-size:17px!important; line-height:1.65; }
  .article-guide .article-page .card p,.article-guide .article-page .card ol,.article-guide .article-page .card ul { font-size:15px!important; }
  .article-guide .article-page>nav.card { margin-bottom:28px; }
  .article-guide .linklist a { min-height:48px; padding:12px 0; font-size:14px; }
  .article-guide .article-page .card table th,.article-guide .article-page .card table td { padding:10px 6px; font-size:13px; line-height:1.75; }
  .article-guide .article-page .card table th { font-size:12px; }
  .article-guide #tosen-bango>div[style] { padding:16px!important; }
  .article-guide .article-page #receive h3 { padding:12px 14px; }
  .article-guide .note { padding:16px; }
  .article-guide .back-home { font-size:14px; }
  .article-guide footer.site { padding:24px 18px; }
}
@media(max-width:360px) { .article-guide .article-page { padding-left:14px; padding-right:14px; } .article-guide .article-page .card table th,.article-guide .article-page .card table td { padding-left:4px; padding-right:4px; font-size:12px; } }

/* Visual review 1: balance multiline Japanese headings to avoid orphaned final characters. */
.article-guide .article-page h1,.article-guide .article-page .card h2,.article-guide .article-page .card h3 { text-wrap:balance; }
