/* Criminal-law page only. ZIP design scoped to .keijiLp. */
.keijiLp { font-weight: 400; }
.keijiLp * { font-weight: inherit; }
.keijiLp h3, .keijiLp b, .keijiLp strong { font-weight: 700; }
.keijiLp, .keijiLp * { box-sizing: border-box; }
.keijiLp * { font-size: inherit; line-height: inherit; letter-spacing: inherit; }
.keijiLp img { max-width: 100%; height: auto; }
.keijiLp a { text-decoration: none; }
.keijiLp p, .keijiLp h1, .keijiLp h2, .keijiLp h3 { margin: 0; }
.keijiLp { --bg:#ffffff;
  --ink:#111111;
  --ink-2:#4a4650;
  --line:#e8e3e6;
  --magenta:#c13465;
  --magenta-dk:#8b1a3c;
  --pink:#f2d5df;
  --pink-bg:#fef0f4;
  --navy:#1544a3;
  --sky:#87baed;
  --sky-bg:#f2fbff;
  --charcoal:#383434;
  --note:#fff6d6; --note-ink:#6b5200; --note-line:#e9c94a;
  --f-jp:"Noto Sans JP","游ゴシック体",YuGothic,"Yu Gothic Medium","Hiragino Sans",sans-serif;
  --f-en:"Montserrat","Helvetica Neue",Arial,sans-serif;
  color-scheme:light; }
