@charset "UTF-8";
:root{font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:#202938;background:#f4f6fa;font-synthesis:none;--blue:#244be8;--ink:#202938;--muted:#637083;--line:#e1e6ef;--soft:#edf2ff;font-size:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0}a{color:var(--blue);text-underline-offset:4px}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #f0bf34;outline-offset:3px}[hidden]{display:none!important}.skip-link{position:absolute;left:12px;top:-80px;z-index:20;background:#fff;padding:12px}.skip-link:focus{top:10px}.site-header{background:#fff;border-bottom:1px solid var(--line)}.header-inner{max-width:1160px;margin:auto;padding:20px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-size:1.2rem;font-weight:800}.brand-icon{display:grid;place-items:center;background:var(--blue);color:#fff;width:34px;height:36px;border-radius:7px}.site-header nav{display:flex;gap:25px}.site-header nav a{font-size:.875rem;font-weight:700;text-decoration:none}.site-header nav a:hover{text-decoration:underline}main{max-width:1160px;margin:auto;padding:0 28px 70px}.eyebrow,.section-label{display:block;color:var(--blue);font-size:.75rem;font-weight:800;letter-spacing:.08em}.library-hero{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:70px;align-items:center;padding:65px 0 48px;border-bottom:1px solid var(--line)}.library-hero h1{font-size:2.65rem;line-height:1.42;margin:9px 0 13px;letter-spacing:.01em}.library-hero p{color:var(--muted);line-height:1.9;max-width:660px}.library-hero aside{background:#fff;border:1px solid var(--line);border-radius:16px;padding:27px;text-align:center;box-shadow:0 8px 30px #2c46720c}.library-hero aside strong,.library-hero aside span,.library-hero aside small{display:block}.library-hero aside strong{font-size:3.8rem;line-height:1;color:var(--blue)}.library-hero aside span{font-weight:800;margin-top:8px}.library-hero aside small{font-size:.75rem;color:var(--muted);line-height:1.6;margin-top:8px}.finder{padding:43px 0 25px}.finder-heading{display:flex;justify-content:space-between;align-items:end}.finder-heading h2{font-size:1.55rem;margin:5px 0}.finder-heading p{font-size:.875rem;color:var(--muted)}.search-box{display:block;max-width:660px;margin-top:16px}.search-box span{display:block;font-size:.8125rem;font-weight:700;margin-bottom:7px}.search-box input{width:100%;height:50px;padding:0 17px;border:1px solid #c9d2e2;background:#fff;border-radius:9px;font-size:1rem}.category-filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.category-filters button{border:1px solid #ccd5e5;background:#fff;border-radius:99px;padding:8px 13px;color:#4e5b70;font-size:.8125rem}.category-filters button small{color:#8490a1;margin-left:3px}.category-filters button.active{background:var(--blue);border-color:var(--blue);color:#fff}.category-filters button.active small{color:#dbe3ff}.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.article-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:13px;padding:21px;min-height:272px;box-shadow:0 4px 16px #243b6208}.article-number{font-size:.7rem;font-weight:800;color:#8793a5;letter-spacing:.06em;margin-right:8px}.category-badge{display:inline-block;background:#eaf0ff;color:var(--blue);border-radius:99px;padding:5px 9px;font-size:.7rem;font-weight:800}.article-card h2{font-size:1.05rem;line-height:1.65;margin:14px 0 8px}.article-card h2 a{color:var(--ink);text-decoration:none}.article-card h2 a:hover{text-decoration:underline}.article-card p{font-size:.8125rem;line-height:1.8;color:var(--muted);margin:0 0 17px}.card-link{display:flex;justify-content:space-between;margin-top:auto;font-size:.8125rem;font-weight:800;text-decoration:none}.empty-state{text-align:center;padding:55px;color:var(--muted)}.tool-cta{display:flex;justify-content:space-between;align-items:center;gap:35px;background:#203b79;color:#fff;padding:31px 34px;border-radius:15px;margin-top:55px}.tool-cta h2{font-size:1.45rem;margin:6px 0 8px}.tool-cta p{font-size:.875rem;line-height:1.75;color:#dae3f8;margin:0}.tool-cta .eyebrow{color:#aac0ff}.tool-cta>a{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:35px;min-width:210px;background:#fff;color:var(--blue);border-radius:8px;padding:14px 17px;text-decoration:none;font-size:.9rem;font-weight:800}footer{border-top:1px solid var(--line);background:#fff;padding:30px max(28px,calc((100vw - 1104px)/2));font-size:.75rem;color:var(--muted)}footer p{margin:8px 0}.footer-brand{font-size:1rem;font-weight:800;color:var(--ink);text-decoration:none}.breadcrumb{display:flex;align-items:center;gap:8px;overflow:hidden;padding:23px 0;font-size:.75rem;color:#7c8899;white-space:nowrap}.breadcrumb a{color:#5b6c86}.breadcrumb span:last-child{overflow:hidden;text-overflow:ellipsis}.article-hero{padding:35px 0 39px;border-bottom:1px solid var(--line);max-width:850px}.article-hero .article-number{margin-left:9px}.article-hero h1{font-size:2.35rem;line-height:1.5;margin:14px 0}.article-hero p{font-size:1.05rem;line-height:1.95;color:#536178;margin:0}.article-hero>small{display:block;color:#7a879a;font-size:.75rem;margin-top:16px}.article-layout{display:grid;grid-template-columns:minmax(0,760px) 280px;gap:55px;align-items:start;padding:45px 0}.article-content>section{margin-bottom:45px}.article-content h2{font-size:1.4rem;margin:7px 0 16px}.article-content p{font-size:.9375rem;color:#526078;line-height:2}.answer-box{background:var(--soft);border-left:4px solid var(--blue);border-radius:0 12px 12px 0;padding:24px 27px}.answer-box>span{font-size:.75rem;font-weight:800;color:var(--blue)}.answer-box h2{font-size:1.18rem;margin:5px 0 8px}.answer-box p{margin:0}.steps{list-style:none;padding:0;margin:0}.steps li{display:flex;align-items:flex-start;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}.steps li:first-child{border-top:1px solid var(--line)}.steps li>span{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;background:var(--blue);color:#fff;border-radius:50%;font-size:.8rem;font-weight:800}.steps li p{margin:2px 0 0;color:var(--ink);font-weight:700;line-height:1.75}.check-list{list-style:none;margin:0;padding:5px 0}.check-list li{position:relative;padding:13px 15px 13px 48px;background:#fff;border:1px solid var(--line);border-radius:9px;margin-top:9px;font-size:.9375rem;font-weight:700}.check-list li:before{content:'✓';position:absolute;left:17px;top:11px;display:grid;place-items:center;width:23px;height:23px;background:#eaf0ff;color:var(--blue);border-radius:50%;font-size:.75rem}.timing-box{padding:22px 25px;border:1px solid #d8e1f5;border-radius:11px}.timing-box h2{font-size:1.15rem;margin-bottom:7px}.timing-box p{margin:0}.caution-box{display:flex;gap:16px;background:#fff9e9;border:1px solid #efdfa9;border-radius:11px;padding:22px 24px}.caution-box>span{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;background:#f0bf34;color:#443500;border-radius:50%;font-weight:900}.caution-box h2{font-size:1.05rem;margin:3px 0 4px}.caution-box p{margin:0;color:#685b36}.source-list{padding-left:20px}.source-list li{margin:10px 0;font-size:.875rem;line-height:1.7}.article-aside{position:sticky;top:20px}.aside-card{background:#203b79;color:#fff;border-radius:14px;padding:23px}.aside-card>span{font-size:.75rem;font-weight:800;color:#abc0f8}.aside-card h2{font-size:1.2rem;margin:6px 0 8px}.aside-card p{font-size:.8125rem;line-height:1.75;color:#dae3f8}.aside-card>a{display:flex;justify-content:space-between;background:#fff;color:var(--blue);padding:12px 14px;border-radius:7px;text-decoration:none;font-size:.875rem;font-weight:800}.aside-card small{display:block;text-align:center;color:#cbd8f3;font-size:.7rem;margin-top:10px}.mini-nav{display:grid;gap:9px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:19px;margin-top:14px}.mini-nav strong{font-size:.8125rem;margin-bottom:2px}.mini-nav a{font-size:.8rem;color:#637087}.related-section{border-top:1px solid var(--line);padding:42px 0}.related-section h2{margin:5px 0 19px;font-size:1.45rem}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.related-grid>a{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:11px;padding:18px;text-decoration:none;min-height:155px}.related-grid span{font-size:.7rem;color:var(--blue);font-weight:800}.related-grid strong{font-size:.9rem;line-height:1.65;color:var(--ink);margin:8px 0}.related-grid small{margin-top:auto;font-size:.75rem;font-weight:800}.all-guides-link{display:inline-block;margin-top:18px;font-size:.875rem;font-weight:800}
@media(max-width:900px){.article-grid{grid-template-columns:repeat(2,1fr)}.article-layout{grid-template-columns:minmax(0,1fr) 245px;gap:28px}.library-hero{gap:35px}}
@media(max-width:680px){.header-inner{padding:16px 18px}.brand{font-size:1.05rem}.brand-icon{width:29px;height:31px}.site-header nav{gap:14px}.site-header nav a{font-size:.75rem}main{padding:0 18px 50px}.library-hero{display:block;padding:38px 0 30px}.library-hero h1{font-size:1.9rem}.library-hero aside{display:flex;align-items:center;gap:12px;text-align:left;margin-top:22px;padding:18px}.library-hero aside strong{font-size:2.4rem}.library-hero aside span{margin:0}.library-hero aside small{display:none}.finder{padding-top:30px}.finder-heading{align-items:center}.article-grid{grid-template-columns:1fr}.article-card{min-height:0}.tool-cta{display:block;padding:25px 22px}.tool-cta>a{margin-top:18px;min-width:0}.article-hero{padding:22px 0 30px}.article-hero h1{font-size:1.8rem}.article-hero p{font-size:.9375rem}.article-layout{display:block;padding:30px 0}.article-content>section{margin-bottom:35px}.article-aside{position:static}.mini-nav{display:none}.related-grid{grid-template-columns:1fr}.related-grid>a{min-height:125px}footer{padding:25px 18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Expanded search guide */
.article-hero-strong{max-width:920px}.long-form>section{scroll-margin-top:30px}.long-form h3{font-size:1.05rem}.answer-box p+p{margin-top:10px}.comparison-wrap{overflow-x:auto;margin-top:16px}.comparison-table{width:100%;min-width:620px;border-collapse:collapse;background:#fff;font-size:.875rem}.comparison-table th,.comparison-table td{border:1px solid var(--line);padding:14px;line-height:1.7;text-align:left;vertical-align:top}.comparison-table thead th{background:#203b79;color:#fff}.comparison-table tbody th{width:21%;background:#f6f8fc}.source-note{font-size:.8125rem!important;background:#f8faff;border-radius:8px;padding:13px 15px;margin-top:13px!important}.detail-steps{list-style:none;padding:0;margin:0}.detail-steps li{display:flex;gap:17px;padding:20px 0;border-bottom:1px solid var(--line)}.detail-steps li:first-child{border-top:1px solid var(--line)}.detail-steps li>span{display:grid;place-items:center;flex:0 0 35px;width:35px;height:35px;border-radius:50%;background:var(--blue);color:#fff;font-size:.8rem;font-weight:800}.detail-steps h3{margin:3px 0 5px}.detail-steps p{margin:0}.cost-compare-tool{background:#edf2ff;border:1px solid #d6e0fa;border-radius:14px;padding:26px}.cost-compare-tool>p{margin:7px 0 19px}.cost-compare-tool form{display:grid;grid-template-columns:1fr 1fr;gap:15px}.cost-column{background:#fff;border:1px solid #dce4f4;border-radius:10px;padding:18px}.cost-column h3{margin:0 0 13px}.cost-column label{display:block;position:relative;font-size:.8125rem;font-weight:700;margin-top:12px}.cost-column input{width:100%;height:44px;border:1px solid #c9d3e6;border-radius:7px;padding:0 39px 0 11px;margin-top:6px}.cost-column label>span{position:absolute;right:12px;bottom:12px;color:var(--muted);font-weight:400}.cost-compare-tool button{grid-column:1/-1;border:0;border-radius:8px;background:var(--blue);color:#fff;padding:13px 18px;font-weight:800}.cost-compare-tool>small{display:block;color:var(--muted);font-size:.72rem;line-height:1.7;margin-top:13px}.cost-result{display:grid;grid-template-columns:1fr 1fr;gap:10px;background:#fff;border-radius:10px;padding:18px;margin-top:15px}.cost-result div span,.cost-result div strong{display:block}.cost-result div span{font-size:.75rem;color:var(--muted)}.cost-result div strong{font-size:1.4rem;color:var(--blue);margin-top:4px}.cost-result>p{grid-column:1/-1;margin:5px 0 0!important;font-size:.875rem!important}.cost-result>p:only-child{grid-column:1/-1;color:var(--muted)}.cost-result .cost-error{color:#a32222}.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.case-grid article{background:#fff;border:1px solid var(--line);border-radius:10px;padding:19px}.case-grid article>span{font-size:.7rem;color:var(--blue);font-weight:800}.case-grid h3{margin:7px 0 4px}.case-grid p{font-size:.85rem;margin:0}.article-faq{background:#fff;border-bottom:1px solid var(--line);padding:0 17px}.article-faq:first-of-type{border-radius:10px 10px 0 0}.article-faq:last-of-type{border-radius:0 0 10px 10px}.article-faq summary{cursor:pointer;font-size:.9375rem;font-weight:800;line-height:1.7;padding:17px 25px 17px 0}.article-faq p{font-size:.875rem;margin:0;padding:0 0 18px}.long-form .source-list{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 20px 12px 38px}
@media(max-width:680px){.cost-compare-tool{padding:20px 16px}.cost-compare-tool form{grid-template-columns:1fr}.cost-compare-tool button{grid-column:1}.case-grid{grid-template-columns:1fr}.cost-result{grid-template-columns:1fr}.cost-result>p{grid-column:1}.article-hero-strong h1{font-size:1.7rem}.comparison-table th,.comparison-table td{padding:11px}.detail-steps li{gap:12px}}

/* Home router comparison */
.term-field{grid-column:1/-1;display:grid;grid-template-columns:auto 180px;align-items:center;justify-content:start;gap:15px;font-size:.875rem;font-weight:800}.term-field select{height:43px;border:1px solid #c9d3e6;border-radius:7px;background:#fff;padding:0 11px}.choice-columns{display:grid;grid-template-columns:1fr 1fr;gap:13px}.choice-columns article{background:#fff;border:1px solid var(--line);border-radius:11px;padding:21px}.choice-columns article>span{font-size:.7rem;color:var(--blue);font-weight:800}.choice-columns h3{margin:7px 0 10px}.choice-columns ul{margin:0;padding-left:20px}.choice-columns li{font-size:.875rem;line-height:1.8;margin:4px 0}
@media(max-width:680px){.term-field{grid-column:1;grid-template-columns:1fr}.choice-columns{grid-template-columns:1fr}}
