/* 宅建コーチ — SEO 内容页 共享样式（沿用 LP 设计 token） */
.tk{
  --green:#3CC77E; --green-dark:#28A865; --green-light:#E6F5EC; --green-mid:#AEDEC5;
  --gold:#D89C3A; --gold-dark:#B47E20; --gold-light:#FAF1DD;
  --navy:#1A2E4A; --navy-dark:#0F1F35; --navy-light:#E8EDF4;
  --blue:#2F6BD8; --blue-light:#EAF1FC;
  --purple:#7C5CFF; --purple-light:#EEE9FF;
  --cyan:#1FA6A6; --cyan-light:#E3F6F6;
  --yellow:#F59E0B; --yellow-light:#FEF3C7;
  --orange:#EA7A2C; --orange-light:#FFF0E5;
  --red:#F56565; --red-light:#FFF0F0;
  --pink:#C2569B; --pink-light:#FBEAF4;
  --seal-red:#C73E3A;
  --forest:#1A3020;
  --text:#1C2B1C; --text-2:#46584A; --text-3:#7E8E80;
  --bg:#F5F7F2; --white:#FFFFFF; --border:#D6E8D0;
  --r:16px;
  --shadow-sm:0 1px 4px rgba(0,0,0,.05),0 1px 2px rgba(0,0,0,.03);
  --shadow:0 4px 16px rgba(0,0,0,.07);
  --shadow-lg:0 12px 40px rgba(0,0,0,.10);
  --mincho:'Shippori Mincho B1',serif;
  --sans:'Noto Sans JP',sans-serif;
}
.tk *{box-sizing:border-box;margin:0;padding:0}
.tk{scroll-behavior:smooth}
.tk{font-family:var(--sans);color:var(--text);background:var(--bg);line-height:1.8;font-size:15px;-webkit-font-smoothing:antialiased}
.tk a{color:var(--green-dark);text-decoration:none}
.tk a:hover{text-decoration:underline}
.tk .sp-only{display:none}
.tk .nowrap{white-space:nowrap}
.tk .wrap{max-width:1080px;margin:0 auto;padding:0 24px}
.tk .narrow{max-width:820px}