.keijiLp * { box-sizing:border-box }
.keijiLp { background:var(--bg);color:var(--ink);font-family:var(--f-jp);font-size:15px;line-height:1.9;letter-spacing:.03em;padding-bottom:96px }
.keijiLp a { color:inherit }
.keijiLp h1,
.keijiLp h2,
.keijiLp h3 { text-wrap:balance;margin:0 }
.keijiLp p { margin:0 }
.keijiLp .wrap { max-width:1040px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px)) }
.keijiLp section { padding-block:72px }
.keijiLp .band-sky { background:var(--sky-bg) }
.keijiLp .band-pink { background:var(--pink-bg) }
.keijiLp .sec-head { display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:36px;text-align:center }
.keijiLp .sec-head .en { font-family:var(--f-en);font-weight:800;font-size:12px;letter-spacing:.2em;color:var(--sky);text-transform:uppercase }
.keijiLp .sec-head h2 { font-size:clamp(22px,3.2vw,28px);font-weight:700;color:var(--magenta) }
.keijiLp .sec-head .lead { max-width:44em;color:var(--ink-2);font-size:14.5px;margin-top:10px;text-align:left }
.keijiLp .sec-head.left { align-items:flex-start;text-align:left }
.keijiLp .hero { position:relative;color:#fff;background:
  linear-gradient(90deg,rgba(10,32,84,.78) 0%,rgba(14,42,102,.5) 45%,rgba(14,42,102,.12) 100%),
  linear-gradient(0deg,rgba(10,32,84,.45) 0%,transparent 45%),
  url("../images/personal/keiji/hero-sea.jpg") center 62%/cover no-repeat,#1544a3;padding-block:96px 88px;overflow:hidden;text-shadow:0 1px 12px rgba(6,20,60,.35) }
.keijiLp .hero .badge,
.keijiLp .hero .btn { text-shadow:none }
@media (max-width:768px) {
.keijiLp .hero { background:
  linear-gradient(rgba(10,32,84,.62),rgba(10,32,84,.62)),
  url("../images/personal/keiji/hero-sea.jpg") 55% 60%/cover no-repeat,#1544a3;padding-block:64px 64px }
}
.keijiLp .hero .wrap { display:grid;gap:28px }
.keijiLp .hero .catch { font-size:clamp(14px,2vw,17px);font-weight:500;letter-spacing:.08em;opacity:.95 }
.keijiLp .hero h1 { font-size:clamp(34px,6vw,56px);font-weight:900;letter-spacing:.08em;line-height:1.25 }
.keijiLp .hero .sub { font-size:clamp(15px,2vw,18px);font-weight:500;max-width:34em }
.keijiLp .badges { display:flex;flex-wrap:wrap;gap:10px }
.keijiLp .badge { background:#fff;color:var(--magenta);border-radius:999px;padding:6px 16px;font-weight:700;font-size:14px }
.keijiLp .hero-cta { display:flex;flex-wrap:wrap;gap:12px;align-items:stretch }
.keijiLp .btn { display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:14px 28px;font-weight:700;font-size:15px;text-decoration:none;border:0;cursor:pointer;font-family:var(--f-jp) }
.keijiLp .btn-mag { background:var(--magenta);color:#fff }
.keijiLp .btn-mag:hover { background:var(--magenta-dk) }
.keijiLp .btn-white { background:#fff;color:var(--navy) }
.keijiLp .btn-line { background:#06c755;color:#fff }
.keijiLp .tel-box { display:flex;flex-direction:column;justify-content:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.35);border-radius:14px;padding:10px 20px;line-height:1.4 }
.keijiLp .tel-box small { font-size:12px;opacity:.9 }
.keijiLp .tel-box b { font-family:var(--f-en);font-size:26px;letter-spacing:.04em;user-select:all }
.keijiLp .stats { display:grid;grid-template-columns:repeat(4,1fr);gap:0;background:#fff;border-radius:14px;box-shadow:0 10px 30px rgba(21,68,163,.12);margin-top:-36px;position:relative;z-index:2 }
.keijiLp .stat { padding:22px 16px;text-align:center;border-left:1px solid var(--line) }
.keijiLp .stat:first-child { border-left:0 }
.keijiLp .stat .k { font-size:12.5px;color:var(--ink-2);font-weight:500 }
.keijiLp .stat .v { font-family:var(--f-en);font-weight:800;color:var(--navy);font-size:clamp(26px,4vw,36px);line-height:1.2;font-variant-numeric:tabular-nums }
.keijiLp .stat .v span { font-family:var(--f-jp);font-size:14px;font-weight:700;margin-left:2px }
.keijiLp .stat .n { font-size:11px;color:var(--ink-2) }
.keijiLp .stat.todo .v { color:#b9b3bb }
.keijiLp .stats-note { font-size:11.5px;color:var(--ink-2);margin-top:10px;text-align:right }
.keijiLp .cases { display:grid;grid-template-columns:repeat(4,1fr);gap:12px }
.keijiLp .case { display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px;text-decoration:none;transition:border-color .2s,transform .2s }
.keijiLp .case:hover { border-color:var(--magenta);transform:translateY(-2px) }
.keijiLp .case b { color:var(--magenta);font-size:15.5px }
.keijiLp .case span { font-size:12.5px;color:var(--ink-2);line-height:1.7 }
.keijiLp .case.urgent { background:var(--magenta);border-color:var(--magenta) }
.keijiLp .case.urgent b,
.keijiLp .case.urgent span { color:#fff }
.keijiLp .worries { display:grid;grid-template-columns:repeat(3,1fr);gap:10px 24px;max-width:860px;margin:0 auto 28px;padding:0;list-style:none }
.keijiLp .worries li { display:flex;gap:10px;align-items:flex-start;font-weight:500 }
.keijiLp .worries li::before { content:"";flex:0 0 18px;height:18px;margin-top:5px;border-radius:4px;background:var(--magenta) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='white' stroke-width='2.2'/%3E%3C/svg%3E") center/12px no-repeat }
.keijiLp .prose { max-width:760px;margin:0 auto;font-size:15px }
.keijiLp .prose p+p { margin-top:1em }
.keijiLp .prose strong { color:var(--magenta);background:linear-gradient(transparent 62%,var(--pink) 62%) }
.keijiLp .timeline { overflow-x:auto;padding-bottom:6px }
.keijiLp .tl,
.keijiLp .tl-mark { display:grid;grid-template-columns:1fr 1fr 1.25fr 1.25fr;min-width:760px;gap:0 }
.keijiLp .tl .seg { padding:14px 12px;color:#fff;font-weight:700;font-size:13.5px;line-height:1.5;position:relative }
.keijiLp .tl .seg small { display:block;font-weight:500;font-size:11.5px;opacity:.92 }
.keijiLp .seg.p { background:var(--navy);border-radius:10px 0 0 10px }
.keijiLp .seg.k { background:#2f67c9 }
.keijiLp .seg.c1 { background:var(--magenta) }
.keijiLp .seg.c2 { background:var(--magenta-dk);border-radius:0 10px 10px 0 }
.keijiLp .tl .act { padding:12px 12px 0;font-size:12.5px;color:var(--ink-2);line-height:1.7;border-left:1px dashed var(--line) }
.keijiLp .tl .act b { color:var(--ink);display:block;font-size:13px }
.keijiLp .tl-mark { font-size:11.5px;color:var(--ink-2);margin-top:8px }
.keijiLp .tl-mark span { padding-left:12px;border-left:2px solid var(--line) }
.keijiLp .tl-mark span:last-child { display:flex;justify-content:space-between;gap:8px }
.keijiLp .tl-callout { display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px }
.keijiLp .co { background:#fff;border-radius:10px;padding:18px;border-top:4px solid var(--navy) }
.keijiLp .co.m { border-top-color:var(--magenta) }
.keijiLp .co h3 { font-size:15.5px;margin-bottom:6px }
.keijiLp .co p { font-size:13.5px;color:var(--ink-2) }
.keijiLp .co .num { font-family:var(--f-en);font-weight:800;color:var(--navy);font-size:30px;line-height:1.1 }
.keijiLp .co.m .num { color:var(--magenta) }
.keijiLp .mv { display:grid;gap:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;max-width:900px;margin:36px auto 0 }
.keijiLp .mv-row { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:24px;padding:34px 36px }
.keijiLp .mv-row+.mv-row { border-top:1px solid var(--line) }
.keijiLp .mv-row .big { font-family:var(--f-en);font-weight:800;font-size:clamp(40px,7vw,72px);color:var(--pink);letter-spacing:.02em;line-height:1 }
.keijiLp .mv-row p { font-size:clamp(16px,2.2vw,19px);font-weight:700;line-height:1.75 }
.keijiLp .strength-lead { max-width:760px;margin:0 auto 32px }
.keijiLp .strengths { display:grid;grid-template-columns:repeat(3,1fr);gap:16px }
.keijiLp .st { background:#fff;border-radius:12px;padding:24px 22px;display:flex;flex-direction:column;gap:10px;border:1px solid var(--line) }
.keijiLp .st .no { font-family:var(--f-en);font-weight:800;font-size:13px;color:var(--sky);letter-spacing:.12em }
.keijiLp .st h3 { font-size:17px;line-height:1.55;color:var(--ink) }
.keijiLp .st p { font-size:13.5px;color:var(--ink-2) }
.keijiLp .merits { display:grid;gap:20px }
.keijiLp .merit { display:grid;grid-template-columns:200px minmax(0,1fr);gap:28px;align-items:start;padding:28px;border-radius:14px;background:#fff;border:1px solid var(--line) }
.keijiLp .merit .who { display:flex;flex-direction:column;gap:8px }
.keijiLp .merit .tag { font-family:var(--f-en);font-weight:800;color:var(--magenta);font-size:13px;letter-spacing:.14em }
.keijiLp .avatar { display:block;width:100%;height:auto;aspect-ratio:1;max-width:100%;border-radius:12px;object-fit:cover;object-position:50% 0;background:var(--pink-bg) }
.keijiLp .merit .name { font-size:12.5px;color:var(--ink-2) }
.keijiLp .merit h3 { font-size:19px;margin-bottom:10px;color:var(--ink) }
.keijiLp .merit p { font-size:14.5px }
.keijiLp .crimes { display:grid;grid-template-columns:repeat(3,1fr);gap:16px }
.keijiLp .cr { border-radius:12px;background:#fff;border:1px solid var(--line);padding:22px;display:flex;flex-direction:column;gap:10px }
.keijiLp .cr h3 { font-size:17px;color:var(--navy);display:flex;align-items:center;gap:8px }
.keijiLp .cr h3::before { content:"";width:8px;height:8px;border-radius:2px;background:var(--magenta) }
.keijiLp .chips { display:flex;flex-wrap:wrap;gap:6px }
.keijiLp .chip { font-size:12.5px;padding:3px 10px;border-radius:999px;background:var(--sky-bg);color:var(--navy);border:1px solid #d6e8fa }
.keijiLp .cr p { font-size:13px;color:var(--ink-2) }
.keijiLp .results { display:grid;grid-template-columns:repeat(2,1fr);gap:12px }
.keijiLp .res { display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;padding:16px 18px;border:1px solid var(--line);border-radius:10px;background:#fff;text-decoration:none }
.keijiLp .res:hover { border-color:var(--magenta) }
.keijiLp .res .out { font-size:12px;font-weight:700;color:#fff;background:var(--magenta);border-radius:4px;padding:2px 8px;white-space:nowrap;margin-top:3px }
.keijiLp .res .out.b { background:var(--navy) }
.keijiLp .res .out.g { background:#2f8a64 }
.keijiLp .res b { font-size:14px;font-weight:700;line-height:1.65;display:block }
.keijiLp .res small { font-size:11.5px;color:var(--ink-2) }
.keijiLp .more { display:flex;justify-content:center;margin-top:24px }
.keijiLp .btn-outline { background:#fff;color:var(--magenta);border:2px solid var(--magenta) }
.keijiLp .voices { display:grid;grid-template-columns:repeat(3,1fr);gap:16px }
.keijiLp .voice .stars { position:absolute;top:18px;right:18px;color:#f2b01e;font-size:14px;letter-spacing:.08em }
.keijiLp .voice-note { font-size:8pt;line-height:1.6;color:var(--ink-2);margin-top:14px }
.keijiLp .exp { display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px;align-items:center;margin-top:28px;padding:28px;border-radius:14px;background:var(--sky-bg);border:1px solid #d6e8fa }
.keijiLp .exp-photo { display:block;width:100%;height:auto;aspect-ratio:1;max-width:100%;border-radius:12px;object-fit:cover;object-position:50% 0 }
.keijiLp .exp-body { display:flex;flex-direction:column;gap:10px;min-width:0 }
.keijiLp .exp-tag { align-self:flex-start;background:var(--navy);color:#fff;font-weight:700;font-size:13px;border-radius:4px;padding:3px 12px;letter-spacing:.06em }
.keijiLp .exp h3 { font-size:clamp(17px,2.4vw,21px);line-height:1.6;color:var(--ink) }
.keijiLp .exp p { font-size:14.5px }
.keijiLp .exp-name { font-size:13px!important;color:var(--ink-2);font-weight:500 }
.keijiLp .lw-badge { display:inline-block;margin-left:6px;font-size:11px;font-weight:700;color:#fff;background:var(--navy);border-radius:3px;padding:0 6px;vertical-align:2px }
@media (max-width:768px) {
.keijiLp .exp { grid-template-columns:1fr;padding:20px }
.keijiLp .exp-photo { max-width:180px }
}
.keijiLp .voice { background:#fff;border-radius:12px;padding:22px;position:relative;border:1px solid var(--line) }
.keijiLp .voice::before { content:"“";font-family:Georgia,serif;font-size:56px;line-height:1;color:var(--pink);position:absolute;top:8px;left:14px }
.keijiLp .voice p { font-size:14px;padding-top:24px }
.keijiLp .voice small { display:block;margin-top:10px;font-size:12px;color:var(--ink-2) }
.keijiLp .fee-wrap { overflow-x:auto }
.keijiLp table.fee { width:100%;border-collapse:collapse;min-width:520px;background:#fff;font-size:14.5px }
.keijiLp .fee th,
.keijiLp .fee td { padding:14px 18px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top }
.keijiLp .fee thead th { background:var(--navy);color:#fff;font-weight:700;font-size:13.5px }
.keijiLp .fee tbody th { width:28%;font-weight:700;background:var(--sky-bg) }
.keijiLp .fee td.yen { font-family:var(--f-en);font-weight:700;font-size:18px;color:var(--magenta);white-space:nowrap;font-variant-numeric:tabular-nums }
.keijiLp .fee td.yen span { font-family:var(--f-jp);font-size:12px;color:var(--ink-2);font-weight:500 }
.keijiLp .fee .free { color:var(--navy) }
.keijiLp .fee-note { font-size:12px;color:var(--ink-2);margin-top:10px }
.keijiLp .flow { display:grid;grid-template-columns:repeat(5,1fr);gap:10px;counter-reset:f;padding:0;margin:0;list-style:none }
.keijiLp .flow li { background:#fff;border-radius:12px;padding:20px 14px;border:1px solid var(--line);position:relative;display:flex;flex-direction:column;gap:6px }
.keijiLp .flow li::before { counter-increment:f;content:"STEP " counter(f);font-family:var(--f-en);font-weight:800;font-size:11.5px;color:var(--magenta);letter-spacing:.12em }
.keijiLp .flow b { font-size:15px }
.keijiLp .flow span { font-size:12.5px;color:var(--ink-2);line-height:1.7 }
.keijiLp .faq { max-width:820px;margin:0 auto;display:grid;gap:10px }
.keijiLp .faq details { background:#fff;border:1px solid var(--line);border-radius:10px }
.keijiLp .faq summary { list-style:none;cursor:pointer;padding:16px 48px 16px 18px;font-weight:700;position:relative;display:flex;gap:12px }
.keijiLp .faq summary::-webkit-details-marker { display:none }
.keijiLp .faq summary::before { content:"Q";font-family:var(--f-en);font-weight:800;color:var(--magenta);flex:0 0 auto }
.keijiLp .faq summary::after { content:"";position:absolute;right:20px;top:24px;width:9px;height:9px;border-right:2px solid var(--magenta);border-bottom:2px solid var(--magenta);transform:rotate(45deg);transition:transform .2s }
.keijiLp .faq details[open] summary::after { transform:rotate(-135deg);top:28px }
.keijiLp .faq .a { padding:0 18px 18px 44px;font-size:14px;color:var(--ink-2) }
.keijiLp .lawyers { display:grid;grid-template-columns:repeat(3,1fr);gap:16px }
.keijiLp .lw { display:grid;grid-template-columns:84px minmax(0,1fr);gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px }
.keijiLp .lw .face { display:block;width:84px;height:84px;border-radius:50%;overflow:hidden;background:var(--pink-bg) }
.keijiLp .lw .face img { display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0;transform:scale(1.9);transform-origin:50% 22% }
.keijiLp .lw b { font-size:16px;display:block }
.keijiLp .lw small { font-size:12px;color:var(--ink-2) }
.keijiLp .final { background:linear-gradient(160deg,#0e2a66,#1544a3);color:#fff;text-align:center }
.keijiLp .final h2 { font-size:clamp(22px,3.4vw,30px);margin-bottom:10px }
.keijiLp .final p { opacity:.92;margin-bottom:24px }
.keijiLp .final .hero-cta { justify-content:center }
.keijiLp .sticky { position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--pink-bg);border-top:1px solid var(--pink);padding-bottom:env(safe-area-inset-bottom,0px) }
.keijiLp .sticky .wrap { display:flex;align-items:center;justify-content:space-between;gap:12px;padding-block:10px }
.keijiLp .sticky .tel { display:flex;align-items:center;gap:12px;line-height:1.35 }
.keijiLp .sticky .ic { flex:0 0 40px;height:40px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-family:var(--f-en);font-weight:800;font-size:13px }
.keijiLp .sticky .tel small { display:block;font-size:11.5px;color:var(--ink-2) }
.keijiLp .sticky .tel b { font-family:var(--f-en);font-size:22px;color:var(--navy);letter-spacing:.03em;user-select:all }
.keijiLp .sticky .btns { display:flex;gap:8px }
.keijiLp .sticky .btn { padding:12px 22px;font-size:14px }
.keijiLp .copy { background:none;border:1px solid var(--sky);color:var(--navy);border-radius:999px;font:700 11px var(--f-jp);padding:3px 10px;cursor:pointer;margin-left:6px }
@media (max-width:768px) {
.keijiLp .cases { grid-template-columns:repeat(2,1fr) }
.keijiLp .strengths,
.keijiLp .crimes,
.keijiLp .voices,
.keijiLp .lawyers,
.keijiLp .tl-callout { grid-template-columns:1fr 1fr }
.keijiLp .flow { grid-template-columns:1fr 1fr }
.keijiLp .worries { grid-template-columns:1fr 1fr }
}
@media (max-width:768px) {
.keijiLp section { padding-block:52px }
.keijiLp .stats { grid-template-columns:1fr 1fr }
.keijiLp .stat:nth-child(3) { border-left:0 }
.keijiLp .stat:nth-child(n/**/+3) { border-top:1px solid var(--line) }
.keijiLp .merit { grid-template-columns:1fr;padding:20px }
.keijiLp .merit .avatar { max-width:140px }
.keijiLp .mv-row { grid-template-columns:1fr;gap:10px;padding:24px 20px }
.keijiLp .sticky .tel small,
.keijiLp .sticky .btn-line { display:none }
.keijiLp .sticky .tel b { font-size:18px }
.keijiLp .sticky .ic { display:none }
}
.keijiLp .stages { display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-radius:14px;overflow:hidden;border:1px solid var(--line) }
.keijiLp .stage { padding:24px 22px;display:flex;flex-direction:column;gap:8px;position:relative;background:#fff }
.keijiLp .stage+.stage { border-left:1px solid var(--line) }
.keijiLp .stage .when { font-family:var(--f-en);font-weight:800;font-size:12px;letter-spacing:.14em;color:var(--sky) }
.keijiLp .stage h3 { font-size:17px }
.keijiLp .stage .goal { font-weight:700;font-size:13.5px;color:#fff;background:var(--magenta);border-radius:4px;padding:2px 10px;align-self:flex-start }
.keijiLp .stage.s2 .goal { background:var(--magenta-dk) }
.keijiLp .stage.s3 .goal { background:var(--navy) }
.keijiLp .stage p:not(.goal) { font-size:13.5px;color:var(--ink-2) }
.keijiLp .stage.s1 { background:var(--pink-bg) }
.keijiLp .stage-note { max-width:820px;margin:18px auto 0;font-size:13.5px;color:var(--ink-2);background:#fff;border-left:4px solid var(--magenta);padding:12px 16px }
.keijiLp .jidan-steps { margin-top:36px }
.keijiLp .jidan-steps h3 { font-size:18px;color:var(--magenta);text-align:center;margin-bottom:16px }
.keijiLp .jidan-steps ol { list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;counter-reset:j }
.keijiLp .jidan-steps li { background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 14px;display:flex;flex-direction:column;gap:6px }
.keijiLp .jidan-steps li::before { counter-increment:j;content:counter(j);font-family:var(--f-en);font-weight:800;color:#fff;background:var(--magenta);width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:13px }
.keijiLp .jidan-steps b { font-size:15px }
.keijiLp .jidan-steps span { font-size:12.5px;color:var(--ink-2);line-height:1.7 }
@media (max-width:768px) {
.keijiLp .jidan-steps ol { grid-template-columns:1fr 1fr }
}
@media (max-width:768px) {
.keijiLp .stages { grid-template-columns:1fr }
.keijiLp .stage+.stage { border-left:0;border-top:1px solid var(--line) }
.keijiLp .jidan-steps ol { grid-template-columns:1fr }
}
@media (prefers-reduced-motion:reduce) {
.keijiLp * { transition:none!important }
}
.keijiLp, .keijiLp * { box-sizing: border-box; }
.keijiLp { --f-en: "Montserrat", Arial, sans-serif; font-size: 15px; line-height: 1.9; padding-bottom: 0; }
.keijiLp img { max-width: 100%; height: auto; }
.keijiLp a { text-decoration: none; }
.keijiLp .stats { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.keijiLp .tel-box a { font-family: var(--f-en); font-size: 26px; font-weight: 700; letter-spacing: .04em; }
.keijiLp .sticky .tel a { font-family: var(--f-en); font-size: 22px; font-weight: 700; color: var(--navy); }
.keijiLp .lw { color: var(--ink); }
.keijiLp .fee-note a { text-decoration: underline; }
.keijiLp section[id], .keijiLp #top { scroll-margin-top: 90px; }
.keijiLp .breadcrumb { padding: 16px; }
@media (max-width:768px) {
.keijiLp .stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.keijiLp .stat { padding: 16px 6px; }
.keijiLp .stat:nth-child(3) { border-left: 0; border-top: 1px solid var(--line); }
.keijiLp .stat .v { font-size: 24px; }
.keijiLp .stat .v span { font-size: 11px; }
.keijiLp .stat .k { font-size: 11px; }
.keijiLp .sticky .wrap { gap: 8px; flex-wrap: wrap; justify-content: center; padding-block: 8px; }
.keijiLp .sticky .tel { flex: 1 1 auto; }
.keijiLp .sticky .tel a { font-size: 18px; }
.keijiLp .sticky .btns { flex: 1 1 auto; }
.keijiLp .sticky .btn { padding: 10px 12px; font-size: 12px; flex: 1; }
.keijiLp .sticky .btn-line { display: inline-flex; }
.keijiLp .copy { display: none; }
.keijiLp .hero-cta { flex-direction: column; }
.keijiLp .cases { grid-template-columns: 1fr; }
.keijiLp .fee-wrap { -webkit-overflow-scrolling: touch; }
}
.keijiLp .hero.lowFv { aspect-ratio: auto; display: block; }
.keijiLp .hero.lowFv::after { content: none; }

/* Reserve space for the fixed CTA after the unchanged site footer. */
body.keijiPage { padding-bottom: 96px; }
@media (max-width:768px) { body.keijiPage { padding-bottom: 120px; } }

.keijiLp .scroll-hint { display: none; }
@media (max-width:768px) {
 .keijiLp .strengths, .keijiLp .crimes, .keijiLp .voices, .keijiLp .lawyers,
 .keijiLp .tl-callout, .keijiLp .results, .keijiLp .worries, .keijiLp .flow { grid-template-columns: 1fr; }
 .keijiLp .badges { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); }
 .keijiLp .badge { font-size: 12px; padding: 6px 10px; text-align: center; }
 .keijiLp .sticky .tel { justify-content: center; }
 .keijiLp .scroll-hint { display: block; font-size: 12px; color: var(--ink-2); margin-top: 8px; }
}
