/* いろは堂キャリア 共通スタイル v1.0 (2026-07-17) */
:root{
  --ink:#2d3339;--ink-soft:#6b7480;--bg:#fbfaf8;--card:#ffffff;
  --accent:#0f766e;--accent-soft:#eaf4f3;--cta:#e85d04;--cta-hover:#d05304;
  --line:#e8e4de;--marker:#fff3b8;
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:"Hiragino Kaku Gothic ProN","Hiragino Sans","BIZ UDPGothic",Meiryo,system-ui,sans-serif;color:var(--ink);background:var(--bg);line-height:2.0;font-size:16px}
a{color:var(--accent)}
.wrap{max-width:680px;margin:0 auto;padding:0 20px}
header.site{background:var(--card);border-bottom:1px solid var(--line)}
header.site .wrap{display:flex;justify-content:space-between;align-items:center;padding:14px 20px}
.brand{font-weight:700;text-decoration:none;color:var(--ink);font-size:17px}
.brand span{color:var(--accent)}
.pr-note{background:#f3f1ed;color:var(--ink-soft);font-size:12px;text-align:center;padding:6px 12px}
.breadcrumb{font-size:12px;color:var(--ink-soft);padding:14px 0 0}
.breadcrumb a{color:var(--ink-soft)}
article{padding:28px 0 8px}
h1{font-size:25px;line-height:1.6;margin-bottom:14px;letter-spacing:.01em}
.meta{font-size:13px;color:var(--ink-soft);margin-bottom:30px}
h2{font-size:20px;line-height:1.6;margin:56px 0 20px;padding-bottom:10px;border-bottom:3px solid var(--accent-soft);position:relative}
h2::after{content:"";position:absolute;left:0;bottom:-3px;width:64px;height:3px;background:var(--accent)}
p{margin:18px 0}
mark{background:linear-gradient(transparent 62%, var(--marker) 62%);padding:0 1px}
.bubble{display:flex;align-items:flex-start;gap:12px;margin:20px 0}
.bubble .face{flex:none;width:44px;height:44px;border-radius:50%;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;font-size:22px}
.bubble .talk{background:var(--card);border:1px solid var(--line);border-radius:2px 14px 14px 14px;padding:12px 16px;font-size:15px;line-height:1.8;color:#414951}
.check-box{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:22px 24px;margin:24px 0}
.check-box .ttl{font-weight:700;margin-bottom:10px;color:var(--accent)}
.check-box ul{list-style:none}
.check-box li{padding:5px 0 5px 30px;position:relative;font-size:15px}
.check-box li::before{content:"✓";position:absolute;left:4px;color:var(--cta);font-weight:700}
.cta-block{text-align:center;margin:36px 0;padding:28px 20px;background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:0 2px 10px rgba(0,0,0,.04)}
.cta-block .lead{font-weight:700;margin-bottom:14px;font-size:17px}
.cta-btn{display:inline-block;background:var(--cta);color:#fff;font-weight:700;font-size:17px;text-decoration:none;padding:16px 36px;border-radius:999px;box-shadow:0 4px 12px rgba(232,93,4,.28);transition:transform .15s, background .2s}
.cta-btn:hover{background:var(--cta-hover);transform:translateY(-1px)}
.cta-note{font-size:12px;color:var(--ink-soft);margin-top:10px}
table{width:100%;border-collapse:collapse;margin:20px 0;font-size:14px;background:var(--card)}
th,td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}
th{background:var(--accent-soft);white-space:nowrap;font-weight:600}
.honest{background:#fdf6ec;border-left:4px solid #e0b96a;border-radius:0 10px 10px 0;padding:18px 20px;margin:22px 0;font-size:15px}
.honest .ttl{font-weight:700;margin-bottom:6px}
.steps{counter-reset:step;list-style:none;margin:22px 0}
.steps li{counter-increment:step;position:relative;padding:0 0 22px 52px;font-size:15px}
.steps li::before{content:counter(step);position:absolute;left:0;top:0;width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center}
.steps li:not(:last-child)::after{content:"";position:absolute;left:17px;top:40px;bottom:2px;width:2px;background:var(--accent-soft)}
.steps b{display:block;font-size:16px;margin-bottom:2px}
.faq-q{font-weight:700;margin:26px 0 8px;padding-left:1.8em;text-indent:-1.8em}
.faq-q::before{content:"Q．";color:var(--accent)}
.faq-a{margin:0 0 20px;padding-left:1.8em;text-indent:-1.8em;font-size:15px;color:#414951}
.faq-a::before{content:"A．";color:var(--cta);font-weight:700}
.fine{font-size:12.5px;color:var(--ink-soft);line-height:1.8}
.related{background:var(--accent-soft);border-radius:12px;padding:20px 22px;margin:32px 0}
.related .ttl{font-weight:700;color:var(--accent);margin-bottom:8px;font-size:15px}
.related a{font-size:15px}
footer.site{border-top:1px solid var(--line);margin-top:56px;padding:28px 0 40px;font-size:13px;color:var(--ink-soft)}
footer.site nav{margin-bottom:10px}
footer.site nav a{margin-right:16px}
/* ── メディアトップ用 ── */
.hero{padding:44px 0 8px}
.hero h1{font-size:26px;line-height:1.5}
.hero p{color:var(--ink-soft);margin-top:10px}
.card{display:block;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:22px 24px;margin:14px 0;text-decoration:none;color:var(--ink);transition:box-shadow .2s}
.card:hover{box-shadow:0 4px 14px rgba(0,0,0,.08)}
.card .tag{display:inline-block;font-size:12px;background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:2px 12px;margin-bottom:8px}
.card h3{font-size:17px;line-height:1.6}
.card p{font-size:14px;color:var(--ink-soft);margin-top:6px}
@media (max-width:600px){
  h1{font-size:21px}
  h2{font-size:18px}
  .hero h1{font-size:22px}
  .cta-btn{display:block;font-size:16px;padding:15px 20px}
}