/* ── header ── */
.tk .site-head{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}
.tk .site-head-inner{display:flex;align-items:center;gap:22px;height:62px;max-width:1180px;margin:0 auto;padding:0 24px}
.tk .brand{display:inline-flex;align-items:center;gap:8px;font-family:var(--mincho);font-weight:700;font-size:18px;color:var(--text);white-space:nowrap}
.tk .ui-icon{width:1em;height:1em;display:inline-block;vertical-align:-.12em;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.tk .ai-icon{display:block;width:100%;height:100%;object-fit:contain;flex-shrink:0}
.tk .brand-ic{width:30px;height:30px;border-radius:8px;background:var(--green);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 3px 9px rgba(60,199,126,.32)}
.tk .brand-ic .ui-icon{width:17px;height:17px}
.tk .nav{display:flex;align-items:center;gap:6px;margin-left:14px;font-size:14px;font-weight:600}
.tk .nav-grp{position:relative}
.tk .nav-top{cursor:pointer;display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:9px;color:var(--text-2);font-family:inherit;font-size:14px;font-weight:600;white-space:nowrap;background:none;border:0}
.tk .nav-top:hover,.tk .nav-grp:hover>.nav-top,.tk .nav-grp:focus-within>.nav-top{color:var(--green-dark);background:var(--green-light);text-decoration:none}
.tk .caret{width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-top:-3px;opacity:.5;transition:transform .15s}
.tk .nav-grp:hover .caret,.tk .nav-grp:focus-within .caret,.tk .nav-grp.open .caret{transform:rotate(-135deg);margin-top:2px}
.tk .nav-panel{position:absolute;top:calc(100% + 9px);left:0;background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-lg);padding:18px 20px;display:none;z-index:60}
.tk .nav-panel::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}
.tk .nav-grp:hover>.nav-panel,.tk .nav-grp:focus-within>.nav-panel,.tk .nav-grp.open>.nav-panel{display:block}
.tk .np-grid{display:grid;grid-template-columns:repeat(3,minmax(208px,1fr));gap:4px 8px}
.tk .np-grid.one{grid-template-columns:repeat(3,minmax(208px,1fr))}
.tk .np-h{grid-column:1/-1;font-size:10.5px;font-weight:800;color:var(--text-3);letter-spacing:.09em;margin:9px 0 2px 12px;text-transform:uppercase}
.tk .np-h:first-child{margin-top:0}
.tk .np-i{display:flex;align-items:flex-start;gap:11px;padding:9px 11px;border-radius:11px;text-decoration:none;transition:background .14s}
.tk .np-i:hover{background:var(--green-light)}
.tk .np-i-ic{flex:none;width:34px;height:34px;border-radius:9px;background:var(--green-light);display:flex;align-items:center;justify-content:center;color:var(--green-dark);transition:background .14s,box-shadow .14s}
.tk .np-i-ic .ui-icon{width:18px;height:18px}
.tk .np-i:hover .np-i-ic{background:#fff;box-shadow:0 2px 6px rgba(26,48,32,.1)}
.tk .np-i-b{display:flex;flex-direction:column;gap:1px;min-width:0}
.tk .np-i-t{font-size:13.5px;font-weight:700;color:var(--text);line-height:1.35}
.tk .np-i-d{font-size:11.5px;color:var(--text-3);font-weight:500;line-height:1.4}
.tk .np-i:hover .np-i-t{color:var(--green-dark)}
.tk .nav-tgl{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;cursor:pointer;border-radius:9px}
.tk .nav-tgl span{display:block;width:21px;height:2px;background:var(--text);border-radius:2px;transition:.2s}
.tk .head-cta{margin-left:auto;display:flex;gap:10px;align-items:center}
.tk .btn-login{font-size:13px;font-weight:600;color:var(--text-2);padding:8px 12px;white-space:nowrap}
.tk .btn-signup{font-size:13px;font-weight:700;color:#fff;background:var(--green);padding:9px 16px;border-radius:100px;box-shadow:0 3px 10px rgba(60,199,126,.3);white-space:nowrap}
.tk .btn-signup:hover{background:var(--green-dark);text-decoration:none}
@media(max-width:780px){
.tk .nav-tgl{display:flex;margin-left:4px}
.tk .nav{position:absolute;top:62px;left:0;right:0;z-index:55;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:6px 14px 14px;background:#fff;border-bottom:1px solid var(--border);box-shadow:var(--shadow-lg);max-height:calc(100vh - 62px);overflow:auto;display:none}
.tk #navtgl:checked~.nav{display:flex}
.tk .nav-grp{position:static}
.tk .nav-top{justify-content:space-between;padding:14px 6px;border-radius:0;border-bottom:1px solid var(--border);font-size:15px;width:100%}
.tk .nav-grp:hover>.nav-top,.tk .nav-grp:focus-within>.nav-top{background:transparent;color:var(--green-dark)}
.tk .caret{width:8px;height:8px}
.tk .nav-panel{position:static;display:none;border:none;box-shadow:none;border-radius:0;padding:2px 0 10px 6px;background:transparent}
.tk .nav-grp:hover>.nav-panel{display:none}
.tk .nav-grp:focus-within>.nav-panel{display:block}
.tk .np-grid,.tk .np-grid.one{grid-template-columns:1fr;gap:0}
.tk .np-h{margin:12px 0 4px 12px}
.tk .np-i{padding:10px 8px}
.tk .np-i-ic{width:32px;height:32px}
.tk .np-i-t,.tk .np-i-d{white-space:normal}
.tk #navtgl:checked~.nav-tgl span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.tk #navtgl:checked~.nav-tgl span:nth-child(2){opacity:0}
.tk #navtgl:checked~.nav-tgl span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
}
@media(max-width:520px){.tk .site-head-inner{gap:10px;padding:0 14px}.tk .brand{font-size:16px}.tk .head-cta{gap:6px}.tk .btn-login{padding:6px 4px;font-size:12px}.tk .btn-signup{padding:8px 12px;font-size:12px}}

/* ── breadcrumb ── */
.tk .crumb{font-size:12.5px;color:var(--text-3);padding:16px 0 4px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.tk .crumb a{color:var(--text-3)}
.tk .crumb a:hover{color:var(--green-dark)}
.tk .crumb .sep{opacity:.5}

/* ── page hero ── */
.tk .page-hero{padding:8px 0 22px;border-bottom:1px solid var(--border);margin-bottom:26px}
.tk .eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700;letter-spacing:.06em;color:var(--green-dark);margin-bottom:10px}
.tk .eyebrow.pe{color:var(--seal-red)}
.tk .eyebrow.yo{color:var(--gold-dark)}
.tk h1.title{font-family:var(--mincho);font-weight:800;font-size:30px;line-height:1.4;color:var(--text)}
.tk h1.title small{display:block;font-size:14px;font-weight:600;color:var(--text-3);font-family:var(--sans);margin-top:8px}
.tk .lead{font-size:15px;color:var(--text-2);margin-top:12px;max-width:680px}
.tk .tag{display:inline-block;font-size:11.5px;font-weight:700;padding:3px 10px;border-radius:100px;margin-right:6px}
.tk .tag.kako{background:var(--seal-red);color:#fff}
.tk .tag.yoso{background:var(--gold);color:#fff}
.tk .tag.subj{background:var(--green-light);color:var(--green-dark)}

/* ── question card ── */
.tk .qcard{background:#fff;border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-sm);padding:26px 28px;margin-bottom:22px}
.tk .qstem{font-size:16.5px;font-weight:600;line-height:1.85;margin-bottom:18px}
.tk .stmt{border-left:3px solid var(--green-mid);padding:6px 0 6px 14px;margin:8px 0;color:var(--text-2);font-size:14.5px}
.tk .opts{list-style:none;display:flex;flex-direction:column;gap:10px;margin-top:6px}
.tk .opt{display:flex;gap:12px;padding:13px 16px;border:1.5px solid var(--border);border-radius:12px;font-size:14.5px;line-height:1.7}
.tk .opt .num{flex-shrink:0;width:24px;height:24px;border-radius:50%;background:var(--bg);color:var(--text-2);font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center}
.tk .opt.correct{border-color:var(--green);background:var(--green-light)}
.tk .opt.correct .num{background:var(--green);color:#fff}
.tk .opt.correct::after{content:'正解';margin-left:auto;align-self:center;font-size:11px;font-weight:700;color:var(--green-dark)}

/* ── 8-block kaisetsu ── */
.tk .kaisetsu{display:flex;flex-direction:column;gap:14px;margin-top:8px}
.tk .blk{border-radius:14px;padding:20px 22px;border:1px solid transparent}
.tk .blk-h{font-family:var(--mincho);font-weight:700;font-size:17px;margin-bottom:12px;display:flex;align-items:center;gap:9px}
.tk .blk-h .n{font-size:12px;font-weight:700;font-family:var(--sans);opacity:.6}
.tk .sub{margin:10px 0}
.tk .sub-l{font-size:12px;font-weight:700;color:var(--text-3);margin-bottom:3px;letter-spacing:.03em}
.tk .sub-b{font-size:14.5px;color:var(--text-2);line-height:1.85}
.tk .chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.tk .chip{font-size:12px;background:#fff;border:1px solid var(--border);border-radius:100px;padding:3px 11px;color:var(--text-2)}
.tk .blk ul{margin:4px 0 4px 2px;list-style:none}
.tk .blk ul li{position:relative;padding-left:16px;font-size:14px;color:var(--text-2);margin:4px 0}
.tk .blk ul li::before{content:'·';position:absolute;left:4px;color:var(--green)}
.tk ol.reasons{margin:6px 0 0 0;counter-reset:r;list-style:none}
.tk ol.reasons li{position:relative;padding:6px 0 6px 30px;font-size:14px;color:var(--text-2);border-top:1px dashed var(--border)}
.tk ol.reasons li:first-child{border-top:none}
.tk ol.reasons li::before{counter-increment:r;content:counter(r);position:absolute;left:0;top:6px;width:20px;height:20px;border-radius:50%;background:var(--green);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}
.tk table.cmp{width:100%;border-collapse:collapse;margin-top:6px;font-size:13px}
.tk table.cmp th,.tk table.cmp td{border:1px solid var(--border);padding:7px 10px;text-align:left}
.tk table.cmp th{background:var(--green-light);color:var(--green-dark);font-weight:700}
.tk .wrong{padding:12px 0;border-top:1px dashed #E3CBC9}
.tk .wrong:first-child{border-top:none}
.tk .wrong .wp{font-weight:700;color:var(--text);font-size:14.5px;margin-bottom:5px}
.tk .wrong .ww{font-size:13.5px;color:var(--text-3);margin:3px 0}
.tk .wrong .wa{font-size:13.5px;color:var(--green-dark)}
/* block themes */
.tk .blk.point{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-dark) 100%);color:#fff;position:relative;overflow:hidden}
.tk .blk.point .blk-h,.tk .blk.point .sub-b{color:#fff}
.tk .blk.point .eyebrow{color:var(--gold)}
.tk .blk.point::after{content:'KEY';position:absolute;right:16px;top:8px;font-family:var(--mincho);font-size:46px;font-weight:800;color:rgba(255,255,255,.06)}
.tk .blk.deep{background:var(--blue-light);border-color:#cfe0f7}.tk .blk.deep .blk-h{color:var(--blue)}
.tk .blk.know{background:var(--purple-light);border-color:#ddd4fb}.tk .blk.know .blk-h{color:var(--purple)}
.tk .blk.mem{background:var(--cyan-light);border-color:#c7ecec}.tk .blk.mem .blk-h{color:var(--cyan)}
.tk .blk.exam{background:var(--yellow-light);border-color:#f7e4ad}.tk .blk.exam .blk-h{color:var(--gold-dark)}
.tk .blk.real{background:var(--orange-light);border-color:#f8d8be}.tk .blk.real .blk-h{color:var(--orange)}
.tk .blk.mis{background:var(--red-light);border-color:#f8cfcf}.tk .blk.mis .blk-h{color:var(--red)}
.tk .blk.sum{background:var(--pink-light);border-color:#f0cfe4}.tk .blk.sum .blk-h{color:var(--pink)}
.tk .concl{background:#fff;border-radius:10px;padding:12px 15px;font-size:14.5px;color:var(--text);font-weight:600;margin-bottom:4px}

/* ── lists / grids ── */
.tk .grid{display:grid;gap:14px}
.tk .grid.c2{grid-template-columns:repeat(2,1fr)}
.tk .grid.c3{grid-template-columns:repeat(3,1fr)}
.tk .grid.c4{grid-template-columns:repeat(4,1fr)}
@media(max-width:760px){.tk .grid.c2,.tk .grid.c3,.tk .grid.c4{grid-template-columns:1fr}}
.tk .card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:18px 20px;box-shadow:var(--shadow-sm);transition:transform .15s,box-shadow .15s;display:block}
.tk .card:hover{transform:translateY(-2px);box-shadow:var(--shadow);text-decoration:none}
.tk .card-k{font-size:12px;font-weight:700;color:var(--green-dark);margin-bottom:4px}
.tk .card-t{font-family:var(--mincho);font-weight:700;font-size:17px;color:var(--text);margin-bottom:5px}
.tk .card-d{font-size:13px;color:var(--text-3)}
.tk a.card.linkc{text-decoration:none;color:var(--text);position:relative}
.tk a.card.linkc:hover{border-color:var(--green)}
.tk a.card.linkc .card-go{display:inline-block;margin-top:10px;font-size:12.5px;font-weight:700;color:var(--green-dark)}
.tk a.card.linkc:hover .card-go{color:var(--green)}
.tk .qlist{list-style:none;display:flex;flex-direction:column;gap:8px}
.tk .qlist li a{display:flex;gap:12px;align-items:center;background:#fff;border:1px solid var(--border);border-radius:12px;padding:13px 16px;color:var(--text)}
.tk .qlist li a:hover{border-color:var(--green);text-decoration:none;box-shadow:var(--shadow-sm)}
.tk .qno{flex-shrink:0;font-family:var(--mincho);font-weight:700;font-size:14px;color:var(--green-dark);min-width:52px}
.tk .qtxt{font-size:14px;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tk .qmeta{margin-left:auto;flex-shrink:0;font-size:11px;color:var(--text-3)}

/* ── info table (試験情報) ── */
.tk .itable{width:100%;border-collapse:collapse;margin:14px 0;font-size:14.5px;background:#fff;border-radius:12px;overflow:hidden;box-shadow:var(--shadow-sm)}
.tk .itable th{background:var(--green-light);color:var(--green-dark);text-align:left;padding:12px 16px;width:34%;font-weight:700;border-bottom:1px solid var(--border)}
.tk .itable td{padding:12px 16px;border-bottom:1px solid var(--border);color:var(--text-2)}
/* 多列数据表（年度別の推移など）：34%等宽を解除し width:100% で撑满、ヘッダー折り返し無し・数値中央寄せ。狭幅のみ横スクロール */
.tk .itable.data th{width:auto;white-space:nowrap;text-align:center}
.tk .itable.data td{width:auto;text-align:center;white-space:nowrap}
.tk .itable.data th:first-child,.tk .itable.data td:first-child{text-align:left}
@media(max-width:560px){.tk .itable.data{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}}
.tk .prose h2{font-family:var(--mincho);font-size:21px;margin:30px 0 10px;color:var(--text);font-weight:800}
.tk .prose h2::before{content:'';display:inline-block;width:5px;height:18px;background:var(--green);border-radius:3px;margin-right:9px;vertical-align:-2px}
.tk .prose p{margin:8px 0;color:var(--text-2)}
.tk .faq-q{font-weight:700;color:var(--text);margin-top:16px;font-size:15px}
.tk .faq-a{color:var(--text-2);margin-top:4px}

/* ── CTA banner ── */
.tk .cta-band{background:linear-gradient(135deg,#1A3020,#2A4A35);border-radius:var(--r);padding:30px 32px;margin:34px 0;color:#fff;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.tk .cta-band .ct{flex:1;min-width:240px}
.tk .cta-band .ck{font-size:12px;color:rgba(255,255,255,.55);font-weight:700;margin-bottom:5px}
.tk .cta-band .cti{font-family:var(--mincho);font-size:21px;font-weight:700}
.tk .cta-band a{background:#fff;color:var(--forest);font-weight:700;padding:13px 24px;border-radius:100px;font-size:14px}
.tk .cta-band a:hover{text-decoration:none;opacity:.92}

/* ── pillar 落地页 ── */
.tk .hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px}
.tk .btn-primary{display:inline-block;background:var(--green);color:#fff;font-weight:700;padding:13px 26px;border-radius:100px;box-shadow:0 4px 14px rgba(60,199,126,.32);font-size:15px}
.tk .btn-primary:hover{background:var(--green-dark);text-decoration:none}
.tk .btn-ghost2{display:inline-block;border:1.5px solid var(--green-mid);color:var(--green-dark);font-weight:700;padding:12px 22px;border-radius:100px;font-size:14px}
.tk .btn-ghost2:hover{background:var(--green-light);text-decoration:none}
.tk .statbar{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0 4px}
.tk .statbar .s{background:#fff;border:1px solid var(--border);border-radius:12px;padding:11px 18px;min-width:118px;box-shadow:var(--shadow-sm)}
.tk .statbar .s .n{font-family:var(--mincho);font-weight:800;font-size:23px;color:var(--green-dark);line-height:1.2}
.tk .statbar .s .n small{font-size:13px;font-weight:700}
.tk .statbar .s .l{font-size:11px;color:var(--text-3);margin-top:2px}
.tk .sec{margin:34px 0}
.tk .sec-h{font-family:var(--mincho);font-weight:800;font-size:23px;color:var(--text);margin-bottom:6px;display:flex;align-items:center;gap:10px}
.tk .sec-h::before{content:'';width:5px;height:21px;background:var(--green);border-radius:3px}
.tk .sec-lead{font-size:14.5px;color:var(--text-2);margin-bottom:16px;max-width:720px}
.tk .pain{background:#fff;border:1px solid var(--border);border-top:3px solid var(--seal-red);border-radius:12px;padding:17px 19px}
.tk .pain .p{font-family:var(--mincho);font-weight:700;color:var(--text);margin-bottom:6px;font-size:15.5px}
.tk .pain .s{font-size:13.5px;color:var(--text-2);line-height:1.75}
.tk .pain .fix{font-size:13px;color:var(--green-dark);margin-top:10px;font-weight:600;padding-top:9px;border-top:1px dashed var(--border)}
.tk .howto{counter-reset:h;list-style:none;margin:6px 0}
.tk .howto li{position:relative;padding:10px 0 10px 40px;border-top:1px dashed var(--border);font-size:14.5px;color:var(--text-2)}
.tk .howto li:first-child{border-top:none}
.tk .howto li strong{color:var(--text)}
.tk .howto li::before{counter-increment:h;content:counter(h);position:absolute;left:0;top:9px;width:26px;height:26px;border-radius:50%;background:var(--green-light);color:var(--green-dark);font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}
.tk .faq-item{background:#fff;border:1px solid var(--border);border-radius:12px;padding:15px 18px;margin-bottom:10px}
.tk .faq-item .faq-q{margin-top:0;font-size:15px}
.tk .faq-item .faq-a{margin-top:6px;font-size:14px;line-height:1.8}
.tk .itable a{font-weight:600}

/* ══ pillar v2: 设计化落地页 ══ */
.tk .lp{overflow:hidden}
.tk .sec.full{padding:54px 0;border-top:1px solid var(--border)}
.tk .sec.alt{background:linear-gradient(180deg,#fff 0%,var(--green-light) 100%)}
.tk .sec.dark{background:linear-gradient(160deg,var(--forest) 0%,#21402c 100%);color:#fff}
.tk .sec.dark .sec-h,.tk .sec.dark .sec-lead{color:#fff}
.tk .sec.dark .sec-lead{color:rgba(255,255,255,.78)}
.tk .sec-eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700;letter-spacing:.1em;color:var(--green-dark);margin-bottom:9px;text-transform:uppercase}
.tk .sec-eyebrow::before{content:'';width:22px;height:2px;background:var(--green)}
.tk .sec-eyebrow .ui-icon{width:15px;height:15px;letter-spacing:0}
.tk .sec-h2{font-family:var(--mincho);font-weight:800;font-size:27px;line-height:1.4;color:var(--text);margin-bottom:8px}
.tk .sec.dark .sec-h2{color:#fff}
.tk .sec-sub{font-size:14.5px;color:var(--text-2);max-width:680px;margin-bottom:26px}
.tk .sec.dark .sec-sub{color:rgba(255,255,255,.75)}
/* 中央寄せセクション：見出し・説明文をギャラリーと揃える（右側に余白を残した左寄せ折り返しを解消） */
.tk .tac{text-align:center}
.tk .tac .sec-sub{margin-left:auto;margin-right:auto}
.tk .tac .fcp{text-align:left}

/* hero */
.tk .lp-hero{position:relative;background:linear-gradient(155deg,#fff 0%,#F2F8F0 55%,#E7F4EC 100%);border-bottom:1px solid var(--border);overflow:hidden}
.tk .lp-hero::before{content:'';position:absolute;top:-120px;right:-100px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(60,199,126,.12),transparent 68%)}
.tk .lp-hero-in{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;max-width:1180px;margin:0 auto;padding:62px 40px 66px}
.tk .lp-eyebrow{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--border);border-radius:100px;padding:6px 14px;font-size:12.5px;font-weight:700;color:var(--green-dark);box-shadow:var(--shadow-sm);margin-bottom:20px}
.tk .lp-eyebrow .ui-icon{width:15px;height:15px}
.tk .lp-eyebrow .ai-icon{width:20px;height:20px;margin-left:-2px}
/* hero 上部の汎用「宅建◯◯」チップは視覚的に隠す（SEO/GEO のため DOM には残す＝sr-only）。
   exam-2026 の .cd-eyebrow は「年度＋試験名」の意味ある見出しなので除外＝表示する */
.tk .lp-eyebrow,.tk .me-eyebrow{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.tk .lp-h1{font-family:var(--mincho);font-weight:800;font-size:40px;line-height:1.42;color:var(--text);letter-spacing:.01em}
.tk .lp-h1 em{font-style:normal;color:var(--green-dark);position:relative}
.tk .lp-h1 em::after{content:'';position:absolute;left:0;right:0;bottom:2px;height:9px;background:rgba(60,199,126,.22);z-index:-1}
.tk .lp-sub{font-size:15.5px;color:var(--text-2);line-height:1.95;margin-top:18px;max-width:520px}
.tk .lp-stats{display:grid;grid-template-columns:repeat(4,auto);gap:26px;margin:26px 0 8px}
.tk .lp-stats .v{font-family:var(--mincho);font-weight:800;font-size:30px;color:var(--green-dark);line-height:1.1}
.tk .lp-stats .v small{font-size:14px}
.tk .lp-stats .l{font-size:11px;color:var(--text-3);margin-top:3px}
@media(max-width:1180px){.tk .lp-hero-in{gap:42px;padding-left:24px;padding-right:24px}}
@media(max-width:880px){.tk .lp-hero-in{grid-template-columns:1fr;gap:34px}.tk .lp-h1{font-size:31px}.tk .lp-stats{grid-template-columns:repeat(2,1fr);gap:18px}}
@media(max-width:520px){.tk .sp-only{display:block}.tk .lp-hero-in{padding:44px 18px 48px}.tk .lp-h1{font-size:27px;line-height:1.5}.tk .lp-sub{font-size:14px;line-height:1.9}.tk .lp-stats{gap:16px}.tk .hero-actions{gap:8px}.tk .hero-actions .btn-primary,.tk .hero-actions .btn-ghost2{font-size:13px;padding:10px 16px}}
/* 产品截图框 */
.tk .shot{position:relative;border-radius:18px;overflow:hidden;border:1px solid var(--border);box-shadow:0 24px 60px rgba(26,48,32,.16);background:#fff}
.tk .shot::before{content:'';display:block;height:30px;background:linear-gradient(90deg,#F2F6F0,#fff);border-bottom:1px solid var(--border)}
.tk .shot::after{content:'';position:absolute;top:11px;left:14px;width:8px;height:8px;border-radius:50%;background:#E0B0AE;box-shadow:14px 0 0 #E6CEA0,28px 0 0 #AEDEC5}
.tk .shot img{display:block;width:100%;height:auto}
.tk .shot-cap{font-size:12px;color:var(--text-3);text-align:center;margin-top:10px}
/* 图片占位（待生图替换） */
.tk .imgph{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;width:100%;border:2px dashed var(--green-mid);border-radius:18px;background:repeating-linear-gradient(45deg,#fff,#fff 11px,#F1F9F4 11px,#F1F9F4 22px);color:var(--text-3);text-align:center;padding:30px 24px;min-height:300px}
.tk .imgph .ic{font-size:32px;opacity:.65}
.tk .imgph .ic .ui-icon{width:32px;height:32px}
.tk .imgph .ic .ai-icon{width:56px;height:56px}
.tk .imgph .t{font-family:var(--mincho);font-weight:700;color:var(--green-dark);font-size:15px}
.tk .imgph .d{font-size:12px;color:var(--text-3)}
.tk .imgph .d code{background:rgba(60,199,126,.12);padding:1px 6px;border-radius:5px;font-size:11px}
.tk .imgph.on-dark{border-color:rgba(174,222,197,.45);background:repeating-linear-gradient(45deg,rgba(255,255,255,.03),rgba(255,255,255,.03) 11px,rgba(255,255,255,.07) 11px,rgba(255,255,255,.07) 22px)}
.tk .imgph.on-dark .t{color:var(--green-mid)}
.tk .imgph.on-dark .d{color:rgba(255,255,255,.55)}
.tk .imgph.on-dark .d code{background:rgba(255,255,255,.12)}
.tk .imgph .pr{margin-top:11px;width:100%;max-width:600px;background:#fff;border:1px dashed var(--green-mid);border-radius:9px;padding:10px 12px;text-align:left;font-size:11px;line-height:1.7;color:var(--text-2)}
.tk .imgph .pr .lab{display:block;font-weight:700;color:var(--green-dark);font-size:10.5px;letter-spacing:.04em;margin-bottom:5px}
.tk .imgph .pr .en{display:block;margin-top:6px;font-size:10px;color:var(--text-3);font-family:ui-monospace,Menlo,Consolas,monospace;line-height:1.6}
.tk .imgph.on-dark .pr{background:rgba(255,255,255,.06);border-color:rgba(174,222,197,.4);color:rgba(255,255,255,.78)}
.tk .imgph.on-dark .pr .en{color:rgba(255,255,255,.55)}
.tk .imgph.wide{min-height:200px}
.tk .seo-art{display:block;width:100%;height:auto;border-radius:20px;border:1px solid rgba(174,222,197,.62);box-shadow:0 18px 48px rgba(26,48,32,.12);background:#fff}
.tk .seo-art-hero{border:0;box-shadow:none;border-radius:24px;mix-blend-mode:multiply;width:100%;max-width:560px;margin:0 auto}
.tk .s-media .seo-art{object-fit:contain}

/* 痛点 红→绿 */
.tk .pains{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:760px){.tk .pains{grid-template-columns:1fr}}
.tk .pcard{background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column}
.tk .pcard-t{padding:20px 20px 18px;background:linear-gradient(180deg,#FCF4F3,#F8ECEB);border-bottom:1px dashed #E3CBC9;flex:1}
.tk .pcard-ic{width:66px;height:66px;display:flex;align-items:center;justify-content:center;color:#C9463E;margin-bottom:10px}
.tk .pcard-ic .ui-icon{width:21px;height:21px}
.tk .pcard-ic .ai-icon{width:64px;height:64px}
.tk .pcard-p{font-family:var(--mincho);font-weight:700;font-size:16px;color:var(--text);margin-bottom:6px}
.tk .pcard-s{font-size:13px;color:var(--text-2);line-height:1.7}
.tk .pcard-b{padding:16px 20px;background:var(--green-light);position:relative}
.tk .pcard-b::before{content:'↓';position:absolute;top:-15px;left:20px;width:30px;height:30px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;box-shadow:0 3px 9px rgba(60,199,126,.4)}
.tk .pcard-fix{font-size:13.5px;color:var(--green-dark);font-weight:600;line-height:1.65;margin-top:4px}

/* 数据可视化 */
.tk .viz{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:760px){.tk .viz{grid-template-columns:1fr 1fr}}
.tk .vcard{background:#fff;border:1px solid var(--border);border-radius:16px;padding:22px 20px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;transition:transform .15s,box-shadow .15s}
.tk a.vcard:hover{transform:translateY(-3px);box-shadow:var(--shadow);text-decoration:none}
.tk .vcard .vk{font-size:12px;font-weight:700;color:var(--text-3)}
.tk .vcard .vnum{font-family:var(--mincho);font-weight:800;font-size:34px;color:var(--green-dark);line-height:1.1}
.tk .vcard .vnum small{font-size:15px}
.tk .vcard .vd{font-size:12px;color:var(--text-3)}
.tk .vcard .vmore{font-size:11.5px;color:var(--green-dark);font-weight:700;margin-top:2px}
.tk .ring{position:relative;width:104px;height:104px;border-radius:50%;background:conic-gradient(var(--green) 0 16.5%,var(--green-mid) 16.5% 100%);display:grid;place-items:center;margin:2px 0}
.tk .ring .hole{width:78px;height:78px;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:inset 0 0 0 1px var(--border)}
.tk .ring .hole b{font-family:var(--mincho);font-weight:800;font-size:21px;color:var(--green-dark)}
.tk .gauge{width:100%;height:14px;border-radius:100px;background:var(--green-light);overflow:hidden;margin:8px 0 2px}
.tk .gauge i{display:block;height:100%;width:76%;background:linear-gradient(90deg,var(--green),var(--green-dark));border-radius:100px}
.tk .vico{width:78px;height:78px;color:var(--green-dark);display:grid;place-items:center;margin-bottom:2px}
.tk .vico .ui-icon{width:23px;height:23px}
.tk .vico .ai-icon{width:76px;height:76px}

/* 配点 条形 */
.tk .haiten{display:flex;flex-direction:column;gap:14px}
.tk .hrow{display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:14px}
.tk .hrow .hn{font-weight:700;font-size:14px;color:var(--text)}
.tk .hbar{height:30px;border-radius:8px;background:var(--bg);overflow:hidden;position:relative}
.tk .hbar i{display:block;height:100%;border-radius:8px;background:linear-gradient(90deg,var(--green-mid),var(--green));box-shadow:inset 0 0 0 1px rgba(40,168,101,.2)}
.tk .hrow.b1 .hbar i{background:linear-gradient(90deg,#7DD3A8,var(--green-dark))}
.tk .hrow .hv{font-family:var(--mincho);font-weight:800;font-size:18px;color:var(--green-dark);min-width:54px;text-align:right}
@media(max-width:600px){.tk .hrow{grid-template-columns:88px 1fr auto;gap:8px}}

/* 過去問 split */
.tk .split{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center}
@media(max-width:840px){.tk .split{grid-template-columns:1fr;gap:30px}}
.tk .kpi-row{display:flex;gap:26px;margin:18px 0}
.tk .kpi .kn{font-family:var(--mincho);font-weight:800;font-size:28px;color:#fff}
.tk .kpi .kl{font-size:12px;color:rgba(255,255,255,.7)}
.tk .split .entry{display:flex;flex-direction:column;gap:10px}
.tk .entry-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:16px 18px;color:#fff;display:flex;align-items:center;gap:14px;transition:background .15s}
.tk .entry-card:hover{background:rgba(255,255,255,.13);text-decoration:none}
.tk .entry-card .ec-ic{font-size:24px}
.tk .entry-card .ec-t{font-family:var(--mincho);font-weight:700;font-size:16px;color:#fff}
.tk .entry-card .ec-d{font-size:12px;color:rgba(255,255,255,.65)}
.tk .entry-card .ec-ar{margin-left:auto;color:var(--green-mid);font-weight:700}

/* 勉強法 timeline */
.tk .steps{position:relative;max-width:760px}
.tk .steps::before{content:'';position:absolute;left:21px;top:10px;bottom:10px;width:2px;background:var(--green-mid)}
.tk .step{position:relative;padding:0 0 22px 60px}
.tk .step:last-child{padding-bottom:0}
.tk .step .sn{position:absolute;left:0;top:0;width:44px;height:44px;border-radius:50%;background:#fff;border:2px solid var(--green);color:var(--green-dark);font-family:var(--mincho);font-weight:800;font-size:18px;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm)}
.tk .step .st{font-family:var(--mincho);font-weight:700;font-size:16.5px;color:var(--text);margin-bottom:4px;padding-top:8px}
.tk .step .sd{font-size:13.5px;color:var(--text-2);line-height:1.7}

/* 科目色卡 */
.tk .subjgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media(max-width:760px){.tk .subjgrid{grid-template-columns:1fr 1fr}}
.tk .scard{background:#fff;border:1px solid var(--border);border-radius:16px;padding:20px;box-shadow:var(--shadow-sm);border-top:4px solid var(--green);transition:transform .15s,box-shadow .15s;display:block}
.tk .scard:hover{transform:translateY(-3px);box-shadow:var(--shadow);text-decoration:none}
.tk .scard.c-blue{border-top-color:var(--blue)}.tk .scard.c-purple{border-top-color:var(--purple)}.tk .scard.c-orange{border-top-color:var(--orange)}
.tk .scard .sc-h{font-family:var(--mincho);font-weight:800;font-size:19px;color:var(--text);margin-bottom:6px}
.tk .scard .sc-b{display:inline-block;font-size:11.5px;font-weight:700;color:var(--green-dark);background:var(--green-light);border-radius:100px;padding:3px 11px;margin-bottom:8px}
.tk .scard.c-blue .sc-b{color:var(--blue);background:var(--blue-light)}.tk .scard.c-purple .sc-b{color:var(--purple);background:var(--purple-light)}.tk .scard.c-orange .sc-b{color:var(--orange);background:var(--orange-light)}
.tk .scard .sc-d{font-size:12.5px;color:var(--text-3)}

/* 题库构成 堆叠条 */
.tk .stack{display:flex;height:40px;border-radius:10px;overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow-sm)}
.tk .stack .seg{display:flex;align-items:center;justify-content:center;color:#fff;font-size:12.5px;font-weight:700}
.tk .stack .seg.a{background:linear-gradient(90deg,var(--green),var(--green-dark))}
.tk .stack .seg.b{background:linear-gradient(90deg,#9ED9B9,#7DD3A8);color:var(--forest)}
.tk .stack-legend{display:flex;flex-direction:column;gap:7px;margin-top:12px;font-size:13px;color:var(--text-2)}
.tk .stack-legend b{color:var(--text)}
.tk .stack-legend i{display:inline-block;width:11px;height:11px;border-radius:3px;vertical-align:-1px;margin-right:7px}
/* 年度 grid */
.tk .ygrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:10px}
.tk .ycard{display:flex;flex-direction:column;align-items:center;gap:1px;background:#fff;border:1px solid var(--border);border-radius:10px;padding:12px 4px;text-align:center;transition:transform .12s,box-shadow .12s,border-color .12s}
.tk a.ycard:hover{border-color:var(--green);box-shadow:var(--shadow-sm);transform:translateY(-2px);text-decoration:none}
.tk .ycard .yw{font-family:var(--mincho);font-weight:800;font-size:14px;color:var(--text)}
.tk .ycard .yy{font-size:10px;color:var(--text-3)}
.tk .ycard.soon{opacity:.4}
.tk .ycard.is-new{border-color:var(--green);background:var(--green-light)}
.tk .ycard.is-new .yw{color:var(--green-dark)}
/* 論点 chip */
.tk .taglist{display:flex;flex-wrap:wrap;gap:9px;max-width:840px}
.tk .tagchip{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--border);border-radius:100px;padding:8px 15px;font-size:13.5px;color:var(--text);transition:border-color .12s,color .12s}
.tk .tagchip:hover{border-color:var(--green);color:var(--green-dark);text-decoration:none}
.tk .tagchip .c{font-size:11px;color:var(--text-3)}
/* 論点ランキング */
.tk .ranking{display:grid;grid-template-columns:1fr 1fr;gap:2px 36px}
@media(max-width:760px){.tk .ranking{grid-template-columns:1fr}}
.tk .rk{display:flex;align-items:center;gap:13px;padding:12px 10px;border-bottom:1px solid var(--border);transition:background .12s}
.tk .rk:hover{background:var(--green-light);text-decoration:none;border-radius:8px;border-bottom-color:transparent}
.tk .rk-no{flex-shrink:0;width:28px;height:28px;border-radius:9px;background:var(--bg);color:var(--text-3);font-family:var(--mincho);font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center}
.tk .rk-no.t1{background:linear-gradient(135deg,#F3D27A,#D4A93C);color:#fff;box-shadow:0 3px 9px rgba(212,169,60,.4)}
.tk .rk-no.t2{background:linear-gradient(135deg,#DBE0E5,#AAB4BE);color:#fff;box-shadow:0 3px 9px rgba(150,160,170,.3)}
.tk .rk-no.t3{background:linear-gradient(135deg,#E7BC95,#C68A5E);color:#fff;box-shadow:0 3px 9px rgba(198,138,94,.3)}
.tk .rk-main{flex:1;min-width:0}
.tk .rk-name{font-weight:600;font-size:13.5px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.tk .rk-bar{display:block;height:5px;border-radius:3px;background:var(--green-light);margin-top:6px;overflow:hidden}
.tk .rk-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--green-mid),var(--green));border-radius:3px}
.tk .rk-c{flex-shrink:0;font-family:var(--mincho);font-weight:800;font-size:14px;color:var(--green-dark);min-width:52px;text-align:right}
.tk .rk-c small{font-size:10px;font-weight:600;color:var(--text-3)}
.tk .rk-sub{font-style:normal;font-size:11px;font-weight:500;color:var(--text-3);margin-left:7px}
.tk .rk-meta{font-size:11px;color:var(--text-3);margin-top:5px}
.tk .rk-meta b{color:var(--green-dark);font-weight:700}
/* 出題数推移 堆叠柱状图 */
.tk .chart-area{position:relative;padding-left:36px}
.tk .chart-y{position:absolute;left:0;bottom:0;height:240px;width:30px}
.tk .chart-y span{position:absolute;right:6px;font-size:10px;color:var(--text-3);transform:translateY(50%);line-height:1}
.tk .chart-bars{display:flex;align-items:flex-end;gap:2px;height:240px;border-bottom:1.5px solid var(--border);border-left:1.5px solid var(--border)}
.tk .bar{flex:1;min-width:0;display:flex;flex-direction:column-reverse;border-radius:2px 2px 0 0;overflow:hidden;transition:opacity .12s}
.tk .chart-bars:hover .bar{opacity:.5}
.tk .chart-bars .bar:hover{opacity:1}
.tk .seg{width:100%}
.tk .seg.s-minpo{background:#5B8FD4}.tk .seg.s-gyouhou{background:#3CC77E}.tk .seg.s-hourei{background:#D89C3A}.tk .seg.s-zei{background:#7C5CFF}
.tk .chart-x{display:flex;gap:2px;padding-left:36px;margin-top:6px}
.tk .chart-x span{flex:1;text-align:center;font-size:9.5px;color:var(--text-3);white-space:nowrap}
.tk .chart-legend{display:flex;gap:18px;justify-content:center;margin-top:16px;font-size:13px;color:var(--text-2);flex-wrap:wrap}
.tk .chart-legend i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.tk .mgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:24px}
@media(max-width:600px){.tk .mgrid{grid-template-columns:1fr 1fr}}
.tk .mcard{background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px;text-align:center;border-top:3px solid var(--green);box-shadow:var(--shadow-sm)}
.tk .mcard .mk{font-size:12.5px;font-weight:700;color:var(--text-2)}
.tk .mcard .mv{font-family:var(--mincho);font-weight:800;font-size:32px;color:var(--text);line-height:1.15;margin:4px 0}
.tk .mcard .mu{font-size:11px;color:var(--text-3)}
/* 試験スペック面板（早見表）：試験日を全幅の主行、残り4項目を2×2に。色帯・明朝体で階層をつける */
.tk .spec{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:840px;margin:10px auto 0}
.tk .spec-i{position:relative;background:#fff;border:1px solid var(--border);border-radius:16px;padding:17px 22px 17px 26px;box-shadow:0 10px 26px rgba(26,48,32,.07);overflow:hidden}
.tk .spec-i::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--green)}
.tk .spec-k{font-size:12.5px;font-weight:700;color:var(--green-dark);letter-spacing:.04em}
.tk .spec-v{font-family:var(--mincho);font-weight:800;font-size:21px;color:var(--text);line-height:1.25;margin-top:5px}
.tk .spec-note{font-size:11.5px;color:var(--text-3);margin-top:5px}
.tk .spec-i.lead{grid-column:1/-1;background:linear-gradient(115deg,var(--green-light),#fff 62%);display:flex;align-items:center;gap:8px 22px;flex-wrap:wrap;padding:20px 26px}
.tk .spec-i.lead::before{background:var(--gold)}
.tk .spec-i.lead .spec-k{font-size:13px}
.tk .spec-i.lead .spec-v{font-size:30px;margin-top:0}
.tk .spec-i.lead .spec-note{margin-top:0;margin-left:auto;background:#fff;border:1px solid var(--green-mid);border-radius:999px;padding:5px 14px;color:var(--green-dark);font-weight:600}
@media(max-width:600px){.tk .spec{grid-template-columns:1fr}.tk .spec-i.lead{display:block}.tk .spec-i.lead .spec-v{font-size:25px;margin-top:4px}.tk .spec-i.lead .spec-note{margin-left:0;margin-top:9px;display:inline-block}}
/* 勉強法 hero：合格までの学習ルート（イラスト） */
.tk .hero-photo{margin:0;line-height:0}
.tk .hero-photo img{display:block;width:100%;height:auto;border-radius:18px;box-shadow:0 20px 48px rgba(26,48,32,.12)}
/* 勉強法 hero：合格までの学習プラン（逆算タイムライン・現在は未使用） */
.tk .smplan{background:#fff;border:1px solid var(--border);border-radius:20px;box-shadow:0 22px 54px rgba(26,48,32,.13);padding:24px 26px 24px;max-width:440px;margin:0 auto}
.tk .smplan-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.tk .smplan-k{font-family:var(--mincho);font-weight:800;font-size:18px;color:var(--text)}
.tk .smplan-badge{font-size:11px;font-weight:700;color:var(--green-dark);background:var(--green-light);border-radius:999px;padding:5px 12px;white-space:nowrap}
.tk .smplan-track{position:relative}
.tk .smplan-ph{display:flex;gap:15px;align-items:flex-start;padding-bottom:16px;position:relative}
.tk .smplan-ph::before{content:"";position:absolute;left:15px;top:30px;bottom:-4px;width:2px;background:linear-gradient(var(--green),var(--green-mid))}
.tk .smplan-n{flex:none;width:32px;height:32px;border-radius:50%;background:var(--green);color:#fff;font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center;box-shadow:0 5px 14px rgba(60,199,126,.3);z-index:1}
.tk .smplan-b{padding-top:3px}
.tk .smplan-b b{display:block;font-family:var(--mincho);font-weight:700;font-size:15.5px;color:var(--text);line-height:1.3}
.tk .smplan-b span{font-size:12.5px;color:var(--text-2)}
.tk .smplan-goal{display:flex;gap:12px;align-items:center;padding-left:1px}
.tk .smplan-flag{flex:none;font-family:var(--mincho);font-weight:800;font-size:14px;color:#fff;background:var(--forest);border-radius:9px;padding:7px 15px}
.tk .smplan-goal-t{font-size:13px;font-weight:700;color:var(--forest)}
/* hub「8つの視点」解説グリッド */
.tk .views{display:grid;grid-template-columns:1fr 1fr;gap:16px 28px;max-width:880px;margin:8px auto 0}
.tk .v8{display:flex;gap:13px;align-items:flex-start}
.tk .v8-n{flex:none;width:30px;height:30px;border-radius:8px;background:var(--green-light);color:var(--green-dark);font-family:var(--mincho);font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}
.tk .v8-b b{display:block;font-weight:700;font-size:14.5px;color:var(--text);margin-bottom:2px}
.tk .v8-b span{font-size:13px;line-height:1.7;color:var(--text-2)}
@media(max-width:680px){.tk .views{grid-template-columns:1fr;gap:14px}}
/* 倒计时卡（試験情報 Hero） */
.tk .cdbox{background:linear-gradient(135deg,var(--forest),#2A4A35);color:#fff;border-radius:20px;padding:36px 28px;text-align:center;box-shadow:var(--shadow-lg)}
.tk .cdbox .cdk{font-size:13px;color:rgba(255,255,255,.6);font-weight:700;letter-spacing:.05em}
.tk .cdbox .cdn{font-family:var(--mincho);font-weight:800;font-size:62px;line-height:1.05;margin:12px 0;color:#fff}
.tk .cdbox .cdn span{color:var(--green-mid)}
.tk .cdbox .cdn small{font-size:22px}
.tk .cdbox .cdd{font-size:15px;color:#fff;font-weight:600}
.tk .cdbox .cdsub{font-size:12px;color:rgba(255,255,255,.55);margin-top:6px}
.tk .cd-strip{margin-top:13px;background:var(--forest);color:#fff;border-radius:12px;padding:13px 18px;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;font-size:13px}
.tk .cd-strip b{font-family:var(--mincho);font-weight:800;font-size:19px;color:var(--green-mid)}
.tk .cd-strip span{color:rgba(255,255,255,.72)}
/* ── exam/2026 カウントダウン Hero（このページ固有の意匠）── */
.tk .cd-hero{position:relative;overflow:hidden;background:linear-gradient(140deg,#15301E,#21452C 55%,#2C5638)}
.tk .cd-hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:46px 46px;-webkit-mask-image:radial-gradient(120% 90% at 72% 18%,#000,transparent 72%);mask-image:radial-gradient(120% 90% at 72% 18%,#000,transparent 72%)}
.tk .cd-hero::after{content:"";position:absolute;width:540px;height:540px;right:-130px;top:-180px;border-radius:50%;background:radial-gradient(circle,rgba(60,199,126,.30),transparent 65%)}
.tk .cd-hero-in{position:relative;z-index:1;max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.08fr .92fr;gap:54px;align-items:center;padding:74px 24px 80px}
.tk .cd-eyebrow{display:inline-block;font-size:12.5px;font-weight:700;letter-spacing:.1em;color:var(--green-mid)}
.tk .cd-h1{font-family:var(--mincho);font-weight:800;font-size:39px;line-height:1.45;margin:15px 0 20px;color:#fff}
.tk .cd-h1 em{font-style:normal;color:var(--green-mid)}
.tk .cd-count{display:flex;align-items:baseline;gap:13px;margin-bottom:20px}
.tk .cd-count-lab{font-size:14px;color:rgba(255,255,255,.6);font-weight:600}
.tk .cd-count-n{font-family:var(--mincho);font-weight:800;font-size:100px;line-height:.86;color:var(--green-mid);letter-spacing:-.02em;text-shadow:0 8px 34px rgba(60,199,126,.28)}
.tk .cd-count-u{font-size:28px;font-weight:700;color:#fff}
.tk .cd-sub{font-size:14.5px;line-height:1.95;color:rgba(255,255,255,.76);max-width:470px;margin-bottom:26px}
.tk .cd-hero .hero-actions .btn-ghost2{color:#fff;border:1px solid rgba(255,255,255,.4)}
.tk .cd-hero .hero-actions .btn-ghost2:hover{background:rgba(255,255,255,.1)}
.tk .cd-hero-date{display:flex;flex-direction:column;align-items:center;gap:18px}
.tk .cd-cal{width:228px;background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 28px 64px rgba(0,0,0,.36);transform:rotate(-2.5deg)}
.tk .cd-cal-top{background:var(--green);color:#fff;text-align:center;padding:11px;font-weight:800;letter-spacing:.16em;font-size:12.5px}
.tk .cd-cal-day{font-family:var(--mincho);font-weight:800;font-size:108px;line-height:1;text-align:center;color:var(--text);padding:18px 0 0}
.tk .cd-cal-dow{text-align:center;color:var(--text-3);font-size:12.5px;font-weight:600;padding:6px 0 18px}
.tk .cd-spec{display:flex;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:14px;overflow:hidden}
.tk .cd-spec>div{padding:12px 16px;text-align:center;border-right:1px solid rgba(255,255,255,.13)}
.tk .cd-spec>div:last-child{border-right:none}
.tk .cd-spec b{display:block;font-family:var(--mincho);font-weight:800;font-size:16px;color:#fff}
.tk .cd-spec span{font-size:10.5px;color:rgba(255,255,255,.6)}
@media(max-width:880px){.tk .cd-hero-in{grid-template-columns:1fr;gap:32px;padding:50px 20px 54px}.tk .cd-hero-date{order:-1}.tk .cd-h1{font-size:29px}.tk .cd-count-n{font-size:76px}}
/* ── 模試 結果カード（hero 視覚）── */
.tk .score-card{background:#fff;border:1px solid var(--border);border-radius:22px;box-shadow:0 22px 56px rgba(26,48,32,.16);overflow:hidden;width:100%;max-width:420px;margin:0 auto}
.tk .score-card .sc-head{background:linear-gradient(135deg,#1A3020,#2A4A35);color:#fff;padding:13px 22px;font-weight:700;font-size:14px;display:flex;justify-content:space-between;align-items:center}
.tk .score-card .sc-head .sc-tag{font-size:11px;color:var(--green-mid);font-weight:700}
.tk .sc-body{padding:24px 22px;display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center}
.tk .score-ring{--p:76%;width:142px;height:142px;border-radius:50%;background:conic-gradient(var(--green) 0 var(--p),#E7EFE9 var(--p) 100%);display:grid;place-items:center;flex-shrink:0}
.tk .score-ring .sc-in{width:108px;height:108px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center}
.tk .score-ring .sc-in b{font-family:var(--mincho);font-weight:800;font-size:44px;line-height:1;color:var(--text)}
.tk .score-ring .sc-in span{font-size:12px;color:var(--text-3);margin-top:2px}
.tk .sc-pass{display:inline-flex;align-items:baseline;gap:8px;font-family:var(--mincho);font-weight:800;font-size:21px;color:var(--green-dark)}
.tk .sc-pass small{font-size:11px;color:var(--text-3);font-weight:600}
.tk .sc-subj{list-style:none;margin:13px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}
.tk .sc-subj li{display:flex;justify-content:space-between;font-size:12.5px;color:var(--text-2);border-bottom:1px dashed var(--border);padding-bottom:5px}
.tk .sc-subj li b{font-weight:700;color:var(--text)}
/* ── 一問一答 ○×カード（hero 視覚）── */
.tk .ox-card{background:#fff;border:1px solid var(--border);border-radius:22px;box-shadow:0 22px 56px rgba(26,48,32,.16);overflow:hidden;width:100%;max-width:418px;margin:0 auto}
@keyframes swapIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes swapOut{from{opacity:1;transform:none}to{opacity:0;transform:translateY(-10px)}}
.tk .ox-card.swapin .ox-q,.tk .ox-card.swapin .ox-btns{animation:swapIn .44s cubic-bezier(.2,.7,.2,1) both}
.tk .ox-card.swapout .ox-q,.tk .ox-card.swapout .ox-btns,.tk .ox-card.swapout .ox-ans{animation:swapOut .26s cubic-bezier(.4,0,.9,.6) both}
.tk .ox-q{padding:24px 24px 18px}
.tk .ox-q .ox-tag{display:inline-block;font-size:11px;font-weight:700;color:var(--green-dark);background:var(--green-light);border-radius:100px;padding:4px 13px;margin-bottom:13px}
.tk .ox-q p{font-size:15.5px;line-height:1.85;color:var(--text);font-weight:600;margin:0;min-height:86px}
.tk .ox-btns{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 24px}
.tk .ox-btns span{font-family:var(--mincho);font-weight:800;font-size:34px;text-align:center;padding:12px 0;border-radius:14px;border:2px solid var(--border);background:#fff;color:var(--text-3);transition:border-color .35s ease,background-color .35s ease,color .35s ease,transform .35s ease,box-shadow .35s ease}
.tk .ox-btns span.sel{border-color:var(--green);background:var(--green-light);color:var(--green-dark);box-shadow:0 6px 18px rgba(60,199,126,.22);transform:translateY(-2px)}
.tk .ox-btns span.wrong{border-color:var(--seal-red);background:var(--red-light);color:var(--seal-red);box-shadow:0 6px 18px rgba(199,62,58,.18);transform:translateY(-2px)}
.tk .ox-ans{margin:16px 24px 22px;padding:14px 16px;background:var(--green-light);border-radius:12px;font-size:12.5px;line-height:1.75;color:var(--text-2);opacity:0;transform:translateY(6px);transition:opacity .4s ease,transform .4s ease}
.tk .ox-ans.show{opacity:1;transform:translateY(0)}
.tk .ox-ans.bad{background:var(--red-light)}
.tk .ox-ans.bad .ox-badge{color:var(--seal-red)}
.tk .ox-ans .ox-badge{display:inline-block;font-weight:800;color:var(--green-dark);margin-right:8px}
/* ── 模試 LP（合否を先に知る・ページ固有の意匠）── */
.tk .me-hero{position:relative;background:radial-gradient(125% 105% at 50% -10%,#E7F4EC,#fff 68%);border-bottom:1px solid var(--border);overflow:hidden;text-align:center}
.tk .me-hero-in{position:relative;z-index:1;max-width:840px;margin:0 auto;padding:58px 24px 56px}
.tk .me-eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:700;color:var(--green-dark);background:#fff;border:1px solid var(--border);border-radius:100px;padding:6px 16px}
.tk .me-eyebrow .ai-icon{width:17px;height:17px}
.tk .me-h1{font-family:var(--mincho);font-weight:800;font-size:41px;line-height:1.42;color:var(--text);margin:18px 0 0}
.tk .me-h1 em{font-style:normal;color:var(--green-dark);position:relative}
.tk .me-h1 em::after{content:'';position:absolute;left:0;right:0;bottom:2px;height:10px;background:rgba(60,199,126,.22);z-index:-1}
.tk .me-sub{font-size:14.5px;line-height:1.95;color:var(--text-2);max-width:600px;margin:16px auto 0}
.tk .me-hero .hero-actions{justify-content:center;margin-top:30px}
.tk .exam-report{max-width:600px;margin:32px auto 0;background:#fff;border:1px solid var(--border);border-radius:22px;box-shadow:0 26px 64px rgba(26,48,32,.18);overflow:hidden;text-align:left}
.tk .er-head{background:linear-gradient(135deg,#1A3020,#2A4A35);color:#fff;padding:13px 22px;display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:13.5px}
.tk .er-head .er-tag{font-size:11px;color:var(--green-mid);font-weight:700}
.tk .er-body{display:grid;grid-template-columns:auto 1fr;gap:26px;padding:24px;align-items:center}
.tk .er-score{text-align:center;flex-shrink:0}
.tk .er-score .er-n{font-family:var(--mincho);font-weight:800;font-size:58px;line-height:1;color:var(--text)}
.tk .er-score .er-n small{font-size:19px;color:var(--text-3);font-weight:700}
.tk .er-pass{display:inline-block;margin-top:9px;background:var(--green);color:#fff;font-weight:800;font-size:12.5px;border-radius:100px;padding:4px 14px}
.tk .er-gap{font-size:11.5px;color:var(--text-3);margin-top:7px}
.tk .er-subj{display:flex;flex-direction:column;gap:9px}
.tk .er-row{display:grid;grid-template-columns:88px 1fr 38px;align-items:center;gap:10px;font-size:12px;color:var(--text-2)}
.tk .er-row .er-bar{height:8px;background:#E7EFE9;border-radius:99px;overflow:hidden}
.tk .er-row .er-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--green-dark));border-radius:99px}
.tk .er-row b{font-weight:700;color:var(--text);text-align:right}
.tk .er-next{border-top:1px solid var(--border);padding:13px 24px;font-size:12.5px;color:var(--text-2);background:var(--green-light)}
.tk .er-next b{color:var(--green-dark)}
@media(max-width:680px){.tk .me-h1{font-size:29px}.tk .er-body{grid-template-columns:1fr;gap:16px;text-align:center}.tk .er-subj{text-align:left}}
/* 模試 流れ（横フロー＋ループ・縦タイムライン回避）*/
.tk .flow-row{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:stretch}
.tk .flow-step{background:#fff;border:1px solid var(--border);border-radius:16px;padding:22px 16px;text-align:center;box-shadow:var(--shadow-sm)}
.tk .flow-step .fs-n{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--green);color:#fff;font-family:var(--mincho);font-weight:800;font-size:16px;margin-bottom:12px}
.tk .flow-step .fs-t{font-family:var(--mincho);font-weight:700;font-size:14.5px;color:var(--text);line-height:1.5;margin-bottom:6px}
.tk .flow-step .fs-d{font-size:12px;color:var(--text-3);line-height:1.6}
.tk .flow-arrow{display:flex;align-items:center;justify-content:center;color:var(--green);font-size:24px;font-weight:700;padding:0 4px}
.tk .flow-loop{width:fit-content;margin:20px auto 0;display:flex;align-items:center;gap:8px;background:var(--green-light);color:var(--green-dark);font-weight:700;font-size:13px;border-radius:100px;padding:9px 22px}
@media(max-width:760px){.tk .flow-row{grid-template-columns:1fr}.tk .flow-arrow{transform:rotate(90deg);padding:8px 0}}
/* 模試 時間配分（横比例バー・テーブル回避）*/
.tk .timebar{display:flex;height:66px;border-radius:14px;overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow-sm)}
.tk .tb-seg{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;padding:0 4px;text-align:center;min-width:0;border-right:2px solid rgba(255,255,255,.55)}
.tk .tb-seg:last-child{border-right:0}
.tk .tb-seg b{font-size:12.5px;font-weight:700;white-space:nowrap;text-shadow:0 1px 2px rgba(0,0,0,.14)}
.tk .tb-seg span{font-size:11px;opacity:.92}
.tk .tb-seg.s-gyouhou{background:#3CC77E}.tk .tb-seg.s-minpo{background:#5B8FD4}.tk .tb-seg.s-hourei{background:#D89C3A}.tk .tb-seg.s-zei{background:#7C5CFF}.tk .tb-seg.s-rev{background:#8A9A8F}
.tk .tb-scale{display:flex;justify-content:space-between;font-size:11px;color:var(--text-3);margin-top:8px}
.tk .tips{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-top:24px}
.tk .tip{background:#fff;border:1px solid var(--border);border-left:3px solid var(--green);border-radius:12px;padding:13px 16px;font-size:12.5px;color:var(--text-2);line-height:1.6}
.tk .tip b{display:block;color:var(--text);font-weight:700;margin-bottom:3px}
.tk .tip.s-gyouhou{border-left-color:#3CC77E}.tk .tip.s-minpo{border-left-color:#5B8FD4}.tk .tip.s-hourei{border-left-color:#D89C3A}.tk .tip.s-zei{border-left-color:#7C5CFF}.tk .tip.s-rev{border-left-color:#8A9A8F}
@media(max-width:600px){.tk .tb-seg b{font-size:10px}.tk .tb-seg span{font-size:9px}}
/* ── 暗記カード LP（翻卡・8タイプ・間隔反復）── */
.tk .flip{width:100%;max-width:328px;margin:0 auto;perspective:1500px}
.tk .flip-in{position:relative;width:100%;aspect-ratio:1024/1280;transform-style:preserve-3d;animation:flipLoop 7s ease-in-out infinite}
.tk .flip:hover .flip-in{animation-play-state:paused}
@keyframes flipLoop{0%,42%{transform:rotateY(0)}52%,92%{transform:rotateY(180deg)}100%{transform:rotateY(0)}}
@media(prefers-reduced-motion:reduce){.tk .flip-in{animation:none}}
.tk .flip-face{position:absolute;inset:0;-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:18px;overflow:hidden;border:1px solid var(--border);box-shadow:0 24px 60px rgba(26,48,32,.22);background:#fff}
.tk .flip-face>img{width:100%;height:100%;object-fit:cover;display:block}
.tk .flip-back{transform:rotateY(180deg)}
.tk .flip-badge{position:absolute;top:12px;left:12px;z-index:2;font-size:11px;font-weight:700;color:#fff;background:rgba(26,48,32,.82);border-radius:100px;padding:4px 13px}
.tk .flip-cap{text-align:center;font-size:12px;color:var(--text-3);margin-top:16px}
/* 暗記カード hero：複数カードの扇形展開 */
.tk .deck{position:relative;height:566px}
.tk .deck .dcard{position:absolute;left:50%;top:50%;width:258px;margin:-161px 0 0 -129px;perspective:1500px;transform:var(--rest);animation:deckCycle 22s linear infinite;will-change:transform}
.tk .deck .d1{--rest:translateX(-138px) translateY(6px) rotate(-12deg) scale(.92);animation-delay:1.5s}
.tk .deck .d2{--rest:translateX(-47px) translateY(0px) rotate(-4deg) scale(.96);animation-delay:6.7s}
.tk .deck .d3{--rest:translateX(47px) translateY(0px) rotate(4deg) scale(.96);animation-delay:11.9s}
.tk .deck .d4{--rest:translateX(138px) translateY(6px) rotate(12deg) scale(.92);animation-delay:17.1s}
.tk .deck .dflip{position:relative;width:100%;aspect-ratio:1024/1280;transform-style:preserve-3d;animation:deckFlip 22s linear infinite;will-change:transform}
.tk .deck .d1 .dflip{animation-delay:1.5s}
.tk .deck .d2 .dflip{animation-delay:6.7s}
.tk .deck .d3 .dflip{animation-delay:11.9s}
.tk .deck .d4 .dflip{animation-delay:17.1s}
.tk .dface{position:absolute;inset:0;-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:16px;overflow:hidden;border:1px solid var(--border);box-shadow:0 20px 52px rgba(26,48,32,.26);background:#fff}
.tk .dface>img{width:100%;height:100%;object-fit:cover;display:block}
.tk .dface.dback{transform:rotateY(180deg)}
@keyframes deckCycle{
  0%{transform:var(--rest);z-index:1;animation-timing-function:cubic-bezier(.22,.7,.2,1)}
  6%{transform:translateX(0px) translateY(-16px) rotate(0deg) scale(1.66);z-index:9;animation-timing-function:linear}
  17%{transform:translateX(0px) translateY(-16px) rotate(0deg) scale(1.66);z-index:9;animation-timing-function:cubic-bezier(.5,0,.3,1)}
  22%{transform:var(--rest);z-index:9}
  23%,100%{transform:var(--rest);z-index:1}
}
@keyframes deckFlip{
  0%{transform:rotateY(0deg)}
  7%{transform:rotateY(0deg);animation-timing-function:cubic-bezier(.45,0,.55,1)}
  10%{transform:rotateY(180deg);animation-timing-function:linear}
  15%{transform:rotateY(180deg);animation-timing-function:cubic-bezier(.45,0,.55,1)}
  18%{transform:rotateY(0deg)}
  100%{transform:rotateY(0deg)}
}
@media(prefers-reduced-motion:reduce){.tk .deck .dcard,.tk .deck .dflip{animation:none}}
.tk .deck-cap{text-align:center;font-size:12px;color:var(--text-3);margin-top:14px}
@media(max-width:560px){.tk .deck .dcard{width:190px;margin:-119px 0 0 -95px}.tk .deck .d1{--rest:translateX(-100px) translateY(6px) rotate(-12deg) scale(.92)}.tk .deck .d2{--rest:translateX(-34px) translateY(0px) rotate(-4deg) scale(.96)}.tk .deck .d3{--rest:translateX(34px) translateY(0px) rotate(4deg) scale(.96)}.tk .deck .d4{--rest:translateX(100px) translateY(6px) rotate(12deg) scale(.92)}.tk .deck{height:454px}}

/* ===== 穴埋め（anaume）— 想起練習 / 橙アイデンティティ ===== */
.tk .lp-eyebrow.ey-orange{color:#9A3412;background:var(--orange-light);border-color:#F3CBA8}
.tk .fillcard{position:relative;background:#fff;border:1px solid var(--border);border-top:4px solid var(--orange);border-radius:20px;padding:30px 30px 30px;box-shadow:0 22px 54px rgba(26,48,32,.13);max-width:500px;margin:0 auto}
.tk .fillcard.swapin .fc-head,.tk .fillcard.swapin .fc-sent,.tk .fillcard.swapin .fc-opts{animation:swapIn .44s cubic-bezier(.2,.7,.2,1) both}
.tk .fillcard.swapout .fc-head,.tk .fillcard.swapout .fc-sent,.tk .fillcard.swapout .fc-opts,.tk .fillcard.swapout .fc-ok{animation:swapOut .26s cubic-bezier(.4,0,.9,.6) both}
.tk .fc-sent{min-height:120px}
.tk .fc-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.tk .fc-tag{font-size:12.5px;font-weight:700;color:#9A3412;background:var(--orange-light);padding:5px 13px;border-radius:999px}
.tk .fc-pos{font-size:12px;color:var(--text-3)}
.tk .fc-sent{font-family:var(--mincho);font-size:19px;line-height:2.55;color:var(--text);margin:0}
.tk .fc-blank{display:inline-block;min-width:58px;text-align:center;border:1.5px dashed var(--orange);border-radius:8px;padding:1px 12px;margin:0 3px;background:rgba(234,122,44,.08);color:var(--orange);font-weight:700;vertical-align:middle;transition:border-color .45s ease,background-color .45s ease,color .45s ease}
.tk .fc-blank .fc-fill{display:inline-block;opacity:0;transform:scale(.4);color:var(--green-dark);transition:opacity .4s ease,transform .4s ease}
.tk .fc-blank.done{border-style:solid;border-color:var(--green);background-color:rgba(60,199,126,.16);color:var(--green-dark)}
.tk .fc-blank.done .fc-fill{opacity:1;transform:scale(1)}
.tk .fc-blank .fc-bad{display:inline-block;opacity:0;transform:scale(.4);color:var(--seal-red);text-decoration:line-through;margin-right:6px;transition:opacity .4s ease,transform .4s ease}
.tk .fc-blank.wrong{border-style:solid;border-color:var(--seal-red);background-color:var(--red-light);color:var(--green-dark)}
.tk .fc-blank.wrong .fc-bad{opacity:1;transform:scale(1)}
.tk .fc-blank.wrong .fc-fill{opacity:1;transform:scale(1)}
.tk .fc-opts{display:flex;gap:10px;margin-top:24px}
.tk .fc-opt{flex:1;text-align:center;font-size:14.5px;font-weight:700;color:var(--text-2);border:1px solid var(--border);border-radius:12px;padding:11px 0;background:#fff;transition:background-color .3s ease,border-color .3s ease,color .3s ease}
.tk .fc-opt.sel{background:var(--green-light);border-color:var(--green);color:var(--green-dark)}
.tk .fc-opt.bad{background:var(--red-light);border-color:var(--seal-red);color:var(--seal-red)}
.tk .fc-ok{margin-top:18px;background:var(--green-dark);color:#fff;border-radius:12px;padding:12px 16px;font-size:14px;font-weight:700;text-align:center;box-shadow:0 14px 30px rgba(40,168,101,.3);opacity:0;transform:translateY(8px);transition:opacity .4s ease,transform .4s ease}
.tk .fc-ok.show{opacity:1;transform:translateY(0)}
.tk .fc-ok.bad{background:var(--seal-red);box-shadow:0 14px 30px rgba(199,62,58,.3)}
.tk .qdots{display:flex;gap:8px;justify-content:center;margin-top:18px}
.tk .qdots i{width:26px;height:5px;border-radius:3px;background:rgba(26,48,32,.22);transition:background-color .35s ease,transform .35s ease}
.tk .qdots i.on{transform:scaleY(1.5)}
.tk .rcmp{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:26px}
.tk .rcmp-c{border-radius:16px;padding:22px 24px;border:1px solid var(--border)}
.tk .rcmp-c.weak{background:#FBF7F1;border-color:#EADFCB}
.tk .rcmp-c.strong{background:var(--orange-light);border-color:#F3CBA8}
.tk .rcmp-h{font-family:var(--mincho);font-size:16px;font-weight:700;margin-bottom:10px}
.tk .rcmp-c.weak .rcmp-h{color:var(--text-2)}
.tk .rcmp-c.strong .rcmp-h{color:#9A3412}
.tk .rcmp-c p{font-size:14.5px;line-height:1.95;color:var(--text-2);margin:0}
.tk .vsteps{max-width:680px;margin:8px auto 0}
.tk .vstep{display:flex;gap:18px;padding:0 0 26px;position:relative}
.tk .vstep:last-child{padding-bottom:0}
.tk .vstep::before{content:"";position:absolute;left:18px;top:40px;bottom:-2px;width:2px;background:linear-gradient(var(--orange),rgba(234,122,44,.15))}
.tk .vstep:last-child::before{display:none}
.tk .vstep-n{flex:none;width:38px;height:38px;border-radius:50%;background:var(--orange);color:#fff;font-weight:700;font-size:16px;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px rgba(234,122,44,.32);z-index:1}
.tk .vstep-b{padding-top:4px}
.tk .vstep-t{font-family:var(--mincho);font-size:17px;font-weight:700;color:var(--text);margin-bottom:5px}
.tk .vstep-d{font-size:14.5px;line-height:1.9;color:var(--text-2)}
.tk .adist{max-width:680px;margin:6px auto 0}
.tk .adist-row{display:flex;align-items:center;gap:14px;padding:9px 0}
.tk .adist-l{flex:none;width:120px;font-size:14px;font-weight:700;color:var(--text);text-align:right}
.tk .adist-bar{flex:1;height:26px;background:var(--bg);border-radius:8px;overflow:hidden}
.tk .adist-bar i{display:block;height:100%;border-radius:8px}
.tk .adist-n{flex:none;width:56px;font-size:18px;font-weight:800;color:var(--text)}
.tk .adist-n small{font-size:11px;font-weight:600;color:var(--text-3);margin-left:1px}
.tk .adist-blk-wrap{max-width:680px;margin:30px auto 0;background:#fff;border:1px solid var(--border);border-radius:16px;padding:20px 24px}
.tk .adist-blk-h{font-size:13px;font-weight:700;color:var(--text-2);margin-bottom:14px}
.tk .adist-blk{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.tk .adist-blk-i{text-align:center;background:var(--orange-light);border-radius:12px;padding:14px 4px}
.tk .adist-blk-i b{display:block;font-size:24px;font-weight:800;color:#9A3412;line-height:1}
.tk .adist-blk-i span{font-size:12px;color:var(--text-2);margin-top:5px;display:block}
.tk .loopc{display:flex;align-items:stretch;justify-content:center;max-width:680px;margin:8px auto 0;flex-wrap:wrap}
.tk .loopc-node{flex:1;min-width:220px;background:#fff;border:1px solid var(--border);border-radius:16px;padding:22px 22px;text-align:center;box-shadow:var(--shadow-sm)}
.tk .loopc-node .ai-icon{width:34px;height:34px;margin-bottom:8px}
.tk .loopc-t{font-family:var(--mincho);font-size:16px;font-weight:700;color:var(--text);margin-bottom:5px}
.tk .loopc-d{font-size:13.5px;line-height:1.8;color:var(--text-2)}
.tk .loopc-mid{flex:none;width:140px;display:flex;flex-direction:column;justify-content:center;gap:12px;padding:0 10px}
.tk .loopc-a{font-size:12px;font-weight:700;text-align:center;padding:9px 6px;border-radius:8px;line-height:1.45;color:#9A3412;background:var(--orange-light);white-space:nowrap}
.tk .loopc-a::after{content:" →";font-weight:800}
.tk .loopc-a.rev{color:var(--green-dark);background:var(--green-light)}
.tk .loopc-a.rev::after{content:" ←"}
@media(max-width:680px){.tk .rcmp{grid-template-columns:1fr}.tk .loopc-mid{width:100%;flex-direction:row;padding:12px 0}.tk .loopc-a{flex:1}}

/* ===== 苦手ノート（review-note）— ミッション / 紺金アイデンティティ ===== */
.tk .lp-eyebrow.ey-navy{color:var(--gold-dark);background:var(--gold-light);border-color:#EAD6A8}
.tk .mpanel{position:relative;overflow:hidden;background:linear-gradient(135deg,#1F1B2E 0%,#1A2E4A 55%,#2D1F3E 100%);border-radius:22px;padding:24px 28px 26px;box-shadow:0 28px 64px rgba(15,31,53,.42);max-width:480px;margin:0 auto;color:#fff}
.tk .mpanel::before{content:"";position:absolute;right:-70px;top:-70px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(216,156,58,.20),transparent 70%);pointer-events:none}
.tk .mp-top{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1}
.tk .mp-tag{font-size:10.5px;font-weight:700;letter-spacing:.12em;color:var(--gold);background:rgba(216,156,58,.15);border:1px solid rgba(216,156,58,.45);padding:4px 12px;border-radius:999px}
.tk .mp-streak{font-size:11.5px;font-weight:700;color:#241B0B;background:linear-gradient(180deg,#F4D27E,#D89C3A);padding:4px 13px;border-radius:999px}
.tk .mp-head{display:flex;justify-content:space-between;align-items:flex-end;margin-top:16px;position:relative;z-index:1}
.tk .mp-title{font-family:var(--mincho);font-size:23px;font-weight:700;margin:0;line-height:1.45}
.tk .mp-title em{color:var(--gold);font-style:normal}
.tk .mp-remain{text-align:right;flex:none;white-space:nowrap}
.tk .mp-remain-lab{font-size:11px;color:rgba(255,255,255,.6);margin-right:5px;vertical-align:super}
.tk .mp-remain-n{position:relative;display:inline-block;width:54px;height:58px;vertical-align:bottom}
.tk .mp-remain-n span{position:absolute;right:0;bottom:0;font-family:var(--mincho);font-size:58px;font-weight:800;line-height:1;background:linear-gradient(180deg,#F6D98C,#D89C3A 55%,#BE6E26);-webkit-background-clip:text;background-clip:text;color:transparent;opacity:0;will-change:opacity}
.tk .mp-remain-u{font-size:13px;color:rgba(255,255,255,.7);margin-left:3px}
.tk .mp-remain-n .r3{animation:mpNum 8s linear infinite}
.tk .mp-remain-n .r2{animation:mpNum 8s linear infinite;animation-delay:2s}
.tk .mp-remain-n .r1{animation:mpNum 8s linear infinite;animation-delay:4s}
.tk .mp-remain-n .r0{animation:mpNum 8s linear infinite;animation-delay:6s}
@keyframes mpNum{0%{opacity:0}3%{opacity:1}22%{opacity:1}25%{opacity:0}100%{opacity:0}}
.tk .mp-bar{height:12px;border-radius:8px;background:rgba(255,255,255,.13);margin-top:16px;overflow:hidden;position:relative;z-index:1}
.tk .mp-bar-fill{display:block;height:100%;border-radius:8px;background:linear-gradient(90deg,#28A865,#3CC77E 38%,#F59E0B 72%,#C73E3A);width:55%;will-change:width;animation:mpBar 8s ease-in-out infinite}
@keyframes mpBar{0%,24%{width:55%}25%,49%{width:70%}50%,74%{width:84%}75%,96%{width:100%}100%{width:55%}}
.tk .mp-stats{display:flex;gap:24px;margin-top:16px;position:relative;z-index:1}
.tk .mp-stats b{display:block;font-size:11px;font-weight:600;color:rgba(255,255,255,.55);margin-bottom:3px}
.tk .mp-stats i{font-style:normal;font-size:19px;font-weight:800;color:#fff}
.tk .mp-subj{display:flex;gap:8px;align-items:flex-end;height:40px;margin-top:18px;position:relative;z-index:1}
.tk .mp-subj i{flex:1;border-radius:4px 4px 0 0;display:block;opacity:.85}
@media(prefers-reduced-motion:reduce){.tk .mp-remain-n span,.tk .mp-bar-fill{animation:none}.tk .mp-remain-n .r0{opacity:1}.tk .mp-bar-fill{width:100%}}
.tk .crush{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}
.tk .crush-c{border-radius:16px;padding:22px 24px;border:1px solid var(--border)}
.tk .crush-c.ok{background:var(--green-light);border-color:var(--green-mid)}
.tk .crush-c.loop{background:var(--red-light);border-color:#F3C4C4}
.tk .crush-h{font-family:var(--mincho);font-size:16.5px;font-weight:700;margin-bottom:10px}
.tk .crush-c.ok .crush-h{color:var(--green-dark)}
.tk .crush-c.loop .crush-h{color:var(--seal-red)}
.tk .crush-c p{font-size:14.5px;line-height:1.95;color:var(--text-2);margin:0}
.tk .ranks{max-width:620px;margin:8px auto 0;display:flex;flex-direction:column;gap:10px}
.tk .rank-row{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--border);border-radius:14px;padding:13px 18px}
.tk .rank-b{flex:none;width:42px;height:42px;border-radius:11px;color:#fff;font-family:var(--mincho);font-weight:800;font-size:21px;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px rgba(0,0,0,.12)}
.tk .rank-th{flex:none;width:74px;font-size:14px;font-weight:800;color:var(--text)}
.tk .rank-d{font-size:14px;line-height:1.7;color:var(--text-2)}
@media(max-width:680px){.tk .crush{grid-template-columns:1fr}.tk .rank-d{font-size:13px}.tk .rank-th{width:64px}}
/* 苦手ノート 出題の順番（鮮度キュー） */
.tk .qorder{display:flex;flex-direction:column;gap:10px;max-width:520px;margin:18px auto 0}
.tk .qo-item{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);border-radius:12px;padding:13px 18px;background:#fff}
.tk .qo-item.recent{border-color:var(--green-mid);background:var(--green-light)}
.tk .qo-item.old{opacity:.55}
.tk .qo-when{font-weight:700;color:var(--text)}
.tk .qo-pri{font-size:13px;color:var(--text-2)}
.tk .qo-item.recent .qo-pri{color:var(--green-dark);font-weight:700}
/* 論点別ランキング term：全論点インデックス */
.tk .tg-preview{background:#fff;border:1px solid var(--border);border-radius:20px;box-shadow:0 22px 54px rgba(26,48,32,.13);padding:22px 24px;max-width:380px;margin:0 auto}
.tk .tg-pv-h{font-family:var(--mincho);font-weight:800;font-size:16px;color:var(--text);margin-bottom:12px}
.tk .tg-pv-row{display:flex;align-items:center;gap:11px;padding:9px 0;border-bottom:1px solid var(--border)}
.tk .tg-pv-dot{width:11px;height:11px;border-radius:50%;flex:none}
.tk .tg-pv-nm{flex:1;font-weight:600;color:var(--text);font-size:14.5px}
.tk .tg-pv-n{font-family:var(--mincho);font-weight:800;font-size:18px;color:var(--text)}
.tk .tg-pv-n small{font-size:11px;font-weight:600;color:var(--text-3);margin-left:2px}
.tk .tg-pv-foot{margin-top:13px;font-size:13px;color:var(--text-2)}
.tk .tg-pv-foot b{color:var(--green-dark)}
.tk .tg-wrap{display:flex;flex-direction:column;gap:20px}
.tk .tg-block{background:#fff;border:1px solid var(--border);border-radius:16px;padding:20px 22px;box-shadow:var(--shadow-sm)}
.tk .tg-bh{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-bottom:13px;margin-bottom:14px;border-bottom:2px solid var(--border)}
.tk .tg-bh h3{font-family:var(--mincho);font-size:19px;font-weight:800;margin:0}
.tk .tg-bmeta{font-size:13px;color:var(--text-3);font-weight:600}
.tk .tg-go{margin-left:auto;font-size:13px;font-weight:700;color:var(--green-dark);white-space:nowrap;text-decoration:none}
.tk .tg-go:hover{text-decoration:underline}
.tk .tg-list{display:flex;flex-wrap:wrap;gap:8px}
.tk .tg-item{display:inline-flex;align-items:center;gap:7px;background:var(--bg);border:1px solid var(--border);border-radius:9px;padding:6px 11px 6px 8px;text-decoration:none;transition:border-color .15s,box-shadow .15s}
.tk .tg-item:hover{border-color:var(--green-mid);box-shadow:0 3px 10px rgba(60,199,126,.14)}
.tk .tg-c{font-family:var(--mincho);font-weight:800;font-size:15px;min-width:22px;text-align:center}
.tk .tg-nm{font-size:13px;color:var(--text-2);font-weight:600}
.tk .lead-note{display:block;margin-top:10px;font-size:13.5px;color:var(--text-3)}
@media(max-width:600px){.tk .tg-nm{font-size:12.5px}.tk .tg-go{margin-left:0;width:100%}}
/* 用語解説 knowledge */
.tk .kw-preview{background:#fff;border:1px solid var(--border);border-radius:20px;box-shadow:0 22px 54px rgba(26,48,32,.13);padding:22px 24px;max-width:380px;margin:0 auto;text-align:left}
.tk .kw-pv-tag{display:inline-block;font-size:11px;font-weight:700;color:var(--green-dark);background:var(--green-light);border-radius:999px;padding:4px 12px;margin-bottom:12px}
.tk .kw-pv-term{font-family:var(--mincho);font-weight:800;font-size:19px;color:var(--text);margin-bottom:9px}
.tk .kw-pv-ov{font-size:13.5px;line-height:1.85;color:var(--text-2);margin:0 0 12px}
.tk .kw-pv-foot{font-size:12px;color:var(--text-3);border-top:1px solid var(--border);padding-top:11px}
.tk .kw-wrap{display:flex;flex-direction:column;gap:26px}
.tk .kw-bh{font-family:var(--mincho);font-size:19px;font-weight:800;margin:0 0 16px;padding-bottom:10px;border-bottom:2px solid currentColor}
.tk .kw-bn{font-size:13px;font-weight:600;color:var(--text-3);margin-left:10px}
.tk .kw-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.tk .kw-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:18px 20px;box-shadow:var(--shadow-sm)}
.tk .kw-term{font-family:var(--mincho);font-weight:800;font-size:16.5px;color:var(--text);margin-bottom:10px}
.tk .kw-ov{font-size:14px;line-height:1.9;color:var(--text-2);margin:0 0 12px}
.tk .kw-laws{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.tk .kw-law{font-size:11.5px;font-weight:600;color:var(--blue);background:var(--blue-light);border:1px solid #CADDF7;border-radius:7px;padding:3px 9px}
.tk .kw-mn{font-size:12.5px;line-height:1.7;color:var(--text-2);background:var(--bg);border-radius:9px;padding:9px 12px}
.tk .kw-mn-l{display:inline-block;font-weight:700;color:var(--orange);margin-right:8px}
@media(max-width:760px){.tk .kw-cards{grid-template-columns:1fr}}
/* 知識点一覧：科目ブロック + 折りたたみ論点 */
.tk .kw-bh2{display:flex;align-items:baseline;gap:12px;padding-bottom:11px;margin-bottom:8px;border-bottom:2px solid currentColor}
.tk .kw-bh2 h3{font-family:var(--mincho);font-size:19px;font-weight:800;margin:0}
.tk .kw-bhaiten{font-size:13px;font-weight:600;color:var(--text-3)}
.tk .kw-use{font-size:14px;line-height:1.8;color:var(--text-2);margin:0 0 16px}
.tk .kw-items{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.tk .kw-card-link{display:block;background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px 18px;text-decoration:none;transition:border-color .15s,box-shadow .15s}
.tk .kw-card-link:hover{border-color:var(--green-mid);box-shadow:0 6px 18px rgba(60,199,126,.14)}
.tk .kw-cl-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}
.tk .kw-cl-n{font-family:var(--mincho);font-weight:800;font-size:16px;color:var(--text);line-height:1.4}
.tk .kw-cl-c{flex:none;font-family:var(--mincho);font-weight:800;font-size:15px;color:var(--green-dark)}
.tk .kw-cl-c small{font-size:11px;color:var(--text-3);font-weight:600;margin-left:1px}
.tk .kw-cl-ov{font-size:13.5px;line-height:1.8;color:var(--text-2);margin:0 0 10px}
.tk .kw-cl-go{font-size:12.5px;font-weight:700;color:var(--green-dark)}
@media(max-width:760px){.tk .kw-items{grid-template-columns:1fr}}
.tk .kw-item{background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden}
.tk .kw-item>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:13px 18px;font-weight:700;color:var(--text);transition:background .15s}
.tk .kw-item>summary::-webkit-details-marker{display:none}
.tk .kw-item>summary::after{content:"＋";margin-left:auto;color:var(--green-dark);font-weight:800;font-size:17px;flex:none}
.tk .kw-item[open]>summary::after{content:"−"}
.tk .kw-item[open]>summary{background:var(--green-light)}
.tk .kw-item>summary:hover{background:var(--green-light)}
.tk .kw-it-n{flex:1;font-size:15px}
.tk .kw-it-c{font-family:var(--mincho);font-weight:800;color:var(--green-dark);font-size:15px;flex:none}
.tk .kw-it-c small{font-size:11px;color:var(--text-3);margin-left:1px;font-weight:600}
.tk .kw-it-b{padding:2px 18px 16px;border-top:1px solid var(--border)}
.tk .kw-it-b .kw-ov{font-size:14px;line-height:1.9;color:var(--text-2);margin:13px 0 12px}
.tk .kw-more{margin-top:18px;padding-top:16px;border-top:1px dashed var(--border)}
.tk .kw-more-h{font-size:13px;font-weight:700;color:var(--text-3);margin-bottom:11px}
.tk .kw-more.collapsed .tg-list .tg-item:nth-child(n+25){display:none}
.tk .kw-more-btn{display:block;margin:15px auto 0;font-size:13.5px;font-weight:700;color:var(--green-dark);background:var(--green-light);border:1px solid var(--green-mid);border-radius:999px;padding:9px 24px;cursor:pointer;transition:background .15s,color .15s}
.tk .kw-more-btn:hover{background:var(--green-mid);color:#fff}
.tk .kw-more:not(.collapsed) .kw-more-btn{display:none}
/* 図解で学ぶ zukai */
.tk .zk-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.tk .zk-card{background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column}
.tk .zk-card .imgph{border:none;border-radius:0;border-bottom:1px dashed var(--green-mid);min-height:160px;padding:22px 20px}
.tk .zk-b{padding:18px 20px}
.tk .zk-type{display:inline-block;font-size:11.5px;font-weight:700;color:var(--green-dark);background:var(--green-light);border-radius:999px;padding:4px 12px;margin-bottom:9px}
.tk .zk-b h3{font-family:var(--mincho);font-size:17px;font-weight:800;margin:0 0 8px;color:var(--text)}
.tk .zk-b p{font-size:13.5px;line-height:1.85;color:var(--text-2);margin:0}
@media(max-width:760px){.tk .zk-grid{grid-template-columns:1fr}}

/* ===== 一問一答（marubatsu）— ○×アニメ / 個数分解 / 条文根拠 ===== */
/* 一問一答 ○× は JS + transition で複数問を巡回（.ox-btns span.sel / .ox-ans.show / .ox-card.fade） */
.tk .split4{max-width:620px;margin:8px auto 0;background:#fff;border:1px solid var(--border);border-radius:18px;padding:24px 26px;box-shadow:var(--shadow-sm)}
.tk .s4-q{font-family:var(--mincho);font-size:16px;font-weight:700;color:var(--text);margin-bottom:16px}
.tk .s4-q b{color:var(--green-dark)}
.tk .s4-rows{display:flex;flex-direction:column;gap:10px}
.tk .s4-row{display:flex;align-items:center;gap:14px;border:1px solid var(--border);border-radius:12px;padding:12px 16px;background:var(--bg)}
.tk .s4-row.t{border-color:var(--green-mid);background:var(--green-light)}
.tk .s4-row.f{border-color:#F3C4C4;background:var(--red-light)}
.tk .s4-m{flex:none;width:27px;height:27px;border-radius:7px;background:#fff;border:1px solid var(--border);font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;color:var(--text-2)}
.tk .s4-t{flex:1;font-size:13.5px;line-height:1.65;color:var(--text-2)}
.tk .s4-j{flex:none;font-family:var(--mincho);font-weight:800;font-size:23px;width:28px;text-align:center}
.tk .s4-j.ok{color:var(--green-dark)}
.tk .s4-j.ng{color:var(--seal-red)}
.tk .s4-out{margin-top:16px;text-align:center;font-size:15px;font-weight:700;color:var(--text);background:var(--green-light);border:1px solid var(--green-mid);border-radius:12px;padding:13px}
.tk .s4-out b{color:var(--green-dark);font-size:19px;margin:0 2px}
.tk .s4-twin{max-width:620px;margin:16px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.tk .s4-case{background:var(--green-light);border:1px solid var(--green-mid);border-radius:14px;padding:15px 17px}
.tk .s4-case-k{display:inline-block;font-weight:700;font-size:12px;color:#fff;background:var(--green-dark);border-radius:999px;padding:4px 12px;margin-bottom:9px}
.tk .s4-case-b{font-size:13.5px;line-height:1.8;color:var(--text-2)}
.tk .s4-case-b b{color:var(--green-dark)}
@media(max-width:600px){.tk .s4-twin{grid-template-columns:1fr}}
.tk .egov{max-width:640px;margin:8px auto 0;background:var(--blue-light);border:1px solid #CADDF7;border-radius:18px;padding:24px 28px}
.tk .egov-h{font-family:var(--mincho);font-size:16px;font-weight:700;color:var(--blue);margin-bottom:14px}
.tk .egov-chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}
.tk .egov-chip{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--blue);background:#fff;border:1px solid #CADDF7;border-radius:10px;padding:8px 13px;text-decoration:none;transition:box-shadow .15s,border-color .15s}
.tk .egov-chip::after{content:"↗";font-size:11px;opacity:.65}
.tk .egov-chip:hover{border-color:var(--blue);box-shadow:0 4px 12px rgba(47,107,216,.16)}
.tk .egov p{font-size:14px;line-height:1.9;color:var(--text-2);margin:0}
.tk .mb-cnt{font-family:var(--mincho);font-size:27px;font-weight:800;color:var(--text);line-height:1.1;margin:6px 0 8px}
.tk .mb-cnt small{font-size:13px;font-weight:600;color:var(--text-3);margin-left:2px}
@media(max-width:680px){.tk .s4-t{font-size:12.5px}}

.tk .tcards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.tk .tcard{background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:transform .14s,box-shadow .14s}
.tk .tcard:hover{transform:translateY(-3px);box-shadow:var(--shadow-md,0 14px 32px rgba(26,48,32,.12))}
.tk .tcard>img{display:block;width:100%;height:auto}
.tk .tcard-b{padding:14px 16px 16px;display:flex;flex-direction:column;gap:8px;flex:1}
.tk .tcard-tag{align-self:flex-start;font-size:11px;font-weight:700;color:#fff;border-radius:100px;padding:3px 12px}
.tk .tcard-p{font-size:12px;color:var(--text-3);line-height:1.6}
.tk .tcard-g{font-size:12.5px;color:var(--text);line-height:1.6;margin-top:auto;border-top:1px dashed var(--border);padding-top:9px;font-weight:600}
@media(max-width:980px){.tk .tcards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.tk .tcards{grid-template-columns:1fr}}
/* 8タイプ 横カード（海報を点として収める）*/
.tk .fcgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.tk .fcrow{display:grid;grid-template-columns:152px 1fr;gap:18px;background:#fff;border:1px solid var(--border);border-radius:18px;padding:16px;box-shadow:var(--shadow-sm);transition:transform .14s,box-shadow .14s}
.tk .fcrow:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(26,48,32,.1)}
.tk .fcrow>img{width:100%;height:auto;border-radius:11px;display:block;border:1px solid var(--border)}
.tk .fcrow-b{display:flex;flex-direction:column;gap:6px;min-width:0;padding:2px 0}
.tk .fcrow-tag{align-self:flex-start;font-size:11px;font-weight:700;color:#fff;border-radius:100px;padding:3px 12px}
.tk .fcrow-v{font-family:var(--mincho);font-weight:800;font-size:16px;color:var(--text);line-height:1.45}
.tk .fcrow-p{font-size:12px;color:var(--text-3);line-height:1.6}
.tk .fcrow-g{font-size:12.5px;color:var(--text);line-height:1.55;font-weight:600;margin-top:auto;padding-top:9px;border-top:1px dashed var(--border)}
@media(max-width:900px){.tk .fcgrid{grid-template-columns:1fr}}
@media(max-width:430px){.tk .fcrow{grid-template-columns:116px 1fr;gap:13px}}
/* カードの中身 ポイント */
.tk .fc-points{display:flex;flex-direction:column;gap:11px;margin-top:16px}
.tk .fcp{font-size:13px;color:var(--text-2);line-height:1.6;padding-left:15px;border-left:3px solid var(--green)}
.tk .fcp b{display:block;color:var(--text);font-weight:700;font-size:14px;margin-bottom:1px}
.tk .cardgal{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:840px;margin:8px auto 0}
.tk .cardgal-i{margin:0}
.tk .cardgal-i img{width:100%;height:auto;display:block;border-radius:14px;border:1px solid var(--border);box-shadow:0 16px 38px rgba(26,48,32,.16)}
.tk .cardgal-i figcaption{text-align:center;font-size:12.5px;font-weight:700;color:var(--text-2);margin-top:11px}
.tk .fc-points-row{flex-direction:row;max-width:840px;margin:30px auto 0;gap:22px}
.tk .fc-points-row .fcp{flex:1}
@media(max-width:680px){.tk .cardgal{grid-template-columns:1fr;max-width:300px}.tk .fc-points-row{flex-direction:column;max-width:420px}}
.tk .srs{display:flex;flex-direction:column;gap:12px;max-width:640px;margin:0 auto}
.tk .srs-row{display:grid;grid-template-columns:88px 1fr 104px;align-items:center;gap:14px}
.tk .srs-lab{font-size:12.5px;font-weight:700;color:#fff;border-radius:100px;padding:5px 0;text-align:center}
.tk .srs-bar{height:12px;background:#EEF2EE;border-radius:99px;overflow:hidden}
.tk .srs-bar i{display:block;height:100%;border-radius:99px}
.tk .srs-int{font-size:12.5px;color:var(--text-2);font-weight:600}
@media(max-width:520px){.tk .srs-row{grid-template-columns:78px 1fr}.tk .srs-int{grid-column:2;font-size:11px}}
/* 忘却曲線 */
.tk .fcurve{background:#fff;border:1px solid var(--border);border-radius:16px;padding:20px 22px 12px;box-shadow:var(--shadow-sm)}
.tk .fcurve-svg{display:block;width:100%;height:auto}
.tk .fcurve-legend{display:flex;justify-content:center;flex-wrap:wrap;gap:22px;margin-top:8px;font-size:12px;color:var(--text-2)}
.tk .fcurve-legend i{display:inline-block;width:18px;height:3px;border-radius:2px;margin-right:6px;vertical-align:middle}
.tk .fcurve-legend .lg-green{background:#3CC77E}
.tk .fcurve-legend .lg-gray{background:#AEB8B0}
/* 合格点の推移 柱状 */
.tk .ptchart{display:flex;align-items:flex-end;gap:12px;height:200px;padding-top:24px}
.tk .ptcol{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%}
.tk .ptcol .pv{font-family:var(--mincho);font-weight:800;font-size:16px;color:var(--green-dark);margin-bottom:5px}
.tk .ptcol .pb{width:60%;background:linear-gradient(180deg,var(--green),var(--green-dark));border-radius:6px 6px 0 0;min-height:4px}
.tk .ptcol .py{font-size:11px;color:var(--text-3);margin-top:8px;white-space:nowrap}
.tk .ptnote{font-size:12px;color:var(--text-3);margin-top:12px}
/* 関連情報 小入口 */
.tk .related{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:760px;margin:0 auto}
@media(max-width:600px){.tk .related{grid-template-columns:1fr}}
.tk .rcard{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px 18px;transition:border-color .12s,box-shadow .12s}
.tk .rcard:hover{border-color:var(--green);box-shadow:var(--shadow-sm);text-decoration:none}
.tk .rcard .ric{width:58px;height:58px;color:var(--green-dark);display:grid;place-items:center;flex-shrink:0}
.tk .rcard .ric .ui-icon{width:20px;height:20px}
.tk .rcard .ric .ai-icon{width:56px;height:56px}
.tk .rcard .rt{font-family:var(--mincho);font-weight:700;font-size:15px;color:var(--text)}
.tk .rcard .rd{font-size:12px;color:var(--text-3)}
.tk .rcard .rar{margin-left:auto;color:var(--green);font-weight:700}

/* 4つの強み 图文交替大模块 */
.tk .strengths{display:flex;flex-direction:column}
.tk .srow{display:grid;grid-template-columns:1.02fr .98fr;gap:46px;align-items:center;padding:42px 0;border-top:1px solid var(--border)}
.tk .srow:first-child{border-top:none}
@media(max-width:860px){.tk .srow{grid-template-columns:1fr;gap:22px;padding:30px 0}.tk .srow.rev .s-media{order:0}}
.tk .srow.rev .s-media{order:-1}
.tk .s-no{display:inline-block;font-family:var(--mincho);font-weight:800;font-size:12.5px;color:#fff;background:var(--green);border-radius:100px;padding:3px 14px;letter-spacing:.08em}
.tk .s-h{font-family:var(--mincho);font-weight:800;font-size:24px;color:var(--text);margin:13px 0 12px;line-height:1.5}
.tk .s-h em{font-style:normal;color:var(--green-dark)}
.tk .s-d{font-size:14.5px;color:var(--text-2);line-height:1.95}
.tk .s-media{min-width:0}
.tk .s-media .stack{max-width:none}
.tk .vplist{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.tk .vp{display:flex;align-items:center;gap:9px;background:var(--bg);border-radius:10px;padding:10px 12px;font-size:13px;font-weight:600;color:var(--text)}
.tk .vp .vpn{flex-shrink:0;width:22px;height:22px;border-radius:6px;background:#fff;border:1px solid var(--border);font-size:10px;display:flex;align-items:center;justify-content:center;color:var(--green-dark);font-weight:800}
.tk .axes{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.tk .axis{background:var(--bg);border-radius:12px;padding:15px;text-align:center}
.tk .axis .ax-ic{font-size:23px}
.tk .axis .ax-t{font-family:var(--mincho);font-weight:700;font-size:13.5px;margin-top:5px;color:var(--text)}
.tk .axis .ax-d{font-size:11px;color:var(--text-3);margin-top:1px}
.tk .s-nums{display:flex;gap:14px;text-align:center}
.tk .s-nums .sn-i{flex:1;background:var(--bg);border-radius:12px;padding:16px 8px}
.tk .s-nums .sn-v{font-family:var(--mincho);font-weight:800;font-size:26px;color:var(--green-dark)}
.tk .s-nums .sn-l{font-size:11px;color:var(--text-3);margin-top:2px}

/* 8視点 解説プレビュー */
.tk .preview{background:#fff;border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow-lg);overflow:hidden;max-width:880px;margin:0 auto}
.tk .preview-q{padding:20px 26px;background:linear-gradient(135deg,#1A3020,#2A4A35);color:#fff}
.tk .preview-q .pq-tag{font-size:11px;font-weight:700;color:var(--green-mid);letter-spacing:.06em}
.tk .preview-q .pq-t{font-size:15px;font-weight:600;margin-top:6px;line-height:1.7}
.tk .preview-body{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border)}
@media(max-width:680px){.tk .preview-body{grid-template-columns:1fr}}
.tk .pv-blk{background:#fff;padding:15px 18px}
.tk .pv-blk .pv-h{font-family:var(--mincho);font-weight:700;font-size:13.5px;color:var(--text);margin-bottom:5px;display:flex;gap:8px;align-items:center}
.tk .pv-blk .pv-h .pvn{flex-shrink:0;width:20px;height:20px;border-radius:5px;background:var(--green-light);color:var(--green-dark);font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center}
.tk .pv-blk .pv-s{font-size:12.5px;color:var(--text-2);line-height:1.7}
.tk .preview-foot{padding:17px 26px;text-align:center;border-top:1px solid var(--border);background:var(--green-light)}
.tk .preview-foot a{font-weight:700;color:var(--green-dark)}

/* FAQ 折叠 */
.tk .faqs{max-width:820px;margin:0 auto}
.tk .faq-acc{background:#fff;border:1px solid var(--border);border-radius:12px;margin-bottom:10px;overflow:hidden}
.tk .faq-acc summary{list-style:none;cursor:pointer;padding:16px 20px;font-weight:700;font-size:15px;color:var(--text);display:flex;align-items:center;gap:12px}
.tk .faq-acc summary::-webkit-details-marker{display:none}
.tk .faq-acc summary::before{content:'Q';flex-shrink:0;width:24px;height:24px;border-radius:7px;background:var(--green-light);color:var(--green-dark);font-family:var(--mincho);font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}
.tk .faq-acc summary::after{content:'＋';margin-left:auto;color:var(--green);font-weight:700;font-size:18px}
.tk .faq-acc[open] summary::after{content:'－'}
.tk .faq-acc .ans{padding:0 20px 18px 56px;font-size:14px;color:var(--text-2);line-height:1.85}

/* answer-first 摘要ボックス（GEO 用） */
.tk .lead-box{background:var(--green-light);border-left:4px solid var(--green);border-radius:0 14px 14px 0;padding:22px 26px;max-width:860px;margin:18px auto 0}
.tk .lead-box p{font-size:15.5px;line-height:2.0;color:var(--text);margin:0}
.tk .lead-box b{color:var(--green-dark);font-weight:700}

/* ── footer ── */
.tk .site-foot{background:var(--forest);color:rgba(255,255,255,.72);margin-top:50px;padding:42px 0 26px;font-size:13px}
.tk .foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px;max-width:1080px;margin:0 auto;padding:0 24px}
@media(max-width:760px){.tk .foot-grid{grid-template-columns:1fr 1fr}}
.tk .foot-brand{display:flex;align-items:center;gap:8px;font-family:var(--mincho);font-weight:700;font-size:17px;color:#fff;margin-bottom:8px}
.tk .foot-brand .ui-icon{width:17px;height:17px;color:var(--green-mid)}
.tk .foot-col h4{font-size:12px;color:rgba(255,255,255,.5);font-weight:700;margin-bottom:10px;letter-spacing:.05em}
.tk .foot-col a{display:block;color:rgba(255,255,255,.72);margin:6px 0}
.tk .foot-col a:hover{color:#fff}
.tk .foot-bottom{max-width:1080px;margin:24px auto 0;padding:18px 24px 0;border-top:1px solid rgba(255,255,255,.12);font-size:12px;color:rgba(255,255,255,.5);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
.tk .foot-tools{color:rgba(255,255,255,.5)}
.tk .foot-tools a{color:var(--green-mid)}
/* ===== 知識点 二級ページ（論点詳細）===== */
.tk .kt-hero{background:linear-gradient(155deg,#fff,#F2F8F0 60%,#E7F4EC);border-bottom:1px solid var(--border);padding:46px 0 38px}
.tk .kt-tags{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:15px}
.tk .kt-subj{font-size:12.5px;font-weight:700;color:#fff;border-radius:999px;padding:4px 13px}
.tk .kt-freq,.tk .kt-cnt{font-size:12.5px;font-weight:600;color:var(--text-2);background:#fff;border:1px solid var(--border);border-radius:999px;padding:4px 12px}
.tk .kt-h1{font-family:var(--mincho);font-size:34px;font-weight:800;color:var(--text);margin:0 0 14px;line-height:1.3}
.tk .kt-lead{font-size:16px;line-height:2;color:var(--text-2);margin:0 0 16px}
.tk .lp-kterm .sec p{font-size:15px;line-height:2;color:var(--text-2)}
.tk .kt-key{background:var(--green-light);border-left:3px solid var(--green);border-radius:0 10px 10px 0;padding:14px 18px;margin:16px 0;font-size:14.5px;line-height:1.9;color:var(--text-2)}
.tk .kt-key b{display:block;color:var(--green-dark);margin-bottom:5px}
.tk .kt-sys{font-size:14.5px;line-height:1.9;color:var(--text-2);margin-top:16px}
.tk .kt-sys b{color:var(--text)}
.tk .kt-mis{background:#fff;border:1px solid var(--border);border-left:3px solid var(--orange);border-radius:0 12px 12px 0;padding:15px 18px;margin-bottom:12px}
.tk .kt-mis-q{font-weight:700;color:var(--text);margin-bottom:8px}
.tk .kt-mis-q::before{content:"✕ ";color:var(--seal-red);font-weight:800}
.tk .kt-mis-a{font-size:14px;line-height:1.85;color:var(--text-2)}
.tk .kt-mis-a b{color:var(--orange)}
.tk .kt-mis-t{font-size:13.5px;color:var(--green-dark);margin-top:7px;font-weight:600}
.tk .kt-pat{background:var(--bg);border-radius:12px;padding:16px 20px;margin-top:16px}
.tk .kt-pat b{display:block;margin-bottom:8px;color:var(--text)}
.tk .kt-pat ul{margin:0;padding-left:20px}
.tk .kt-pat li{font-size:14px;line-height:1.9;color:var(--text-2)}
.tk .kt-mem{background:#fff;border:1px solid var(--border);border-radius:12px;padding:14px 18px;margin-bottom:10px;font-size:14.5px;line-height:1.85;color:var(--text-2)}
.tk .kt-mem-l{display:inline-block;font-weight:700;color:var(--orange);margin-right:10px}
.tk .kt-pqs{display:flex;flex-direction:column;gap:10px}
.tk .kt-pq{display:flex;gap:14px;align-items:baseline;background:#fff;border:1px solid var(--border);border-radius:10px;padding:12px 16px;text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s,transform .15s}
.tk .kt-pq:hover{border-color:var(--green);box-shadow:0 4px 14px rgba(36,144,77,.10);transform:translateY(-1px)}
.tk .kt-pq.nolink{background:#fafbfc;cursor:default}
.tk .kt-pq.nolink:hover{border-color:var(--border);box-shadow:none;transform:none}
.tk .kt-pq-go.muted{color:var(--text-3);font-weight:500}
.tk .kt-pq-y{flex:none;font-size:12.5px;font-weight:700;color:var(--green-dark);width:92px}
.tk .kt-pq-t{flex:1;font-size:14px;color:var(--text-2);line-height:1.6}
.tk .kt-pq-go{flex:none;font-size:12.5px;font-weight:700;color:var(--green-dark);white-space:nowrap}
.tk .kt-quizzes{display:flex;flex-direction:column;gap:10px}
.tk .kt-quiz{background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden}
.tk .kt-quiz>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:14px 18px}
.tk .kt-quiz>summary::-webkit-details-marker{display:none}
.tk .kt-quiz-q{flex:1;font-weight:600;color:var(--text);font-size:14.5px;line-height:1.7}
.tk .kt-quiz-b{flex:none;font-size:12px;font-weight:700;color:#fff;background:var(--green);border-radius:999px;padding:4px 13px}
.tk .kt-quiz[open] .kt-quiz-b{background:var(--text-3)}
.tk .kt-quiz-a{padding:0 18px 16px;border-top:1px solid var(--border);font-size:14px;line-height:1.85;color:var(--text-2)}
.tk .kt-quiz-ans{display:inline-block;font-family:var(--mincho);font-weight:800;font-size:20px;color:var(--green-dark);margin:12px 10px 0 0;vertical-align:-2px}
@media(max-width:600px){.tk .kt-h1{font-size:27px}.tk .kt-pq{flex-direction:column;gap:4px}.tk .kt-pq-y{width:auto}.tk .kt-pq-go{align-self:flex-end}}
.tk .kw-detail-link{display:inline-block;margin-top:12px;font-size:13.5px;font-weight:700;color:var(--green-dark);text-decoration:none}
.tk .kw-detail-link:hover{text-decoration:underline}
/* 知識点 二級ページ 関連論点ナビ（内部リンク）*/
.tk .kt-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:22px}
.tk .kt-nav-i{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid var(--border);border-radius:12px;padding:13px 18px;text-decoration:none;transition:border-color .15s,box-shadow .15s}
.tk .kt-nav-i:hover{border-color:var(--green-mid);box-shadow:0 4px 12px rgba(60,199,126,.12)}
.tk .kt-nav-i.tr{text-align:right}
.tk .kt-nav-i.empty{background:none;border:none}
.tk .kt-nav-i.info{background:var(--bg);border-style:dashed;cursor:default}
.tk .kt-nav-i.info .kt-nav-d{color:var(--text-3)}
.tk .kt-nav-i.info .kt-nav-t{color:var(--text-2);font-weight:600}
.tk .kt-nav-d{font-size:12px;font-weight:700;color:var(--green-dark)}
.tk .kt-nav-t{font-size:14.5px;font-weight:700;color:var(--text);line-height:1.4}
.tk .kt-sibs-h{font-size:13px;font-weight:700;color:var(--text-3);margin-bottom:11px}
.tk .kt-sibs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.tk .kt-sib{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid var(--border);border-radius:9px;padding:6px 12px 6px 9px;text-decoration:none;font-size:13px;color:var(--text-2);font-weight:600;transition:border-color .15s,box-shadow .15s}
.tk .kt-sib:hover{border-color:var(--green-mid);box-shadow:0 3px 10px rgba(60,199,126,.14)}
.tk .kt-sib b{font-family:var(--mincho);font-weight:800;font-size:14px;color:var(--green-dark)}
.tk .kt-subj-nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding-top:18px;border-top:1px solid var(--border)}
.tk .kt-subj-lab{font-size:13px;font-weight:700;color:var(--text-3);margin-right:4px}
.tk .kt-subj-link{font-size:13px;font-weight:700;color:var(--green-dark);background:var(--green-light);border:1px solid var(--green-mid);border-radius:999px;padding:6px 15px;text-decoration:none;transition:background .15s,color .15s}
.tk .kt-subj-link:hover{background:var(--green-mid);color:#fff}
.tk .kt-subj-link.on{background:var(--green-dark);color:#fff;border-color:var(--green-dark)}
@media(max-width:600px){.tk .kt-nav{grid-template-columns:1fr}.tk .kt-nav-i.tr{text-align:left}}
/* 過去問 年度別 LP：年度カード */
.tk .yr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.tk .yr-card{display:flex;flex-direction:column;gap:3px;background:#fff;border:1px solid var(--border);border-radius:13px;padding:15px 17px;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .1s}
.tk .yr-card:hover{border-color:var(--green-mid);box-shadow:0 6px 16px rgba(60,199,126,.14)}
.tk .yr-y{font-family:var(--mincho);font-weight:800;font-size:17px;color:var(--text)}
.tk .yr-d{font-size:12px;color:var(--text-3)}
.tk .yr-go{margin-top:6px;font-size:12.5px;font-weight:700;color:var(--green-dark)}
.tk .yr-card.off{opacity:.5;background:var(--bg)}
.tk .yr-card.off .yr-d{color:var(--text-3)}
.tk .yr-preview{background:#fff;border:1px solid var(--border);border-radius:20px;box-shadow:0 22px 54px rgba(26,48,32,.13);padding:22px 24px;max-width:380px;margin:0 auto}
.tk .yr-pv-h{font-family:var(--mincho);font-weight:800;font-size:16px;color:var(--text);margin-bottom:14px}
.tk .yr-pv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.tk .yr-pv-grid span{font-size:13px;font-weight:700;text-align:center;padding:10px 0;border-radius:9px;background:var(--bg);color:var(--text-3);border:1px solid var(--border)}
.tk .yr-pv-grid span.on{background:var(--green-light);color:var(--green-dark);border-color:var(--green-mid)}
.tk .yr-pv-foot{margin-top:14px;font-size:12.5px;color:var(--text-2);text-align:center}

/* ===== pSEO 批量页 差异化：年度页(年度ダッシュボード) / 章节页(論点フォーカス) ===== */
/* 科目アクセント色（両ページ共用）: 宅建業法=緑 / 権利関係=青 / 法令=紫 / 税=橙 */
.tk .yi-gyouhou,.tk .sc-gyouhou{--sc:var(--green);--scl:var(--green-light)}
.tk .yi-minpo,.tk .sc-minpo{--sc:var(--blue);--scl:var(--blue-light)}
.tk .yi-hourei,.tk .sc-hourei{--sc:var(--purple);--scl:var(--purple-light)}
.tk .yi-zei,.tk .sc-zei{--sc:var(--orange);--scl:var(--orange-light)}

/* --- 年度页：濃紺ダッシュボード hero + スタットカード --- */
.tk .yi-hero{position:relative;overflow:hidden;background:linear-gradient(150deg,var(--navy) 0%,var(--navy-dark) 100%);color:#fff;border-radius:20px;padding:34px 36px 30px;margin:18px 0 24px}
.tk .yi-hero::after{content:'';position:absolute;right:-90px;top:-90px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(60,199,126,.22),transparent 70%)}
.tk .yi-eyebrow{font-size:12.5px;letter-spacing:.08em;color:var(--green-mid);font-weight:700;margin-bottom:8px}
.tk .yi-h1{font-family:var(--mincho);font-size:30px;line-height:1.3;margin:0;color:#fff}
.tk .yi-h1 em{color:var(--green);font-style:normal}
.tk .yi-lead{color:#cdd8e6;font-size:14px;margin:10px 0 20px;max-width:640px}
.tk .yi-stats{position:relative;z-index:1;display:flex;gap:12px;flex-wrap:wrap}
.tk .yi-stat{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:12px 18px;min-width:128px}
.tk .yi-stat b{display:block;font-family:var(--mincho);font-size:26px;color:#fff;line-height:1}
.tk .yi-stat b small{font-size:14px;margin-left:1px;font-weight:700}
.tk .yi-stat span{display:block;font-size:11.5px;color:#aebbcd;margin-top:6px}
.tk .yi-sec{margin:34px 0}
.tk .yi-h2{font-family:var(--mincho);font-size:21px;margin:0 0 4px;color:var(--text)}
.tk .yi-sub{font-size:13.5px;color:var(--text-2);margin:0 0 16px}
.tk .yi-comp{display:flex;flex-direction:column;gap:11px;max-width:680px}
.tk .yi-bar{display:grid;grid-template-columns:96px 1fr 54px;align-items:center;gap:12px}
.tk .yi-bk{font-size:13px;font-weight:600;color:var(--text)}
.tk .yi-bt{height:14px;background:var(--bg);border:1px solid var(--border);border-radius:7px;overflow:hidden}
.tk .yi-bt>i{display:block;height:100%;background:var(--sc,var(--green));border-radius:7px}
.tk .yi-bn{font-size:12.5px;color:var(--text-2);text-align:right}
.tk .yi-grp{margin-bottom:22px}
.tk .yi-gh{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:0 2px 9px;border-bottom:2px solid var(--sc,var(--green));margin-bottom:12px}
.tk .yi-gt{font-family:var(--mincho);font-size:18px;font-weight:700;color:var(--text)}
.tk .yi-gt::before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--sc,var(--green));margin-right:8px;vertical-align:middle}
.tk .yi-gn{font-size:12px;color:var(--text-3)}
.tk .yi-more{margin-top:18px}.tk .yi-more a{font-size:14px;font-weight:600}

/* --- 章节页：科目色のタグ付き hero + 問題カードグリッド --- */
.tk .sc-hero{border-left:6px solid var(--sc,var(--green));background:var(--scl,var(--green-light));border-radius:14px;padding:26px 30px;margin:18px 0 22px}
.tk .sc-eyebrow{font-size:12.5px;letter-spacing:.06em;font-weight:700;color:var(--sc,var(--green-dark));margin-bottom:8px}
.tk .sc-h1{font-family:var(--mincho);font-size:30px;line-height:1.3;margin:0 0 14px;color:var(--text)}
.tk .sc-meta{display:flex;gap:8px;flex-wrap:wrap}
.tk .sc-pill{background:var(--sc,var(--green));color:#fff;font-size:12.5px;font-weight:700;padding:5px 13px;border-radius:999px}
.tk .sc-pill.ghost{background:#fff;color:var(--text-2);border:1px solid var(--border)}
.tk .qc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.tk .qc{display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px 18px;color:var(--text);transition:border-color .15s,box-shadow .15s,transform .15s}
.tk .qc:hover{border-color:var(--sc,var(--green));box-shadow:var(--shadow);transform:translateY(-2px);text-decoration:none}
.tk .qc-top{display:flex;align-items:center;gap:8px;margin-bottom:9px}
.tk .qc-lab{font-size:12px;color:var(--text-3);font-weight:600}
.tk .qc-stem{flex:1;font-size:13.5px;line-height:1.62;color:var(--text-2);margin:0 0 13px}
.tk .qc-go{font-size:12.5px;font-weight:700;color:var(--sc,var(--green-dark))}
@media(max-width:680px){.tk .qc-grid{grid-template-columns:1fr}.tk .yi-bar{grid-template-columns:78px 1fr 46px}.tk .yi-h1,.tk .sc-h1{font-size:24px}.tk .yi-hero,.tk .sc-hero{padding:22px}}

/* ===== 每题页：8視点の簡易プレビュー（無料）＋ 詳しい解説のログイン・ベール ===== */
.tk .blk.kprev .blk-h{margin-bottom:4px}
.tk .kp-list{display:flex;flex-direction:column}
.tk .kp-row{display:flex;gap:12px;align-items:flex-start;padding:11px 2px;border-bottom:1px dashed var(--border)}
.tk .kp-row:last-child{border-bottom:0}
.tk .kp-n{flex:none;width:25px;height:25px;border-radius:7px;background:var(--green-light);color:var(--green-dark);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;font-family:var(--mincho)}
.tk .kp-t{font-size:14px;font-weight:700;color:var(--text)}
.tk .kp-d{font-size:12.5px;color:var(--text-2);margin-top:2px;line-height:1.55}
/* 詳しい解説：実テキストをぼかし＋上に白フェード＋中央にログイン誘導 */
.tk .kai-lock{position:relative;margin-top:18px;border:1px solid var(--border);border-radius:18px;overflow:hidden;background:#fff;box-shadow:var(--shadow-sm)}
.tk .kai-lock-body{max-height:300px;overflow:hidden;padding:22px 24px 0;filter:blur(3px);opacity:.62;user-select:none;pointer-events:none}
.tk .kai-lock-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.08) 30%,rgba(255,255,255,.72) 62%,#fff 92%)}
.tk .kai-lock-cta{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;text-align:center;gap:9px;padding:0 24px 26px}
.tk .kl-ic{width:48px;height:48px;border-radius:50%;background:var(--green);display:flex;align-items:center;justify-content:center;box-shadow:0 10px 22px rgba(60,199,126,.34)}
.tk .kl-ic svg{width:23px;height:23px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.tk .kl-t{font-family:var(--mincho);font-size:17px;font-weight:800;color:var(--text);line-height:1.4}
.tk .kl-d{font-size:13px;color:var(--text-2);max-width:460px;line-height:1.65}
.tk .kl-btn{margin-top:5px}
.tk .kl-login{font-size:12.5px;color:var(--text-3);font-weight:600}
.tk .kl-login:hover{color:var(--green-dark)}
@media(max-width:560px){.tk .kai-lock-body{max-height:200px}.tk .kl-t{font-size:15.5px}}

/* hub「一覧へ」インラインリンク：改行させない */
.tk .seemore{white-space:nowrap;font-weight:700;color:var(--green-dark)}
/* 章节页 → 知識点詳細への導線ボックス（演習一覧 と 学習詳細 の役割を分け、重複回避） */
.tk .kx-box{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;background:var(--green-light);border:1px solid var(--green-mid);border-radius:14px;padding:16px 20px;margin:18px 0 6px}
.tk .kx-l{display:flex;gap:12px;align-items:flex-start;flex:1;min-width:260px}
.tk .kx-ic{flex:none;width:34px;height:34px;border-radius:9px;background:#fff;border:1px solid var(--green-mid);display:flex;align-items:center;justify-content:center}
.tk .kx-ic .ui-icon{width:18px;height:18px;stroke:var(--green-dark)}
.tk .kx-t{font-weight:800;font-size:14.5px;color:var(--text)}
.tk .kx-d{font-size:12.5px;color:var(--text-2);margin-top:3px;line-height:1.55}
.tk .kx-chips{display:flex;flex-wrap:wrap;gap:8px}
.tk .kx-chip{background:#fff;border:1px solid var(--green-mid);color:var(--green-dark);font-size:12.5px;font-weight:700;padding:7px 13px;border-radius:999px;white-space:nowrap}
.tk .kx-chip:hover{background:var(--green);color:#fff;text-decoration:none}

/* ログイン済み：解説ベールを解除して全文表示（KAI_JS が .unlocked を付与） */
.tk .kai-lock.unlocked .kai-lock-body{max-height:none;overflow:visible;filter:none;opacity:1;padding:20px 22px 4px}
.tk .kai-lock.unlocked .kai-lock-veil,.tk .kai-lock.unlocked .kai-lock-cta{display:none}

/* 每题页：前後問題＋年度一覧の内链バー */
.tk .qnav{display:flex;align-items:center;gap:10px;margin:16px 0 2px}
.tk .qn-s{flex:none;font-size:13.5px;font-weight:700;color:var(--green-dark);background:var(--green-light);border:1px solid var(--green-mid);border-radius:10px;padding:9px 14px;white-space:nowrap}
.tk .qn-s:hover{background:var(--green);color:#fff;text-decoration:none}
.tk .qn-dis{color:var(--text-3);background:var(--bg);border-color:var(--border);cursor:default}
.tk .qn-dis:hover{background:var(--bg);color:var(--text-3)}
.tk .qn-mid{flex:1;text-align:center;font-size:13px;font-weight:600;color:var(--text-2);background:#fff;border:1px solid var(--border);border-radius:10px;padding:9px 12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tk .qn-mid:hover{border-color:var(--green);color:var(--green-dark);text-decoration:none}

/* 每题页：次に読む・関連ページ */
.tk .qrel-sec{margin:30px 0 6px}
.tk .qrel-h{font-family:var(--mincho);font-size:18px;margin:0 0 14px;color:var(--text)}
.tk .qrel-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.tk .qrel{display:flex;flex-direction:column;gap:3px;background:#fff;border:1px solid var(--border);border-radius:12px;padding:14px 16px;color:var(--text);transition:border-color .15s,box-shadow .15s}
.tk .qrel:hover{border-color:var(--green);box-shadow:var(--shadow-sm);text-decoration:none}
.tk .qrel-t{font-size:14px;font-weight:700;color:var(--text)}
.tk .qrel-d{font-size:12px;color:var(--text-2);line-height:1.5}
@media(max-width:560px){.tk .qrel-grid{grid-template-columns:1fr}.tk .qnav{flex-wrap:wrap}.tk .qn-mid{order:3;flex-basis:100%}}

/* 分野別LP：章節ごとの論点チップ（→知識点詳細）。章节页廃止の代替 */
.tk .lt-grp{margin-bottom:18px}
.tk .lt-h{font-family:var(--mincho);font-weight:800;font-size:15px;color:var(--text);padding:0 2px 8px;border-bottom:2px solid var(--green-mid);margin-bottom:11px;display:flex;align-items:baseline;justify-content:space-between}
.tk .lt-h em{font-style:normal;font-size:11.5px;font-weight:600;color:var(--text-3)}
.tk .lt-chips{display:flex;flex-wrap:wrap;gap:8px}
.tk .lt-chip{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid var(--border);border-radius:10px;padding:8px 13px;font-size:13px;font-weight:600;color:var(--text)}
.tk .lt-chip:hover{border-color:var(--green);background:var(--green-light);color:var(--green-dark);text-decoration:none}
.tk .lt-chip b{font-size:11px;font-weight:800;color:var(--green-dark);background:var(--green-light);border-radius:6px;padding:1px 6px;min-width:20px;text-align:center}
.tk .lt-chip.off{opacity:.5;cursor:default}
.tk .lt-chip.off:hover{border-color:var(--border);background:#fff;color:var(--text)}
.tk .lt-chip.off b{color:var(--text-3);background:var(--bg)}

/* Pricing 旧 CSS 撤去 → 末尾の「和装の料金書」エディトリアル CSS を参照 */

/* ===== Question page: 「この問題の全体像」 lead-box（V8 main_explanation の主題段。GEO 用 answer-block） ===== */
.tk .q-over{background:linear-gradient(135deg,#fcf9f0 0%,#fff7e8 100%);border:1px solid #f0d89a;border-left:4px solid var(--orange);border-radius:10px;padding:16px 22px;margin:14px 0 22px;box-shadow:0 1px 3px rgba(160,110,30,.04)}
.tk .q-over-eye{font-size:11.5px;font-weight:800;color:var(--orange);letter-spacing:1px;margin-bottom:6px}
.tk .q-over-b{font-size:15px;line-height:1.85;color:var(--text-2);margin:0;font-feature-settings:"palt"}
@media(max-width:600px){.tk .q-over{padding:14px 16px}.tk .q-over-b{font-size:14.5px}}


/* ===== Pricing 料金プラン LP（takken 整站の緑＋橙＋米色語彙で統一） ===== */

/* === ① 顶部 minimal head（極コンパクト：首屏に価格カードが入る高さに圧縮）=== */
.tk .prc-top{padding:30px 0 24px;background:linear-gradient(180deg,var(--green-light) 0%,var(--bg) 100%);border-bottom:1px solid var(--border)}
.tk .prc-top-in{text-align:center;max-width:760px;margin:0 auto;padding:0 20px}
.tk .prc-pill{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--green);border-radius:999px;padding:7px 16px 7px 7px;font-size:12.5px;font-weight:700;color:var(--green-dark);margin-bottom:14px;letter-spacing:.02em}
.tk .prc-pill-ic{width:20px;height:20px;border-radius:50%;background:var(--green);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;flex:none}
.tk .prc-h1{font-family:var(--mincho);font-weight:800;font-size:34px;line-height:1.35;color:var(--text);margin:0 0 10px;letter-spacing:.01em}
.tk .prc-h1 em{font-style:normal;color:var(--green-dark)}
.tk .prc-sub{font-size:14px;line-height:1.85;color:var(--text-2);max-width:580px;margin:0 auto}
@media(max-width:700px){.tk .prc-h1{font-size:25px}.tk .prc-sub{font-size:13.5px}}

/* === ② 3 价格卡（立刻显示，takken 圆角 + 绿色推荐高亮）=== */
.tk .prc-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:18px;align-items:stretch}
.tk .prc-plan{position:relative;background:#fff;border:1.5px solid var(--border);border-radius:16px;padding:30px 26px 26px;display:flex;flex-direction:column;transition:border-color .2s,box-shadow .2s,transform .2s}
.tk .prc-plan:hover{border-color:var(--green-light);box-shadow:var(--shadow);transform:translateY(-2px)}
.tk .prc-plan-rec{border-color:var(--green);border-width:2px;box-shadow:0 8px 24px rgba(36,144,77,.10);background:linear-gradient(180deg,#fff 0%,#f4fbf6 100%)}
.tk .prc-plan-badge{position:absolute;top:-12px;left:24px;background:var(--orange);color:#fff;font-size:11.5px;font-weight:800;letter-spacing:.05em;border-radius:999px;padding:6px 14px;box-shadow:0 4px 10px rgba(234,122,44,.30)}
.tk .prc-plan-name{font-family:var(--mincho);font-weight:800;font-size:19px;color:var(--text);margin:0 0 14px;letter-spacing:.02em}
.tk .prc-plan-price{display:flex;align-items:baseline;gap:3px;margin-bottom:4px}
.tk .ppp-yen{font-family:var(--mincho);font-weight:700;font-size:22px;color:var(--text);align-self:flex-start;margin-top:9px}
.tk .ppp-amount{font-family:var(--mincho);font-weight:800;font-size:48px;color:var(--text);line-height:1;letter-spacing:.005em;font-feature-settings:"tnum"}
.tk .ppp-unit{font-size:14px;color:var(--text-3);font-weight:600;margin-left:3px;align-self:flex-end;margin-bottom:6px}
.tk .prc-plan-rec .ppp-amount{color:var(--green-dark)}
.tk .prc-plan-permonth{font-size:12.5px;color:var(--green-dark);font-weight:700;margin:6px 0 16px;min-height:18px;letter-spacing:.02em}
.tk .prc-plan-tag{font-size:13px;color:var(--text-2);margin:0 0 18px;line-height:1.7;min-height:44px}
.tk .prc-plan-feats{list-style:none;padding:0;margin:0 0 22px;font-size:13.5px;color:var(--text-2);line-height:1.8;flex:1}
.tk .prc-plan-feats li{padding:5px 0 5px 22px;position:relative}
.tk .prc-plan-feats li::before{content:"✓";position:absolute;left:0;top:5px;color:var(--green);font-weight:800;font-size:14px}
.tk .prc-plan-cta{margin-top:auto;display:inline-block;text-align:center;background:#fff;color:var(--green-dark);border:1.5px solid var(--green);padding:12px 18px;border-radius:10px;font-weight:700;text-decoration:none;font-size:14px;transition:all .15s}
.tk .prc-plan-cta:hover{background:var(--green);color:#fff;text-decoration:none}
.tk .prc-plan-rec .prc-plan-cta{background:var(--green);color:#fff;border-color:var(--green)}
.tk .prc-plan-rec .prc-plan-cta:hover{background:var(--green-dark);border-color:var(--green-dark)}
.tk .prc-plan-note{margin-top:10px;font-size:11.5px;color:var(--text-3);text-align:center;letter-spacing:.02em}
@media(max-width:880px){.tk .prc-plans{grid-template-columns:1fr;gap:14px}.tk .prc-plan-tag{min-height:0}}

/* === ③ 機能比較表（takken 圆角 + 绿色顶栏 + 橙色 ✓ 标）=== */
.tk .prc-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden;font-size:14.5px;margin-top:24px;font-feature-settings:"palt"}
.tk .prc-table thead th{font-size:13px;font-weight:800;letter-spacing:.04em;text-align:left;padding:14px 20px;color:var(--text);background:var(--green-light);border-bottom:1px solid var(--border)}
.tk .prc-table thead th:nth-child(2),.tk .prc-table thead th:nth-child(3){text-align:center;width:180px}
.tk .prc-table thead th:nth-child(3){color:var(--green-dark)}
.tk .prc-table tbody tr{transition:background .15s}
.tk .prc-table tbody tr:hover{background:#fafbf7}
.tk .prc-table tbody th{font-family:var(--mincho);font-weight:700;font-size:14.5px;color:var(--text);text-align:left;padding:16px 20px;border-bottom:1px solid #eef0eb;letter-spacing:.02em}
.tk .prc-table tbody td{padding:16px 20px;text-align:center;border-bottom:1px solid #eef0eb;font-size:13.5px}
.tk .prc-table tbody tr:last-child th,.tk .prc-table tbody tr:last-child td{border-bottom:none}
.tk .prc-m-free{color:var(--text-3);font-feature-settings:"tnum"}
.tk .prc-m-paid{color:var(--green-dark);font-weight:700;background:rgba(60,199,126,.06);font-feature-settings:"tnum"}
.tk .prc-m-paid::before{content:"✓";color:var(--orange);font-weight:800;margin-right:8px;font-size:14px}
@media(max-width:700px){.tk .prc-table{font-size:13px}.tk .prc-table thead th,.tk .prc-table tbody th,.tk .prc-table tbody td{padding:12px 14px}.tk .prc-table thead th:nth-child(2),.tk .prc-table thead th:nth-child(3){width:auto}}

/* === ④ 監修保証カード群（lead-box 風＋3 カード）=== */
.tk .prc-kanshu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}
.tk .prc-kanshu-card{background:#fff;border:1px solid var(--border);border-left:3px solid var(--orange);border-radius:10px;padding:16px 18px}
.tk .pkc-k{font-size:11.5px;font-weight:800;color:var(--orange);letter-spacing:.08em;margin-bottom:6px}
.tk .pkc-v{font-size:13.5px;color:var(--text-2);line-height:1.7}
.tk .pkc-v b{color:var(--text);font-weight:700}
@media(max-width:700px){.tk .prc-kanshu-grid{grid-template-columns:1fr;gap:10px}}

/* ===== Pricing 監修 Trust バナー（信頼感強化＋数字集約 = 重複回避）===== */
.tk .prc-trust{background:linear-gradient(140deg,var(--forest) 0%,#21402c 100%);color:#fff;padding:42px 0;position:relative;overflow:hidden}
.tk .prc-trust::before{content:"";position:absolute;top:-60px;right:-60px;width:280px;height:280px;border:1px solid rgba(60,199,126,.12);border-radius:50%;pointer-events:none}
.tk .prc-trust::after{content:"";position:absolute;bottom:-100px;left:-100px;width:340px;height:340px;border:1px solid rgba(60,199,126,.08);border-radius:50%;pointer-events:none}
.tk .prc-trust-in{position:relative;z-index:1;padding:0 20px;max-width:1080px;margin:0 auto}
.tk .prc-trust-head{display:flex;align-items:center;gap:22px;margin-bottom:28px}
.tk .prc-trust-badge{flex:none;color:#3CC77E;display:flex;align-items:center;justify-content:center;width:78px;height:78px;background:rgba(60,199,126,.12);border-radius:50%}
.tk .prc-trust-badge svg{display:block}
.tk .prc-trust-text{flex:1}
.tk .prc-trust-h{font-family:var(--mincho);font-weight:800;font-size:24px;color:#fff;letter-spacing:.02em;line-height:1.45;margin-bottom:8px}
.tk .prc-trust-h em{font-style:normal;color:#9FE5B8;font-weight:800}
.tk .prc-trust-d{font-size:13.5px;color:rgba(255,255,255,.80);line-height:1.85;word-break:auto-phrase;line-break:strict;font-feature-settings:"palt"}
.tk .prc-trust-d b{color:#9FE5B8;font-weight:700;font-feature-settings:"tnum";white-space:nowrap}
.tk .prc-trust-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding-top:24px;border-top:1px solid rgba(60,199,126,.18)}
.tk .prc-trust-stats>div{text-align:center}
.tk .tts-v{font-family:var(--mincho);font-weight:800;font-size:36px;color:#9FE5B8;line-height:1;letter-spacing:.005em;font-feature-settings:"tnum"}
.tk .tts-v small{font-size:18px;font-weight:700;color:#9FE5B8;margin-left:2px}
.tk .tts-l{font-size:11.5px;color:rgba(255,255,255,.65);margin-top:7px;letter-spacing:.06em}
@media(max-width:780px){.tk .prc-trust-head{flex-direction:column;text-align:center;gap:14px}.tk .prc-trust-h{font-size:20px}.tk .prc-trust-stats{grid-template-columns:repeat(2,1fr);gap:16px}.tk .tts-v{font-size:30px}}

/* ===== Pricing 页面 section 衔接修正（body 米色の透けを完全抑制）===== */
.tk .pricing-page .prc-top{background:linear-gradient(180deg,var(--green-light) 0%,#fff 100%);border-bottom:none;padding:30px 0 0;margin:0}
.tk .pricing-page #plans{padding-top:32px;margin:0;border-top:none;background:linear-gradient(180deg,#fff 0%,var(--green-light) 60%,var(--bg) 100%)}
.tk .pricing-page .sec.full{margin:0}  /* .sec の 34px margin が body 背景を露出させる元凶 */

/* ===== Pricing 2026 年予想 highlight tag（緊迫感を出す）===== */
.tk .prc-year-tag{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--orange);border-radius:999px;padding:7px 18px 7px 8px;font-size:13px;color:var(--text-2);margin-bottom:18px;letter-spacing:.02em}
.tk .prc-year-tag b{color:var(--orange);font-weight:800}
.tk .pyt-ic{width:22px;height:22px;border-radius:50%;background:var(--orange);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:900;flex:none}
