/* Readable comparison surfaces, shared detail-page system. */
body{color:#253448}.portal{background:linear-gradient(#f9fbfe 0,white 220px)}.portal-title{padding-bottom:24px}.portal-title h1{font-size:29px;letter-spacing:-.6px}.category-nav{border-radius:5px 5px 0 0;overflow:hidden}.side-panel{border-radius:4px;overflow:hidden}.ranking-banner{border-radius:5px;background:linear-gradient(110deg,#e9f3ff,#f7fbff);padding:22px 26px}.ranking-banner h2{font-size:27px;letter-spacing:-.7px}.ranking-banner>div>span{font-weight:700}.purpose-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0 0 20px}.purpose-shortcuts button{display:flex;align-items:center;text-align:left;gap:10px;background:white;border:1px solid #c7d6e5;border-radius:5px;padding:13px 12px;cursor:pointer;color:#214d78;min-width:0;box-shadow:0 2px 4px #12304a04}.purpose-shortcuts button:hover{border-color:#3e83c1;background:#f2f8ff}.purpose-shortcuts button[aria-pressed=true]{border-color:#1169b8;box-shadow:inset 0 0 0 1px #1169b8;background:#f0f7ff}.shortcut-icon{width:36px;height:36px;flex-shrink:0;color:#2875b6}.shortcut-icon svg{width:100%;height:100%}.purpose-shortcuts small{display:block;font-size:10px;color:#75889c;margin-bottom:3px}.purpose-shortcuts b{display:block;font-size:12px;white-space:nowrap}.purpose-shortcuts i{font-style:normal;font-size:24px;font-weight:400;color:#6191b8;margin-left:auto}.purpose-tabs{margin-bottom:22px}.purpose-tabs button{min-height:43px}.comparison-tip{padding:9px 12px;border:1px dashed #c6d7e6;background:#f8fbff;font-size:11px;color:#55728b;margin:12px 0 6px}.purpose-reason{margin-bottom:17px;color:#596d7e}.rank-item{border-radius:5px;overflow:hidden;box-shadow:0 3px 10px #23456906;transition:border-color .15s,box-shadow .15s}.rank-item:hover{border-color:#8bafce;box-shadow:0 3px 13px #2345690e}.rank-item.is-selected{border-color:#176bb2;box-shadow:0 0 0 1px #176bb2}.rank-title{padding:12px 16px;background:linear-gradient(90deg,#edf5fe,#f7faff)}.rank-item[data-rank="1"] .rank-title{background:linear-gradient(90deg,#fff7e4,#fffdf7)}.rank-item[data-rank="1"]{border-color:#d9bd78}.rank-item[data-rank="1"].is-selected{border-color:#176bb2}.position{border-radius:3px}.rank-title h2{font-size:23px}.compare-check{border:1px solid #c6d5e4;padding:7px 9px;border-radius:4px;background:white;min-height:36px}.is-selected .compare-check{background:#e9f3ff;color:#075daf;border-color:#80add5}.rank-content{padding:23px 17px;column-gap:20px}.service-info h3{font-size:15px;line-height:1.8;margin-bottom:14px}.service-mark{border-radius:4px;border-color:#e1e7ee;background:#fcfdff;height:78px}.service-type{font-size:11px}.detail-link{font-size:11px;padding:8px 4px;min-height:34px}.spec-table th{font-size:11px;padding:8px 2px}.spec-table td{height:47px}.spec-table td small{font-size:9px}.separate{font-size:11px}.point-list{font-size:12px;line-height:1.95;margin-top:13px}.service-actions>p{font-size:12px;line-height:1.85}.service-actions>span{font-size:11px;border-radius:3px}.service-actions>small{font-size:10px}.portal .official-button{min-height:45px;box-shadow:0 2px 0 #ba6e0d;font-size:14px;background:linear-gradient(#ffb33d,#f6971b);border-color:#dd8a1b}.service-caution{background:#f8fafc}.service-caution summary{font-size:11px;min-height:38px;padding:10px 16px}.service-caution p{font-size:12px}.full-table{font-size:12px}.full-table th,.full-table td{padding:15px 12px}.full-table thead th{background:#e9f1f9;color:#365c7e;font-size:12px}.full-table tbody tr:hover td,.full-table tbody tr:hover th{background:#f1f7ff}.full-table tbody th{position:sticky;left:0;z-index:1;box-shadow:2px 0 0 #d0dce7}.full-table-scroll{border-radius:4px}.block-title{border-radius:3px 3px 0 0;background:#f0f5fa}.faq-section details{border-bottom:1px solid #dce5ed}.faq-section summary{list-style:none;display:flex;gap:12px;align-items:center;padding:17px 10px;font-size:13px;font-weight:700;cursor:pointer}.faq-section summary::-webkit-details-marker{display:none}.faq-section summary>span{color:#196ab0;font-family:Georgia,serif;font-size:20px}.faq-section summary:after{content:'＋';margin-left:auto;color:#4681b1;font-size:17px}.faq-section details[open] summary:after{content:'−'}.faq-section details>p{font-size:13px;color:#516579;line-height:1.95;margin:0;padding:0 15px 20px 39px}.selected-services{display:flex;flex-wrap:wrap;gap:6px;flex-basis:100%}.compare-dock{flex-wrap:wrap;width:min(740px,calc(100% - 24px));gap:8px 18px;padding:12px 17px}.compare-dock .selected-services button{background:#edf5ff;border:1px solid #c1d8ec;color:#205c90;padding:6px 10px;min-height:32px;font-size:11px}.compare-dock #open-comparison{margin-left:auto}.dialog-options{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 20px 0;font-size:12px}.dialog-options label{display:flex;gap:6px;align-items:center;cursor:pointer}.dialog-options input{accent-color:#1267ad;width:16px;height:16px}.dialog-options>span{font-size:10px;color:#687e90}.selected-table-wrap{max-height:58vh}.selected-table-wrap #selected-table thead th{position:sticky;top:0;z-index:2;box-shadow:0 1px 0 #b9ccdf}.selected-table-wrap #selected-table th:first-child{position:sticky;left:0;z-index:1}.selected-table-wrap #selected-table thead th:first-child{z-index:3}.dialog-heading{position:sticky;top:0;background:#edf4fb;z-index:3}.service-detail-page{border-top:4px solid #075daf;padding:0 max(20px,calc((100% - 1180px)/2)) 50px;font-size:14px}.service-detail-page a{color:#075daf}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:30px}.detail-masthead{display:flex;align-items:center;gap:25px;padding:30px 0 24px;border-bottom:1px solid #dbe4ec}.detail-brand{width:155px;flex-shrink:0}.detail-brand .service-mark{height:96px;background:white}.detail-category{font-size:11px;color:#71859a;letter-spacing:.5px}.detail-masthead h1{font-size:28px;line-height:1.5;letter-spacing:-.5px;margin:7px 0 10px}.detail-masthead p{font-size:14px;color:#5b7287;margin:0;line-height:1.9}.detail-meta{display:flex;justify-content:space-between;color:#738497;font-size:11px;padding:12px 0}.detail-meta span{color:#34739f}.detail-verdict{display:flex;gap:15px;align-items:center;border:1px solid #c8dbed;background:#f3f8fe;padding:20px;margin:10px 0 23px;border-radius:5px}.detail-verdict>span{width:43px;height:43px;flex-shrink:0;color:#3178b6}.detail-verdict svg{width:100%;height:100%}.detail-verdict b{font-size:12px;color:#3474a8}.detail-verdict p{font-size:16px;font-weight:700;margin:5px 0;line-height:1.8}.detail-anchor{display:grid;grid-template-columns:repeat(4,1fr);gap:0;background:#fff;border:1px solid #c7d6e4;border-bottom:2px solid #1767ad;font-size:12px}.detail-anchor a{padding:12px 6px;text-align:center;border-right:1px solid #d5e0e9}.detail-anchor a:last-child{border:0}.detail-section{margin-top:34px;scroll-margin-top:20px}.detail-section>p{font-size:14px;line-height:2}.detail-points{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin:20px 0}.detail-points>div{background:#f5f8fc;border:1px solid #d9e5ef;border-radius:4px;padding:18px}.detail-points span{font-size:27px;line-height:1;color:#7a9bb8;font-family:Georgia,serif}.detail-points h3{font-size:14px;line-height:1.85;margin:13px 0 0}.detail-facts{width:100%;border-collapse:collapse;margin-top:18px;font-size:14px}.detail-facts th,.detail-facts td{border:1px solid #d5dfe8;padding:16px 18px;line-height:1.8;text-align:left}.detail-facts th{width:175px;background:#f1f6fb;font-size:12px;color:#506b84}.detail-warning{background:#fff9ee;border:1px solid #edddba;border-left:4px solid #ddb75f;padding:18px 20px;margin:20px 0;color:#6c5735}.detail-warning b{font-size:13px}.detail-warning p{font-size:14px;line-height:2;margin:7px 0 0}.detail-checklist{list-style:none;padding:0;margin:20px 0}.detail-checklist li{position:relative;padding:10px 0 10px 25px;border-bottom:1px dotted #d5e0e9;font-size:13px}.detail-checklist li:before{content:'✓';position:absolute;left:3px;color:#2575b5}.detail-cta{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px;background:#f2f7fc;border:1px solid #caddea;margin:30px 0;border-radius:5px}.detail-cta b{font-size:14px}.detail-cta p{font-size:12px;margin:5px 0 0;color:#677e93}.service-detail-page .official-button{background:linear-gradient(#ffb33d,#f6971b);color:#3e290c;border:1px solid #de8b21;box-shadow:0 2px 0 #b87520;border-radius:4px;padding:14px 18px;font-size:14px;font-weight:700;text-align:center}.source-box{border-top:1px solid #d9e3ed;padding-top:23px;color:#657c90}.source-box h2{font-size:15px}.source-box p,.source-box a{font-size:12px;line-height:1.9}.detail-aside{padding-top:30px}.detail-other{display:block;padding:16px;border-bottom:1px solid #e0e7ef}.detail-other b{display:block;font-size:14px}.detail-other span{display:block;font-size:11px;color:#73889b;margin-top:5px}.detail-return{display:block;text-align:center;background:#f0f6fc;padding:13px;font-size:12px;font-weight:700}.detail-aside .side-note{display:block}.detail-aside .side-note p{font-size:12px}.category-nav a,.purpose-tabs button,.detail-link,.official-button,.compare-check{touch-action:manipulation}
@media(max-width:1080px){.rank-content{grid-template-columns:122px minmax(0,1fr)}.purpose-shortcuts button{padding:12px 8px;gap:7px}.shortcut-icon{width:26px;height:26px}.purpose-shortcuts b{font-size:11px}.purpose-shortcuts small{font-size:9px}.purpose-shortcuts i{display:none}.service-actions{grid-template-columns:140px 1fr 175px}.detail-layout{grid-template-columns:minmax(0,1fr) 200px;gap:20px}.detail-masthead h1{font-size:24px}.detail-points{gap:8px}.detail-points>div{padding:15px}.detail-points h3{font-size:13px}}
@media(max-width:760px){.portal{padding-inline:14px}.portal-title{padding-bottom:15px}.portal-title h1{font-size:23px}.portal-title p{font-size:12px;line-height:1.8}.portal-title>a{font-size:11px}.breadcrumb{font-size:10px}.category-nav{font-size:11px}.category-nav a{padding:11px 4px}.filter-inner{gap:9px;padding:12px}.field-label{font-size:11px;flex-basis:95px}.filter-inner button{font-size:11px;min-height:34px}.ranking-banner{padding:17px}.ranking-banner h2{font-size:21px;letter-spacing:-.5px}.ranking-banner p{font-size:11px;line-height:1.7}.ranking-banner>div>span{font-size:11px}.banner-stat b{font-size:45px}.banner-stat span{font-size:10px!important}.purpose-shortcuts{gap:6px;margin-bottom:16px}.purpose-shortcuts button{display:block;text-align:center;padding:12px 4px;min-height:100px;border-radius:4px}.shortcut-icon{display:block;width:28px;height:28px;margin:0 auto 6px}.purpose-shortcuts small{display:none}.purpose-shortcuts b{font-size:11px;white-space:normal;line-height:1.65}.purpose-tabs{gap:2px;margin-bottom:18px}.purpose-tabs button{font-size:11px;min-height:48px;padding:8px 3px;line-height:1.5}.ranking-heading h2{font-size:17px}.ranking-heading>span{font-size:10px}.editorial-note{font-size:11px;line-height:1.8}.result-toolbar{font-size:12px;padding:10px}.purpose-reason{font-size:11px;line-height:1.8}.comparison-tip{font-size:11px;padding:10px}.rank-title{padding:12px;gap:8px;flex-wrap:wrap}.rank-title h2{font-size:21px}.compare-check{padding:8px;font-size:11px;min-height:38px}.rank-title .position{min-width:40px}.rank-content{grid-template-columns:1fr;padding:16px;gap:15px}.service-identity{display:grid;grid-template-columns:120px 1fr;gap:5px 14px;text-align:left;align-items:center;padding:0}.service-mark{height:65px;grid-column:1;grid-row:1/3;font-size:18px}.mark-doda{font-size:32px}.mark-rekatsu,.mark-en{font-size:24px}.mark-next{font-size:15px}.service-type{font-size:11px;line-height:1.7;margin:0}.detail-link{font-size:11px;text-align:center;min-height:34px;padding:6px}.service-info h3{font-size:15px;line-height:1.8;margin-bottom:12px}.spec-table th{font-size:11px;padding:8px 3px}.spec-table td{height:48px}.spec-table td small{font-size:10px}.available{font-size:24px}.separate{font-size:12px}.point-list{font-size:13px;line-height:1.9;margin-top:12px}.point-list li{padding-left:17px;margin:3px 0}.service-actions{display:grid;grid-template-columns:1fr;padding-top:14px;gap:8px}.service-actions>span{grid-column:1;grid-row:auto;font-size:11px}.service-actions>p{grid-column:1;grid-row:auto;font-size:13px;line-height:1.8}.service-actions>.official-button{grid-column:1;grid-row:auto;width:100%;min-height:48px;font-size:15px;justify-content:center;position:relative;margin-top:3px}.service-actions>.official-button b{position:absolute;right:16px}.service-actions>small{grid-column:1;grid-row:auto;font-size:10px;margin:0}.service-caution summary{font-size:12px;padding:12px 15px;min-height:44px}.service-caution p{font-size:13px;padding:0 15px 15px;line-height:1.9}.ranking-footnote{font-size:11px}.portal-section>p{font-size:12px}.full-table{font-size:12px}.full-table th,.full-table td{padding:14px 11px}.full-table tbody th a{font-size:14px}.guide-grid h3{font-size:15px}.guide-grid p{font-size:12px}.guide-grid b,.guide-grid div>span{font-size:11px}.guide-grid>a{padding:17px}.portal-articles b{font-size:13px}.portal-articles span{font-size:11px}.faq-section summary{font-size:13px;line-height:1.8;gap:10px;padding:16px 6px}.faq-section details>p{font-size:13px;padding:0 10px 17px 30px}.compare-dock{padding:10px 12px;gap:7px 10px;bottom:max(10px,env(safe-area-inset-bottom));width:calc(100% - 20px)}.compare-dock .selected-services button{font-size:11px;padding:5px 8px;min-height:32px}.compare-dock>span{font-size:11px}.compare-dock #open-comparison{font-size:11px;padding:11px 10px;min-height:40px}.compare-dock #clear-selection{font-size:10px}.compare-dock small{display:none}.dialog-options{display:block;padding:13px 12px 0;font-size:12px}.dialog-options>span{display:block;margin-top:8px;font-size:11px}.dialog-heading h2{font-size:16px}.dialog-heading button{min-height:36px}.service-detail-page{padding:0 15px 35px;border-top-width:3px}.detail-layout{display:block}.detail-masthead{gap:15px;padding:20px 0;align-items:flex-start;flex-wrap:wrap}.detail-brand{width:120px}.detail-brand .service-mark{height:64px}.detail-masthead>div:last-child{width:100%}.detail-masthead h1{font-size:25px;margin:5px 0 10px}.detail-masthead p{font-size:14px}.detail-category{font-size:11px}.detail-meta{font-size:10px}.detail-verdict{padding:16px;gap:12px}.detail-verdict>span{width:32px;height:32px}.detail-verdict p{font-size:15px}.detail-anchor{font-size:11px}.detail-anchor a{padding:12px 4px}.detail-section{margin-top:28px}.detail-section .block-title{font-size:18px}.detail-points{grid-template-columns:1fr;gap:8px;margin:15px 0}.detail-points>div{display:flex;align-items:center;gap:15px;padding:16px}.detail-points h3{font-size:14px;margin:0}.detail-points span{font-size:25px}.detail-facts{font-size:13px}.detail-facts th,.detail-facts td{padding:13px 12px}.detail-facts th{width:110px;font-size:11px}.detail-warning{padding:16px}.detail-warning p{font-size:13px}.detail-checklist li{font-size:13px;line-height:1.9}.detail-cta{display:block;padding:19px}.detail-cta .official-button{display:block;margin-top:17px;font-size:14px}.detail-aside{padding-top:10px}.detail-other{padding:14px 16px}.source-box p,.source-box a{font-size:12px}footer{padding-bottom:155px}}
@media(max-width:370px){.portal-title h1{font-size:21px}.ranking-banner h2{font-size:18px}.banner-stat b{font-size:39px}.purpose-tabs button{font-size:10px}.rank-title h2{font-size:19px}.compare-check{font-size:10px;padding:7px}.rank-content{padding:14px}.ranking-heading h2{font-size:16px}.compare-dock #open-comparison{font-size:10px;padding:9px}.compare-dock>span{font-size:10px}}
@media(prefers-reduced-motion:reduce){.rank-item{transition:none}}
