.ncm-compare,.ncm-detail{max-width:1180px;margin:0 auto;padding:28px 18px 72px;color:#1d2327}.ncm-page-head{text-align:center;margin-bottom:30px}.ncm-page-head h1{font-size:clamp(30px,5vw,48px);line-height:1.25;margin:8px 0 12px}.ncm-page-head p{margin:0;line-height:1.8}.ncm-eyebrow{font-size:13px;font-weight:700;letter-spacing:.08em;color:#3858e9}.ncm-filter-panel{padding:22px;border:1px solid #dcdcde;border-radius:16px;background:#f6f7f7;margin-bottom:22px}.ncm-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:end}.ncm-filters label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700}.ncm-filters select,.ncm-reset{min-height:46px;border:1px solid #b8c0c8;border-radius:8px;background:#fff;padding:0 12px;font-size:14px}.ncm-reset{cursor:pointer;background:#1d2327;color:#fff;font-weight:700}.ncm-result-bar{display:flex;justify-content:flex-end;align-items:center;margin:0 0 14px;color:#50575e}.ncm-result-bar strong{font-size:24px;color:#1d2327;margin-right:4px}.ncm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.ncm-plan-card{display:flex;flex-direction:column;padding:22px;border:1px solid #dcdcde;border-radius:16px;background:#fff;box-shadow:0 6px 20px rgba(0,0,0,.05)}.ncm-plan-card[hidden]{display:none}.ncm-card-brand-row{display:flex;align-items:center;gap:10px;min-height:34px}.ncm-brand-logo{width:42px;height:42px;object-fit:contain}.ncm-brand-name{font-size:14px;font-weight:700;color:#50575e}.ncm-plan-card h2,.ncm-plan-card h3{font-size:21px;line-height:1.4;margin:10px 0 16px}.ncm-key-values,.ncm-plan-card dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 14px}.ncm-key-values>div,.ncm-plan-card dl>div{padding:13px;border-radius:10px;background:#f6f7f7}.ncm-key-values dt,.ncm-plan-card dt{font-size:12px;color:#646970}.ncm-key-values dd,.ncm-plan-card dd{margin:5px 0 0;font-size:18px;font-weight:700}.ncm-key-values dd span{font-size:12px;margin-left:2px}.ncm-feature-list{list-style:none;margin:0 0 14px;padding:0;border-top:1px solid #eee}.ncm-feature-list li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #eee;font-size:13px}.ncm-feature-list span{color:#646970}.ncm-voice-summary,.ncm-limit-note{font-size:13px;line-height:1.65;margin:0 0 10px}.ncm-limit-note{color:#646970}.ncm-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:auto;padding-top:10px}.ncm-buttons a,.ncm-official a{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #3858e9;border-radius:8px;text-decoration:none;font-weight:700;color:#3858e9}.ncm-buttons a.primary,.ncm-official a{background:#3858e9;color:#fff}.ncm-plan-card small{display:block;text-align:right;color:#777;margin-top:12px}.ncm-empty{padding:34px 18px;border:1px dashed #b8c0c8;border-radius:14px;background:#fafafa;text-align:center}.ncm-disclaimer{margin-top:20px;font-size:12px;line-height:1.7;color:#646970}.ncm-detail section{margin-top:42px}.ncm-detail section h2{font-size:27px}.ncm-table-wrap{overflow:auto}.ncm-table-wrap table{width:100%;border-collapse:collapse}.ncm-table-wrap th,.ncm-table-wrap td{border:1px solid #dcdcde;padding:12px;text-align:left;vertical-align:top}.ncm-official{display:flex;justify-content:center;margin-top:35px}.ncm-official a{max-width:360px;width:100%}
@media(max-width:1000px){.ncm-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.ncm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.ncm-compare,.ncm-detail{padding:20px 12px 54px}.ncm-filter-panel{padding:15px}.ncm-filters,.ncm-grid{grid-template-columns:1fr}.ncm-buttons{grid-template-columns:1fr}.ncm-key-values,.ncm-plan-card dl{grid-template-columns:1fr 1fr}}


/* v1.7 ブランド詳細自動生成 */
.ncm-virtual-page{width:100%}.ncm-detail-hero{padding:28px;border:1px solid #dcdcde;border-radius:18px;background:linear-gradient(135deg,#f8f9ff,#fff);margin-bottom:38px}.ncm-detail-brand-row{display:flex;align-items:center;gap:20px}.ncm-detail-logo{width:82px;height:82px;object-fit:contain;background:#fff;border-radius:14px;padding:8px;border:1px solid #e5e7eb}.ncm-detail-hero h1{font-size:clamp(28px,4vw,46px);line-height:1.3;margin:5px 0 0}.ncm-brand-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.ncm-brand-meta span{display:inline-flex;padding:7px 11px;border-radius:999px;background:#eef1ff;font-size:13px;font-weight:700}.ncm-brand-summary{margin:18px 0 0;line-height:1.8}.ncm-checked{margin:14px 0 0;color:#646970;font-size:13px}.ncm-detail-text{font-size:14px;line-height:1.75}.ncm-single-button{grid-template-columns:1fr}.ncm-detail .ncm-table-wrap table{min-width:760px}.ncm-detail .ncm-table-wrap th{background:#f6f7f7}.ncm-detail section>h2{border-left:5px solid #3858e9;padding-left:12px}.ncm-detail .ncm-plan-card small{margin-top:14px}
@media(max-width:680px){.ncm-detail-hero{padding:20px 16px}.ncm-detail-brand-row{align-items:flex-start}.ncm-detail-logo{width:60px;height:60px}.ncm-brand-meta{display:grid;grid-template-columns:1fr}.ncm-brand-meta span{border-radius:8px}}

/* v1.8 discount calculation */
.ncm-discount-summary{margin:16px 0;padding:16px;border:1px solid #bfd0ff;border-radius:12px;background:#f4f7ff}
.ncm-discount-summary>span{display:block;color:#49566f;font-size:12px;font-weight:700}
.ncm-discount-summary>strong{display:block;margin:4px 0;color:#173ea5;font-size:24px;line-height:1.3}
.ncm-discount-summary>small{display:block;color:#526078}
.ncm-discount-summary details{margin-top:10px}
.ncm-discount-summary summary{cursor:pointer;font-weight:700}
.ncm-discount-summary ul{margin:8px 0 0 18px}


/* v2.0 simulator */
.ncm-simulator{max-width:1180px;margin:0 auto;padding:28px 18px 72px;color:#1d2327}
.ncm-sim-form{padding:24px;border:1px solid #dcdcde;border-radius:18px;background:#f6f7f7;margin-bottom:30px}
.ncm-sim-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:end}
.ncm-sim-fields>label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700}
.ncm-sim-fields input[type=number],.ncm-sim-fields select{min-height:46px;border:1px solid #b8c0c8;border-radius:8px;background:#fff;padding:0 12px;font-size:14px}
.ncm-sim-fields .ncm-check{flex-direction:row;align-items:center;min-height:46px;padding:10px 12px;border:1px solid #dcdcde;border-radius:8px;background:#fff;font-weight:600}
.ncm-sim-submit{display:block;min-height:50px;margin:20px auto 0;padding:0 28px;border:0;border-radius:9px;background:#3858e9;color:#fff;font-weight:700;cursor:pointer}
.ncm-sim-results{margin-top:34px}.ncm-sim-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.ncm-sim-card{position:relative;padding:24px;border:1px solid #dcdcde;border-radius:16px;background:#fff;box-shadow:0 6px 20px rgba(0,0,0,.05)}
.ncm-sim-card h2{margin:10px 0 16px;font-size:22px}.ncm-sim-rank{position:absolute;right:18px;top:18px;padding:6px 10px;border-radius:999px;background:#eef1ff;color:#2746bc;font-size:12px;font-weight:800}
.ncm-sim-price{padding:16px;border-radius:12px;background:#eef3ff;margin-bottom:14px}.ncm-sim-price span{display:block;color:#526078;font-size:12px;font-weight:700}.ncm-sim-price strong{display:block;margin-top:4px;color:#173ea5;font-size:27px}
.ncm-sim-breakdown{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 14px}.ncm-sim-breakdown>div{padding:11px;border-radius:9px;background:#f6f7f7}.ncm-sim-breakdown dt{font-size:11px;color:#646970}.ncm-sim-breakdown dd{margin:4px 0 0;font-weight:700}.ncm-sim-breakdown small{display:block;margin-top:3px;font-weight:400;color:#646970}
@media(max-width:900px){.ncm-sim-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.ncm-sim-list{grid-template-columns:1fr}}
@media(max-width:680px){.ncm-simulator{padding:20px 12px 54px}.ncm-sim-form{padding:16px}.ncm-sim-fields{grid-template-columns:1fr}.ncm-sim-breakdown{grid-template-columns:1fr 1fr}}


/* v2.1 simulator finalization */
.ncm-sim-condition-summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 16px;padding:14px 16px;border:1px solid #dcdcde;border-radius:12px;background:#fff}
.ncm-sim-condition-summary strong{margin-right:4px}.ncm-sim-condition-summary span{padding:5px 9px;border-radius:999px;background:#eef1ff;color:#2746bc;font-size:12px;font-weight:700}.ncm-sim-condition-summary a{margin-left:auto;font-size:13px;font-weight:700}
.ncm-sim-price small{display:block;margin-top:6px;color:#526078;font-size:12px}.ncm-sim-reasons{margin:14px 0;padding:13px 15px;border-left:4px solid #3858e9;background:#f8f9ff}.ncm-sim-reasons strong{font-size:13px}.ncm-sim-reasons ul{margin:7px 0 0 18px;font-size:13px;line-height:1.7}.ncm-sim-details{margin:12px 0;padding:12px;border:1px solid #dcdcde;border-radius:9px}.ncm-sim-details summary{cursor:pointer;font-weight:700}.ncm-sim-details strong{display:block;margin-top:9px;font-size:12px}.ncm-sim-details ul{margin:5px 0 0 18px;font-size:12px;line-height:1.7}.ncm-sim-reset-link{display:inline-flex;margin-top:10px;padding:9px 14px;border:1px solid #3858e9;border-radius:8px;text-decoration:none;font-weight:700}
@media(max-width:680px){.ncm-sim-condition-summary a{width:100%;margin-left:0}.ncm-sim-condition-summary span{border-radius:7px}}


/* v2.1.2 simulator QA fixes */
.ncm-sim-form input:focus,.ncm-sim-form select:focus,.ncm-sim-submit:focus-visible{outline:3px solid rgba(56,88,233,.25);outline-offset:2px}
.ncm-sim-card{min-width:0;overflow-wrap:anywhere}
.ncm-sim-card .ncm-buttons a{min-width:0;text-align:center}
.ncm-sim-results .ncm-empty strong{display:block;margin-bottom:8px}
@media(max-width:480px){.ncm-sim-breakdown{grid-template-columns:1fr}.ncm-sim-price strong{font-size:24px}.ncm-sim-card{padding:18px}.ncm-sim-rank{position:static;display:inline-flex;margin-bottom:8px}}
