/* 市くらべ：ツール単独のCSS（ホストのCSSに頼らない。色は --kt-* で上書きできる） */
.kt-app{--kt-ink:var(--ink,#1b2f4b);--kt-ink2:var(--ink2,#56637a);--kt-line:var(--line,#d5dde3);--kt-main:var(--shu,#1f6fb0);--kt-main-l:var(--shu-l,#e2edf8);--kt-kin:var(--kin,#ffd34d);--kt-kin-l:var(--kin-l,#fff6d6);color:var(--kt-ink);line-height:1.75}
.kt-w{max-width:1080px;margin:0 auto;padding:0 16px}
.kt-hero{background:#fff;border-bottom:1px solid var(--kt-line);padding:30px 0 26px}
.kt-app h1{font:900 28px/1.4 var(--disp,inherit);margin:0 0 8px}.kt-app h1 em{font-style:normal;color:var(--kt-main)}
.kt-lead{color:var(--kt-ink2);margin:0 0 6px}
.kt-sec{padding:28px 0}.kt-sec h2{font:900 22px var(--disp,inherit);margin:0 0 4px}.kt-h3{font:900 17px var(--disp,inherit);margin:24px 0 8px}.kt-sub{color:var(--kt-ink2);font-size:14px;margin:0 0 14px}
.kt-pick{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0 0}
.kt-slot{background:#fff;border:2px solid var(--kt-ink);border-radius:10px;padding:10px 12px;position:relative}.kt-slot.opt{border-style:dashed;border-color:var(--kt-line)}
.kt-slot label{font-size:13px;font-weight:700;color:var(--kt-ink2);display:block}
.kt-slot input{display:block;width:100%;font:inherit;font-weight:700;padding:9px 8px;margin-top:4px;border:1px solid var(--kt-line);border-radius:6px;background:#fff;color:var(--kt-ink)}
.kt-got{display:none;align-items:center;justify-content:space-between;gap:8px;margin-top:4px;font:900 18px var(--disp,inherit);background:var(--kt-main-l);border-radius:6px;padding:8px 10px}
.kt-got small{font:500 12px var(--disp,inherit);color:var(--kt-ink2);display:block}.kt-got button{border:0;background:#fff;border-radius:50%;width:28px;height:28px;font-size:16px;cursor:pointer;color:var(--kt-ink2);flex:none}
.kt-slot.has input{display:none}.kt-slot.has .kt-got{display:flex}
.kt-sug{list-style:none;margin:2px 0 0;padding:0;position:absolute;left:0;right:0;top:100%;z-index:20;background:#fff;border:1px solid var(--kt-ink);border-radius:8px;box-shadow:0 8px 20px rgba(0,0,0,.15);max-height:320px;overflow:auto}
.kt-sug li{padding:9px 12px;cursor:pointer;border-top:1px solid var(--kt-line)}.kt-sug li:first-child{border-top:0}.kt-sug li small{color:var(--kt-ink2);margin-left:6px}.kt-sug li:hover,.kt-sug li.on{background:var(--kt-main-l)}
.kt-near{margin-top:14px;font-size:15px}.kt-near b{margin-right:6px}.kt-near button{font:inherit;font-weight:700;margin:3px 6px 3px 0;padding:5px 12px;border:1px solid var(--kt-ink);border-radius:6px;background:#fff;color:var(--kt-ink);cursor:pointer}.kt-near button small{color:var(--kt-ink2);font-weight:400;margin-left:3px}.kt-near button:hover:not(:disabled){background:var(--kt-ink);color:#fff}
.kt-items{border:1px solid var(--kt-line);border-radius:10px;background:#fff;margin:16px 0 0;padding:8px 14px 10px}.kt-items legend{font-weight:700;font-size:14px;padding:0 6px;color:var(--kt-ink2)}
.kt-items label{display:inline-flex;align-items:center;gap:6px;margin:4px 18px 4px 0;font-weight:700;cursor:pointer}.kt-items input{width:18px;height:18px}
.kt-t{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--kt-line);border-radius:10px;overflow:hidden;table-layout:fixed}
.kt-t th,.kt-t td{padding:12px;border-top:1px solid var(--kt-line);vertical-align:top;text-align:left;overflow-wrap:anywhere}
.kt-t thead th{border-top:0;background:var(--kt-ink);color:#fff;font:900 18px var(--disp,inherit)}.kt-t thead th small{display:block;font:500 12px var(--disp,inherit);opacity:.8}.kt-t thead th:first-child{background:#13243b;font-size:13px;width:7.5em}
.kt-t tbody th{font-size:14px;color:var(--kt-ink2);background:#fafbfc}.kt-t tbody th small{display:block;font-weight:400;font-size:11px;margin-top:4px;line-height:1.5}
.kt-t td{font-weight:700}.kt-t td small,.kt-t td details{display:block;font-weight:400;color:var(--kt-ink2);font-size:12.5px;margin-top:3px;line-height:1.6}.kt-t td summary{cursor:pointer;color:var(--kt-main)}
.kt-t td.best{background:var(--kt-kin-l)}.kt-t td.best .mk{display:inline-block;font-size:12px;background:var(--kt-kin);color:var(--kt-ink);border-radius:4px;padding:0 6px;margin-right:4px}
.kt-t td.no{color:#7b8494;font-weight:400}
.kt-t tr.sec th{background:#eef2f6;color:var(--kt-ink);font:900 14px var(--disp,inherit);padding:8px 12px}
.kt-leg{font-size:13px;color:var(--kt-ink2);margin:10px 0 0}
.kt-go a{display:inline-block;margin:0 14px 8px 0}.kt-tx a{display:inline-block}.kt-tx p.ex a{margin:0 14px 6px 0}
.kt-tx h2{font:900 19px var(--disp,inherit);margin:22px 0 8px;padding-left:10px;border-left:5px solid var(--kt-main)}.kt-tx li{line-height:1.9}
@media(max-width:760px){.kt-pick{grid-template-columns:1fr}.kt-app h1{font-size:23px}.kt-t th,.kt-t td{padding:8px 6px;font-size:13px}.kt-t thead th{font-size:14px}.kt-t thead th:first-child{width:4.6em;font-size:11px}.kt-t tbody th{font-size:11.5px}.kt-t td small,.kt-t td details,.kt-t td summary{font-size:11px}}
