:root{--paper:#f7f5ef;--ink:#22262e;--ink2:#4a505a;--muted:#5e6570;--line:#e3dfd4;--line2:#d3cec1;--blue:#2b4c7e;--blue-d:#1f3a63;--blue-l:#e8edf5;--marker:#f3e2a0;--hot:#a8431d;--dark:#1e232b;--serif:"Shippori Mincho B1", "Hiragino Mincho ProN", serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);margin:0;font-family:Noto Sans JP,system-ui,sans-serif;line-height:1.7}a{color:var(--blue)}a:hover{color:var(--blue-d)}img,svg{max-width:100%}h1,h2,h3,p{margin:0}button,input,select{font-family:inherit}:focus-visible{outline-offset:2px;outline:3px solid #8fa8cf}.wrap{max-width:1160px;margin:0 auto;padding:0 24px}.narrow{max-width:820px;margin:0 auto;padding:0 24px}.stack{flex-direction:column;display:flex}.row{flex-wrap:wrap;align-items:center;display:flex}.grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.card{border:1px solid var(--line);background:#fff;border-radius:14px}a.card{color:var(--ink);text-decoration:none;display:block}a.card:hover{border-color:var(--blue);color:var(--ink)}.h1{font-family:var(--serif);letter-spacing:.01em;font-size:38px;font-weight:700;line-height:1.4}.h2{font-family:var(--serif);font-size:27px;font-weight:700;line-height:1.45}.h3{font-size:19px;font-weight:700;line-height:1.5}.lead{color:var(--ink2);font-size:17px;line-height:1.9}.muted{color:var(--muted)}.small{font-size:13px}.crumb{color:var(--muted);font-size:13px}.eyebrow{letter-spacing:.12em;color:var(--blue);font-size:12px;font-weight:700}.mark{background:linear-gradient(transparent 58%, var(--marker) 58%)}.tag{background:var(--blue-l);color:var(--blue-d);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}.tag-gray{color:#484c53;background:#eeeeea}.tag-hot{color:#8a3415;background:#faebe3}.pr{color:var(--muted);border:1px solid var(--line2);border-radius:4px;padding:0 6px;font-size:11px;font-weight:700;line-height:1.6;display:inline-block}.btn,.btn2{cursor:pointer;border-radius:10px;justify-content:center;align-items:center;min-height:50px;padding:0 26px;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex}.btn{background:var(--blue);color:#fff;border:0}.btn:hover{background:var(--blue-d);color:#fff}.btn2{border:1.5px solid var(--ink);color:var(--ink);background:#fff}.btn2:hover{color:var(--ink);background:#f1eee6}.sec{padding:64px 0}.sec-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:24px;display:flex}.more{font-size:14px;font-weight:700;text-decoration:none}.site-header{border-bottom:1px solid var(--line);background:#fff}.site-header .inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 28px;max-width:1160px;margin:0 auto;padding:10px 24px;display:flex}.logo{color:var(--ink);align-items:center;gap:10px;min-height:44px;text-decoration:none;display:flex}.logo span{font-family:var(--serif);letter-spacing:.04em;font-size:23px;font-weight:700}.nav{flex-wrap:wrap;gap:0 22px;font-size:14px;font-weight:500;display:flex}.nav a{color:var(--ink);padding:12px 0;text-decoration:none}.nav a:hover{color:var(--blue)}.site-footer{background:var(--dark);color:#e4e7ec;margin-top:40px}.site-footer .inner{flex-direction:column;gap:32px;max-width:1160px;margin:0 auto;padding:52px 24px 32px;display:flex}.site-footer a{color:#e4e7ec;padding:8px 0;font-size:14px;text-decoration:none;display:inline-block}.site-footer a:hover{color:#fff;text-decoration:underline}.foot-nav{flex:360px;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;display:grid}.hero{border-bottom:1px solid var(--line);background-color:#fff;background-image:repeating-linear-gradient(#0000 0 31px,#ece8de 31px 32px)}.tool-card{flex-direction:column;gap:10px;height:100%;padding:22px;display:flex}.tool-card .nm{font-size:19px;font-weight:700;line-height:1.4}.spec{color:var(--ink2);grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px;font-size:13px;display:grid}.spec b{color:var(--muted);font-size:11px;font-weight:700;display:block}.meta{color:var(--muted);flex-wrap:wrap;gap:4px 14px;font-size:12px;display:flex}.filters{gap:16px;padding:20px;display:grid}.filter-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filter-row>.lbl{width:84px;color:var(--ink2);font-size:13px;font-weight:700}.chip{border:1.5px solid var(--line);min-height:38px;color:var(--ink);cursor:pointer;background:#fff;border-radius:999px;padding:0 14px;font-size:13px}.chip[aria-pressed=true]{border-color:var(--blue);background:var(--blue-l);color:var(--blue-d);font-weight:700}.select{border:1px solid var(--line2);background:#fff;border-radius:8px;min-height:40px;padding:0 10px;font-size:14px}.list-row{color:var(--ink);border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 18px;padding:18px 22px;text-decoration:none;display:flex}.list-row:first-child{border-top:0}a.list-row:hover{color:var(--ink);background:#fbfaf6}.tbl-wrap{overflow-x:auto}.tbl{border-collapse:collapse;width:100%}.tbl th,.tbl td{text-align:left;vertical-align:top;border-top:1px solid var(--line);padding:13px 16px;font-size:15px;line-height:1.65}.tbl tr:first-child th,.tbl tr:first-child td{border-top:0}.tbl thead th{color:var(--ink2);background:#f2efe7;font-size:13px}.tbl tbody th{width:30%;color:var(--ink2);font-weight:700}.say{align-items:flex-start;gap:12px;display:flex}.avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:inline-flex}.bubble{border:1px solid var(--line);background:#fff;border-radius:4px 16px 16px;padding:14px 18px}.bubble .who{font-size:12px;font-weight:700}.bubble p{margin-top:2px;font-size:15px;line-height:1.8}.article{flex-direction:column;gap:22px;display:flex}.article h2{font-family:var(--serif);border-bottom:2px solid var(--ink);padding:18px 0 8px;font-size:26px;font-weight:700;line-height:1.45}.article h3{font-size:19px;font-weight:700}.article p,.article li{font-size:17px;line-height:2}.article ul,.article ol{margin:0;padding-left:22px}.article pre{color:#f2f2ee;white-space:pre-wrap;background:#2a2f38;border-radius:10px;margin:0;padding:18px 20px;font-size:14px;line-height:1.8;overflow-x:auto}.toc a{color:var(--ink);border-top:1px solid var(--line);padding:9px 0;font-size:14px;text-decoration:none;display:block}.toc a:hover{color:var(--blue)}.empty{text-align:center;color:var(--muted);padding:32px;font-size:15px}@media (max-width:640px){.h1{font-size:28px}.h2{font-size:23px}.sec{padding:44px 0}.article h2{font-size:22px}.article p,.article li{font-size:16px}.filter-row>.lbl{width:100%}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.input{border:1px solid var(--line2);width:100%;min-height:48px;font:inherit;color:var(--ink);background:#fff;border-radius:8px;padding:0 16px;font-size:16px}.input:focus{outline:2px solid var(--blue);outline-offset:1px;border-color:var(--blue)}textarea.input{resize:vertical;padding:12px 16px;line-height:1.7}.compare{padding:0;overflow:hidden}.compare-tabs{border-bottom:1px solid var(--line);background:#fbfaf6;gap:0;display:flex;overflow-x:auto}.compare-tabs button{min-height:48px;font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;flex:1 0 auto;padding:0 18px;font-size:15px;font-weight:700}.compare-tabs button.on{color:var(--blue-d);border-bottom-color:var(--blue);background:#fff}.compare-panel{padding:18px 22px 20px}.compare-body{max-height:460px;position:relative;overflow:hidden}.compare-body:not(.open):after{content:"";background:linear-gradient(#fff0,#fff);height:72px;position:absolute;bottom:0;left:0;right:0}.compare-body.open{max-height:none}.compare-body .article{gap:12px}.compare-body .article p,.compare-body .article li{font-size:15px}.compare-more{border:1px solid var(--line2);min-height:40px;font:inherit;cursor:pointer;background:#fff;border-radius:8px;margin-top:10px;padding:0 16px;font-size:14px}
