:root{--kdbe-ad-button-bg:#2468b5;--kdbe-ad-button-bg-hover:#174f91;--kdbe-ad-button-text:#fff;--kdbe-ad-button-radius:999px;--kdbe-ad-button-shadow:0 10px 22px rgba(36,104,181,.22);--kdbe-blue:#2468b5;--kdbe-blue-2:#174a83;--kdbe-sky:#eef7ff;--kdbe-ink:#1d2c40;--kdbe-muted:#64758b;--kdbe-line:#dde7f1;--kdbe-bg:#f5f8fc;--kdbe-card:#fff;--kdbe-green:#188b58;--kdbe-orange:#e78125;--kdbe-red:#c73d4d;--kdbe-shadow:0 18px 55px rgba(37,71,108,.10)}
html{scroll-behavior:smooth}body.kdbe-standalone{margin:0;background:linear-gradient(180deg,#f4f9fd 0,#f8fafc 70%,#fff 100%);color:var(--kdbe-ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;line-height:1.75}body.kdbe-standalone *{box-sizing:border-box}body.kdbe-standalone a{text-decoration:none;color:inherit}body.kdbe-standalone button,body.kdbe-standalone input,body.kdbe-standalone select,body.kdbe-standalone textarea{font:inherit}
.kdbe-site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(221,231,241,.9)}.kdbe-header-inner{max-width:1220px;margin:auto;padding:15px 20px;display:flex;align-items:center;justify-content:space-between;gap:24px}.kdbe-site-logo{display:flex;align-items:center;gap:11px;color:var(--kdbe-blue-2)}.kdbe-logo-symbol{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#4aa5d9,#5bc4b4);position:relative;display:block;flex:0 0 38px;box-shadow:0 8px 18px rgba(36,104,181,.18);overflow:hidden}.kdbe-logo-symbol:before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M9.5 20.5 20 11l10.5 9.5' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M13 19.5V30h14V19.5' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M18 30v-6h4v6' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/27px 27px no-repeat}.kdbe-logo-symbol:after{content:none}.kdbe-site-logo b{display:block;font-size:17px;line-height:1.2}.kdbe-site-logo small{display:block;font-size:10px;letter-spacing:.06em;color:#6d8197;margin-top:2px;font-weight:700}.kdbe-main-nav{display:flex;align-items:center;gap:22px}.kdbe-main-nav a{font-size:13px;font-weight:800;color:#52657b;transition:.2s}.kdbe-main-nav a:hover{color:var(--kdbe-blue)}.kdbe-menu-toggle{display:none;border:1px solid var(--kdbe-line);background:#fff;border-radius:999px;padding:8px 14px;font-weight:800;color:var(--kdbe-blue)}
.kdbe-shell,.kdbe-app{width:min(1180px,calc(100% - 28px));margin:0 auto;padding:36px 0 78px}.kdbe-app{width:100%;padding:0}.kdbe-shell *,.kdbe-app *{box-sizing:border-box}
.kdbe-hero,.kdbe-route-hero,.kdbe-detail-hero{position:relative;overflow:hidden;border:1px solid #e4edf5;background:radial-gradient(circle at 92% 0,rgba(85,176,222,.22),transparent 34%),linear-gradient(135deg,#fff 0,#f7fbff 58%,#edf7ff 100%);border-radius:30px;padding:46px;box-shadow:var(--kdbe-shadow)}.kdbe-hero:before,.kdbe-route-hero:before,.kdbe-detail-hero:before{content:"";position:absolute;width:250px;height:250px;right:-95px;bottom:-120px;border-radius:50%;background:rgba(81,185,169,.12)}.kdbe-hero-copy,.kdbe-route-hero>*{position:relative;z-index:1}.kdbe-eyebrow,.kdbe-section-kicker{font-size:11px;font-weight:900;letter-spacing:.14em;color:var(--kdbe-blue);text-transform:uppercase;margin:0 0 10px}.kdbe-hero h1,.kdbe-route-hero h1,.kdbe-detail-hero h1{margin:0;color:#1b2a3f;font-size:clamp(29px,4vw,48px);line-height:1.35;letter-spacing:-.025em}.kdbe-hero-copy>p:last-child,.kdbe-route-hero>p,.kdbe-detail-hero p{max-width:820px;margin:16px 0 0;color:var(--kdbe-muted);font-size:16px}.kdbe-kpis,.kdbe-route-kpis{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:30px}.kdbe-kpis>div,.kdbe-route-kpis>div{background:rgba(255,255,255,.9);border:1px solid #e2ebf4;border-radius:18px;padding:17px;text-align:center}.kdbe-kpis strong,.kdbe-route-kpis strong{display:block;color:var(--kdbe-blue-2);font-size:25px;line-height:1.2}.kdbe-kpis span,.kdbe-route-kpis span{display:block;color:#77869a;font-size:11px;margin-top:5px}.kdbe-route-kpis{grid-template-columns:repeat(2,minmax(150px,230px))}
.kdbe-panel{margin-top:26px;padding:30px;background:rgba(255,255,255,.97);border:1px solid var(--kdbe-line);border-radius:24px;box-shadow:0 12px 34px rgba(31,67,104,.075)}.kdbe-panel h1,.kdbe-panel h2,.kdbe-panel h3{color:#203149}.kdbe-panel h2{margin:0 0 18px;font-size:24px;line-height:1.45}.kdbe-panel p{color:#576a80}.kdbe-section-heading p{margin:0 0 3px;color:var(--kdbe-blue);font-size:11px;font-weight:900;letter-spacing:.12em}.kdbe-section-heading h2{margin:0 0 20px}
.kdbe-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--kdbe-line);margin:-8px 0 25px}.kdbe-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;padding:17px 10px;color:#718297;font-weight:900;cursor:pointer}.kdbe-tabs button.is-active{color:var(--kdbe-blue);border-color:var(--kdbe-blue)}.kdbe-tab-panel{display:none}.kdbe-tab-panel.is-active{display:block}.kdbe-form-grid,.kdbe-form-search,.kdbe-advanced-grid{display:grid;grid-template-columns:1fr 1fr auto;gap:14px;align-items:end}.kdbe-form-search{grid-template-columns:1fr auto}.kdbe-form-grid label,.kdbe-form-search label,.kdbe-advanced-grid label,.kdbe-form label{display:grid;gap:7px;font-weight:800;color:#35475e}.kdbe-form-grid select,.kdbe-form-search input,.kdbe-advanced-grid input,.kdbe-advanced-grid select,.kdbe-form input,.kdbe-form select,.kdbe-form textarea{width:100%;border:1px solid #cdd9e6;border-radius:13px;background:#fff;color:#24344b;padding:12px 14px;min-height:50px}.kdbe-form textarea{min-height:140px;resize:vertical}.kdbe-advanced-search{margin-top:24px;padding-top:24px;border-top:1px solid var(--kdbe-line)}.kdbe-advanced-search h2{font-size:17px;margin:0 0 14px}.kdbe-nearby-panel{text-align:center;padding:18px}.kdbe-nearby-panel p{max-width:680px;margin:0 auto 16px}.kdbe-data-note{font-size:12px!important;color:#72849a!important;margin:18px 0 0!important}
.kdbe-btn{appearance:none;display:inline-flex!important;align-items:center;justify-content:center;gap:7px;min-height:45px;padding:0 18px;border-radius:999px;border:1px solid transparent;font-size:13px;font-weight:900;cursor:pointer;transition:.2s;white-space:nowrap}.kdbe-btn:hover{transform:translateY(-1px)}.kdbe-btn-primary{background:var(--kdbe-blue)!important;border-color:var(--kdbe-blue)!important;color:#fff!important;box-shadow:0 7px 16px rgba(36,104,181,.17)}.kdbe-btn-secondary{background:#fff!important;border-color:#a9cae9!important;color:var(--kdbe-blue)!important}.kdbe-btn-call{background:var(--kdbe-green)!important;border-color:var(--kdbe-green)!important;color:#fff!important;box-shadow:0 7px 16px rgba(24,139,88,.17)}.kdbe-btn-ghost{background:#f7fafc!important;border-color:#d8e3ee!important;color:#52677f!important}.kdbe-btn-large{min-height:52px;padding:0 23px;font-size:14px}.kdbe-text-link{display:inline-flex;margin-top:14px;color:var(--kdbe-blue)!important;font-weight:900}.kdbe-inline-call{color:var(--kdbe-green)!important;font-weight:900}
.kdbe-sponsored{width:min(1180px,calc(100% - 28px));margin:15px auto;padding:12px 18px;border:1px solid #dce8f2;border-radius:15px;background:#f8fbfe;display:flex;align-items:center;justify-content:space-between;gap:16px}.kdbe-sponsored>span{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#8190a1;font-weight:900}.kdbe-sponsored-content{font-size:13px}.kdbe-sponsored-content a{color:var(--kdbe-blue)!important;font-weight:900}
.kdbe-alert{margin-top:24px;padding:19px 23px;background:#fff9e8;border:1px solid #efd994;border-radius:18px}.kdbe-alert h2{margin:0 0 8px;font-size:19px}.kdbe-alert p{margin:6px 0;color:#6c5b2b}.kdbe-call-checklist{background:linear-gradient(135deg,#f7fbff,#fff)}.kdbe-call-checklist ul{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:15px 0 20px;padding:0;list-style:none}.kdbe-call-checklist li{padding:13px 15px;border:1px solid var(--kdbe-line);border-radius:13px;background:#fff}.kdbe-call-checklist li:before{content:"✓";color:var(--kdbe-green);font-weight:900;margin-right:7px}
.kdbe-pref-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.kdbe-brand-grid,.kdbe-city-links{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.kdbe-pref-grid a,.kdbe-brand-grid a,.kdbe-city-links a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 13px;border:1px solid var(--kdbe-line);border-radius:13px;background:#fbfdff;color:#304258}.kdbe-pref-grid a:hover,.kdbe-brand-grid a:hover,.kdbe-city-links a:hover{border-color:#9ec6e8;background:#f1f8ff}.kdbe-pref-grid strong,.kdbe-brand-grid strong,.kdbe-city-links strong{font-size:11px;color:var(--kdbe-blue);white-space:nowrap}.kdbe-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.kdbe-info-grid .kdbe-panel{margin-top:26px}.kdbe-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.kdbe-feature-grid article{padding:20px;border:1px solid var(--kdbe-line);border-radius:17px;background:#fbfdff}.kdbe-feature-grid b{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--kdbe-sky);color:var(--kdbe-blue)}.kdbe-feature-grid h3{font-size:16px;margin:13px 0 7px}.kdbe-feature-grid p{font-size:13px;margin:0}
.kdbe-breadcrumb{margin:0 0 17px}.kdbe-breadcrumb ol{display:flex;align-items:center;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0;font-size:11px;color:#7b8b9f}.kdbe-breadcrumb a{color:var(--kdbe-blue)}.kdbe-breadcrumb b{font-weight:400;color:#bec8d2}
.kdbe-map{overflow:hidden;border:1px solid var(--kdbe-line);border-radius:20px;background:#e9eff5;margin:20px 0}.kdbe-map iframe{display:block;width:100%;height:390px;border:0}.kdbe-result-list{display:grid;gap:16px;margin-top:20px}.kdbe-result-card{position:relative;background:#fff;border:1px solid var(--kdbe-line);border-radius:22px;padding:22px;box-shadow:0 10px 28px rgba(31,67,104,.07);transition:.2s}.kdbe-result-card:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(31,67,104,.1)}.kdbe-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.kdbe-card-head h3{font-size:20px;line-height:1.45;margin:0}.kdbe-card-head h3 a:hover{color:var(--kdbe-blue)}.kdbe-card-label{margin:0 0 4px!important;font-size:10px!important;letter-spacing:.1em;color:#8493a5!important;font-weight:900}.kdbe-card-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.kdbe-chip,.kdbe-complete-chip{display:inline-flex;padding:6px 9px;border-radius:999px;background:#edf6ff;color:var(--kdbe-blue);font-size:10px;font-weight:900}.kdbe-complete-chip{background:#eef8f2;color:var(--kdbe-green)}.kdbe-address{margin:9px 0 0!important;font-size:13px;color:#627287!important}.kdbe-mini-rating{display:flex;align-items:center;gap:8px;margin-top:12px}.kdbe-mini-rating strong{color:var(--kdbe-orange)}.kdbe-mini-rating span{font-size:12px;color:#7a899a}.kdbe-mini-rating.is-empty span{padding:5px 9px;background:#f4f6f8;border-radius:999px}.kdbe-card-info{display:grid;grid-template-columns:1.1fr .7fr 1.2fr;gap:10px;margin-top:17px}.kdbe-card-info>div{padding:12px;border:1px solid #e8eef5;border-radius:13px;background:#f9fbfd}.kdbe-card-info span{display:block;font-size:10px;color:#8090a2;margin-bottom:4px}.kdbe-card-info strong{display:block;color:#2b3d54;font-size:12px;line-height:1.55}.kdbe-card-actions,.kdbe-detail-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:17px}
.kdbe-detail-title-row{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:25px}.kdbe-score-card{flex:0 0 110px;padding:16px;border:1px solid #dce9f3;border-radius:18px;background:rgba(255,255,255,.92);text-align:center}.kdbe-score-card strong{display:block;color:var(--kdbe-green);font-size:30px}.kdbe-score-card span{font-size:10px;color:#718196}.kdbe-detail-rating{position:relative;z-index:1;display:flex;align-items:center;gap:8px;margin-top:16px}.kdbe-detail-rating strong{font-size:20px;color:var(--kdbe-orange)}.kdbe-detail-rating span{font-size:13px;color:#62748a}.kdbe-table-wrap{overflow-x:auto}.kdbe-data-table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--kdbe-line);border-radius:16px;overflow:hidden}.kdbe-data-table th,.kdbe-data-table td{padding:15px 17px;border-bottom:1px solid var(--kdbe-line);vertical-align:top;text-align:left}.kdbe-data-table tr:last-child th,.kdbe-data-table tr:last-child td{border-bottom:0}.kdbe-data-table th{width:190px;background:#f6f9fc;color:#53677f;font-size:13px}.kdbe-status{display:inline-flex;margin-left:8px;padding:4px 8px;border-radius:999px;font-size:10px}.kdbe-status.open{background:#e8f8ef;color:#147a48}.kdbe-status.closed{background:#f1f3f6;color:#69778a}.kdbe-week-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.kdbe-week-grid>div{padding:13px;border:1px solid var(--kdbe-line);border-radius:13px;background:#fbfdff}.kdbe-week-grid span{display:block;font-size:11px;color:var(--kdbe-blue);font-weight:900}.kdbe-week-grid strong{display:block;margin-top:4px;font-size:12px;color:#2d4057}.kdbe-source-text{font-size:12px!important;color:#76869a!important}.kdbe-info-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.kdbe-info-cards>div{padding:17px;border:1px solid var(--kdbe-line);border-radius:15px;background:#f9fcff}.kdbe-info-cards span{display:block;font-size:11px;color:#78899d}.kdbe-info-cards strong{display:block;margin-top:5px;color:#263a52}.kdbe-info-cards small{display:block;margin-top:7px}.kdbe-note{padding:13px 15px;background:#fff8e1;border-radius:13px}.kdbe-near-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.kdbe-near-grid a{display:grid;gap:5px;padding:14px;border:1px solid var(--kdbe-line);border-radius:14px;background:#fbfdff}.kdbe-near-grid span{font-size:11px;color:#718197}
.kdbe-review-overview{display:grid;grid-template-columns:180px 1fr;gap:25px;align-items:center;padding:20px;border:1px solid var(--kdbe-line);border-radius:18px;background:#fbfdff}.kdbe-review-score{text-align:center}.kdbe-review-score>strong{display:block;font-size:47px;line-height:1;color:var(--kdbe-orange)}.kdbe-review-score span,.kdbe-review-score small{display:block;margin-top:6px;color:#75869a}.kdbe-rating-bars{display:grid;gap:8px}.kdbe-rating-bars>div{display:grid;grid-template-columns:135px 1fr 35px;align-items:center;gap:10px;font-size:12px}.kdbe-rating-bars i{display:block;height:8px;border-radius:99px;background:#e7edf3;overflow:hidden}.kdbe-rating-bars i b{display:block;height:100%;background:linear-gradient(90deg,#f5b64c,#ed7d2d)}.kdbe-review-list{display:grid;gap:13px;margin-top:18px}.kdbe-review-list article{padding:19px;border:1px solid var(--kdbe-line);border-radius:16px;background:#fff}.kdbe-review-head{display:flex;justify-content:space-between;gap:12px}.kdbe-review-head>span{color:var(--kdbe-orange);font-weight:900}.kdbe-verified-badge{display:inline-flex;margin-left:7px;padding:3px 7px;border-radius:99px;background:#eaf8ef;color:var(--kdbe-green);font-size:9px}.kdbe-review-subratings{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.kdbe-review-subratings span{padding:4px 8px;border-radius:99px;background:#f2f6f9;color:#65778c;font-size:10px}.kdbe-review-list article p{margin:10px 0}.kdbe-review-list footer{font-size:10px;color:#8190a1}.kdbe-review-empty{padding:20px;border:1px dashed #cfdbe6;border-radius:15px;text-align:center;background:#fbfdff}.kdbe-form-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.kdbe-form>label{margin-top:13px}.kdbe-consent{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start;gap:8px!important;font-size:12px}.kdbe-consent input{width:auto!important;min-height:auto!important;margin-top:5px}.kdbe-form-note{font-size:11px!important;color:#7b8a9c!important}.kdbe-honeypot{position:absolute!important;left:-9999px!important}.kdbe-report-panel summary{cursor:pointer;font-weight:900;color:var(--kdbe-blue)}
.kdbe-pagination{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:24px}.kdbe-pagination a,.kdbe-pagination span{display:grid;place-items:center;min-width:39px;height:39px;border:1px solid var(--kdbe-line);border-radius:999px;background:#fff;color:var(--kdbe-blue);font-weight:900}.kdbe-pagination span{background:var(--kdbe-blue);border-color:var(--kdbe-blue);color:#fff}.kdbe-empty{padding:35px;border:1px dashed #ccd9e5;border-radius:17px;text-align:center;background:#fafcff}.kdbe-faq details{padding:15px 0;border-top:1px solid var(--kdbe-line)}.kdbe-faq details:first-of-type{border-top:0}.kdbe-faq summary{cursor:pointer;color:#2e4259;font-weight:900}
.kdbe-column-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.kdbe-column-grid article{padding:21px;border:1px solid var(--kdbe-line);border-radius:17px;background:#fbfdff}.kdbe-column-grid article>p{font-size:10px;color:var(--kdbe-blue);font-weight:900;letter-spacing:.12em}.kdbe-column-grid h2,.kdbe-column-grid h3{font-size:17px;line-height:1.55;margin:7px 0 9px}.kdbe-column-grid article>div{font-size:12px;color:#63758a}.kdbe-generated-column{max-width:900px;margin:auto}.kdbe-generated-column .kdbe-marker{background:linear-gradient(transparent 60%,#fff2a8 60%)}.kdbe-generated-column .kdbe-red-bold{color:#c53b45;font-weight:900}.kdbe-generated-column .kdbe-sango-box,.kdbe-generated-column .kdbe-caution-box{margin:22px 0;padding:20px;border-radius:15px}.kdbe-generated-column .kdbe-sango-box{background:#f0f7ff;border-left:5px solid var(--kdbe-blue)}.kdbe-generated-column .kdbe-caution-box{background:#fff4f3;border:1px solid #efc1bd}.kdbe-generated-column .kdbe-column-table{width:100%;border-collapse:collapse;margin:20px 0}.kdbe-generated-column .kdbe-column-table th,.kdbe-generated-column .kdbe-column-table td{padding:12px;border:1px solid #dce5ed}.kdbe-generated-column .kdbe-column-table th{background:#eef6fd}
.kdbe-compare-bar{position:fixed;z-index:150;left:50%;bottom:20px;transform:translateX(-50%);display:flex;align-items:center;gap:10px;padding:10px 13px;border:1px solid #d9e4ef;border-radius:999px;background:rgba(255,255,255,.96);box-shadow:0 15px 45px rgba(21,50,82,.18)}.kdbe-compare-dialog{width:min(920px,calc(100% - 28px));max-height:82vh;border:0;border-radius:22px;padding:26px;box-shadow:0 25px 80px rgba(18,39,64,.25)}.kdbe-compare-dialog::backdrop{background:rgba(16,31,48,.55)}.kdbe-dialog-close{position:absolute;right:15px;top:12px;width:36px;height:36px;border:0;border-radius:50%;background:#eef3f7;font-size:22px;cursor:pointer}.kdbe-compare-table{width:100%;border-collapse:collapse}.kdbe-compare-table th,.kdbe-compare-table td{border:1px solid var(--kdbe-line);padding:11px;text-align:left;vertical-align:top}.kdbe-compare-table th{background:#f5f8fb}
.kdbe-site-footer{margin-top:45px;border-top:1px solid var(--kdbe-line);background:#fff}.kdbe-footer-inner{max-width:1220px;margin:auto;padding:48px 20px 30px;display:grid;grid-template-columns:1.1fr .55fr 1.8fr;gap:38px}.kdbe-footer-about p{font-size:12px;color:#758499;max-width:330px}.kdbe-footer-inner h2{font-size:13px;margin:0 0 11px;color:#33475e}.kdbe-footer-inner>div:nth-child(2){display:flex;flex-direction:column;gap:7px}.kdbe-footer-inner>div:nth-child(2) a{font-size:12px;color:#617389}.kdbe-footer-tags{display:flex;flex-wrap:wrap;gap:6px}.kdbe-footer-tags a{padding:5px 8px;border:1px solid var(--kdbe-line);border-radius:99px;font-size:9px;color:#65778c}.kdbe-footer-disclaimer,.kdbe-copyright{max-width:1220px;margin:auto;padding:13px 20px;color:#7a899a;font-size:10px}.kdbe-footer-disclaimer{border-top:1px solid #edf1f5}.kdbe-copyright{text-align:center;padding-bottom:25px}
@media(max-width:980px){.kdbe-main-nav{gap:12px}.kdbe-main-nav a{font-size:11px}.kdbe-kpis{grid-template-columns:repeat(2,1fr)}.kdbe-pref-grid{grid-template-columns:repeat(3,1fr)}.kdbe-brand-grid,.kdbe-city-links{grid-template-columns:repeat(2,1fr)}.kdbe-feature-grid{grid-template-columns:repeat(2,1fr)}.kdbe-info-grid,.kdbe-column-grid{grid-template-columns:1fr 1fr}.kdbe-footer-inner{grid-template-columns:1fr 1fr}.kdbe-footer-inner>div:last-child{grid-column:1/-1}.kdbe-card-info{grid-template-columns:1fr}.kdbe-form-grid-3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.kdbe-header-inner{padding:10px 12px;gap:10px}.kdbe-site-logo{gap:8px;min-width:0}.kdbe-logo-symbol{width:32px;height:32px;flex-basis:32px;border-radius:10px}.kdbe-site-logo b{font-size:12px;line-height:1.15;white-space:nowrap}.kdbe-site-logo small{font-size:7px;line-height:1.15;margin-top:1px;white-space:nowrap}.kdbe-menu-toggle{display:block;flex:0 0 auto;padding:7px 11px;font-size:12px}.kdbe-main-nav{display:none;position:absolute;left:14px;right:14px;top:68px;padding:12px;border:1px solid var(--kdbe-line);border-radius:16px;background:#fff;box-shadow:var(--kdbe-shadow);flex-direction:column;align-items:stretch}.kdbe-main-nav.is-open{display:flex}.kdbe-main-nav a{padding:10px;font-size:13px}.kdbe-shell{width:min(100% - 20px,1180px);padding-top:20px}.kdbe-hero,.kdbe-route-hero,.kdbe-detail-hero{padding:29px 20px;border-radius:21px}.kdbe-panel{padding:21px 16px;border-radius:18px}.kdbe-tabs{grid-template-columns:1fr}.kdbe-tabs button{border-bottom:1px solid var(--kdbe-line)}.kdbe-form-grid,.kdbe-form-search,.kdbe-advanced-grid{grid-template-columns:1fr}.kdbe-pref-grid,.kdbe-brand-grid,.kdbe-city-links,.kdbe-info-grid,.kdbe-feature-grid,.kdbe-column-grid,.kdbe-near-grid{grid-template-columns:1fr}.kdbe-call-checklist ul{grid-template-columns:1fr}.kdbe-card-head,.kdbe-detail-title-row{display:grid}.kdbe-card-badges{justify-content:flex-start}.kdbe-score-card{width:110px}.kdbe-week-grid{grid-template-columns:repeat(2,1fr)}.kdbe-info-cards{grid-template-columns:1fr}.kdbe-review-overview{grid-template-columns:1fr}.kdbe-rating-bars>div{grid-template-columns:110px 1fr 32px}.kdbe-form-grid-3{grid-template-columns:1fr}.kdbe-data-table th{width:120px}.kdbe-map iframe{height:290px}.kdbe-footer-inner{grid-template-columns:1fr}.kdbe-footer-inner>div:last-child{grid-column:auto}.kdbe-sponsored{align-items:flex-start;flex-direction:column}.kdbe-compare-bar{left:10px;right:10px;transform:none;bottom:10px;justify-content:center;flex-wrap:wrap;border-radius:18px}.kdbe-detail-actions .kdbe-btn,.kdbe-card-actions .kdbe-btn{flex:1 1 auto}}
.kdbe-front-message{width:min(1180px,calc(100% - 28px));margin:15px auto;padding:13px 18px;border-radius:14px;background:#eaf8ef;border:1px solid #a9ddbf;color:#176c43;font-weight:800;font-size:13px}
.kdbe-column-article{max-width:940px;margin-left:auto;margin-right:auto}.kdbe-column-article>header{padding-bottom:20px;border-bottom:1px solid var(--kdbe-line);margin-bottom:25px}.kdbe-column-article>header h1{font-size:clamp(27px,4vw,42px);line-height:1.45;margin:0}.kdbe-column-date{font-size:11px!important;color:#8493a5!important}


/* v6.1.0: 口コミフォーム・広告ボタン・お問い合わせ */
.kdbe-review-form .kdbe-consent{margin:20px 0 28px!important;padding:14px 16px;border-radius:13px;background:#f6f9fc;border:1px solid var(--kdbe-line);line-height:1.75}
.kdbe-review-form .kdbe-consent+button{margin-top:0}
.kdbe-sponsored-content a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 22px;border:0;border-radius:var(--kdbe-ad-button-radius);background:var(--kdbe-ad-button-bg);color:var(--kdbe-ad-button-text)!important;font-weight:900;line-height:1.4;text-decoration:none!important;box-shadow:var(--kdbe-ad-button-shadow);transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.kdbe-sponsored-content a:hover{background:var(--kdbe-ad-button-bg-hover);transform:translateY(-1px);box-shadow:0 13px 27px rgba(36,104,181,.28)}
.kdbe-sponsored-content a:focus-visible{outline:3px solid rgba(36,104,181,.25);outline-offset:3px}
.kdbe-ad-disclosure{display:flex;align-items:center;gap:10px;margin:0 0 24px;padding:12px 15px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;color:#52657b;font-size:12px;line-height:1.7}
.kdbe-ad-disclosure strong{flex:0 0 auto;padding:3px 8px;border-radius:999px;background:#e8eef6;color:#34495e;font-size:10px;letter-spacing:.04em}
.kdbe-contact-form{max-width:760px;margin:20px auto 0}
.kdbe-contact-form .wpcf7-form{display:grid;gap:16px}
.kdbe-contact-form .wpcf7-form p{margin:0}
.kdbe-contact-form label{display:grid;gap:7px;font-weight:800;color:#44586f}
.kdbe-contact-form input:not([type=submit]):not([type=checkbox]):not([type=radio]):not([type=hidden]),.kdbe-contact-form textarea,.kdbe-contact-form select{width:100%;padding:13px 14px;border:1px solid #cfdbe6;border-radius:12px;background:#fff;font:inherit;color:#26384d}
.kdbe-contact-form textarea{min-height:180px;resize:vertical}
.kdbe-contact-form input[type=submit]{min-height:48px;padding:11px 24px;border:0;border-radius:999px;background:var(--kdbe-blue);color:#fff;font-weight:900;cursor:pointer;box-shadow:0 9px 20px rgba(36,104,181,.22)}
.kdbe-contact-form .wpcf7-not-valid-tip{font-size:12px;color:#c43d3d}
.kdbe-contact-form .wpcf7-response-output{margin:8px 0 0!important;padding:12px 14px!important;border-radius:10px}
@media(max-width:720px){.kdbe-sponsored-content,.kdbe-sponsored-content p{width:100%}.kdbe-sponsored-content a{width:100%;min-height:50px}.kdbe-review-form>button{width:100%;min-height:52px}.kdbe-ad-disclosure{align-items:flex-start;flex-direction:column;gap:6px}}

/* v6.2.0: コラムのアイキャッチ・カード・広告表記 */
.kdbe-column-grid .kdbe-column-card{padding:0;overflow:hidden;background:#fff;display:flex;flex-direction:column;min-width:0;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.kdbe-column-grid .kdbe-column-card:hover{transform:translateY(-3px);border-color:#cbdced;box-shadow:0 18px 38px rgba(37,71,108,.12)}
.kdbe-column-thumb{display:block;position:relative;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,#eaf5ff,#f8fbff);border-bottom:1px solid var(--kdbe-line)}
.kdbe-column-thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.kdbe-column-card:hover .kdbe-column-thumb img{transform:scale(1.025)}
.kdbe-column-thumb-placeholder{height:100%;padding:22px;display:flex;flex-direction:column;justify-content:flex-end;background:radial-gradient(circle at 85% 15%,rgba(66,161,206,.28),transparent 34%),linear-gradient(135deg,#e9f5ff,#f9fcff);color:#1d4d7a}
.kdbe-column-thumb-placeholder:before{content:"+";position:absolute;right:22px;top:17px;width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#fff;color:var(--kdbe-blue);font-size:26px;font-weight:400;box-shadow:0 9px 22px rgba(36,104,181,.14)}
.kdbe-column-thumb-placeholder span{font-size:9px;font-weight:900;letter-spacing:.13em;color:#5d86a9}
.kdbe-column-thumb-placeholder strong{display:block;margin-top:8px;font-size:15px;line-height:1.5;color:#264b6d}
.kdbe-column-card-body{display:flex;flex:1;flex-direction:column;padding:20px}
.kdbe-column-card-body>p{margin:0;font-size:10px;color:var(--kdbe-blue);font-weight:900;letter-spacing:.12em}
.kdbe-column-card-body h2,.kdbe-column-card-body h3{margin:8px 0 10px;font-size:17px;line-height:1.55}
.kdbe-column-card-body>div{font-size:12px;color:#63758a;line-height:1.8}
.kdbe-column-card-body .kdbe-text-link{margin-top:auto;padding-top:16px}
.kdbe-column-featured{margin:0 0 30px;border-radius:20px;overflow:hidden;background:#eef5fb;box-shadow:0 12px 34px rgba(37,71,108,.10)}
.kdbe-column-featured img{display:block;width:100%;height:auto;max-height:520px;object-fit:cover}
.kdbe-ad-disclosure{display:block;margin:0 0 24px;padding:12px 15px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;color:#52657b;font-size:12px;line-height:1.7}
@media(max-width:720px){.kdbe-column-card-body{padding:17px}.kdbe-column-featured{border-radius:14px;margin-bottom:22px}}


/* v6.2.1: Contact Form 7 standalone page fix */
.kdbe-contact-form{width:100%;max-width:760px;margin:22px auto 0;box-sizing:border-box}
.kdbe-contact-form .wpcf7,.kdbe-contact-form .wpcf7-form{width:100%;max-width:none;margin:0;padding:0}
.kdbe-contact-form .wpcf7-form{display:block!important}
.kdbe-contact-form .screen-reader-response{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.kdbe-contact-form .wpcf7-response-output,
.kdbe-contact-form form.init .wpcf7-response-output,
.kdbe-contact-form form.resetting .wpcf7-response-output,
.kdbe-contact-form form.submitting .wpcf7-response-output,
.kdbe-contact-form .wpcf7-response-output:empty{display:none!important;margin:0!important;padding:0!important;border:0!important;min-height:0!important}
.kdbe-contact-form form.invalid .wpcf7-response-output,
.kdbe-contact-form form.unaccepted .wpcf7-response-output,
.kdbe-contact-form form.payment-required .wpcf7-response-output,
.kdbe-contact-form form.sent .wpcf7-response-output,
.kdbe-contact-form form.failed .wpcf7-response-output,
.kdbe-contact-form form.aborted .wpcf7-response-output,
.kdbe-contact-form form.spam .wpcf7-response-output{display:block!important;margin:24px 0 0!important;padding:14px 16px!important;border:1px solid #d6e0e9!important;border-radius:12px!important;background:#f8fafc!important;color:#33475e!important;font-size:14px!important;line-height:1.7!important}
.kdbe-contact-form .kdbe-form-field{display:block!important;margin:0 0 24px!important;padding:0!important}
.kdbe-contact-form .kdbe-form-field:last-of-type{margin-bottom:20px!important}
.kdbe-contact-form .kdbe-form-field>p,
.kdbe-contact-form .kdbe-form-field p,
.kdbe-contact-form .kdbe-form-field>div,
.kdbe-contact-form .kdbe-form-field div{margin:0!important;padding:0!important}
.kdbe-contact-form .kdbe-form-field br{display:none!important}
.kdbe-contact-form .kdbe-form-field label{display:block!important;margin:0 0 9px!important;padding:0!important;color:#2a3d54!important;font-size:15px!important;font-weight:800!important;line-height:1.55!important}
.kdbe-contact-form .wpcf7-form-control-wrap{display:block!important;width:100%!important;margin:0!important;padding:0!important}
.kdbe-contact-form .kdbe-required{display:inline-flex!important;align-items:center!important;justify-content:center!important;margin-left:7px!important;padding:2px 7px!important;border-radius:5px!important;background:#d9577d!important;color:#fff!important;font-size:10px!important;font-weight:800!important;line-height:1.4!important;vertical-align:2px!important}
.kdbe-contact-form input.kdbe-form-control:not([type=submit]):not([type=checkbox]):not([type=radio]),
.kdbe-contact-form select.kdbe-form-control,
.kdbe-contact-form textarea.kdbe-form-control,
.kdbe-contact-form input.wpcf7-form-control:not([type=submit]):not([type=checkbox]):not([type=radio]):not([type=hidden]),
.kdbe-contact-form select.wpcf7-form-control,
.kdbe-contact-form textarea.wpcf7-form-control{display:block!important;width:100%!important;max-width:100%!important;min-height:52px!important;margin:0!important;padding:13px 15px!important;border:1px solid #cbd8e4!important;border-radius:11px!important;background:#fff!important;color:#26384d!important;font-family:inherit!important;font-size:16px!important;font-weight:400!important;line-height:1.55!important;box-shadow:0 1px 2px rgba(30,55,80,.02)!important;box-sizing:border-box!important;outline:0!important}
.kdbe-contact-form textarea.kdbe-form-control,
.kdbe-contact-form textarea.wpcf7-form-control{min-height:210px!important;resize:vertical!important}
.kdbe-contact-form select.kdbe-form-control,
.kdbe-contact-form select.wpcf7-form-control{padding-right:42px!important;cursor:pointer!important}
.kdbe-contact-form input.kdbe-form-control:focus,
.kdbe-contact-form select.kdbe-form-control:focus,
.kdbe-contact-form textarea.kdbe-form-control:focus,
.kdbe-contact-form input.wpcf7-form-control:focus,
.kdbe-contact-form select.wpcf7-form-control:focus,
.kdbe-contact-form textarea.wpcf7-form-control:focus{border-color:#4aa9cf!important;box-shadow:0 0 0 4px rgba(74,169,207,.13)!important}
.kdbe-contact-form .kdbe-contact-note{margin:2px 0 24px!important;padding:15px 17px!important;border:1px solid #f0d99e!important;border-radius:11px!important;background:#fff9e9!important;color:#5f512d!important;font-size:13px!important;line-height:1.8!important}
.kdbe-contact-form .kdbe-contact-consent{margin:0 0 28px!important;padding:0!important;color:#3f4f63!important;font-size:14px!important;line-height:1.8!important}
.kdbe-contact-form .kdbe-contact-consent .wpcf7-list-item{display:block!important;margin:0!important}
.kdbe-contact-form .kdbe-contact-consent label{display:flex!important;align-items:flex-start!important;gap:10px!important;margin:0!important;font-weight:600!important}
.kdbe-contact-form .kdbe-contact-consent input[type=checkbox]{flex:0 0 auto!important;width:18px!important;height:18px!important;margin:4px 0 0!important;padding:0!important}
.kdbe-contact-form .kdbe-contact-consent a{color:#196aa4!important;font-weight:800!important;text-decoration:underline!important;text-underline-offset:2px!important}
.kdbe-contact-form .kdbe-contact-submit{margin:0!important;padding:0!important}
.kdbe-contact-form input.kdbe-submit-button,
.kdbe-contact-form input[type=submit].wpcf7-submit{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:150px!important;min-height:52px!important;margin:0!important;padding:13px 26px!important;border:0!important;border-radius:999px!important;background:#2468b5!important;color:#fff!important;font-family:inherit!important;font-size:15px!important;font-weight:900!important;line-height:1.4!important;cursor:pointer!important;box-shadow:0 9px 20px rgba(36,104,181,.22)!important}
.kdbe-contact-form .wpcf7-spinner{display:block!important;margin:13px 0 0 56px!important}
.kdbe-contact-form .wpcf7-not-valid-tip{display:block!important;margin-top:7px!important;color:#c43d3d!important;font-size:12px!important;font-weight:700!important}
@media(max-width:720px){
  .kdbe-contact-form{margin-top:16px}
  .kdbe-contact-form .kdbe-form-field{margin-bottom:21px!important}
  .kdbe-contact-form input.kdbe-submit-button,.kdbe-contact-form input[type=submit].wpcf7-submit{width:100%!important;min-height:54px!important}
  .kdbe-contact-form .wpcf7-spinner{margin:13px auto 0!important}
}


/* v6.2.3: Contact Form 7 internal fields - definitive fix */
.kdbe-contact-shell,
.kdbe-contact-form {
  width: 100%;
  max-width: 760px;
  margin: 22px auto 0;
  box-sizing: border-box;
}
.kdbe-contact-shell fieldset.hidden-fields-container,
.kdbe-contact-shell .hidden-fields-container,
.kdbe-contact-form fieldset.hidden-fields-container,
.kdbe-contact-form .hidden-fields-container,
.kdbe-contact-shell input[type="hidden"],
.kdbe-contact-form input[type="hidden"] {
  display: none !important;
  position: absolute !important;
  width: 0 !important;
  height: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  visibility: hidden !important;
  appearance: none !important;
}
.kdbe-contact-shell .screen-reader-response,
.kdbe-contact-form .screen-reader-response {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}


/* v6.3.0: editable online-clinic comparison page */
.kdbe-online-bridge{margin:20px 0 0;padding:18px 20px;border:1px solid #cbe0ef;border-radius:20px;background:linear-gradient(135deg,#f2f9ff,#f7fffd);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;box-shadow:0 12px 28px rgba(37,71,108,.08)}
.kdbe-online-bridge>span{align-self:start;padding:3px 8px;border-radius:999px;background:#fff;color:#71849a;border:1px solid #dce7f0;font-size:9px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.kdbe-online-bridge strong{display:block;color:#20344d;font-size:17px}.kdbe-online-bridge p{margin:3px 0 0;color:#64788e;font-size:13px}.kdbe-btn-online{background:linear-gradient(180deg,#36b978,#218b58)!important;border-color:#218b58!important;color:#fff!important;box-shadow:0 6px 0 #176e45,0 10px 22px rgba(33,139,88,.22)}.kdbe-btn-online:hover{transform:translateY(-2px);box-shadow:0 8px 0 #176e45,0 13px 26px rgba(33,139,88,.27)}
.kdbe-online-page{display:block}.kdbe-online-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:28px;align-items:center;padding:42px;border:1px solid #eadde6;border-radius:30px;background:radial-gradient(circle at 88% 15%,rgba(213,108,155,.21),transparent 34%),linear-gradient(135deg,#fff 0,#fff8fb 58%,#eef9fb 100%);box-shadow:var(--kdbe-shadow)}.kdbe-online-hero h1{margin:0;color:#54243f;font-size:clamp(29px,4vw,46px);line-height:1.35}.kdbe-online-hero-copy>p{margin:16px 0;color:#745668;font-size:16px}.kdbe-online-hero .kdbe-ad-disclosure{display:inline-block;margin:10px 0 0;background:rgba(255,255,255,.82);border-color:#e8dce4}.kdbe-online-hero-image{margin:0;overflow:hidden;border-radius:22px;background:#fff;box-shadow:0 18px 42px rgba(98,48,75,.14)}.kdbe-online-hero-image img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.kdbe-online-hero-art{position:relative;min-height:250px;border-radius:25px;background:linear-gradient(145deg,#f0c4d8,#aadce2);box-shadow:0 18px 42px rgba(98,48,75,.14)}.kdbe-online-hero-art span{position:absolute;inset:24px;border-radius:22px;background:rgba(255,255,255,.72)}.kdbe-online-hero-art b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:78px;height:78px;border-radius:24px;background:#fff;color:#ca668f;font-size:44px;font-weight:400;box-shadow:0 14px 30px rgba(98,48,75,.13)}
.kdbe-online-notice{margin:22px 0 0;padding:18px 21px;border-left:5px solid #c75782;border-radius:16px;background:#fff5f8;color:#694254}.kdbe-online-notice strong{display:block;margin-bottom:4px;color:#8f3458}.kdbe-online-notice p{margin:0}.kdbe-online-notice small{display:block;margin-top:8px;color:#98788a}
.kdbe-online-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.kdbe-online-compare-table{width:100%;min-width:720px;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid #e5dce3;border-radius:17px;font-size:13px}.kdbe-online-compare-table th,.kdbe-online-compare-table td{padding:13px 12px;border-right:1px solid #eee5eb;border-bottom:1px solid #eee5eb;text-align:center;vertical-align:middle}.kdbe-online-compare-table thead th{background:#65314f;color:#fff;font-weight:900}.kdbe-online-compare-table thead th:first-child{background:#fff;color:#65314f}.kdbe-online-compare-table tbody th{background:#fff8fb;color:#65314f;text-align:left;white-space:nowrap}.kdbe-online-compare-table tr:last-child>*{border-bottom:0}.kdbe-online-compare-table tr>*:last-child{border-right:0}.kdbe-online-compare-table tbody tr:nth-child(even) td{background:#fdf9fb}.kdbe-online-mobile-compare{display:none}.kdbe-online-mobile-provider{overflow:hidden;border:1px solid #eadfe6;border-radius:17px;background:#fff;box-shadow:0 8px 22px rgba(79,48,68,.06)}.kdbe-online-mobile-provider-head{padding:13px 14px;background:linear-gradient(135deg,#65314f,#7c4162);color:#fff}.kdbe-online-mobile-provider-head span{display:block;font-size:8px;font-weight:900;letter-spacing:.12em;opacity:.75}.kdbe-online-mobile-provider-head h3{margin:3px 0 0;color:#fff;font-size:17px;line-height:1.35}.kdbe-online-mobile-provider dl{margin:0}.kdbe-online-mobile-provider dl>div{display:grid;grid-template-columns:112px minmax(0,1fr);border-top:1px solid #eee5eb}.kdbe-online-mobile-provider dl>div:first-child{border-top:0}.kdbe-online-mobile-provider dt,.kdbe-online-mobile-provider dd{margin:0;padding:10px 11px;font-size:12px;line-height:1.65}.kdbe-online-mobile-provider dt{background:#fff8fb;color:#65314f;font-weight:900}.kdbe-online-mobile-provider dd{color:#554a52;overflow-wrap:anywhere}
.kdbe-online-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:26px}.kdbe-online-card{position:relative;overflow:hidden;border:1px solid #eadfe6;border-radius:24px;background:#fff;box-shadow:0 16px 38px rgba(79,48,68,.09);display:flex;flex-direction:column;height:100%}.kdbe-online-card-rank{position:absolute;z-index:2;left:14px;top:14px;display:flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.94);color:#7a5570;box-shadow:0 8px 20px rgba(74,38,59,.12)}.kdbe-online-card-rank span{font-size:8px;font-weight:900;letter-spacing:.11em}.kdbe-online-card-rank b{font-size:14px;color:#c75782}.kdbe-online-card-media{aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,#fff0f6,#eefafd)}.kdbe-online-card-media img{display:block;width:100%;height:100%;object-fit:cover}.kdbe-online-image-placeholder{height:100%;display:grid;place-content:center;place-items:center;color:#a36c87}.kdbe-online-image-placeholder b{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:#fff;font-size:30px;font-weight:400;box-shadow:0 10px 22px rgba(100,56,79,.12)}.kdbe-online-image-placeholder span{margin-top:8px;font-size:11px;font-weight:800}.kdbe-online-card-body{padding:23px;display:flex;flex:1;flex-direction:column}.kdbe-online-card-body h2{margin:4px 0 15px;color:#573047;font-size:22px}.kdbe-online-tagline{min-height:1.5em;margin:0;color:#bb547e!important;font-size:11px!important;font-weight:900;letter-spacing:.03em}.kdbe-online-description{color:#625263;font-size:13px}.kdbe-online-affiliate{margin-top:auto;padding:14px;border:1px solid #dce8e2;border-radius:15px;background:#f6fcf9}.kdbe-online-cta-label{margin:0 0 9px!important;text-align:center;color:#52675c!important;font-size:12px!important;font-weight:800;line-height:1.5}.kdbe-online-affiliate>span{display:block;margin-bottom:8px;color:#7b8d83;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.kdbe-online-affiliate .kdbe-sponsored-content a{width:100%;background:linear-gradient(180deg,#43c782,#27995f);box-shadow:0 5px 0 #1d7548,0 8px 18px rgba(39,153,95,.25)}.kdbe-online-affiliate.is-empty{border-style:dashed;color:#87948d;font-size:12px}.kdbe-online-affiliate.is-empty p{margin:0}.kdbe-online-edit-note{background:linear-gradient(135deg,#f8fbff,#fff)}
@media(max-width:980px){.kdbe-online-card-grid{grid-template-columns:1fr}.kdbe-online-card{display:grid;grid-template-columns:300px 1fr}.kdbe-online-card-media{height:100%;aspect-ratio:auto}.kdbe-online-card-rank{left:12px;top:12px}}
@media(max-width:720px){.kdbe-online-bridge{grid-template-columns:1fr;gap:10px}.kdbe-online-bridge .kdbe-btn{width:100%}.kdbe-online-hero{grid-template-columns:1fr;padding:28px 20px;border-radius:22px}.kdbe-online-hero-art{min-height:190px}.kdbe-online-card{display:block;height:auto}.kdbe-online-card-media{display:block;width:100%;height:auto!important;min-height:0;aspect-ratio:16/9}.kdbe-online-card-media img{display:block;width:100%;height:100%!important;object-fit:cover}.kdbe-online-card-body{display:flex;padding:19px}.kdbe-online-compare-section{padding:20px 14px}.kdbe-online-table-wrap{display:none}.kdbe-online-mobile-compare{display:grid;gap:14px}.kdbe-online-mobile-provider dl>div{grid-template-columns:104px minmax(0,1fr)}}

/* v6.4.0: long-form medical column design (WXR 21 articles) */
.kdbe-generated-column .kdbe-longform{max-width:880px;margin:0 auto;color:#2b3d54;font-size:16px;line-height:2;overflow-wrap:anywhere}
.kdbe-generated-column .kdbe-longform>p{margin:0 0 1.45em}
.kdbe-generated-column .kdbe-longform h2{position:relative;margin:58px 0 24px;padding:18px 22px 18px 27px;border:1px solid #cfe2f1;border-left:7px solid var(--kdbe-blue);border-radius:16px;background:linear-gradient(135deg,#f3f9ff 0,#fff 68%);color:#183854;font-size:clamp(23px,3vw,30px);line-height:1.55;letter-spacing:.01em;box-shadow:0 8px 24px rgba(37,91,133,.07)}
.kdbe-generated-column .kdbe-longform h2:before{content:"";position:absolute;left:0;top:13px;bottom:13px;width:2px;border-radius:99px;background:rgba(255,255,255,.8)}
.kdbe-generated-column .kdbe-longform h3{position:relative;margin:40px 0 19px;padding:0 0 12px 18px;border-bottom:2px solid #dce8f2;color:#245276;font-size:clamp(20px,2.5vw,25px);line-height:1.6}
.kdbe-generated-column .kdbe-longform h3:before{content:"";position:absolute;left:0;top:.36em;width:7px;height:1.15em;border-radius:99px;background:linear-gradient(180deg,var(--kdbe-blue),var(--kdbe-green))}
.kdbe-generated-column .kdbe-longform h4{margin:31px 0 15px;padding:12px 16px;border-left:4px solid var(--kdbe-green);border-radius:0 11px 11px 0;background:#f2faf7;color:#245847;font-size:18px;line-height:1.65}
.kdbe-generated-column .kdbe-longform h5{display:flex;align-items:center;gap:9px;margin:25px 0 12px;color:#563f22;font-size:16px;line-height:1.7}
.kdbe-generated-column .kdbe-longform h5:before{content:"POINT";flex:0 0 auto;padding:3px 8px;border-radius:999px;background:#fff2cb;color:#8a6320;font-size:9px;font-weight:900;letter-spacing:.09em}
.kdbe-generated-column .kdbe-medical-notice{margin:0 0 26px;padding:18px 20px;border:1px solid #eddaa4;border-left:6px solid #d8a938;border-radius:15px;background:#fffaf0;color:#5f512f}
.kdbe-generated-column .kdbe-medical-notice>p:first-child>strong{display:block;margin-bottom:5px;color:#765b1f;font-size:16px}.kdbe-generated-column .kdbe-medical-notice p{margin:0}.kdbe-generated-column .kdbe-medical-notice strong.kdbe-marker-yellow{display:inline!important;margin:0!important;padding:0 .05em!important;color:inherit!important;font-size:inherit!important;line-height:inherit!important}
.kdbe-generated-column .kdbe-lead{margin:0 0 24px!important;color:#41566e;font-size:17px;font-weight:600;line-height:2}
.kdbe-generated-column .kdbe-answer-box{margin:24px 0 30px;padding:22px 24px;border:1px solid #b9dbea;border-radius:18px;background:linear-gradient(135deg,#edf9ff,#f8fffd);box-shadow:0 12px 28px rgba(42,105,145,.08)}
.kdbe-generated-column .kdbe-answer-label{display:inline-flex;margin:0 0 12px!important;padding:4px 11px;border-radius:999px;background:var(--kdbe-blue);color:#fff;font-size:11px;font-weight:900;letter-spacing:.09em}
.kdbe-generated-column .kdbe-answer-box ul,.kdbe-generated-column .kdbe-summary-list,.kdbe-generated-column .kdbe-key-points{margin:0;padding:0;list-style:none}
.kdbe-generated-column .kdbe-answer-box li,.kdbe-generated-column .kdbe-summary-list li,.kdbe-generated-column .kdbe-key-points li{position:relative;margin:9px 0;padding-left:28px}
.kdbe-generated-column .kdbe-answer-box li:before,.kdbe-generated-column .kdbe-summary-list li:before,.kdbe-generated-column .kdbe-key-points li:before{content:"✓";position:absolute;left:0;top:.05em;display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:#def4eb;color:#18764e;font-size:11px;font-weight:900}
.kdbe-generated-column .kdbe-toc{margin:30px 0;padding:23px 25px;border:1px solid #e0e7ef;border-radius:17px;background:#fbfcfe}
.kdbe-generated-column .kdbe-toc strong{display:block;margin-bottom:11px;color:#253f5c;font-size:17px}.kdbe-generated-column .kdbe-toc ol{margin:0;padding-left:1.4em}.kdbe-generated-column .kdbe-toc li{margin:5px 0;color:#4f657c}
.kdbe-generated-column .kdbe-fact-table{width:100%;margin:24px 0 32px;border-collapse:separate;border-spacing:0;border:1px solid #dbe5ee;border-radius:15px;overflow:hidden;font-size:14px}
.kdbe-generated-column .kdbe-fact-table th,.kdbe-generated-column .kdbe-fact-table td{padding:13px 15px;border-right:1px solid #e4ebf2;border-bottom:1px solid #e4ebf2;text-align:left;vertical-align:top}.kdbe-generated-column .kdbe-fact-table th{background:#eef6fc;color:#294e6c;font-weight:900}.kdbe-generated-column .kdbe-fact-table tr:last-child>*{border-bottom:0}.kdbe-generated-column .kdbe-fact-table tr>*:last-child{border-right:0}
.kdbe-generated-column .kdbe-key-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:18px 0 25px}.kdbe-generated-column .kdbe-key-points li{margin:0;padding:12px 13px 12px 40px;border:1px solid #e0eaf1;border-radius:12px;background:#fff}.kdbe-generated-column .kdbe-key-points li:before{left:13px;top:14px}
.kdbe-generated-column .kdbe-check-box{margin:24px 0 32px;padding:17px 19px;border:1px solid #d7e9df;border-radius:14px;background:#f5fbf7}.kdbe-generated-column .kdbe-check-box strong{display:block;margin-bottom:4px;color:#286148}.kdbe-generated-column .kdbe-check-box p{margin:0}
.kdbe-generated-column .kdbe-quick-answer{margin:0 0 25px!important;padding:14px 17px;border-radius:12px;background:#fff9e9;color:#5e512e}
.kdbe-generated-column .kdbe-source-note{margin:14px 0;padding:13px 15px;border-radius:11px;background:#f4f7fa;color:#5e7185;font-size:13px}
.kdbe-generated-column .kdbe-source-note a{font-weight:800;text-decoration:underline;text-underline-offset:2px}
.kdbe-generated-column .kdbe-related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:20px 0 34px}.kdbe-generated-column .kdbe-related-grid a{display:grid;gap:6px;padding:17px;border:1px solid #dbe7f0;border-radius:14px;background:#fbfdff;color:#27445f;text-decoration:none;transition:.2s}.kdbe-generated-column .kdbe-related-grid a:hover{transform:translateY(-2px);border-color:#9fc7e3;box-shadow:0 10px 24px rgba(44,91,128,.09)}.kdbe-generated-column .kdbe-related-grid span{color:#718297;font-size:12px;line-height:1.7}
.kdbe-generated-column .kdbe-faq-block{margin:20px 0 35px}.kdbe-generated-column .kdbe-faq-block h3{margin:18px 0 0;padding:15px 17px;border:1px solid #dce8f1;border-bottom:0;border-radius:13px 13px 0 0;background:#f5f9fc;font-size:17px}.kdbe-generated-column .kdbe-faq-block h3:before{content:"Q";position:static;display:inline-grid;place-items:center;width:27px;height:27px;margin-right:9px;border-radius:8px;background:var(--kdbe-blue);color:#fff;font-size:13px;vertical-align:middle}.kdbe-generated-column .kdbe-faq-block>p{margin:0!important;padding:16px 18px;border:1px solid #dce8f1;border-radius:0 0 13px 13px;background:#fff}
.kdbe-generated-column .kdbe-summary-list{margin:18px 0 34px;padding:20px 22px;border:1px solid #cde5d9;border-radius:16px;background:#f4fbf7}
.kdbe-generated-column .kdbe-source-list{margin:16px 0 12px;padding-left:1.4em}.kdbe-generated-column .kdbe-source-list li{margin:8px 0}.kdbe-generated-column .kdbe-source-list a{font-weight:700;text-decoration:underline;text-underline-offset:3px}.kdbe-generated-column .kdbe-updated{padding:12px 14px;border-radius:10px;background:#f4f6f8;color:#66788c;font-size:12px}
@media(max-width:720px){.kdbe-generated-column .kdbe-longform{font-size:15px;line-height:1.9}.kdbe-generated-column .kdbe-longform h2{margin-top:44px;padding:15px 15px 15px 20px;border-radius:13px;font-size:22px}.kdbe-generated-column .kdbe-longform h3{margin-top:34px;font-size:19px}.kdbe-generated-column .kdbe-longform h4{font-size:16px}.kdbe-generated-column .kdbe-key-points,.kdbe-generated-column .kdbe-related-grid{grid-template-columns:1fr}.kdbe-generated-column .kdbe-fact-table{display:block;overflow-x:auto;white-space:normal}.kdbe-generated-column .kdbe-answer-box,.kdbe-generated-column .kdbe-toc{padding:18px 16px}}


/* v6.4.1: WXR 32記事の見出し装飾・関連記事リスト修正 */
.kdbe-generated-column .kdbe-longform h2.kdbe-sango-h2{
  position:relative!important;
  display:block!important;
  margin:58px 0 24px!important;
  padding:18px 22px 18px 28px!important;
  border:1px solid #cfe2f1!important;
  border-left:7px solid var(--kdbe-blue)!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#f1f8ff 0%,#ffffff 72%)!important;
  color:#183854!important;
  font-size:clamp(23px,3vw,30px)!important;
  font-weight:800!important;
  line-height:1.55!important;
  box-shadow:0 8px 24px rgba(37,91,133,.08)!important;
}
.kdbe-generated-column .kdbe-longform h2.kdbe-sango-h2:before{
  content:""!important;position:absolute!important;left:0!important;top:13px!important;bottom:13px!important;width:2px!important;border-radius:99px!important;background:rgba(255,255,255,.85)!important;
}
.kdbe-generated-column .kdbe-longform h3.kdbe-sango-h3{
  position:relative!important;
  display:block!important;
  margin:40px 0 19px!important;
  padding:0 0 12px 19px!important;
  border:0!important;
  border-bottom:2px solid #dce8f2!important;
  border-radius:0!important;
  background:transparent!important;
  color:#245276!important;
  font-size:clamp(20px,2.5vw,25px)!important;
  font-weight:800!important;
  line-height:1.6!important;
  box-shadow:none!important;
}
.kdbe-generated-column .kdbe-longform h3.kdbe-sango-h3:before{
  content:""!important;position:absolute!important;left:0!important;top:.36em!important;width:7px!important;height:1.15em!important;border-radius:99px!important;background:linear-gradient(180deg,var(--kdbe-blue),var(--kdbe-green))!important;
}
.kdbe-generated-column .kdbe-longform h4.kdbe-sango-h4{
  display:block!important;
  margin:31px 0 15px!important;
  padding:12px 16px!important;
  border:0!important;
  border-left:4px solid var(--kdbe-green)!important;
  border-radius:0 11px 11px 0!important;
  background:#f2faf7!important;
  color:#245847!important;
  font-size:18px!important;
  font-weight:800!important;
  line-height:1.65!important;
  box-shadow:none!important;
}
.kdbe-generated-column .kdbe-longform h5.kdbe-sango-h5{
  display:flex!important;align-items:center!important;gap:9px!important;margin:25px 0 12px!important;padding:0!important;border:0!important;background:transparent!important;color:#563f22!important;font-size:16px!important;font-weight:800!important;line-height:1.7!important;
}
.kdbe-generated-column .kdbe-longform h5.kdbe-sango-h5:before{
  content:"POINT"!important;flex:0 0 auto!important;padding:3px 8px!important;border-radius:999px!important;background:#fff2cb!important;color:#8a6320!important;font-size:9px!important;font-weight:900!important;letter-spacing:.09em!important;
}
.kdbe-generated-column .kdbe-related-list{
  display:block!important;
  margin:20px 0 36px!important;
  padding:0 0 0 1.55em!important;
  list-style:disc outside!important;
}
.kdbe-generated-column .kdbe-related-list>li{
  display:list-item!important;
  margin:0 0 13px!important;
  padding:0!important;
  list-style:disc outside!important;
}
.kdbe-generated-column .kdbe-related-list>li::marker{
  color:var(--kdbe-blue)!important;
  font-size:1.15em!important;
}
.kdbe-generated-column .kdbe-related-list .kdbe-related-link{
  display:block!important;
  padding:16px 18px!important;
  border:1px solid #dbe7f0!important;
  border-radius:14px!important;
  background:#fbfdff!important;
  color:#27445f!important;
  text-decoration:none!important;
  box-shadow:0 5px 16px rgba(44,91,128,.05)!important;
  transition:transform .2s,border-color .2s,box-shadow .2s!important;
}
.kdbe-generated-column .kdbe-related-list .kdbe-related-link:hover{
  transform:translateY(-2px)!important;border-color:#9fc7e3!important;box-shadow:0 10px 24px rgba(44,91,128,.1)!important;
}
.kdbe-generated-column .kdbe-related-list .kdbe-related-link strong{display:block!important;color:#244a68!important;font-size:15px!important;line-height:1.7!important;}
.kdbe-generated-column .kdbe-related-list .kdbe-related-link span{display:block!important;margin-top:4px!important;color:#718297!important;font-size:12px!important;line-height:1.7!important;}
.kdbe-generated-column .kdbe-summary ul{margin:18px 0 34px!important;padding:20px 22px 20px 48px!important;border:1px solid #cde5d9!important;border-radius:16px!important;background:#f4fbf7!important;}
.kdbe-generated-column .kdbe-summary li{margin:8px 0!important;}
.kdbe-generated-column .kdbe-sources{margin:16px 0 12px!important;padding-left:1.5em!important;}
.kdbe-generated-column .kdbe-sources li{margin:8px 0!important;}
.kdbe-generated-column .kdbe-sources a{font-weight:700!important;text-decoration:underline!important;text-underline-offset:3px!important;}
@media(max-width:720px){
  .kdbe-generated-column .kdbe-longform h2.kdbe-sango-h2{margin-top:44px!important;padding:15px 15px 15px 20px!important;border-radius:13px!important;font-size:22px!important;}
  .kdbe-generated-column .kdbe-longform h3.kdbe-sango-h3{margin-top:34px!important;font-size:19px!important;}
  .kdbe-generated-column .kdbe-longform h4.kdbe-sango-h4{font-size:16px!important;}
  .kdbe-generated-column .kdbe-related-list{padding-left:1.3em!important;}
  .kdbe-generated-column .kdbe-related-list .kdbe-related-link{padding:14px!important;}
}


/* v6.4.2: long-form wrapper, compact summary, guaranteed list bullets and emphasis */
.kdbe-generated-column{display:block!important;width:100%!important;max-width:none!important;box-sizing:border-box!important;}
.kdbe-generated-column .kdbe-longform{display:block!important;width:100%!important;max-width:880px!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box!important;}
.kdbe-generated-column .kdbe-longform h2.kdbe-sango-h2{position:relative!important;display:block!important;width:100%!important;box-sizing:border-box!important;margin:54px 0 22px!important;padding:17px 21px 17px 27px!important;border:1px solid #c7dff0!important;border-left:7px solid #3f83b7!important;border-radius:15px!important;background:linear-gradient(135deg,#edf7ff 0%,#fff 76%)!important;color:#173c5a!important;font-size:clamp(23px,3vw,29px)!important;font-weight:800!important;line-height:1.55!important;box-shadow:0 8px 22px rgba(42,91,128,.08)!important;}
.kdbe-generated-column .kdbe-longform h2.kdbe-sango-h2:before{content:""!important;position:absolute!important;left:0!important;top:12px!important;bottom:12px!important;width:2px!important;background:rgba(255,255,255,.9)!important;border-radius:20px!important;}
.kdbe-generated-column .kdbe-longform h3.kdbe-sango-h3{position:relative!important;display:block!important;width:100%!important;box-sizing:border-box!important;margin:38px 0 18px!important;padding:10px 14px 10px 20px!important;border:0!important;border-bottom:3px solid #b9d8e9!important;border-radius:8px 8px 0 0!important;background:linear-gradient(90deg,#f2f9fd 0%,rgba(255,255,255,0) 78%)!important;color:#255475!important;font-size:clamp(20px,2.4vw,24px)!important;font-weight:800!important;line-height:1.6!important;box-shadow:none!important;}
.kdbe-generated-column .kdbe-longform h3.kdbe-sango-h3:before{content:""!important;position:absolute!important;left:0!important;top:10px!important;bottom:10px!important;width:6px!important;height:auto!important;border-radius:10px!important;background:linear-gradient(180deg,#3f83b7,#47a77d)!important;}
.kdbe-generated-column .kdbe-longform h4.kdbe-sango-h4{display:block!important;width:100%!important;box-sizing:border-box!important;margin:29px 0 14px!important;padding:11px 15px!important;border:0!important;border-left:5px solid #47a77d!important;border-radius:0 11px 11px 0!important;background:#eff9f4!important;color:#245c48!important;font-size:18px!important;font-weight:800!important;line-height:1.65!important;}
.kdbe-generated-column .kdbe-longform h5.kdbe-sango-h5{display:flex!important;align-items:center!important;gap:9px!important;margin:23px 0 11px!important;padding:0!important;border:0!important;background:transparent!important;color:#5c4623!important;font-size:16px!important;font-weight:800!important;line-height:1.7!important;}
.kdbe-generated-column .kdbe-longform h5.kdbe-sango-h5:before{content:"POINT"!important;display:inline-flex!important;align-items:center!important;padding:3px 9px!important;border-radius:999px!important;background:#ffeaa1!important;color:#795913!important;font-size:9px!important;font-weight:900!important;letter-spacing:.08em!important;}
.kdbe-generated-column .kdbe-related-section{display:block!important;width:100%!important;margin:42px 0 36px!important;padding:20px 20px 7px!important;border:1px solid #d7e6f0!important;border-radius:16px!important;background:#f9fcff!important;box-sizing:border-box!important;}
.kdbe-generated-column .kdbe-related-heading{display:block!important;margin:0 0 13px!important;padding:0!important;color:#244e6d!important;font-size:19px!important;font-weight:900!important;line-height:1.6!important;}
.kdbe-generated-column .kdbe-related-heading:before{content:"関連記事"!important;display:inline-flex!important;margin-right:9px!important;padding:3px 8px!important;border-radius:999px!important;background:#3f83b7!important;color:#fff!important;font-size:9px!important;font-weight:900!important;letter-spacing:.06em!important;vertical-align:middle!important;}
.kdbe-generated-column .kdbe-related-list{display:block!important;width:100%!important;margin:0!important;padding:0!important;list-style:none!important;box-sizing:border-box!important;}
.kdbe-generated-column .kdbe-related-list>li{position:relative!important;display:block!important;width:100%!important;margin:0 0 13px!important;padding:0 0 0 25px!important;list-style:none!important;box-sizing:border-box!important;}
.kdbe-generated-column .kdbe-related-list>li:before{content:"●"!important;position:absolute!important;left:2px!important;top:16px!important;color:#3f83b7!important;font-size:13px!important;line-height:1!important;}
.kdbe-generated-column .kdbe-related-list .kdbe-related-link{display:block!important;width:100%!important;padding:14px 16px!important;border:1px solid #d7e5ef!important;border-radius:12px!important;background:#fff!important;color:#27445f!important;text-decoration:none!important;box-sizing:border-box!important;box-shadow:0 5px 14px rgba(44,91,128,.05)!important;}
.kdbe-generated-column .kdbe-related-list .kdbe-related-link strong{display:block!important;color:#244a68!important;font-size:15px!important;font-weight:800!important;line-height:1.7!important;}
.kdbe-generated-column .kdbe-related-list .kdbe-related-link span{display:block!important;margin-top:3px!important;color:#718297!important;font-size:12px!important;line-height:1.7!important;}
.kdbe-generated-column .kdbe-summary.kdbe-summary-wide{display:block!important;float:none!important;clear:both!important;width:100%!important;max-width:none!important;min-width:0!important;margin:18px 0 34px!important;padding:0!important;border:0!important;background:transparent!important;box-sizing:border-box!important;}
.kdbe-generated-column .kdbe-summary.kdbe-summary-wide .kdbe-summary-list{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:17px 20px 17px 46px!important;border:1px solid #c9e3d5!important;border-radius:15px!important;background:#f2faf6!important;list-style:disc outside!important;columns:auto!important;column-count:1!important;box-sizing:border-box!important;}
.kdbe-generated-column .kdbe-summary.kdbe-summary-wide .kdbe-summary-list li{display:list-item!important;width:auto!important;margin:7px 0!important;padding:0!important;list-style:disc outside!important;line-height:1.8!important;}
.kdbe-generated-column .kdbe-summary.kdbe-summary-wide .kdbe-summary-list li::marker{color:#279260!important;font-size:1.05em!important;}
.kdbe-generated-column .kdbe-text-bold{font-weight:900!important;color:inherit!important;}
.kdbe-generated-column .kdbe-red-strong{font-weight:900!important;color:#d23838!important;}
.kdbe-generated-column .kdbe-marker-yellow{font-weight:900!important;color:inherit!important;background:linear-gradient(transparent 58%,#fff09a 58%)!important;padding:0 .05em!important;}
.kdbe-generated-column .kdbe-sources{display:block!important;margin:16px 0 12px!important;padding-left:1.45em!important;list-style:disc outside!important;}
.kdbe-generated-column .kdbe-sources li{display:list-item!important;margin:8px 0!important;list-style:disc outside!important;}
@media(max-width:720px){
 .kdbe-generated-column .kdbe-longform h2.kdbe-sango-h2{margin-top:42px!important;padding:14px 14px 14px 19px!important;font-size:21px!important;border-radius:12px!important;}
 .kdbe-generated-column .kdbe-longform h3.kdbe-sango-h3{margin-top:31px!important;padding-left:18px!important;font-size:19px!important;}
 .kdbe-generated-column .kdbe-longform h4.kdbe-sango-h4{font-size:16px!important;}
 .kdbe-generated-column .kdbe-related-section{padding:17px 14px 4px!important;}
 .kdbe-generated-column .kdbe-related-list>li{padding-left:21px!important;}
 .kdbe-generated-column .kdbe-related-list>li:before{left:0!important;top:15px!important;}
 .kdbe-generated-column .kdbe-related-list .kdbe-related-link{padding:13px!important;}
 .kdbe-generated-column .kdbe-summary.kdbe-summary-wide .kdbe-summary-list{padding:15px 15px 15px 37px!important;}
}


/* v6.5.7: SANGOコラム内広告をHCE共通広告ボタンと同じ表示に固定
 * 保存済みのASP HTML、href、パラメータ、計測imgは変更しません。
 */
body.single-post.kdbe-longform-post .kdbe-generated-column .kdbe-sponsored,
body.single-post .kdbe-generated-column .kdbe-sponsored{
  width:100%!important;
  max-width:none!important;
  margin:24px 0!important;
  padding:14px 18px!important;
  border:1px solid #dce8f2!important;
  border-radius:15px!important;
  background:#f8fbfe!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  box-sizing:border-box!important;
}
body.single-post.kdbe-longform-post .kdbe-generated-column .kdbe-sponsored>span,
body.single-post .kdbe-generated-column .kdbe-sponsored>span{
  display:block!important;
  flex:0 0 auto!important;
  margin:0!important;
  padding:0!important;
  color:#8190a1!important;
  font-size:9px!important;
  font-weight:900!important;
  line-height:1.4!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
}
body.single-post.kdbe-longform-post .kdbe-generated-column .kdbe-sponsored-content,
body.single-post .kdbe-generated-column .kdbe-sponsored-content{
  display:flex!important;
  flex:1 1 auto!important;
  align-items:center!important;
  justify-content:flex-end!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  font-size:13px!important;
}
body.single-post.kdbe-longform-post .kdbe-generated-column .kdbe-sponsored-content p,
body.single-post .kdbe-generated-column .kdbe-sponsored-content p{
  margin:0!important;
  padding:0!important;
}
body.single-post.kdbe-longform-post .kdbe-generated-column .kdbe-sponsored-content a,
body.single-post .kdbe-generated-column .kdbe-sponsored-content a{
  appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:46px!important;
  margin:0!important;
  padding:11px 22px!important;
  border:0!important;
  border-radius:var(--kdbe-ad-button-radius)!important;
  background:var(--kdbe-ad-button-bg)!important;
  color:var(--kdbe-ad-button-text)!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1.4!important;
  text-align:center!important;
  text-decoration:none!important;
  box-shadow:var(--kdbe-ad-button-shadow)!important;
  transition:transform .18s ease,background .18s ease,box-shadow .18s ease!important;
}
body.single-post.kdbe-longform-post .kdbe-generated-column .kdbe-sponsored-content a:hover,
body.single-post .kdbe-generated-column .kdbe-sponsored-content a:hover{
  background:var(--kdbe-ad-button-bg-hover)!important;
  color:#fff!important;
  transform:translateY(-1px)!important;
  box-shadow:0 13px 27px rgba(36,104,181,.28)!important;
}
@media(max-width:720px){
  body.single-post.kdbe-longform-post .kdbe-generated-column .kdbe-sponsored,
  body.single-post .kdbe-generated-column .kdbe-sponsored{
    align-items:stretch!important;
    flex-direction:column!important;
    gap:8px!important;
    padding:14px!important;
  }
  body.single-post.kdbe-longform-post .kdbe-generated-column .kdbe-sponsored-content,
  body.single-post .kdbe-generated-column .kdbe-sponsored-content{
    width:100%!important;
    display:block!important;
  }
  body.single-post.kdbe-longform-post .kdbe-generated-column .kdbe-sponsored-content a,
  body.single-post .kdbe-generated-column .kdbe-sponsored-content a{
    width:100%!important;
    min-height:50px!important;
    box-sizing:border-box!important;
  }
}


/* v6.5.8: コラム導入広告の位置と医療注意枠内の強調表示を修正
 * - 導入広告は .kdbe-lead の直後へ配置
 * - 医療注意枠を広告で分断しない
 * - 「医師・薬剤師」など本文中の strong はインラインのまま表示
 * - ASP広告HTML・href・パラメータ・計測タグは変更しない
 */
.kdbe-generated-column .kdbe-medical-notice strong.kdbe-marker-yellow{
  display:inline!important;
  margin:0!important;
  padding:0 .05em!important;
  font-size:inherit!important;
  line-height:inherit!important;
  vertical-align:baseline!important;
}


/* v6.5.9: コラム冒頭の重複説明を非表示ではなくHTML出力から除去。
 * 医療注意文中の「医師・薬剤師」は常に文章内のインライン強調として扱う。 */
body.single-post .kdbe-generated-column .kdbe-medical-notice .kdbe-medical-inline-strong,
body.single-post.kdbe-longform-post .kdbe-generated-column .kdbe-medical-notice .kdbe-medical-inline-strong{
  display:inline!important;
  float:none!important;
  position:static!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0 .05em!important;
  color:inherit!important;
  font-size:inherit!important;
  line-height:inherit!important;
  vertical-align:baseline!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  background:linear-gradient(transparent 58%,#fff09a 58%)!important;
}


/* v6.5.11: 医療注意文に強制的な折り返し位置を作らない。
 * v6.5.10 の nowrap により末尾フレーズ全体が次行へ送られる問題を解消。 */
body.single-post .kdbe-generated-column .kdbe-medical-notice .kdbe-medical-keep-together,
body.single-post.kdbe-longform-post .kdbe-generated-column .kdbe-medical-notice .kdbe-medical-keep-together{
  display:inline!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
body.single-post .kdbe-generated-column .kdbe-medical-notice .kdbe-medical-keep-together .kdbe-medical-inline-strong,
body.single-post.kdbe-longform-post .kdbe-generated-column .kdbe-medical-notice .kdbe-medical-keep-together .kdbe-medical-inline-strong{
  display:inline!important;
  white-space:normal!important;
}

/* v6.5.12 HTMLサイトマップ */
.kdbe-html-sitemap{display:block}
.kdbe-sitemap-hero{margin-bottom:24px}
.kdbe-sitemap-section{margin-top:24px}
.kdbe-sitemap-note{margin:0 0 24px;color:#5f7183;line-height:1.8}
.kdbe-sitemap-main-links,
.kdbe-sitemap-brand-list,
.kdbe-sitemap-city-list{list-style:none;margin:0;padding:0}
.kdbe-sitemap-main-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 18px}
.kdbe-sitemap-main-links a,
.kdbe-sitemap-brand-list a,
.kdbe-sitemap-city-list a{color:#245f8f;text-decoration:none}
.kdbe-sitemap-main-links a:hover,
.kdbe-sitemap-brand-list a:hover,
.kdbe-sitemap-city-list a:hover{text-decoration:underline}
.kdbe-sitemap-region{margin-top:34px}
.kdbe-sitemap-region>h3{margin:0 0 16px;padding:10px 14px;border-left:5px solid #3f83b7;background:#f0f7fc;color:#234f70;font-size:20px;line-height:1.4}
.kdbe-sitemap-pref-block{padding:18px 0;border-bottom:1px solid #e3eaf0}
.kdbe-sitemap-pref-block:last-child{border-bottom:0}
.kdbe-sitemap-pref-block h4{margin:0 0 12px;font-size:17px;line-height:1.5}
.kdbe-sitemap-pref-block h4 a{color:#173c5a;text-decoration:none}
.kdbe-sitemap-pref-block h4 a:hover{text-decoration:underline}
.kdbe-sitemap-pref-block h4 span,
.kdbe-sitemap-city-list span,
.kdbe-sitemap-brand-list span{font-size:.88em;color:#7a8997;font-weight:500}
.kdbe-sitemap-city-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 16px}
.kdbe-sitemap-city-list li{min-width:0;font-size:14px;line-height:1.55}
.kdbe-sitemap-brand-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 16px}
.kdbe-sitemap-brand-list li{font-size:14px;line-height:1.55}
@media(max-width:900px){
  .kdbe-sitemap-city-list,.kdbe-sitemap-brand-list{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .kdbe-sitemap-main-links{grid-template-columns:1fr 1fr;gap:9px 14px}
  .kdbe-sitemap-city-list,.kdbe-sitemap-brand-list{grid-template-columns:1fr 1fr;gap:8px 12px}
  .kdbe-sitemap-region{margin-top:28px}
  .kdbe-sitemap-region>h3{font-size:18px}
  .kdbe-sitemap-pref-block{padding:16px 0}
  .kdbe-sitemap-pref-block h4{font-size:16px}
  .kdbe-sitemap-city-list li,.kdbe-sitemap-brand-list li{font-size:13px}
}
@media(max-width:420px){
  .kdbe-sitemap-main-links,.kdbe-sitemap-city-list,.kdbe-sitemap-brand-list{grid-template-columns:1fr}
}

/* v6.5.13: city-page partner clinics */
.kdbe-partner-clinics{border-top:4px solid var(--kdbe-primary,#2463eb)}
.kdbe-partner-intro{margin-top:-4px;color:#566273}
.kdbe-partner-clinic-list{display:grid;gap:16px}
.kdbe-partner-clinic-card{padding:20px;border:1px solid #dbe3ec;border-radius:16px;background:#fff}
.kdbe-partner-clinic-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:10px}
.kdbe-partner-clinic-head h3{margin:5px 0 0;font-size:1.22rem}
.kdbe-partner-label{display:inline-block;font-size:.78rem;font-weight:700;color:#516172}
.kdbe-partner-permission{flex:0 0 auto;display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#eef7f1;color:#24613b;font-size:.76rem;font-weight:700}
.kdbe-partner-clinic-meta{margin:16px 0;border-top:1px solid #e7edf3}
.kdbe-partner-clinic-meta>div{display:grid;grid-template-columns:92px 1fr;gap:12px;padding:9px 0;border-bottom:1px solid #e7edf3}
.kdbe-partner-clinic-meta dt{font-weight:700;color:#455468}.kdbe-partner-clinic-meta dd{margin:0}
.kdbe-partner-clinic-actions{margin-top:16px}.kdbe-partner-note{margin:12px 0 0;font-size:.86rem;color:#677486}
@media(max-width:640px){.kdbe-partner-clinic-head{display:block}.kdbe-partner-permission{margin-top:10px}.kdbe-partner-clinic-meta>div{grid-template-columns:1fr;gap:2px}}


/* Kurashi DB Engine specific layout overrides */
.kdbe-front-search-wrap{position:relative;z-index:2;width:100%;margin:0!important;padding:32px 0 38px!important;background:linear-gradient(180deg,#f4f9fd 0,#f8fafc 100%)!important;clear:both}
.kdbe-front-search-wrap .kdbe-app{width:min(1180px,calc(100% - 28px))!important;margin:0 auto!important;padding:0!important;max-width:1180px!important}
.kdbe-front-search-wrap .kdbe-app,.kdbe-front-search-wrap .kdbe-app *{box-sizing:border-box!important}
.kdbe-front-search-wrap .kdbe-app h1,.kdbe-front-search-wrap .kdbe-app h2,.kdbe-front-search-wrap .kdbe-app h3,.kdbe-front-search-wrap .kdbe-app p{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif!important}
.kdbe-kurashi-grid{grid-template-columns:repeat(3,minmax(0,1fr)) auto!important}
.kdbe-issue-grid{grid-template-columns:repeat(3,minmax(0,1fr)) auto!important}
.kdbe-form-actions{display:flex;align-items:flex-end}.kdbe-form-actions .kdbe-btn{width:100%;min-width:140px}
.kdbe-data-note{display:none!important}
.kdbe-empty{padding:38px 24px!important;border:1px dashed #ccd9e5!important;border-radius:17px!important;text-align:center!important;background:#fafcff!important}
.kdbe-empty h2{margin:0 0 10px!important;font-size:21px!important;color:#2e4259!important}.kdbe-empty p{max-width:680px;margin:0 auto 20px!important;color:#6a7d92!important}
body.kdbe-standalone .kdbe-shell{min-height:60vh}
body.kdbe-standalone .kdbe-site-logo .kdbe-logo-symbol{display:block!important}
@media(max-width:980px){.kdbe-kurashi-grid,.kdbe-issue-grid{grid-template-columns:1fr 1fr!important}.kdbe-form-actions{align-items:stretch}.kdbe-form-actions .kdbe-btn{width:100%}}
@media(max-width:720px){.kdbe-front-search-wrap{padding:20px 0 26px!important}.kdbe-kurashi-grid,.kdbe-issue-grid{grid-template-columns:1fr!important}.kdbe-form-actions .kdbe-btn{width:100%}}


/* v2.6.4: search/pagination/affiliate/data-status UI */
.kdbe-pager{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px;margin:30px auto 6px;padding:4px;text-align:center}
.kdbe-pager a,.kdbe-pager span:not(.kdbe-pager-dots){display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 13px;border:1px solid #cfddeb;border-radius:999px;background:#fff;color:var(--kdbe-blue)!important;font-size:13px;font-weight:900;line-height:1;text-decoration:none!important;box-shadow:0 5px 14px rgba(31,67,104,.06)}
.kdbe-pager a:hover{border-color:#8fbbe0;background:#f2f8ff;transform:translateY(-1px)}
.kdbe-pager span.is-current{border-color:var(--kdbe-blue)!important;background:var(--kdbe-blue)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;text-shadow:none!important;box-shadow:0 8px 18px rgba(36,104,181,.22)}
.kdbe-pager .kdbe-pager-nav{min-width:auto;padding:0 17px}
.kdbe-pager .kdbe-pager-dots{display:inline-flex;align-items:center;height:42px;padding:0 2px;color:#8b9aab;font-weight:900}
.kdbe-form-search{align-items:end!important}.kdbe-form-search .kdbe-form-actions{align-self:end;height:50px}.kdbe-form-search .kdbe-form-actions .kdbe-btn{height:50px;min-height:50px;margin:0;line-height:1}
.kdbe-card-info{grid-template-columns:repeat(4,minmax(0,1fr))}
.kdbe-missing{color:#8795a5;font-style:normal;font-weight:700}.kdbe-source-caution{color:#7f8d9d}
.kdbe-affiliate-cta{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin:22px 0;padding:17px 19px;border:1px solid #cde5d9;border-radius:18px;background:linear-gradient(135deg,#f3fbf7,#fff);box-shadow:0 10px 26px rgba(31,104,72,.08)}
.kdbe-affiliate-pr{display:inline-grid;place-items:center;min-width:34px;height:24px;padding:0 8px;border-radius:999px;background:#eef2f6;color:#657589;font-size:9px;font-weight:900;letter-spacing:.08em}
.kdbe-affiliate-copy strong{display:block;color:#24513d;font-size:15px}.kdbe-affiliate-copy p{margin:3px 0 0!important;color:#6b7d74!important;font-size:11px!important}
.kdbe-btn-affiliate{min-height:48px!important;background:linear-gradient(180deg,#37b777,#248a59)!important;border-color:#248a59!important;color:#fff!important;box-shadow:0 7px 17px rgba(36,138,89,.22)}
.kdbe-btn-affiliate:hover{background:linear-gradient(180deg,#30a96d,#1d7b4e)!important}
/* 粗大ごみ検索: 外部リンクボタンと注記の余白（v2.6.7で注記上余白を30pxへ拡大） */
.kdbe-sodai-note-spaced{display:block!important;margin-top:30px!important;padding-top:0!important}
.kdbe-sodai-action-spaced{margin-bottom:18px!important}
.kdbe-sodai-action-wrap-spaced{padding-bottom:0!important;margin-bottom:18px!important}
@media(max-width:980px){.kdbe-card-info{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.kdbe-card-info{grid-template-columns:1fr}.kdbe-pager{gap:6px;margin-top:24px}.kdbe-pager a,.kdbe-pager span:not(.kdbe-pager-dots){min-width:38px;height:38px;padding:0 11px}.kdbe-pager .kdbe-pager-nav{padding:0 13px}.kdbe-affiliate-cta{grid-template-columns:1fr;gap:8px;padding:16px}.kdbe-affiliate-pr{justify-self:start}.kdbe-btn-affiliate{width:100%}.kdbe-form-search .kdbe-form-actions{height:auto}.kdbe-form-search .kdbe-form-actions .kdbe-btn{height:50px}}


/* v2.6.5: industry-separated top-3 affiliate recommendations */
.kdbe-affiliate-recommendations{margin:24px 0;padding:18px;border:1px solid #d8e7df;border-radius:20px;background:linear-gradient(135deg,#f5fbf8,#fff);box-shadow:0 10px 28px rgba(31,104,72,.07)}
.kdbe-affiliate-recommendation-head{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px}.kdbe-affiliate-recommendation-head>div{min-width:0}.kdbe-affiliate-recommendation-head strong{display:block;color:#24513d;font-size:16px}.kdbe-affiliate-recommendation-head p{margin:3px 0 0!important;color:#718079!important;font-size:11px!important}
.kdbe-affiliate-offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.kdbe-affiliate-offer{position:relative;display:flex;flex-direction:column;gap:11px;min-width:0;padding:16px;border:1px solid #dce7e1;border-radius:16px;background:#fff;box-shadow:0 7px 18px rgba(47,94,73,.06)}
.kdbe-affiliate-rank{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:5px 9px;border-radius:999px;background:#edf8f2;color:#397052;font-size:10px;font-weight:800}.kdbe-affiliate-rank b{color:#188451;font-size:13px}.kdbe-affiliate-offer-name{display:block;color:#263b31;font-size:15px;line-height:1.45}.kdbe-affiliate-offer-body p{margin:5px 0 0!important;color:#6d7b74!important;font-size:11px!important;line-height:1.6}.kdbe-affiliate-offer .kdbe-btn-affiliate{width:100%;margin-top:auto;text-align:center;justify-content:center}
.kdbe-affiliate-recommendations.is-compact{padding:14px 16px}.kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-recommendation-head{margin-bottom:10px}.kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;padding:12px 14px}.kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer-body p{display:none}.kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-rank{margin:0}.kdbe-affiliate-recommendations.is-compact .kdbe-btn-affiliate{width:auto;min-width:210px}
@media(max-width:900px){.kdbe-affiliate-offer-grid{grid-template-columns:1fr}.kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer{grid-template-columns:1fr}.kdbe-affiliate-recommendations.is-compact .kdbe-btn-affiliate{width:100%;min-width:0}}

/* v2.6.9: ASP発行タグはそのまま出力し、外側CSSだけで見た目を整える。タグ属性・リンク文言は変更しない。 */
.kdbe-affiliate-raw{width:100%;margin-top:10px}.kdbe-affiliate-raw a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 22px;border:0;border-radius:var(--kdbe-ad-button-radius);background:var(--kdbe-ad-button-bg);color:var(--kdbe-ad-button-text)!important;font-weight:900;line-height:1.4;text-decoration:none!important;box-shadow:var(--kdbe-ad-button-shadow);transition:transform .18s ease,background .18s ease,box-shadow .18s ease}.kdbe-affiliate-raw a:hover{background:var(--kdbe-ad-button-bg-hover);transform:translateY(-1px);box-shadow:0 13px 27px rgba(36,104,181,.28)}@media(max-width:720px){.kdbe-affiliate-raw a{width:100%;min-height:50px}}
/* v2.6.10: 検索UI・サービスカード・ヘッダーブランドの視認性改善 */
.kdbe-tabs button{display:flex;align-items:center;justify-content:center;gap:7px}
.kdbe-tabs button>span{font-size:16px;line-height:1}
.kdbe-kurashi-grid .kdbe-form-actions,.kdbe-issue-grid .kdbe-form-actions{grid-column:1/-1;justify-content:center;align-items:center;margin-top:7px}
.kdbe-kurashi-grid .kdbe-form-actions .kdbe-btn,.kdbe-issue-grid .kdbe-form-actions .kdbe-btn{width:auto;min-width:220px}
.kdbe-nearby-panel>label{margin:0 auto!important}
.kdbe-nearby-panel>[data-kdbe-nearby]{margin-top:20px}
.kdbe-service-links{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.kdbe-service-link{display:flex!important;align-items:center;gap:12px;min-width:0;padding:16px 15px;border:1px solid var(--kdbe-line);border-radius:17px;background:linear-gradient(180deg,#fff,#f8fbfe);color:#24364d!important;box-shadow:0 7px 18px rgba(31,67,104,.055);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.kdbe-service-link:hover{transform:translateY(-2px);border-color:#9ec6e8;box-shadow:0 11px 24px rgba(31,67,104,.09)}
.kdbe-service-link-icon{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:14px;background:#eef7ff;font-size:23px;line-height:1}
.kdbe-service-link-copy{display:block;min-width:0}
.kdbe-service-link-copy strong{display:block;color:#203149;font-size:14px;line-height:1.45}
.kdbe-service-link-copy>span{display:block;margin-top:4px;color:var(--kdbe-blue);font-size:11px;font-weight:800;white-space:nowrap}
.kdbe-service-link-copy b{font-size:13px}
.kdbe-site-logo>.kdbe-logo-symbol{display:block}
@media(max-width:980px){.kdbe-service-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.kdbe-service-links{grid-template-columns:1fr}.kdbe-service-link{padding:14px}.kdbe-kurashi-grid .kdbe-form-actions .kdbe-btn,.kdbe-issue-grid .kdbe-form-actions .kdbe-btn{width:100%;min-width:0}.kdbe-tabs button{justify-content:flex-start;padding-left:16px}}


/* v2.6.12: active pager contrast + sitewide back-to-top */
.kdbe-pager span.is-current[aria-current="page"]{background:var(--kdbe-blue)!important;border-color:var(--kdbe-blue)!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
.kdbe-back-to-top{position:fixed;right:24px;bottom:24px;z-index:9998;display:flex;align-items:center;justify-content:center;gap:7px;min-height:48px;padding:0 17px;border:1px solid rgba(23,74,131,.22);border-radius:999px;background:rgba(255,255,255,.96);color:#174a83;font:800 12px/1 -apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",sans-serif;box-shadow:0 10px 28px rgba(31,67,104,.18);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease,background .18s ease,color .18s ease}
.kdbe-back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.kdbe-back-to-top:hover{background:#2468b5;color:#fff}
.kdbe-back-to-top:focus-visible{outline:3px solid rgba(36,104,181,.28);outline-offset:3px}
.kdbe-back-to-top-arrow{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#eef7ff;color:#2468b5;font-size:16px;font-weight:900;line-height:1}
.kdbe-back-to-top:hover .kdbe-back-to-top-arrow{background:rgba(255,255,255,.18);color:#fff}
@media(max-width:720px){.kdbe-back-to-top{right:14px;bottom:76px;width:48px;height:48px;min-height:48px;padding:0;border-radius:50%}.kdbe-back-to-top-label{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.kdbe-back-to-top-arrow{width:28px;height:28px;font-size:18px}}


/* v2.6.13: one-line brand on Local Guide/search pages */
.kdbe-site-logo{display:inline-flex;align-items:center;gap:10px;white-space:nowrap}
.kdbe-site-logo .kdbe-logo-text{display:block;color:#173a55;font-size:16px;font-weight:900;line-height:1.2;letter-spacing:.01em;white-space:nowrap}
.kdbe-footer-logo .kdbe-logo-text{font-size:15px}
.kdbe-site-logo b,.kdbe-site-logo small{display:none!important}
@media(max-width:720px){.kdbe-site-logo{gap:7px}.kdbe-site-logo .kdbe-logo-text{font-size:11.5px;letter-spacing:0}.kdbe-footer-logo .kdbe-logo-text{font-size:12px}}


/* v2.6.14: 都道府県→市区町村→地域ガイドのクロール可能なディレクトリ階層 */
.kdbe-directory-hub .kdbe-section-heading{margin-bottom:10px}
.kdbe-directory-city-grid{list-style:none!important;margin:20px 0 0!important;padding:0!important;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.kdbe-directory-city-grid li{margin:0!important;padding:0!important}
.kdbe-directory-city-grid a{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:46px;padding:10px 13px;border:1px solid #d8e5ef;border-radius:11px;background:#fff;color:#234f70;text-decoration:none!important;font-weight:800;box-shadow:0 2px 8px rgba(35,79,112,.05)}
.kdbe-directory-city-grid a:hover{border-color:#79afd4;background:#f4faff;transform:translateY(-1px)}
.kdbe-directory-city-grid a span{color:#4f96c8}
.kdbe-city-service-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}
.kdbe-city-service-group{margin:0;padding:18px;border:1px solid #dbe7ef;border-radius:14px;background:#fff}
.kdbe-city-service-group h2{display:flex;align-items:center;gap:8px;margin:0 0 12px!important;padding:0!important;border:0!important;background:none!important;color:#173c5a!important;font-size:18px!important}
.kdbe-city-overview-link{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 13px;border-radius:10px;background:#eef7ff;color:#174a83;text-decoration:none!important;font-weight:900}
.kdbe-city-issue-links{list-style:none!important;margin:12px 0 0!important;padding:0!important;display:grid;grid-template-columns:1fr 1fr;gap:7px 12px}
.kdbe-city-issue-links li{margin:0!important;padding:0!important}
.kdbe-city-issue-links a{color:#376d95;text-decoration:none!important;font-size:14px;font-weight:700}
.kdbe-city-issue-links a:hover{text-decoration:underline!important}
@media(max-width:900px){.kdbe-directory-city-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.kdbe-directory-city-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.kdbe-directory-city-grid a{min-height:44px;padding:9px 11px;font-size:13px}.kdbe-city-service-groups{grid-template-columns:1fr}.kdbe-city-service-group{padding:15px}.kdbe-city-issue-links{grid-template-columns:1fr 1fr}}
@media(max-width:390px){.kdbe-directory-city-grid{grid-template-columns:1fr 1fr}.kdbe-city-issue-links{grid-template-columns:1fr}}


/* ===== v2.6.16: DB検索/業者ページのブランドヘッダー位置 ===== */
@media(min-width:721px){
  body.kdbe-standalone .kdbe-header-inner{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto!important;
    justify-items:center!important;
    align-items:center!important;
    gap:8px!important;
    padding:10px 20px 9px!important;
  }
  body.kdbe-standalone .kdbe-site-header .kdbe-site-logo{
    grid-row:1!important;
    justify-self:center!important;
    margin:0 auto!important;
  }
  body.kdbe-standalone .kdbe-site-header .kdbe-main-nav{
    grid-row:2!important;
    width:100%!important;
    justify-content:center!important;
    gap:24px!important;
    margin:0 auto!important;
  }
}
@media(max-width:720px){
  body.kdbe-standalone .kdbe-header-inner{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:58px!important;
    padding:9px 58px 9px 12px!important;
    box-sizing:border-box!important;
  }
  body.kdbe-standalone .kdbe-site-header .kdbe-site-logo{
    display:inline-flex!important;
    justify-content:center!important;
    margin:0 auto!important;
    max-width:calc(100vw - 126px)!important;
  }
  body.kdbe-standalone .kdbe-site-header .kdbe-logo-text{
    font-size:11px!important;
    white-space:nowrap!important;
  }
  body.kdbe-standalone .kdbe-site-header .kdbe-menu-toggle{
    position:absolute!important;
    right:12px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    margin:0!important;
  }
  body.kdbe-standalone .kdbe-site-header .kdbe-main-nav{
    top:64px!important;
  }
}

/* ===== v2.6.17: final standalone header alignment ===== */
@media(min-width:721px){
  body.kdbe-standalone .kdbe-site-header{position:sticky;top:0}
  body.kdbe-standalone .kdbe-header-inner{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:48px 34px!important;justify-items:center!important;align-items:center!important;gap:5px!important;min-height:96px!important;padding:7px 20px 6px!important}
  body.kdbe-standalone .kdbe-site-header .kdbe-site-logo{grid-row:1!important;justify-self:center!important;margin:0 auto!important}
  body.kdbe-standalone .kdbe-site-header .kdbe-main-nav{grid-row:2!important;position:static!important;transform:none!important;width:auto!important;max-width:100%!important;justify-content:center!important;gap:22px!important;margin:0 auto!important;padding:0!important}
}
@media(max-width:720px){
  body.kdbe-standalone .kdbe-header-inner{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;min-height:58px!important;padding:8px 58px 8px 12px!important}
  body.kdbe-standalone .kdbe-site-header .kdbe-site-logo{margin:0 auto!important;max-width:calc(100vw - 126px)!important}
  body.kdbe-standalone .kdbe-site-header .kdbe-logo-text{font-size:10.8px!important;white-space:nowrap!important}
  body.kdbe-standalone .kdbe-site-header .kdbe-menu-toggle{position:absolute!important;right:10px!important;top:50%!important;transform:translateY(-50%)!important;margin:0!important}
  body.kdbe-standalone .kdbe-site-header .kdbe-main-nav{top:62px!important}
}

/* ===== v2.6.20: mobile search form alignment/spacing ===== */
@media(max-width:720px){
  /* エリア/困りごと検索：ラベルと選択値を中央に */
  .kdbe-smart-search>label{
    text-align:center!important;
  }
  .kdbe-smart-search>label select{
    text-align:center!important;
    text-align-last:center!important;
  }
  .kdbe-smart-search>label select option{
    text-align:center!important;
  }

  /* 業者名検索：見出しとラベルだけを中央に */
  .kdbe-advanced-search h2{
    text-align:center!important;
  }
  .kdbe-form-search>label{
    text-align:center!important;
  }

  /* 入力欄→「業者名で検索」ボタンの空きを詰めすぎず自然な間隔に */
  .kdbe-form-search{
    gap:8px!important;
  }
  .kdbe-form-search .kdbe-form-actions{
    margin-top:2px!important;
  }
}


/* ===== v2.6.21: mobile search UI compact/final ===== */
@media(max-width:720px){
  /* 3つの検索タブは各行の中央へ。左寄せ指定を最終上書き。 */
  .kdbe-tabs{
    margin:-4px 0 16px!important;
  }
  .kdbe-tabs button{
    justify-content:center!important;
    text-align:center!important;
    padding:12px 8px!important;
    min-height:48px!important;
  }

  /* フォーム内の縦方向の間延びを抑える。 */
  .kdbe-smart-search{
    row-gap:10px!important;
    column-gap:10px!important;
  }
  .kdbe-smart-search>label{
    gap:5px!important;
    margin:0!important;
  }
  .kdbe-kurashi-grid .kdbe-form-actions,
  .kdbe-issue-grid .kdbe-form-actions{
    margin-top:0!important;
    padding-top:0!important;
    min-height:0!important;
  }

  /* 現在地検索：サービス欄→ボタン、ボタン→業者名検索の空白を圧縮。 */
  .kdbe-nearby-panel{
    padding:10px 6px 8px!important;
  }
  .kdbe-nearby-panel>p{
    margin-bottom:10px!important;
  }
  .kdbe-nearby-panel>label{
    margin:0 auto 6px!important;
  }
  .kdbe-nearby-panel>[data-kdbe-nearby]{
    margin-top:6px!important;
  }

  .kdbe-advanced-search{
    margin-top:12px!important;
    padding-top:14px!important;
  }
  .kdbe-advanced-search h2{
    margin:0 0 9px!important;
    text-align:center!important;
  }
  .kdbe-form-search{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
    row-gap:9px!important;
    align-items:stretch!important;
    margin:0!important;
  }
  .kdbe-form-search>label{
    gap:6px!important;
    margin:0!important;
    text-align:center!important;
  }
  .kdbe-form-search>label input{
    margin:0!important;
  }
  .kdbe-form-search .kdbe-form-actions{
    display:flex!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    align-self:stretch!important;
    align-items:stretch!important;
  }
  .kdbe-form-search .kdbe-form-actions .kdbe-btn{
    width:100%!important;
    height:50px!important;
    min-height:50px!important;
    margin:0!important;
  }
}

/* ===== v2.6.22: final mobile spacing based on real-device screenshots ===== */
@media(max-width:720px){
  /* DB standalone header: create actual top breathing room, not an optical-only offset. */
  body.kdbe-standalone .kdbe-header-inner{
    min-height:72px!important;
    padding-top:16px!important;
    padding-bottom:10px!important;
  }
  body.kdbe-standalone .kdbe-site-header .kdbe-site-logo{
    position:relative!important;
    top:4px!important;
  }

  /* Search tabs: centered and compact. */
  .kdbe-tabs{
    margin:-2px 0 12px!important;
  }
  .kdbe-tabs button{
    justify-content:center!important;
    text-align:center!important;
    padding:10px 8px!important;
    min-height:44px!important;
    margin:0!important;
  }

  /* All search-field labels/values centered on mobile. */
  .kdbe-smart-search>label,
  .kdbe-form-search>label{
    text-align:center!important;
    margin:0!important;
  }
  .kdbe-smart-search>label select{
    text-align:center!important;
    text-align-last:center!important;
  }

  /* Primary search button: remove the oversized empty row seen on mobile. */
  .kdbe-smart-search{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
    row-gap:7px!important;
    margin:0!important;
  }
  .kdbe-smart-search .kdbe-form-actions{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:0!important;
    height:auto!important;
    margin:-10px 0 0!important;
    padding:0!important;
    transform:none!important;
  }
  .kdbe-smart-search .kdbe-form-actions .kdbe-btn{
    width:min(100%,360px)!important;
    min-height:48px!important;
    height:48px!important;
    margin:0!important;
  }

  /* Nearby section: compact button and a short separation before company-name search. */
  .kdbe-nearby-panel{
    padding:8px 4px 4px!important;
  }
  .kdbe-nearby-panel>label{
    margin:0 auto 4px!important;
  }
  .kdbe-nearby-panel>[data-kdbe-nearby]{
    margin-top:4px!important;
  }

  .kdbe-advanced-search{
    margin-top:7px!important;
    padding-top:10px!important;
  }
  .kdbe-advanced-search h2{
    margin:0 0 7px!important;
    text-align:center!important;
  }

  /* Company-name search: deliberately pull the action row up. This defeats SANGO/global form spacing. */
  .kdbe-form-search{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:0!important;
    row-gap:0!important;
    margin:0!important;
    padding:0!important;
  }
  .kdbe-form-search>label{
    display:grid!important;
    gap:5px!important;
    margin:0!important;
    padding:0!important;
  }
  .kdbe-form-search>label input{
    margin:0!important;
  }
  .kdbe-form-search .kdbe-form-actions{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    align-self:stretch!important;
    width:100%!important;
    min-height:0!important;
    height:auto!important;
    margin:-22px 0 0!important;
    padding:0!important;
    transform:none!important;
  }
  .kdbe-form-search .kdbe-form-actions .kdbe-btn{
    width:100%!important;
    height:48px!important;
    min-height:48px!important;
    margin:0!important;
  }

  /* SANGO pages use SANGO's own back-to-top. */
  body:not(.kdbe-standalone) .kdbe-back-to-top{
    display:none!important;
  }
}

/* ===== v2.6.24: valid mobile search fallback ===== */
@media screen and (max-width:767px){
  body.kdbe-standalone .kdbe-smart-search,
  body.kdbe-standalone .kdbe-form-search{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    grid-template-columns:none!important;
  }
  body.kdbe-standalone .kdbe-smart-search>label.kdbe-search-field,
  body.kdbe-standalone .kdbe-form-search>label.kdbe-search-field{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0 0 14px!important;
    padding:0!important;
    text-align:center!important;
  }
  body.kdbe-standalone .kdbe-smart-search>label.kdbe-search-field>select,
  body.kdbe-standalone .kdbe-form-search>label.kdbe-search-field>input{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:8px 0 0!important;
    box-sizing:border-box!important;
  }
  body.kdbe-standalone .kdbe-smart-search>.kdbe-search-submit,
  body.kdbe-standalone .kdbe-form-search>.kdbe-company-search-submit{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    max-width:none!important;
    height:50px!important;
    min-height:50px!important;
    margin:2px 0 0!important;
    padding:0 18px!important;
    box-sizing:border-box!important;
  }
}


/* v2.6.28: affiliate recommendation cards with official-site screenshots, selling-point badges and comparison details */
.kdbe-affiliate-offer-image{width:100%;overflow:hidden;border:1px solid #e1e8e4;border-radius:13px;background:#f6f8f7;aspect-ratio:16/9}
.kdbe-affiliate-offer-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}
.kdbe-affiliate-appeals{display:flex;flex-wrap:wrap;gap:7px;margin-top:-1px}
.kdbe-affiliate-appeals span{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border:1px solid #bfe3d0;border-radius:999px;background:#eef9f3;color:#256c4a;font-size:10px;font-weight:900;line-height:1.35}
.kdbe-affiliate-details{display:grid;grid-template-columns:1fr;margin:0;border:1px solid #e2e8e5;border-radius:12px;overflow:hidden;background:#fbfcfc}
.kdbe-affiliate-detail-row{display:grid;grid-template-columns:minmax(90px,38%) minmax(0,1fr);align-items:start;border-bottom:1px solid #e9eeeb}
.kdbe-affiliate-detail-row:last-child{border-bottom:0}
.kdbe-affiliate-details dt,.kdbe-affiliate-details dd{margin:0;padding:8px 9px;font-size:10.5px;line-height:1.55}
.kdbe-affiliate-details dt{background:#f3f7f5;color:#4b6559;font-weight:900}
.kdbe-affiliate-details dd{color:#273c32;font-weight:700;overflow-wrap:anywhere}
.kdbe-affiliate-card-pr{align-self:flex-start;margin-top:1px;padding:2px 6px;border:1px solid #dfe4e8;border-radius:5px;color:#6d7780;font-size:9px;font-weight:800;line-height:1.4;letter-spacing:.05em}
.kdbe-affiliate-offer>.kdbe-affiliate-raw,.kdbe-affiliate-offer>.kdbe-btn-affiliate{margin-top:0}
.kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer-image,.kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-appeals,.kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-details{display:none}
.kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-card-pr{justify-self:start}
@media(max-width:720px){
  .kdbe-affiliate-offer{gap:12px;padding:16px}
  .kdbe-affiliate-offer-image{border-radius:12px}
  .kdbe-affiliate-appeals span{font-size:11px;min-height:30px}
  .kdbe-affiliate-detail-row{grid-template-columns:105px minmax(0,1fr)}
  .kdbe-affiliate-details dt,.kdbe-affiliate-details dd{padding:9px 10px;font-size:11px}
}

/* v2.6.29: center the two primary search actions on the top-page search panel */
.kdbe-search-panel .kdbe-search-action-row{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  box-sizing:border-box!important;
}
.kdbe-search-panel .kdbe-search-action-row .kdbe-search-submit,
.kdbe-search-panel .kdbe-search-action-row .kdbe-company-search-submit{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:min(100%,580px)!important;
  max-width:580px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
@media(max-width:720px){
  .kdbe-search-panel .kdbe-search-action-row .kdbe-search-submit,
  .kdbe-search-panel .kdbe-search-action-row .kdbe-company-search-submit{
    width:min(100%,580px)!important;
    max-width:580px!important;
  }
}


/* v2.6.33: visual polish for affiliate cards and search controls */
/* One clear ad disclosure in the section header; per-card PR chips are intentionally hidden. */
.kdbe-affiliate-card-pr{display:none!important}
.kdbe-affiliate-recommendation-head{
  display:flex!important;align-items:center!important;gap:13px!important;margin-bottom:16px!important
}
.kdbe-affiliate-title-icon{
  flex:0 0 52px;width:52px;height:52px;display:grid;place-items:center;border-radius:15px;
  background:linear-gradient(145deg,#edf8ff,#e7f7f1);border:1px solid #d4e7ee;
  box-shadow:0 7px 18px rgba(41,105,133,.10)
}
.kdbe-affiliate-title-icon span{font-size:27px;line-height:1;filter:saturate(.92)}
.kdbe-affiliate-title-copy{min-width:0;flex:1}
.kdbe-affiliate-title-line{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.kdbe-affiliate-title-line strong{font-size:18px!important;line-height:1.45;color:#17324d!important}
.kdbe-affiliate-title-copy p{margin:4px 0 0!important;font-size:12px!important;line-height:1.65!important;color:#6c7d8b!important}
.kdbe-affiliate-pr{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:22px!important;padding:3px 8px!important;border:1px solid #d8e0e6!important;border-radius:999px!important;
  background:#f6f8fa!important;color:#697680!important;font-size:9px!important;font-weight:800!important;letter-spacing:.04em!important
}

/* Affiliate CTA: keep ASP HTML untouched; only normalize visual alignment around it. */
.kdbe-affiliate-offer>.kdbe-affiliate-raw,
.kdbe-affiliate-offer>.kdbe-btn-affiliate{
  margin-top:auto!important
}
.kdbe-affiliate-raw{
  display:flex!important;align-items:center!important;justify-content:center!important;flex-wrap:wrap!important;
  width:100%!important;min-height:54px!important;margin-left:auto!important;margin-right:auto!important;text-align:center!important
}
.kdbe-affiliate-raw>a,
.kdbe-affiliate-offer>.kdbe-btn-affiliate{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:min(100%,280px)!important;min-width:0!important;height:54px!important;min-height:54px!important;
  padding:0 20px!important;margin:0 auto!important;box-sizing:border-box!important;text-align:center!important;
  line-height:1.35!important;white-space:normal!important
}
.kdbe-affiliate-raw>img[width="1"],.kdbe-affiliate-raw>img[height="1"]{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}

/* Bootstrap-like select/input treatment without changing form markup. */
#kurashi-db-search .kdbe-search-field>select,
#kurashi-db-search .kdbe-search-field>input[type="search"],
.kdbe-search-panel .kdbe-near-service{
  appearance:none!important;-webkit-appearance:none!important;
  height:54px!important;min-height:54px!important;
  border:1px solid #cbd8e6!important;border-radius:12px!important;
  background-color:#fff!important;color:#23384f!important;
  font-size:15px!important;font-weight:800!important;
  padding:0 46px 0 15px!important;
  box-shadow:0 2px 6px rgba(30,70,105,.05),inset 0 1px 0 rgba(255,255,255,.75)!important;
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease!important
}
#kurashi-db-search .kdbe-search-field>select,
.kdbe-search-panel .kdbe-near-service{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%23556b80' d='M3.2 5.8 8 10.6l4.8-4.8 1.1 1.1L8 12.8 2.1 6.9z'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;background-position:right 15px center!important;background-size:16px 16px!important
}
#kurashi-db-search .kdbe-search-field>input[type="search"]{padding-right:15px!important}
#kurashi-db-search .kdbe-search-field>select:hover,
#kurashi-db-search .kdbe-search-field>input[type="search"]:hover,
.kdbe-search-panel .kdbe-near-service:hover{border-color:#91b8dc!important}
#kurashi-db-search .kdbe-search-field>select:focus,
#kurashi-db-search .kdbe-search-field>input[type="search"]:focus,
.kdbe-search-panel .kdbe-near-service:focus{
  outline:0!important;border-color:#5a9bd5!important;
  box-shadow:0 0 0 4px rgba(67,143,211,.14),0 5px 14px rgba(30,70,105,.08)!important
}

/* Company-name search: input and button use exactly the same desktop height. */
#kurashi-db-search .kdbe-company-search-form-v2{align-items:end!important}
#kurashi-db-search .kdbe-company-search-form-v2 .kdbe-search-field>input[type="search"],
#kurashi-db-search .kdbe-company-search-form-v2 .kdbe-company-search-submit{
  height:54px!important;min-height:54px!important;box-sizing:border-box!important
}
#kurashi-db-search .kdbe-company-search-form-v2 .kdbe-company-search-submit{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;padding-top:0!important;padding-bottom:0!important
}

@media(max-width:720px){
  .kdbe-affiliate-recommendation-head{align-items:flex-start!important;gap:10px!important}
  .kdbe-affiliate-title-icon{flex-basis:46px;width:46px;height:46px;border-radius:13px}
  .kdbe-affiliate-title-icon span{font-size:24px}
  .kdbe-affiliate-title-line strong{font-size:16px!important}
  .kdbe-affiliate-title-copy p{font-size:11px!important}
  .kdbe-affiliate-raw>a,.kdbe-affiliate-offer>.kdbe-btn-affiliate{width:100%!important;height:54px!important;min-height:54px!important}
}


/* v2.6.34: ranking affiliate CTA buttons use one visual system regardless of ASP raw HTML or URL mode. */
/* ASP-issued HTML is not changed. These rules only style the rendered anchor inside recommendation cards. */
.kdbe-affiliate-offer>.kdbe-affiliate-raw{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:54px!important;
  min-height:54px!important;
  max-height:54px!important;
  margin-top:auto!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:0!important;
  text-align:center!important;
}
.kdbe-affiliate-offer>.kdbe-affiliate-raw a,
.kdbe-affiliate-offer>.kdbe-btn-affiliate{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:min(100%,280px)!important;
  min-width:0!important;
  height:54px!important;
  min-height:54px!important;
  max-height:54px!important;
  margin:0 auto!important;
  padding:0 20px!important;
  border:1px solid #248a59!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,#37b777,#248a59)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-sizing:border-box!important;
  box-shadow:0 7px 17px rgba(36,138,89,.22)!important;
  font-weight:900!important;
  line-height:1.25!important;
  text-align:center!important;
  text-decoration:none!important;
  white-space:normal!important;
  overflow:hidden!important;
}
.kdbe-affiliate-offer>.kdbe-affiliate-raw a:hover,
.kdbe-affiliate-offer>.kdbe-btn-affiliate:hover{
  background:linear-gradient(180deg,#30a96d,#1d7b4e)!important;
  border-color:#1d7b4e!important;
  box-shadow:0 9px 20px rgba(29,123,78,.25)!important;
  transform:translateY(-1px)!important;
}
/* Tracking pixels emitted beside an ASP text link must not affect the CTA row height. */
.kdbe-affiliate-offer>.kdbe-affiliate-raw img[width="1"],
.kdbe-affiliate-offer>.kdbe-affiliate-raw img[height="1"]{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  margin:0!important;
  padding:0!important;
  opacity:0!important;
  pointer-events:none!important;
}
@media(max-width:720px){
  .kdbe-affiliate-offer>.kdbe-affiliate-raw a,
  .kdbe-affiliate-offer>.kdbe-btn-affiliate{
    width:100%!important;
    height:54px!important;
    min-height:54px!important;
    max-height:54px!important;
  }
}


/* v2.6.35: keep URL-mode CTA on the same bottom baseline as ASP HTML-mode CTA. */
/* v2.6.34 normalized button visuals but its margin shorthand cancelled margin-top:auto on direct URL buttons. */
.kdbe-affiliate-offer>.kdbe-btn-affiliate{
  margin-top:auto!important;
  margin-right:auto!important;
  margin-bottom:0!important;
  margin-left:auto!important;
}
.kdbe-affiliate-offer>.kdbe-affiliate-raw{
  margin-top:auto!important;
  margin-right:auto!important;
  margin-bottom:0!important;
  margin-left:auto!important;
}
/* All ranking cards stretch equally, and every CTA occupies the same final row. */
.kdbe-affiliate-offer-grid{align-items:stretch!important}
.kdbe-affiliate-offer{height:100%!important;box-sizing:border-box!important}


/* v2.6.37: align compact pest CTA rank/name rows at the same visual height. */
/* Applies only to the compact rank-1 repeats (area-mid / area-bottom); top 1-3 comparison cards are unchanged. */
.kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer{
  grid-template-columns:minmax(118px,auto) minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:14px!important;
  row-gap:10px!important;
}
.kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-rank,
.kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer-body{
  min-height:44px!important;
  height:44px!important;
  box-sizing:border-box!important;
  align-items:center!important;
}
.kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-rank{
  display:inline-flex!important;
  justify-content:center!important;
  padding-top:0!important;
  padding-bottom:0!important;
  white-space:nowrap!important;
}
.kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer-body{
  display:flex!important;
  min-width:0!important;
  margin:0!important;
}
.kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer-name{
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  min-height:44px!important;
  margin:0!important;
  line-height:1.4!important;
}
@media(max-width:900px){
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer{
    grid-template-columns:1fr!important;
    align-items:stretch!important;
  }
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-rank{
    justify-self:start!important;
    width:auto!important;
    min-height:42px!important;
    height:42px!important;
  }
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer-body,
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer-name{
    min-height:42px!important;
    height:42px!important;
  }
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer-name{
    font-size:15px!important;
  }
}
@media(max-width:480px){
  .kdbe-affiliate-recommendations.is-compact{
    padding:13px 12px!important;
  }
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer{
    padding:13px!important;
    row-gap:9px!important;
  }
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-rank,
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer-body,
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer-name{
    min-height:40px!important;
    height:40px!important;
  }
}


/* v2.6.38: CV-only polish. Keep SEO/DB/ASP HTML unchanged; guide attention to rank 1 and the compact mid-page CTA. */
.kdbe-affiliate-offer-grid .kdbe-affiliate-offer.is-top-pick{
  border-color:#9fd8ba!important;
  box-shadow:0 12px 28px rgba(35,132,84,.13)!important;
}
.kdbe-affiliate-offer-grid .kdbe-affiliate-offer.is-top-pick .kdbe-affiliate-rank{
  background:#def5e8!important;
  color:#246b48!important;
}
.kdbe-affiliate-offer-grid .kdbe-affiliate-offer.is-top-pick .kdbe-affiliate-rank b{color:#0f7b47!important}
.kdbe-affiliate-cta-area-mid{
  margin-top:18px!important;
  margin-bottom:22px!important;
}
.kdbe-affiliate-cta-area-mid .kdbe-affiliate-offer{
  border-color:#b9dfca!important;
  background:linear-gradient(135deg,#fbfffd,#f3fbf7)!important;
}
@media(max-width:720px){
  .kdbe-affiliate-offer-grid .kdbe-affiliate-offer.is-top-pick{box-shadow:0 10px 24px rgba(35,132,84,.12)!important}
  .kdbe-affiliate-cta-area-mid{margin-top:16px!important;margin-bottom:20px!important}
}


/* v2.6.39: company-detail CV funnel. Rank-1 affiliate switch comes before phone / Maps / official outbound links. */
.kdbe-detail-hero .kdbe-company-switch-cta{position:relative;z-index:2;margin:24px 0 18px!important;border:1px solid #b9dccb;background:linear-gradient(135deg,#f0fbf5,#fff);box-shadow:0 13px 30px rgba(31,104,72,.11)}
.kdbe-company-switch-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}
.kdbe-company-switch-copy{min-width:0;flex:1}
.kdbe-company-switch-title{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.kdbe-company-switch-title strong{color:#214d3b!important;font-size:16px!important;line-height:1.5}
.kdbe-company-switch-copy p{margin:4px 0 0!important;color:#667a71!important;font-size:11px!important;line-height:1.7!important}
.kdbe-detail-hero .kdbe-detail-actions{position:relative;z-index:2;margin-top:16px}
.kdbe-company-switch-cta .kdbe-affiliate-offer{border-color:#bddfce!important;background:#fff!important}
@media(max-width:720px){.kdbe-detail-hero .kdbe-company-switch-cta{margin:20px 0 14px!important}.kdbe-company-switch-head{gap:9px}.kdbe-company-switch-title strong{font-size:15px!important}.kdbe-company-switch-copy p{font-size:10.5px!important}}


/* v2.6.40: normalize compact affiliate row height across every service. */
/*
 * Desktop compact CTA previously mixed 44px rank/name cells with a 54px action
 * button. Keep ASP HTML untouched and make the three visual columns use the same
 * 54px vertical rhythm. This applies to water/key/pest/glass/heater/ecocute and
 * any future service rendered through the same compact recommendation component.
 */
@media(min-width:901px){
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer{
    grid-template-columns:minmax(136px,auto) minmax(0,1fr) auto!important;
    align-items:center!important;
    column-gap:16px!important;
  }
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-rank,
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer-body,
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer-name,
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer>.kdbe-affiliate-raw,
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer>.kdbe-btn-affiliate{
    height:54px!important;
    min-height:54px!important;
    max-height:54px!important;
    box-sizing:border-box!important;
    align-self:center!important;
  }
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-rank{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0 14px!important;
    margin:0!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-rank span,
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-rank b{
    display:inline-flex!important;
    align-items:center!important;
    margin:0!important;
    line-height:1!important;
  }
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer-body{
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
  }
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer-name{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    line-height:1.35!important;
  }
  .kdbe-affiliate-recommendations.is-compact .kdbe-affiliate-offer>.kdbe-affiliate-raw{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin-top:0!important;
    margin-bottom:0!important;
  }
}


/* v2.6.41: category sponsor inventory (max 3 paid PR slots per service). */
.kdbe-sponsor-section{border:1px solid #d9e5ef;background:linear-gradient(180deg,#fbfdff 0%,#fff 100%);box-shadow:0 14px 34px rgba(29,63,94,.07)}
.kdbe-sponsor-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}
.kdbe-sponsor-section-head h2{margin:2px 0 7px!important}
.kdbe-sponsor-section-head>div>p:last-child{margin:0!important;color:#667887!important;font-size:12px!important;line-height:1.75}
.kdbe-sponsor-kicker{margin:0!important;color:#55738e!important;font-size:10px!important;font-weight:900!important;letter-spacing:.13em;text-transform:uppercase}
.kdbe-sponsor-count{flex:0 0 auto;padding:6px 10px;border:1px solid #d7e3ed;border-radius:999px;background:#fff;color:#6d7f8f;font-size:10px;font-weight:800}
.kdbe-sponsor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.kdbe-sponsor-grid.is-count-1{grid-template-columns:minmax(0,1fr)}
.kdbe-sponsor-grid.is-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.kdbe-sponsor-card{overflow:hidden;border:1px solid #d6e2eb;border-radius:18px;background:#fff;box-shadow:0 10px 26px rgba(36,67,92,.08);display:flex;flex-direction:column;min-width:0}
.kdbe-sponsor-card-top{display:flex;align-items:center;gap:8px;padding:11px 14px 0}
.kdbe-sponsor-pr-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:999px;background:#243f58;color:#fff;font-size:10px;font-weight:900;letter-spacing:.08em}
.kdbe-sponsor-slot-label{color:#8191a0;font-size:10px;font-weight:800}
.kdbe-sponsor-card-media{margin:11px 14px 0;overflow:hidden;border-radius:12px;background:#f2f6f9;aspect-ratio:16/9}
.kdbe-sponsor-card-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}
.kdbe-sponsor-card-body{padding:14px;display:flex;flex:1;flex-direction:column}
.kdbe-sponsor-card-body h3{margin:0 0 11px!important;color:#243746!important;font-size:20px!important;line-height:1.4}
.kdbe-sponsor-appeals{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px}
.kdbe-sponsor-appeals span{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:#edf7f2;color:#2f6950;font-size:11px;font-weight:900}
.kdbe-sponsor-area{display:flex;align-items:flex-start;gap:10px;margin:0 0 9px!important;padding:10px 12px;border-radius:11px;background:#f7fafc;color:#526779!important;font-size:12px!important;line-height:1.6}
.kdbe-sponsor-area strong{flex:0 0 auto;color:#2d485e}
.kdbe-sponsor-note{margin:0 0 14px!important;color:#61717d!important;font-size:12px!important;line-height:1.75}
.kdbe-sponsor-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:auto}
.kdbe-sponsor-actions .kdbe-btn{width:100%;min-height:50px;justify-content:center;text-align:center}
.kdbe-sponsor-phone{background:linear-gradient(180deg,#1c9b62,#147a4c)!important;color:#fff!important;box-shadow:0 4px 0 #0e5d39,0 8px 16px rgba(20,122,76,.18)!important}
.kdbe-sponsor-web{background:linear-gradient(180deg,#2d75b8,#245e96)!important;color:#fff!important;box-shadow:0 4px 0 #19466f,0 8px 16px rgba(36,94,150,.18)!important}
.kdbe-sponsor-phone:hover,.kdbe-sponsor-web:hover{transform:translateY(-1px);filter:brightness(1.03)}
@media(max-width:900px){.kdbe-sponsor-grid,.kdbe-sponsor-grid.is-count-2{grid-template-columns:1fr}.kdbe-sponsor-section-head{display:block}.kdbe-sponsor-count{display:inline-flex;margin-top:10px}}
@media(max-width:620px){.kdbe-sponsor-actions{grid-template-columns:1fr}.kdbe-sponsor-card-body h3{font-size:18px!important}}

/* v2.6.42: repeated sponsor exposure (mid / bottom / company) without exposing inventory count. */
.kdbe-sponsor-compact-section{border:1px solid #d9e5ef;background:linear-gradient(180deg,#fbfdff 0%,#fff 100%);box-shadow:0 12px 28px rgba(29,63,94,.06)}
.kdbe-sponsor-compact-head{margin-bottom:14px}
.kdbe-sponsor-compact-head h2{margin:2px 0 6px!important}
.kdbe-sponsor-compact-head>div>p:last-child{margin:0!important;color:#667887!important;font-size:12px!important;line-height:1.7}
.kdbe-sponsor-compact-list{display:grid;gap:12px}
.kdbe-sponsor-compact-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,48%);gap:16px;align-items:center;padding:14px 16px;border:1px solid #d6e2eb;border-radius:16px;background:#fff;box-shadow:0 8px 20px rgba(36,67,92,.06)}
.kdbe-sponsor-compact-copy{min-width:0}
.kdbe-sponsor-compact-title{display:flex;align-items:center;gap:9px;margin-bottom:8px}
.kdbe-sponsor-compact-title strong{color:#243746;font-size:17px;line-height:1.45}
.kdbe-sponsor-compact-appeals{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:7px}
.kdbe-sponsor-compact-appeals span{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;background:#edf7f2;color:#2f6950;font-size:10px;font-weight:900}
.kdbe-sponsor-compact-area{margin:0!important;color:#61717d!important;font-size:11px!important;line-height:1.65}
.kdbe-sponsor-compact-area strong{color:#2d485e}
.kdbe-sponsor-compact-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.kdbe-sponsor-compact-actions .kdbe-btn{width:100%;min-height:48px;justify-content:center;text-align:center}
@media(max-width:900px){.kdbe-sponsor-compact-card{grid-template-columns:1fr}.kdbe-sponsor-compact-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.kdbe-sponsor-compact-card{padding:13px}.kdbe-sponsor-compact-actions{grid-template-columns:1fr}.kdbe-sponsor-compact-title strong{font-size:16px}}


/* v2.6.44: sponsor logo support */
.kdbe-sponsor-logo{display:flex;align-items:center;justify-content:flex-start;min-height:58px;margin:0 0 12px;padding:8px 10px;border:1px solid #e1e8ee;border-radius:12px;background:#fff;box-sizing:border-box}
.kdbe-sponsor-logo img{display:block;width:auto!important;height:auto!important;max-width:min(260px,100%)!important;max-height:58px!important;object-fit:contain!important;object-position:left center!important}
.kdbe-sponsor-compact-logo{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;max-width:150px;height:38px;padding:4px 7px;border:1px solid #e1e8ee;border-radius:9px;background:#fff;box-sizing:border-box}
.kdbe-sponsor-compact-logo img{display:block;width:auto!important;height:auto!important;max-width:132px!important;max-height:28px!important;object-fit:contain!important}
@media(max-width:620px){.kdbe-sponsor-logo{min-height:52px}.kdbe-sponsor-logo img{max-height:50px!important}.kdbe-sponsor-compact-title{flex-wrap:wrap}.kdbe-sponsor-compact-logo{max-width:135px}}


/* v2.6.45 / v2.6.46: sponsor media balance. v2.6.46 uses background media so theme img rules cannot shrink it. */
.kdbe-sponsor-grid.is-count-1{display:block!important}
.kdbe-sponsor-grid.is-count-1 .kdbe-sponsor-card{display:flex!important;flex-direction:column!important;width:100%!important;max-width:none!important}
.kdbe-sponsor-card-media,.kdbe-sponsor-card-media-bg{display:block!important;box-sizing:border-box!important;margin:12px 14px 0!important;width:auto!important;max-width:none!important;overflow:hidden!important;border-radius:14px!important;background-color:#f2f6f9!important;aspect-ratio:16/9!important}
.kdbe-sponsor-card-media-bg{background-size:cover!important;background-position:center top!important;background-repeat:no-repeat!important}
.kdbe-sponsor-card-media img{display:block!important;width:100%!important;min-width:100%!important;max-width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;object-position:center top!important}
.kdbe-sponsor-grid.is-count-1 .kdbe-sponsor-card-body{padding:16px 14px 14px!important}
@media(max-width:620px){.kdbe-sponsor-card-media,.kdbe-sponsor-card-media-bg{margin:10px 10px 0!important;border-radius:11px!important}.kdbe-sponsor-grid.is-count-1 .kdbe-sponsor-card-body{padding:14px 10px 12px!important}}


/* v2.6.47: main sponsor screenshot must visibly fill the hero region. */
.kdbe-sponsor-card.has-media .kdbe-sponsor-card-media-bg{
  display:block!important;
  width:calc(100% - 28px)!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:16/9!important;
  margin:12px 14px 0!important;
  background-size:cover!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
}
@supports not (aspect-ratio:16/9){
  .kdbe-sponsor-card.has-media .kdbe-sponsor-card-media-bg{height:0!important;padding-top:56.25%!important}
}

/* ===== v2.6.52: 防水工事一括net 主役CTA =====
 * ASP発行HTMLは変更しない。リンク直前の訴求文と外側デザインだけを追加する。
 */
.kdbe-roof-focus-wrap{margin:28px 0}
.kdbe-roof-focus-card{position:relative;overflow:hidden;padding:26px;border:1px solid #b9ddca;border-radius:24px;background:linear-gradient(135deg,#f2fbf6 0%,#fff 56%,#f7fbff 100%);box-shadow:0 16px 40px rgba(31,104,72,.11)}
.kdbe-roof-focus-card:before{content:"";position:absolute;right:-60px;top:-80px;width:220px;height:220px;border-radius:50%;background:rgba(54,183,119,.08);pointer-events:none}
.kdbe-roof-focus-main{position:relative;display:grid;grid-template-columns:1fr;gap:24px;align-items:center}
.kdbe-roof-focus-main.has-image{grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr)}
.kdbe-roof-focus-copy{position:relative;z-index:1;min-width:0}
.kdbe-roof-focus-topline{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.kdbe-roof-focus-recommend{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:5px 12px;border-radius:999px;background:#168654;color:#fff;font-size:11px;font-weight:900;letter-spacing:.04em}
.kdbe-roof-focus-eyebrow{margin:0 0 6px!important;color:#168654!important;font-size:13px!important;font-weight:900!important;letter-spacing:.02em}
.kdbe-roof-focus-card h2{margin:0!important;color:#17372a!important;font-size:clamp(22px,3vw,32px)!important;line-height:1.35!important;letter-spacing:-.025em}
.kdbe-roof-focus-lead{margin:12px 0 0!important;color:#40564c!important;font-size:14px!important;line-height:1.85!important}
.kdbe-roof-focus-lead strong{color:#166a47}
.kdbe-roof-focus-image{position:relative;z-index:1;overflow:hidden;border:1px solid #d6e7de;border-radius:18px;background:#fff;box-shadow:0 12px 26px rgba(43,91,69,.10);aspect-ratio:16/10}
.kdbe-roof-focus-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}
.kdbe-roof-focus-benefits{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:22px 0 0}
.kdbe-roof-focus-benefits>div{display:flex;flex-direction:column;justify-content:center;min-height:78px;padding:12px;border:1px solid #d5e9df;border-radius:15px;background:rgba(255,255,255,.9);text-align:center}
.kdbe-roof-focus-benefits b{display:block;color:#168654;font-size:16px;line-height:1.3}
.kdbe-roof-focus-benefits span{display:block;margin-top:4px;color:#56685f;font-size:10.5px;font-weight:800;line-height:1.45}
.kdbe-roof-focus-reasons{position:relative;z-index:1;margin:18px 0 0;padding:16px 18px;border:1px solid #e0ebe5;border-radius:16px;background:#fff}
.kdbe-roof-focus-reasons p{margin:0 0 10px!important;color:#44594f!important;font-size:13px!important;line-height:1.75!important}
.kdbe-roof-focus-reasons ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 16px;margin:0!important;padding:0!important;list-style:none!important}
.kdbe-roof-focus-reasons li{position:relative;margin:0!important;padding:0 0 0 23px!important;color:#263f33;font-size:12px;font-weight:800;line-height:1.55}
.kdbe-roof-focus-reasons li:before{content:"✓";position:absolute;left:0;top:0;color:#168654;font-size:15px;font-weight:900}
.kdbe-roof-focus-precta{position:relative;z-index:1;margin:20px auto 8px;text-align:center}
.kdbe-roof-focus-precta strong{display:block;color:#17372a;font-size:18px;line-height:1.45}
.kdbe-roof-focus-precta strong:before{content:"＼ ";color:#168654}.kdbe-roof-focus-precta strong:after{content:" ／";color:#168654}
.kdbe-roof-focus-precta span{display:block;margin-top:6px;color:#66786f;font-size:11px;font-weight:700;line-height:1.6}
.kdbe-roof-focus-action{position:relative;z-index:1;margin-top:8px!important}
.kdbe-roof-focus-card>.kdbe-affiliate-raw,.kdbe-roof-focus-copy>.kdbe-affiliate-raw{height:auto!important;max-height:none!important;min-height:54px!important}
.kdbe-roof-focus-card>.kdbe-affiliate-raw a,.kdbe-roof-focus-copy>.kdbe-affiliate-raw a,.kdbe-roof-focus-card>.kdbe-btn-affiliate,.kdbe-roof-focus-copy>.kdbe-btn-affiliate{width:min(100%,420px)!important;min-height:58px!important;height:auto!important;max-height:none!important;padding:12px 26px!important;font-size:15px!important;box-shadow:0 10px 23px rgba(36,138,89,.25)!important}

.kdbe-roof-focus-card.is-compact{padding:20px 22px;background:linear-gradient(135deg,#f4fbf7,#fff);box-shadow:0 10px 26px rgba(31,104,72,.08)}
.kdbe-roof-focus-card.is-compact .kdbe-roof-focus-badges{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:10px}
.kdbe-roof-focus-card.is-compact .kdbe-roof-focus-badges span{display:inline-flex;align-items:center;min-height:27px;padding:4px 9px;border:1px solid #bfe3d0;border-radius:999px;background:#eef9f3;color:#256c4a;font-size:10px;font-weight:900}
.kdbe-roof-focus-card.is-compact h3{margin:0!important;color:#17372a!important;font-size:20px!important;line-height:1.45!important}
.kdbe-roof-focus-card.is-compact .kdbe-roof-focus-copy>p:not(.kdbe-roof-focus-eyebrow){margin:8px 0 0!important;color:#52645b!important;font-size:12px!important;line-height:1.75!important}
.kdbe-roof-focus-card.is-compact .kdbe-roof-focus-precta{margin-top:15px}
.kdbe-roof-focus-card.is-compact .kdbe-roof-focus-precta strong{font-size:16px}

@media(max-width:820px){
  .kdbe-roof-focus-card{padding:20px}
  .kdbe-roof-focus-main,.kdbe-roof-focus-main.has-image{grid-template-columns:1fr;gap:16px}
  .kdbe-roof-focus-image{order:-1;max-height:230px}
  .kdbe-roof-focus-benefits{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .kdbe-roof-focus-reasons ul{grid-template-columns:1fr}
  .kdbe-roof-focus-precta strong{font-size:16px}
  .kdbe-roof-focus-card>.kdbe-affiliate-raw a,.kdbe-roof-focus-copy>.kdbe-affiliate-raw a,.kdbe-roof-focus-card>.kdbe-btn-affiliate,.kdbe-roof-focus-copy>.kdbe-btn-affiliate{width:100%!important}
}
@media(max-width:480px){
  .kdbe-roof-focus-wrap{margin:20px 0}
  .kdbe-roof-focus-card,.kdbe-roof-focus-card.is-compact{padding:16px;border-radius:19px}
  .kdbe-roof-focus-card h2{font-size:22px!important}
  .kdbe-roof-focus-card.is-compact h3{font-size:18px!important}
  .kdbe-roof-focus-benefits>div{min-height:70px;padding:10px 8px}
  .kdbe-roof-focus-benefits b{font-size:14px}
  .kdbe-roof-focus-reasons{padding:14px}
  .kdbe-roof-focus-precta strong:before,.kdbe-roof-focus-precta strong:after{content:""}
}


/* v2.6.52: 主役カード下に元の2位・3位案件を残す */
.kdbe-roof-other-offers{margin-top:22px;padding-top:20px;border-top:1px solid #dfe9e4}
.kdbe-roof-other-heading{display:flex;flex-direction:column;gap:4px;margin:0 0 12px}
.kdbe-roof-other-heading strong{color:#253c31;font-size:15px;line-height:1.5}
.kdbe-roof-other-heading span{color:#68786f;font-size:11px;line-height:1.5}
@media (max-width:767px){.kdbe-roof-other-offers{margin-top:18px;padding-top:16px}.kdbe-roof-other-heading strong{font-size:14px}}

/* ===== v2.6.53: 全カテゴリ（水道修理を除く）の1位大型表示 =====
 * 水道修理は純広告レイアウトを維持。
 * 2位・3位は2列でコンテンツ幅を使い切り、右側の大きな空白をなくす。
 */
.kdbe-featured-focus-wrap{width:100%;max-width:none}
.kdbe-service-focus-card .kdbe-service-focus-name{margin-top:0!important}
.kdbe-service-focus-card .kdbe-roof-focus-lead{max-width:760px}
.kdbe-service-focus-benefits{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.kdbe-service-focus-benefits>div{min-height:82px}
.kdbe-service-focus-benefits b{font-size:20px;line-height:1;color:#168654}
.kdbe-service-focus-benefits span{font-size:11.5px;line-height:1.55}
.kdbe-service-focus-details{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:18px 0 0;overflow:hidden;border:1px solid #dfeae4;border-radius:16px;background:#fff}
.kdbe-service-focus-details>div{display:grid;grid-template-columns:minmax(105px,.42fr) minmax(0,1fr);align-items:stretch;min-width:0;border-bottom:1px solid #edf2ef}
.kdbe-service-focus-details>div:nth-last-child(-n+2){border-bottom:0}
.kdbe-service-focus-details>div:nth-child(odd){border-right:1px solid #edf2ef}
.kdbe-service-focus-details b,.kdbe-service-focus-details span{display:flex;align-items:center;min-width:0;padding:11px 12px;font-size:11px;line-height:1.55}
.kdbe-service-focus-details b{background:#f4f8f6;color:#365848;font-weight:900}
.kdbe-service-focus-details span{color:#4d6258;font-weight:700;overflow-wrap:anywhere}
.kdbe-service-focus-precta{margin-top:20px}

.kdbe-featured-other-offers{width:100%;margin-top:24px;padding-top:20px;border-top:1px solid #dfe9e4}
.kdbe-featured-other-heading{display:flex;flex-direction:column;gap:4px;margin:0 0 14px}
.kdbe-featured-other-heading strong{color:#253c31;font-size:16px;line-height:1.5}
.kdbe-featured-other-heading span{color:#68786f;font-size:11px;line-height:1.5}
.kdbe-featured-other-offers .kdbe-affiliate-offer-grid{width:100%!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}
.kdbe-featured-other-offers.is-count-1 .kdbe-affiliate-offer-grid{grid-template-columns:1fr!important}
.kdbe-featured-other-offers .kdbe-affiliate-offer{width:100%!important;max-width:none!important}

@media(max-width:900px){
  .kdbe-service-focus-benefits{grid-template-columns:1fr!important}
  .kdbe-service-focus-details{grid-template-columns:1fr}
  .kdbe-service-focus-details>div,.kdbe-service-focus-details>div:nth-child(odd){border-right:0}
  .kdbe-service-focus-details>div:nth-last-child(-n+2){border-bottom:1px solid #edf2ef}
  .kdbe-service-focus-details>div:last-child{border-bottom:0}
  .kdbe-featured-other-offers .kdbe-affiliate-offer-grid{grid-template-columns:1fr!important;gap:12px!important}
}
@media(max-width:620px){
  .kdbe-featured-other-offers{margin-top:18px;padding-top:16px}
  .kdbe-featured-other-heading strong{font-size:14px}
  .kdbe-service-focus-details>div{grid-template-columns:minmax(94px,.42fr) minmax(0,1fr)}
  .kdbe-service-focus-details b,.kdbe-service-focus-details span{padding:10px;font-size:10.5px}
}

/* v2.6.59: On company-detail top affiliate cards, expose the three existing
 * verified offer benefits. Detailed spec rows remain compact/hidden.
 * No affiliate URL/ASP HTML or sponsor rendering is changed. */
.kdbe-affiliate-recommendations.is-compact.kdbe-company-switch-cta .kdbe-affiliate-appeals{
  display:flex;
  margin:8px 0 2px;
  gap:6px;
}
.kdbe-affiliate-recommendations.is-compact.kdbe-company-switch-cta .kdbe-affiliate-appeals span{
  min-height:26px;
  padding:5px 8px;
  font-size:10.5px;
}
@media(max-width:720px){
  .kdbe-affiliate-recommendations.is-compact.kdbe-company-switch-cta .kdbe-affiliate-appeals{
    display:grid;
    grid-template-columns:1fr;
    gap:5px;
  }
  .kdbe-affiliate-recommendations.is-compact.kdbe-company-switch-cta .kdbe-affiliate-appeals span{
    width:100%;
    justify-content:flex-start;
    border-radius:9px;
    font-size:11px;
  }
}

/* v2.6.61: polished company-detail TOP affiliate switch.
 * Layout-only override. Sponsor blocks, ranking data, ASP-issued HTML/URLs stay untouched. */
.kdbe-detail-hero .kdbe-company-switch-cta{
  overflow:hidden!important;
  margin:22px 0 18px!important;
  padding:0!important;
  border:1px solid #d9e3e8!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 10px 28px rgba(28,49,66,.07)!important;
}
.kdbe-company-switch-cta .kdbe-company-switch-head{
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  margin:0!important;
  padding:15px 18px 13px!important;
  border-bottom:1px solid #edf1f3!important;
  background:#fff!important;
}
.kdbe-company-switch-cta .kdbe-affiliate-title-icon{
  flex:0 0 38px!important;
  width:38px!important;
  height:38px!important;
  border:1px solid #dce7eb!important;
  border-radius:11px!important;
  background:#f5f9fa!important;
  box-shadow:none!important;
}
.kdbe-company-switch-cta .kdbe-affiliate-title-icon span{font-size:20px!important}
.kdbe-company-switch-cta .kdbe-company-switch-copy{min-width:0!important}
.kdbe-company-switch-cta .kdbe-company-switch-title{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
.kdbe-company-switch-cta .kdbe-company-switch-title strong{
  color:#1c3041!important;
  font-size:16px!important;
  font-weight:900!important;
  letter-spacing:.005em!important;
  line-height:1.45!important;
}
.kdbe-company-switch-cta .kdbe-company-switch-copy p{
  max-width:900px!important;
  margin:3px 0 0!important;
  color:#70808b!important;
  font-size:11px!important;
  line-height:1.6!important;
}
.kdbe-company-switch-cta .kdbe-affiliate-pr{
  min-height:19px!important;
  padding:2px 7px!important;
  border-color:#dde4e7!important;
  background:#fff!important;
  color:#79858d!important;
  font-size:8px!important;
}

/* One compact row: rank / service + benefits / existing ASP button. */
.kdbe-affiliate-recommendations.is-compact.kdbe-company-switch-cta .kdbe-affiliate-offer{
  display:grid!important;
  grid-template-columns:94px minmax(0,1fr) minmax(190px,220px)!important;
  grid-template-areas:
    "rank name action"
    "rank benefits action"!important;
  align-items:center!important;
  column-gap:18px!important;
  row-gap:7px!important;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:16px 18px 17px!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  box-shadow:none!important;
}
.kdbe-company-switch-cta .kdbe-affiliate-rank{
  grid-area:rank!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  align-self:center!important;
  min-width:0!important;
  width:94px!important;
  height:34px!important;
  min-height:34px!important;
  max-height:34px!important;
  margin:0!important;
  padding:0 9px!important;
  border:1px solid #d5e5dc!important;
  border-radius:999px!important;
  background:#f6faf8!important;
  color:#50655a!important;
  box-shadow:none!important;
  white-space:nowrap!important;
}
.kdbe-company-switch-cta .kdbe-affiliate-rank span{font-size:9px!important;font-weight:800!important}
.kdbe-company-switch-cta .kdbe-affiliate-rank b{margin-left:4px!important;color:#207c55!important;font-size:11.5px!important}
.kdbe-company-switch-cta .kdbe-affiliate-offer-body{
  grid-area:name!important;
  display:block!important;
  min-width:0!important;
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
}
.kdbe-company-switch-cta .kdbe-affiliate-offer-name{
  display:block!important;
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  color:#172b3c!important;
  font-size:17px!important;
  font-weight:900!important;
  line-height:1.4!important;
}
.kdbe-company-switch-cta .kdbe-affiliate-offer-body p{
  display:block!important;
  margin:3px 0 0!important;
  color:#77858f!important;
  font-size:10.5px!important;
  line-height:1.5!important;
}
.kdbe-affiliate-recommendations.is-compact.kdbe-company-switch-cta .kdbe-affiliate-appeals{
  grid-area:benefits!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:7px 16px!important;
  width:100%!important;
  margin:0!important;
}
.kdbe-affiliate-recommendations.is-compact.kdbe-company-switch-cta .kdbe-affiliate-appeals span{
  position:relative!important;
  display:block!important;
  width:auto!important;
  min-height:0!important;
  padding:0 0 0 17px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#40564b!important;
  font-size:10.5px!important;
  font-weight:800!important;
  line-height:1.5!important;
}
.kdbe-affiliate-recommendations.is-compact.kdbe-company-switch-cta .kdbe-affiliate-appeals span:before{
  content:"✓"!important;
  position:absolute!important;
  left:0!important;
  top:.05em!important;
  display:inline-grid!important;
  place-items:center!important;
  width:13px!important;
  height:13px!important;
  border-radius:50%!important;
  background:#e8f5ee!important;
  color:#167b50!important;
  font-size:8px!important;
  font-weight:900!important;
}
.kdbe-company-switch-cta .kdbe-affiliate-offer>.kdbe-affiliate-raw,
.kdbe-company-switch-cta .kdbe-affiliate-offer>.kdbe-btn-affiliate{
  grid-area:action!important;
  align-self:center!important;
  justify-self:end!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
}
.kdbe-company-switch-cta .kdbe-affiliate-offer>.kdbe-affiliate-raw a,
.kdbe-company-switch-cta .kdbe-affiliate-offer>.kdbe-btn-affiliate{
  width:100%!important;
  min-width:0!important;
  max-width:220px!important;
  height:48px!important;
  min-height:48px!important;
  max-height:48px!important;
  margin:0 0 0 auto!important;
  padding:10px 16px!important;
  border-radius:11px!important;
  box-shadow:0 6px 16px rgba(36,138,89,.16)!important;
  font-size:13px!important;
}
.kdbe-company-switch-cta .kdbe-affiliate-offer-image,
.kdbe-company-switch-cta .kdbe-affiliate-details{display:none!important}

@media(max-width:900px){
  .kdbe-affiliate-recommendations.is-compact.kdbe-company-switch-cta .kdbe-affiliate-offer{
    grid-template-columns:88px minmax(0,1fr)!important;
    grid-template-areas:
      "rank name"
      "benefits benefits"
      "action action"!important;
    gap:11px 14px!important;
  }
  .kdbe-company-switch-cta .kdbe-affiliate-rank{width:88px!important}
  .kdbe-company-switch-cta .kdbe-affiliate-offer>.kdbe-affiliate-raw,
  .kdbe-company-switch-cta .kdbe-affiliate-offer>.kdbe-btn-affiliate{justify-self:stretch!important}
  .kdbe-company-switch-cta .kdbe-affiliate-offer>.kdbe-affiliate-raw a,
  .kdbe-company-switch-cta .kdbe-affiliate-offer>.kdbe-btn-affiliate{max-width:none!important;margin:0!important}
}
@media(max-width:620px){
  .kdbe-detail-hero .kdbe-company-switch-cta{margin:18px 0 14px!important;border-radius:15px!important}
  .kdbe-company-switch-cta .kdbe-company-switch-head{align-items:flex-start!important;padding:13px 13px 12px!important}
  .kdbe-company-switch-cta .kdbe-affiliate-title-icon{flex-basis:34px!important;width:34px!important;height:34px!important;border-radius:10px!important}
  .kdbe-company-switch-cta .kdbe-affiliate-title-icon span{font-size:18px!important}
  .kdbe-company-switch-cta .kdbe-company-switch-title strong{font-size:14.5px!important}
  .kdbe-company-switch-cta .kdbe-company-switch-copy p{font-size:10.5px!important;line-height:1.55!important}
  .kdbe-affiliate-recommendations.is-compact.kdbe-company-switch-cta .kdbe-affiliate-offer{
    grid-template-columns:1fr!important;
    grid-template-areas:
      "rank"
      "name"
      "benefits"
      "action"!important;
    row-gap:10px!important;
    padding:14px 13px 15px!important;
  }
  .kdbe-company-switch-cta .kdbe-affiliate-rank{justify-self:start!important;width:auto!important;min-width:82px!important;height:31px!important;min-height:31px!important;max-height:31px!important}
  .kdbe-company-switch-cta .kdbe-affiliate-offer-name{font-size:16px!important}
  .kdbe-affiliate-recommendations.is-compact.kdbe-company-switch-cta .kdbe-affiliate-appeals{display:grid!important;grid-template-columns:1fr!important;gap:6px!important}
  .kdbe-affiliate-recommendations.is-compact.kdbe-company-switch-cta .kdbe-affiliate-appeals span{font-size:11px!important}
  .kdbe-company-switch-cta .kdbe-affiliate-offer>.kdbe-affiliate-raw a,
  .kdbe-company-switch-cta .kdbe-affiliate-offer>.kdbe-btn-affiliate{height:50px!important;min-height:50px!important;max-height:50px!important;font-size:13.5px!important}
}


/* v2.6.63: company related cards use one anchor; arrow is decorative */
.kdbe-company-related .kdbe-company-related-link::after{content:"›";font-size:18px;line-height:1;color:var(--kdbe-blue);font-weight:700;margin-left:auto;flex:0 0 auto}

/* v2.6.64: company detail CTA + mobile layout cleanup */
.kdbe-detail-hero .kdbe-company-switch-cta{
  overflow:hidden!important;
  border:1px solid #dce7e2!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 10px 26px rgba(31,67,104,.07)!important;
}
.kdbe-company-switch-cta .kdbe-company-switch-head{
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  padding:14px 16px!important;
  border-bottom:1px solid #edf2ef!important;
  background:#fbfdfc!important;
}
.kdbe-company-switch-cta .kdbe-company-switch-copy p{
  max-width:none!important;
  margin:3px 0 0!important;
  font-size:11px!important;
  line-height:1.55!important;
}
.kdbe-affiliate-recommendations.is-compact.kdbe-company-switch-cta .kdbe-company-switch-offer{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(190px,220px)!important;
  grid-template-areas:
    "top action"
    "note action"
    "benefits action"!important;
  align-items:center!important;
  gap:7px 20px!important;
  margin:0!important;
  padding:16px!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  box-shadow:none!important;
}
.kdbe-company-switch-offer .kdbe-company-switch-offer-top{
  grid-area:top!important;
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:10px 12px!important;
  min-width:0!important;
}
.kdbe-company-switch-offer .kdbe-affiliate-rank{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:88px!important;
  height:32px!important;
  min-height:32px!important;
  max-height:32px!important;
  margin:0!important;
  padding:0 10px!important;
  border:1px solid #d7e8de!important;
  border-radius:999px!important;
  background:#f5faf7!important;
  color:#50655a!important;
  white-space:nowrap!important;
}
.kdbe-company-switch-offer .kdbe-affiliate-rank span{font-size:9px!important;font-weight:800!important}
.kdbe-company-switch-offer .kdbe-affiliate-rank b{margin-left:5px!important;color:#207c55!important;font-size:12px!important}
.kdbe-company-switch-offer .kdbe-affiliate-offer-name{
  display:block!important;
  min-width:0!important;
  margin:0!important;
  color:#172b3c!important;
  font-size:17px!important;
  font-weight:900!important;
  line-height:1.35!important;
}
.kdbe-company-switch-offer .kdbe-company-switch-note{
  grid-area:note!important;
  margin:0!important;
  color:#70808b!important;
  font-size:11px!important;
  line-height:1.65!important;
}
.kdbe-company-switch-offer .kdbe-company-switch-benefits{
  grid-area:benefits!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px 16px!important;
  list-style:none!important;
  margin:1px 0 0!important;
  padding:0!important;
}
.kdbe-company-switch-offer .kdbe-company-switch-benefits li{
  position:relative!important;
  margin:0!important;
  padding:0 0 0 17px!important;
  color:#40564b!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1.5!important;
}
.kdbe-company-switch-offer .kdbe-company-switch-benefits li:before{
  content:"✓"!important;
  position:absolute!important;
  left:0!important;
  top:.08em!important;
  width:13px!important;
  height:13px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:#e8f5ee!important;
  color:#167b50!important;
  font-size:8px!important;
  font-weight:900!important;
}
.kdbe-company-switch-offer .kdbe-company-switch-action{
  grid-area:action!important;
  align-self:center!important;
  justify-self:stretch!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
.kdbe-company-switch-offer .kdbe-company-switch-action>a,
.kdbe-company-switch-offer a.kdbe-company-switch-action,
.kdbe-company-switch-offer .kdbe-company-switch-action .kdbe-btn,
.kdbe-company-switch-offer .kdbe-company-switch-action input[type="submit"]{
  width:100%!important;
  max-width:none!important;
  min-height:48px!important;
  margin:0!important;
  border-radius:12px!important;
  font-size:13px!important;
  font-weight:900!important;
}

@media(max-width:620px){
  .kdbe-shell{width:calc(100% - 16px)!important;padding-top:14px!important}
  .kdbe-breadcrumb{margin-bottom:10px!important}
  .kdbe-detail-hero{padding:21px 14px 17px!important;border-radius:18px!important}
  .kdbe-detail-hero h1{font-size:clamp(24px,7.2vw,30px)!important;line-height:1.35!important;letter-spacing:-.02em!important}
  .kdbe-detail-hero .kdbe-detail-title-row p{margin-top:9px!important;font-size:13.5px!important;line-height:1.75!important}
  .kdbe-detail-hero .kdbe-company-switch-cta{margin:16px 0 12px!important;border-radius:16px!important}
  .kdbe-company-switch-cta .kdbe-company-switch-head{align-items:flex-start!important;gap:10px!important;padding:13px!important}
  .kdbe-company-switch-cta .kdbe-affiliate-title-icon{flex:0 0 36px!important;width:36px!important;height:36px!important;border-radius:10px!important}
  .kdbe-company-switch-cta .kdbe-company-switch-title{display:flex!important;align-items:flex-start!important;gap:6px!important}
  .kdbe-company-switch-cta .kdbe-company-switch-title strong{font-size:15px!important;line-height:1.45!important}
  .kdbe-company-switch-cta .kdbe-company-switch-copy p{margin-top:5px!important;font-size:10.5px!important;line-height:1.6!important}
  .kdbe-affiliate-recommendations.is-compact.kdbe-company-switch-cta .kdbe-company-switch-offer{
    display:block!important;
    padding:14px 13px 15px!important;
  }
  .kdbe-company-switch-offer .kdbe-company-switch-offer-top{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    margin:0 0 9px!important;
  }
  .kdbe-company-switch-offer .kdbe-affiliate-rank{min-width:84px!important;height:31px!important;min-height:31px!important;max-height:31px!important}
  .kdbe-company-switch-offer .kdbe-affiliate-offer-name{font-size:16px!important;line-height:1.35!important;overflow-wrap:anywhere!important}
  .kdbe-company-switch-offer .kdbe-company-switch-note{margin:0 0 10px!important;font-size:11.5px!important;line-height:1.7!important}
  .kdbe-company-switch-offer .kdbe-company-switch-benefits{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;margin:0 0 13px!important}
  .kdbe-company-switch-offer .kdbe-company-switch-benefits li{font-size:12px!important;line-height:1.55!important}
  .kdbe-company-switch-offer .kdbe-company-switch-action{display:block!important;width:100%!important}
  .kdbe-company-switch-offer .kdbe-company-switch-action>a,
  .kdbe-company-switch-offer a.kdbe-company-switch-action,
  .kdbe-company-switch-offer .kdbe-company-switch-action .kdbe-btn,
  .kdbe-company-switch-offer .kdbe-company-switch-action input[type="submit"]{
    width:100%!important;
    min-height:50px!important;
    height:auto!important;
    padding:11px 14px!important;
    border-radius:12px!important;
    font-size:14px!important;
    white-space:normal!important;
    text-align:center!important;
  }
  .kdbe-detail-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin-top:12px!important}
  .kdbe-detail-actions .kdbe-btn{width:100%!important;min-height:47px!important;padding:0 14px!important;font-size:13.5px!important}
  .kdbe-panel{padding:18px 14px!important;border-radius:16px!important}
  .kdbe-data-table th,.kdbe-data-table td{padding:12px 10px!important;font-size:12px!important;line-height:1.6!important}
  .kdbe-data-table th{width:104px!important}
  .kdbe-info-cards>div{padding:14px!important}
  .kdbe-map iframe{height:250px!important}
}


/* v2.6.65: company-detail mobile rank + offer name stay on one line. */
.kdbe-company-switch-inline-rank{
  display:inline-block!important;
  flex:0 0 auto!important;
  margin:0!important;
  color:#207c55!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1.35!important;
  white-space:nowrap!important;
}
.kdbe-company-switch-offer .kdbe-company-switch-offer-top{
  flex-wrap:nowrap!important;
  gap:6px!important;
}
@media(max-width:620px){
  .kdbe-company-switch-offer .kdbe-company-switch-offer-top{
    display:flex!important;
    align-items:baseline!important;
    flex-wrap:nowrap!important;
    gap:6px!important;
    margin:0 0 10px!important;
    white-space:nowrap!important;
  }
  .kdbe-company-switch-inline-rank{
    font-size:12px!important;
  }
  .kdbe-company-switch-offer .kdbe-affiliate-offer-name{
    display:inline!important;
    flex:1 1 auto!important;
    min-width:0!important;
    margin:0!important;
    font-size:15.5px!important;
    line-height:1.35!important;
    white-space:nowrap!important;
    overflow:visible!important;
    overflow-wrap:normal!important;
  }
}

/* v3.0.0 sumai-gyosha.jp: affiliate official-site fallback */
.kdbe-official-badge{display:inline-flex;align-items:center;justify-content:center;padding:3px 8px;border:1px solid #b7c8d9;border-radius:999px;background:#f7fafc;color:#35536b;font-size:12px;font-weight:700;line-height:1.3}
.kdbe-btn.kdbe-btn-official-fallback{background:#fff;color:#1769aa;border:2px solid #1769aa;box-shadow:none}
.kdbe-btn.kdbe-btn-official-fallback:hover{background:#f4f9fd;color:#125789}
.kdbe-affiliate-offer.is-official-fallback{border-style:solid}

/* v3.1.0 sumai-gyosha.jp: data-driven area quality blocks */
.kdbe-data-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:16px 0}
.kdbe-data-grid>div{background:#f7f9fb;border:1px solid #e4e8ee;border-radius:10px;padding:14px 10px;text-align:center}
.kdbe-data-grid strong{display:block;font-size:1.55rem;line-height:1.1}
.kdbe-data-grid span{display:block;margin-top:6px;font-size:.86rem;line-height:1.35}
.kdbe-data-note{font-size:.92rem;color:#555}
.kdbe-action-check ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:16px 0 12px;padding-left:1.4rem}
.kdbe-action-check li{padding:4px 0}
@media(max-width:700px){.kdbe-data-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kdbe-data-grid>div:last-child{grid-column:1/-1}.kdbe-action-check ol{grid-template-columns:1fr}}
