/* CPU×GPU相性診断 本番用CSS シールド版
   - 賢威8(base.css)が body article h2 等に !important を使うため、全宣言を #cgb 基点 + !important 化
   - 貼り付け先のラッパーは <div class="cgb" id="cgb"> であること(id必須)
   - wpautopで混入する空<p>/<br>も無害化済み */

/* CPU×GPU相性・ボトルネック診断 本番用CSS(テーマ競合対策版)
   全クラスに cgb- 接頭辞 / #cgb.cgb.cgb で特異度を確保 / 末尾にテーマ打ち消し用の防御スタイル */

#cgb.cgb.cgb{--blue-650:#104281!important;--blue-550:#1c5cab!important;--blue-450:#2a78d6!important;--blue-350:#5598e7!important;--blue-250:#86b6ef!important;--blue-150:#b7d3f6!important;--blue-100:#cde2fb!important;--red-deep:#c73a39!important;--red-mid:#e57170!important;--red-light:#f2b9b3!important;--neutral-cell:#f0efec!important;--ink:#0b0b0b!important;--ink-2:#52514e!important;--ink-3:#898781!important;--line:#e1e0d9!important;--surface:#ffffff!important;--page:#f6f7f9!important;--amber:#b45309!important;--amber-bg:#fff7e6!important;--amber-line:#f0c36d!important;--good:#0ca30c!important;--good-text:#006300!important;--radius:14px!important;font-family: system-ui, -apple-system, "Segoe UI", "Hiragino Kaku Gothic ProN", "Noto Sans JP", Meiryo, sans-serif!important}
#cgb.cgb.cgb, #cgb.cgb.cgb *:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){box-sizing:border-box!important;margin:0!important;padding:0!important}
#cgb.cgb.cgb{background:#fff!important;color:var(--ink)!important;line-height:1.75!important;font-size:15.5px!important}
#cgb.cgb.cgb a:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){color:var(--blue-550)!important;text-decoration:none!important}
#cgb.cgb.cgb a:hover{text-decoration:underline!important}
#cgb.cgb.cgb .cgb-wrap{max-width:1060px!important;margin:0 auto!important;padding:0 16px!important}
#cgb.cgb.cgb /* ===== mock site header ===== */
.site-head{background:#fff!important;border-bottom:1px solid var(--line)!important;position:sticky!important;top:0!important;z-index:50!important}
#cgb.cgb.cgb /* ===== article head ===== */
.cgb-article-head{display:block!important;background:#fff!important;border:none!important;border-radius:var(--radius)!important;padding:26px 28px!important;margin-bottom:14px!important}
#cgb.cgb.cgb h1:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){font-size:24px!important;line-height:1.45!important;margin-bottom:10px!important}
#cgb.cgb.cgb .cgb-meta-row{display:flex!important;flex-wrap:wrap!important;gap:10px!important;align-items:center!important;font-size:12.5px!important;color:var(--ink-3)!important;margin-bottom:14px!important}
#cgb.cgb.cgb .cgb-badge{display:inline-flex!important;align-items:center!important;gap:4px!important;background:var(--blue-100)!important;color:var(--blue-650)!important;font-weight:700!important;font-size:11.5px!important;padding:2px 10px!important;border-radius:999px!important}
#cgb.cgb.cgb .cgb-badge.cgb-gr{background:#e6f6e6!important;color:var(--good-text)!important}
#cgb.cgb.cgb .cgb-lead{color:var(--ink-2)!important;font-size:17px!important;line-height:1.9!important}
#cgb.cgb.cgb /* ===== sticky section nav ===== */
.cgb-secnav{position:sticky!important;top:0 /* 固定ヘッダーがあるテーマではその高さに調整 */!important;z-index:40!important;background:rgba(255,255,255,.96)!important;backdrop-filter:blur(4px)!important;border:1px solid var(--line)!important;border-radius:999px!important;padding:6px!important;display:flex!important;gap:4px!important;overflow-x:auto!important;margin:14px 0 22px!important;box-shadow:0 2px 10px rgba(11,11,11,.05)!important}
#cgb.cgb.cgb .cgb-secnav a{flex:none!important;font-size:12.5px!important;font-weight:600!important;color:var(--ink-2)!important;padding:6px 14px!important;border-radius:999px!important;white-space:nowrap!important}
#cgb.cgb.cgb .cgb-secnav a:hover{background:var(--blue-100)!important;color:var(--blue-650)!important;text-decoration:none!important}
#cgb.cgb.cgb /* ===== sections ===== */
section{display:block!important;background:#fff!important;border:none!important;border-radius:var(--radius)!important;padding:26px 28px!important;margin-bottom:26px!important;scroll-margin-top:120px!important}
#cgb.cgb.cgb h2:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){font-size:20px!important;line-height:1.4!important;margin-bottom:6px!important;padding-left:14px!important;border-left:5px solid var(--blue-450)!important}
#cgb.cgb.cgb .cgb-h2-sub{font-size:13px!important;color:var(--ink-3)!important;margin-bottom:18px!important;padding-left:19px!important}
#cgb.cgb.cgb h3:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){font-size:16px!important;margin:22px 0 10px!important}
#cgb.cgb.cgb p:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){margin-bottom:12px!important}
#cgb.cgb.cgb p:last-child{margin-bottom:0!important}
#cgb.cgb.cgb /* ===== kaizen annotations ===== */
.kaizen{border:1.5px dashed var(--amber-line)!important;background:var(--amber-bg)!important;color:var(--amber)!important;border-radius:10px!important;padding:10px 14px!important;font-size:12.5px!important;line-height:1.6!important;margin:0 0 16px!important}
#cgb.cgb.cgb /* ===== diagnostic tool ===== */
.cgb-tool{background:linear-gradient(180deg,#f2f7ff 0%,#fff 55%)!important;border:none!important}
#cgb.cgb.cgb .cgb-tool-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:14px!important;margin-bottom:14px!important}
#cgb.cgb.cgb .cgb-field label{display:block!important;font-size:12.5px!important;font-weight:700!important;color:var(--ink-2)!important;margin-bottom:6px!important}
#cgb.cgb.cgb .cgb-field select{width:100%!important;padding:11px 12px!important;font-size:14.5px!important;border:1.5px solid var(--line)!important;border-radius:10px!important;background:#fff!important;color:var(--ink)!important}
#cgb.cgb.cgb .cgb-field select:focus{outline:2px solid var(--blue-250)!important}
#cgb.cgb.cgb .cgb-seg{display:flex!important;background:#fff!important;border:1.5px solid var(--line)!important;border-radius:10px!important;overflow:hidden!important}
#cgb.cgb.cgb .cgb-seg button{flex:1!important;padding:10px 4px!important;border:none!important;background:transparent!important;font-size:13.5px!important;font-weight:600!important;color:var(--ink-2)!important;cursor:pointer!important}
#cgb.cgb.cgb .cgb-seg button.cgb-on{background:var(--blue-450)!important;color:#fff!important}
#cgb.cgb.cgb .cgb-result{border:1px solid var(--line)!important;border-radius:12px!important;background:#fff!important;padding:20px!important;margin-top:6px!important}
#cgb.cgb.cgb .cgb-result-top{display:flex!important;flex-wrap:wrap!important;gap:16px!important;align-items:center!important;margin-bottom:14px!important}
#cgb.cgb.cgb .cgb-rating-chip{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;width:92px!important;height:92px!important;border-radius:16px!important;flex:none!important}
#cgb.cgb.cgb .cgb-rating-chip .cgb-sym{font-size:34px!important;font-weight:800!important;line-height:1.1!important}
#cgb.cgb.cgb .cgb-rating-chip .cgb-lab{font-size:11.5px!important;font-weight:700!important;margin-top:2px!important}
#cgb.cgb.cgb .cgb-result-combo{font-size:15px!important;font-weight:700!important;line-height:1.5!important}
#cgb.cgb.cgb .cgb-result-combo small{display:block!important;font-weight:600!important;color:var(--ink-3)!important;font-size:12px!important}
#cgb.cgb.cgb .cgb-meter-wrap{margin:6px 0 4px!important}
#cgb.cgb.cgb .cgb-meter-labels{display:flex!important;justify-content:space-between!important;font-size:11.5px!important;color:var(--ink-3)!important;font-weight:600!important;margin-bottom:4px!important}
#cgb.cgb.cgb .cgb-meter{position:relative!important;height:14px!important;border-radius:999px!important;background:linear-gradient(90deg,var(--red-mid) 0%,var(--red-light) 22%,var(--neutral-cell) 42%,var(--neutral-cell) 58%,var(--red-light) 78%,var(--red-mid) 100%)!important;border:1px solid var(--line)!important}
#cgb.cgb.cgb .cgb-meter .cgb-pin{position:absolute!important;top:-5px!important;width:4px!important;height:24px!important;background:var(--ink)!important;border-radius:2px!important;transform:translateX(-50%)!important;transition:left .35s!important}
#cgb.cgb.cgb .cgb-meter-note{font-size:12px!important;color:var(--ink-2)!important;margin-top:6px!important;font-weight:600!important}
#cgb.cgb.cgb .cgb-result-text{font-size:14px!important;color:var(--ink-2)!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:10px!important;padding:12px 14px!important;margin-top:12px!important}
#cgb.cgb.cgb .cgb-upgrade-tip{display:flex!important;gap:8px!important;align-items:flex-start!important;font-size:13px!important;margin-top:10px!important;color:var(--ink-2)!important}
#cgb.cgb.cgb .cgb-upgrade-tip .cgb-ico{flex:none!important}
#cgb.cgb.cgb .cgb-bto-mini-head{font-size:13.5px!important;font-weight:700!important;margin:18px 0 10px!important;color:var(--ink)!important}
#cgb.cgb.cgb .cgb-bto-mini{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:10px!important}
#cgb.cgb.cgb .cgb-bto-card{border:1px solid var(--line)!important;border-radius:12px!important;padding:12px!important;background:#fff!important;display:flex!important;flex-direction:column!important;gap:4px!important}
#cgb.cgb.cgb .cgb-bto-card .cgb-shop{font-size:11px!important;color:var(--ink-3)!important;font-weight:700!important}
#cgb.cgb.cgb .cgb-bto-card .cgb-name{font-size:12.5px!important;font-weight:700!important;line-height:1.45!important;min-height:2.6em!important}
#cgb.cgb.cgb .cgb-bto-card .cgb-spec{font-size:11.5px!important;color:var(--ink-2)!important}
#cgb.cgb.cgb .cgb-bto-card .cgb-price{font-size:16px!important;font-weight:800!important;color:var(--red-deep)!important}
#cgb.cgb.cgb .cgb-bto-card .cgb-price small{font-size:10.5px!important;color:var(--ink-3)!important;font-weight:600!important}
#cgb.cgb.cgb .cgb-btn{display:block!important;text-align:center!important;background:var(--blue-450)!important;color:#fff!important;font-weight:700!important;font-size:12.5px!important;border-radius:8px!important;padding:8px 6px!important;margin-top:6px!important}
#cgb.cgb.cgb .cgb-btn:hover{background:var(--blue-550)!important;text-decoration:none!important}
#cgb.cgb.cgb .cgb-btn.cgb-outline{background:#fff!important;color:var(--blue-550)!important;border:1.5px solid var(--blue-450)!important}
#cgb.cgb.cgb /* ===== purpose cards ===== */
.cgb-purpose-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:14px!important}
#cgb.cgb.cgb .cgb-pcard{border:1px solid var(--line)!important;border-radius:12px!important;padding:16px!important;display:flex!important;flex-direction:column!important;gap:6px!important;background:#fff!important}
#cgb.cgb.cgb .cgb-pcard .cgb-tag{align-self:flex-start!important;font-size:11px!important;font-weight:800!important;color:var(--blue-650)!important;background:var(--blue-100)!important;border-radius:6px!important;padding:2px 8px!important}
#cgb.cgb.cgb .cgb-pcard h3{margin:2px 0 0!important;font-size:15px!important}
#cgb.cgb.cgb .cgb-pcard .cgb-combo{font-size:13px!important;color:var(--ink-2)!important;line-height:1.5!important}
#cgb.cgb.cgb .cgb-pcard .cgb-combo b{color:var(--ink)!important}
#cgb.cgb.cgb .cgb-pcard .cgb-price{font-size:15px!important;font-weight:800!important;color:var(--red-deep)!important;margin-top:auto!important}
#cgb.cgb.cgb .cgb-pcard .cgb-fps{font-size:11.5px!important;color:var(--ink-3)!important}
#cgb.cgb.cgb /* ===== heatmap table ===== */
.cgb-tbl-ctrl{display:flex!important;flex-wrap:wrap!important;gap:10px!important;align-items:center!important;justify-content:space-between!important;margin-bottom:12px!important}
#cgb.cgb.cgb .cgb-tabs{display:flex!important;gap:6px!important}
#cgb.cgb.cgb .cgb-tabs button{border:1.5px solid var(--line)!important;background:#fff!important;border-radius:999px!important;padding:7px 16px!important;font-size:13px!important;font-weight:700!important;color:var(--ink-2)!important;cursor:pointer!important}
#cgb.cgb.cgb .cgb-tabs button.cgb-on{background:var(--ink)!important;border-color:var(--ink)!important;color:#fff!important}
#cgb.cgb.cgb .cgb-seg.cgb-small{max-width:330px!important}
#cgb.cgb.cgb .cgb-seg.cgb-small button{padding:7px 12px!important;font-size:12.5px!important;white-space:nowrap!important}
#cgb.cgb.cgb .cgb-legend{display:flex!important;flex-wrap:wrap!important;gap:10px!important;font-size:12px!important;color:var(--ink-2)!important;margin-bottom:10px!important}
#cgb.cgb.cgb .cgb-legend span{display:inline-flex!important;align-items:center!important;gap:5px!important}
#cgb.cgb.cgb .cgb-lg{width:20px!important;height:20px!important;border-radius:5px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:11px!important;font-weight:800!important;border:1px solid rgba(11,11,11,.08)!important}
#cgb.cgb.cgb .cgb-tbl-scroll{overflow-x:auto!important;border:1px solid var(--line)!important;border-radius:12px!important}
#cgb.cgb.cgb table.cgb-heat{border-collapse:separate!important;border-spacing:0!important;width:100%!important;min-width:760px!important;font-size:12px!important}
#cgb.cgb.cgb table.cgb-heat th, #cgb.cgb.cgb table.cgb-heat td{padding:7px 6px!important;text-align:center!important;border-bottom:1px solid var(--line)!important;border-right:1px solid var(--line)!important}
#cgb.cgb.cgb table.cgb-heat thead th{background:#fafaf8!important;font-size:11px!important;color:var(--ink-2)!important;position:sticky!important;top:0!important;white-space:nowrap!important}
#cgb.cgb.cgb table.cgb-heat td.cgb-cpu, #cgb.cgb.cgb table.cgb-heat th.cgb-cpu{position:sticky!important;left:0!important;background:#fafaf8!important;text-align:left!important;font-weight:700!important;font-size:11.5px!important;white-space:nowrap!important;z-index:2!important;min-width:150px!important}
#cgb.cgb.cgb table.cgb-heat td.cgb-cell{font-weight:800!important;font-size:13px!important;cursor:pointer!important;min-width:56px!important}
#cgb.cgb.cgb table.cgb-heat td.cgb-cell:hover{outline:2px solid var(--ink)!important;outline-offset:-2px!important}
#cgb.cgb.cgb .cgb-tbl-note{font-size:11.5px!important;color:var(--ink-3)!important;margin-top:8px!important}
#cgb.cgb.cgb /* ===== diagram / steps / flow ===== */
.cgb-pipe{display:flex!important;align-items:center!important;gap:10px!important;justify-content:center!important;margin:16px 0!important;flex-wrap:wrap!important}
#cgb.cgb.cgb .cgb-pipe .cgb-node{border:1.5px solid var(--line)!important;border-radius:12px!important;padding:10px 16px!important;text-align:center!important;background:#fff!important;font-size:12.5px!important;font-weight:700!important}
#cgb.cgb.cgb .cgb-pipe .cgb-node small{display:block!important;font-weight:600!important;color:var(--ink-3)!important;font-size:10.5px!important}
#cgb.cgb.cgb .cgb-pipe .cgb-arrow{font-size:18px!important;color:var(--ink-3)!important}
#cgb.cgb.cgb .cgb-pipe .cgb-node.cgb-cpu{border-color:var(--blue-250)!important;background:var(--blue-100)!important}
#cgb.cgb.cgb .cgb-pipe .cgb-node.cgb-gpu{border-color:var(--blue-450)!important;background:var(--blue-150)!important}
#cgb.cgb.cgb .cgb-steps{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:14px!important;margin-top:14px!important}
#cgb.cgb.cgb .cgb-step{border:1px solid var(--line)!important;border-radius:12px!important;padding:16px!important;background:#fff!important}
#cgb.cgb.cgb .cgb-step .cgb-num{width:30px!important;height:30px!important;border-radius:999px!important;background:var(--blue-450)!important;color:#fff!important;font-weight:800!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:14px!important;margin-bottom:8px!important}
#cgb.cgb.cgb .cgb-step h3{margin:0 0 6px!important;font-size:14.5px!important}
#cgb.cgb.cgb .cgb-step p{font-size:12.5px!important;color:var(--ink-2)!important;margin:0!important}
#cgb.cgb.cgb .cgb-flow{display:flex!important;flex-direction:column!important;align-items:center!important;gap:0!important;margin-top:14px!important}
#cgb.cgb.cgb .cgb-flow .cgb-q{border:1.5px solid var(--blue-250)!important;background:var(--blue-100)!important;border-radius:12px!important;padding:10px 18px!important;font-weight:700!important;font-size:13.5px!important;text-align:center!important}
#cgb.cgb.cgb .cgb-flow .cgb-branch{display:flex!important;gap:14px!important;margin:10px 0!important;flex-wrap:wrap!important;justify-content:center!important}
#cgb.cgb.cgb .cgb-flow .cgb-ans{display:flex!important;flex-direction:column!important;align-items:center!important;gap:8px!important}
#cgb.cgb.cgb .cgb-flow .cgb-yn{font-size:11.5px!important;font-weight:800!important;color:var(--ink-3)!important}
#cgb.cgb.cgb .cgb-flow .cgb-res{border:1.5px solid var(--line)!important;border-radius:12px!important;padding:10px 16px!important;font-size:12.5px!important;font-weight:700!important;background:#fff!important;text-align:center!important;max-width:230px!important}
#cgb.cgb.cgb .cgb-flow .cgb-res.cgb-hit{border-color:var(--blue-450)!important;background:#f2f7ff!important;color:var(--blue-650)!important}
#cgb.cgb.cgb .cgb-flow .cgb-down{color:var(--ink-3)!important;font-size:16px!important;margin:2px 0!important}
#cgb.cgb.cgb /* ===== bto table ===== */
.cgb-bto-tbl{width:100%!important;border-collapse:separate!important;border-spacing:0!important;font-size:13px!important;min-width:720px!important}
#cgb.cgb.cgb .cgb-bto-tbl th{background:#fafaf8!important;font-size:11.5px!important;color:var(--ink-2)!important;padding:9px 8px!important;border-bottom:1px solid var(--line)!important;text-align:left!important;white-space:nowrap!important}
#cgb.cgb.cgb .cgb-bto-tbl td{padding:11px 8px!important;border-bottom:1px solid var(--line)!important;vertical-align:middle!important}
#cgb.cgb.cgb .cgb-bto-tbl .cgb-nm{font-weight:700!important;font-size:12.5px!important}
#cgb.cgb.cgb .cgb-bto-tbl .cgb-nm small{display:block!important;color:var(--ink-3)!important;font-weight:600!important;font-size:10.5px!important}
#cgb.cgb.cgb .cgb-bto-tbl .cgb-pr{font-weight:800!important;color:var(--red-deep)!important;font-size:14.5px!important;white-space:nowrap!important}
#cgb.cgb.cgb .cgb-fit{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:30px!important;height:30px!important;border-radius:8px!important;font-weight:800!important;font-size:14px!important}
#cgb.cgb.cgb /* ===== FAQ ===== */
details.cgb-faq{border:1px solid var(--line)!important;border-radius:12px!important;margin-bottom:10px!important;background:#fff!important;overflow:hidden!important}
#cgb.cgb.cgb details.cgb-faq summary{cursor:pointer!important;padding:14px 16px!important;font-weight:700!important;font-size:14px!important;list-style:none!important;display:flex!important;gap:10px!important;align-items:flex-start!important}
#cgb.cgb.cgb details.cgb-faq summary::-webkit-details-marker{display:none!important}
#cgb.cgb.cgb details.cgb-faq summary .cgb-q{color:var(--blue-450)!important;font-weight:800!important;flex:none!important}
#cgb.cgb.cgb details.cgb-faq .cgb-a{padding:0 16px 14px 42px!important;font-size:13.5px!important;color:var(--ink-2)!important}
#cgb.cgb.cgb details.cgb-faq[open]{border-color:var(--blue-250)!important}
#cgb.cgb.cgb /* ===== footer ===== */
.mock-foot{text-align:center!important;color:var(--ink-3)!important;font-size:12px!important;padding:26px 0 40px!important}
@media(max-width:760px){
#cgb.cgb.cgb .cgb-tool-grid{grid-template-columns:1fr!important}
#cgb.cgb.cgb .cgb-bto-mini{grid-template-columns:1fr!important}
#cgb.cgb.cgb .cgb-purpose-grid{grid-template-columns:1fr 1fr!important}
#cgb.cgb.cgb .cgb-steps{grid-template-columns:1fr!important}
#cgb.cgb.cgb section{padding:20px 16px!important}
#cgb.cgb.cgb .cgb-article-head{padding:20px 16px!important}
#cgb.cgb.cgb h1:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){font-size:20px!important}
}
@media(max-width:520px){
#cgb.cgb.cgb .cgb-purpose-grid{grid-template-columns:1fr!important}
}

/* ===== テーマCSS(賢威8等)の装飾を打ち消す防御スタイル ===== */
#cgb.cgb.cgb h1:where(:not(.gpc-sale)):where(:not(.gpc-sale *)), #cgb.cgb.cgb h2:where(:not(.gpc-sale)):where(:not(.gpc-sale *)), #cgb.cgb.cgb h3:where(:not(.gpc-sale)):where(:not(.gpc-sale *)), #cgb.cgb.cgb h4:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){background:none!important;background-image:none!important;box-shadow:none!important;text-shadow:none!important;border-top:none!important;border-right:none!important;color:var(--ink)!important}
#cgb.cgb.cgb h1:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){border:none!important;padding:0!important;border-radius:0!important;margin:0 0 10px!important}
#cgb.cgb.cgb h1:where(:not(.gpc-sale)):where(:not(.gpc-sale *))::before, #cgb.cgb.cgb h1:where(:not(.gpc-sale)):where(:not(.gpc-sale *))::after{content:none!important;display:none!important}
#cgb.cgb.cgb h2:where(:not(.gpc-sale)):where(:not(.gpc-sale *))::before, #cgb.cgb.cgb h2:where(:not(.gpc-sale)):where(:not(.gpc-sale *))::after, #cgb.cgb.cgb h3:where(:not(.gpc-sale)):where(:not(.gpc-sale *))::before, #cgb.cgb.cgb h3:where(:not(.gpc-sale)):where(:not(.gpc-sale *))::after{content:none!important;display:none!important}
#cgb.cgb.cgb h2:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){border-bottom:none!important;border-radius:0!important;color:var(--ink)!important}
#cgb.cgb.cgb h3:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){border:none!important;padding:0!important;color:var(--ink)!important}
#cgb.cgb.cgb select:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){appearance:auto!important;-webkit-appearance:menulist!important;height:auto!important;max-width:none!important;min-height:0!important;box-shadow:none!important;background-image:none!important;line-height:1.5!important;margin:0!important}
#cgb.cgb.cgb table:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){margin:0!important;box-shadow:none!important;background:transparent!important;border:none!important;display:table!important}
#cgb.cgb.cgb th:where(:not(.gpc-sale)):where(:not(.gpc-sale *)), #cgb.cgb.cgb td:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){box-shadow:none!important;background-image:none!important;vertical-align:middle!important;border:none!important;font-family:inherit!important;line-height:1.6!important}
#cgb.cgb.cgb th:not(.cgb-cell):where(:not(.gpc-sale)):where(:not(.gpc-sale *)), #cgb.cgb.cgb td:not(.cgb-cell):where(:not(.gpc-sale)):where(:not(.gpc-sale *)){background:#fff!important;color:inherit!important;font-size:inherit!important}
#cgb.cgb.cgb table.cgb-heat th, #cgb.cgb.cgb table.cgb-heat td{border-bottom:1px solid var(--line)!important;border-right:1px solid var(--line)!important}
#cgb.cgb.cgb .cgb-bto-tbl th, #cgb.cgb.cgb .cgb-bto-tbl td{border-bottom:1px solid var(--line)!important}
#cgb.cgb.cgb table.cgb-heat td, #cgb.cgb.cgb table.cgb-heat th{border-left:none!important;border-top:none!important}
#cgb.cgb.cgb a:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){box-shadow:none!important;border-bottom:none!important}
#cgb.cgb.cgb p:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){background:none!important;padding:0!important}
#cgb.cgb.cgb details:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){border-radius:12px!important;padding:0!important;background:#fff!important}
#cgb.cgb.cgb summary:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){padding:14px 16px!important;margin:0!important;background:none!important;border:none!important;color:var(--ink)!important}
#cgb.cgb.cgb summary:where(:not(.gpc-sale)):where(:not(.gpc-sale *))::marker{content:""!important}
#cgb.cgb.cgb button:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){text-shadow:none!important;box-shadow:none!important;background-image:none!important}
#cgb.cgb.cgb section{width:auto!important;max-width:none!important;box-shadow:none!important}

/* ===== 賢威8の!importantリセットに対するシールド ===== */
#cgb.cgb.cgb, #cgb.cgb.cgb *:not([class^="fa"]):where(:not(.gpc-sale)):where(:not(.gpc-sale *)){font-family:system-ui,-apple-system,"Segoe UI","Hiragino Kaku Gothic ProN","Noto Sans JP",Meiryo,sans-serif!important}
#cgb.cgb.cgb h1:where(:not(.gpc-sale)):where(:not(.gpc-sale *)), #cgb.cgb.cgb h2:where(:not(.gpc-sale)):where(:not(.gpc-sale *)), #cgb.cgb.cgb h3:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){position:static!important;background:none!important;background-image:none!important;box-shadow:none!important;letter-spacing:normal!important;color:var(--ink)!important;font-weight:700!important}
#cgb.cgb.cgb h1:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){font-size:24px!important;line-height:1.45!important;margin:0 0 10px!important;padding:0!important;border:none!important}
#cgb.cgb.cgb h2:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){font-size:20px!important;line-height:1.4!important;margin:0 0 6px!important;padding:0 0 0 14px!important;border:none!important;border-left:5px solid var(--blue-450)!important}
#cgb.cgb.cgb h3:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){font-size:16px!important;margin:22px 0 10px!important;padding:0!important;border:none!important}
#cgb.cgb.cgb .cgb-pcard h3{margin:2px 0 0!important;font-size:15px!important}
#cgb.cgb.cgb .cgb-step h3{margin:0 0 6px!important;font-size:14.5px!important}
#cgb.cgb.cgb p:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){margin:0 0 12px!important;padding:0!important;background:none!important;line-height:1.75!important;letter-spacing:normal!important;font-size:inherit!important;color:inherit!important}
#cgb.cgb.cgb p:last-child{margin-bottom:0!important}
#cgb.cgb.cgb a:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){text-decoration:none!important;box-shadow:none!important;border-bottom:none!important}
#cgb.cgb.cgb table:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){width:100%!important;margin:0!important;border-collapse:separate!important}
#cgb.cgb.cgb ul:where(:not(.gpc-sale)):where(:not(.gpc-sale *)), #cgb.cgb.cgb ol:where(:not(.gpc-sale)):where(:not(.gpc-sale *)), #cgb.cgb.cgb li:where(:not(.gpc-sale)):where(:not(.gpc-sale *)){margin:0!important;padding:0!important;list-style:none!important;background:none!important}

/* ===== WordPress自動整形(wpautop)で混入する空<p>・<br>の無害化 ===== */
#cgb.cgb.cgb p:empty{display:none!important;margin:0!important;padding:0!important}
#cgb.cgb.cgb .cgb-seg > br, #cgb.cgb.cgb .cgb-tabs > br, #cgb.cgb.cgb .cgb-secnav > br,
#cgb.cgb.cgb .cgb-meta-row > br, #cgb.cgb.cgb .cgb-field > br, #cgb.cgb.cgb .cgb-tool-grid > br,
#cgb.cgb.cgb .cgb-tbl-ctrl > br, #cgb.cgb.cgb .cgb-legend > br, #cgb.cgb.cgb .cgb-purpose-grid > br,
#cgb.cgb.cgb .cgb-steps > br, #cgb.cgb.cgb .cgb-branch > br, #cgb.cgb.cgb .cgb-flow > br,
#cgb.cgb.cgb .cgb-article-head > br, #cgb.cgb.cgb .cgb-result-top > br, #cgb.cgb.cgb .cgb-bto-mini > br,
#cgb.cgb.cgb > br, #cgb.cgb.cgb section > br, #cgb.cgb.cgb .cgb-result > br{display:none!important}
#cgb.cgb.cgb .cgb-tool-grid > p, #cgb.cgb.cgb .cgb-seg > p, #cgb.cgb.cgb .cgb-tabs > p,
#cgb.cgb.cgb .cgb-purpose-grid > p, #cgb.cgb.cgb .cgb-steps > p{display:contents!important;margin:0!important}
#cgb.cgb.cgb .cgb-btn-row{margin:0!important;min-width:110px!important}

/* ===== 評価色クラス(インラインstyleはテーマの!importantに負けるためクラス化) ===== */
#cgb.cgb.cgb .cgb-r-best{background:#1c5cab!important;color:#fff!important}
#cgb.cgb.cgb .cgb-r-vgood{background:#86b6ef!important;color:#0b0b0b!important}
#cgb.cgb.cgb .cgb-r-good{background:#f0efec!important;color:#0b0b0b!important}
#cgb.cgb.cgb .cgb-r-cond{background:#f2b9b3!important;color:#0b0b0b!important}
#cgb.cgb.cgb .cgb-r-ng{background:#c73a39!important;color:#fff!important}

/* ===== フローチャート矢印 ===== */
#cgb.cgb.cgb .cgb-arr{position:relative!important;display:block!important;width:2px!important;height:30px!important;background:#9db1c7!important;margin:4px auto 12px!important;flex:none!important}
#cgb.cgb.cgb .cgb-arr::after{content:""!important;position:absolute!important;left:50%!important;transform:translateX(-50%)!important;bottom:-8px!important;width:0!important;height:0!important;border:6px solid transparent!important;border-top:9px solid #9db1c7!important;background:none!important}
#cgb.cgb.cgb .cgb-arr b{position:absolute!important;top:40%!important;left:10px!important;transform:translateY(-50%)!important;font-size:10.5px!important;font-weight:800!important;line-height:1.6!important;padding:1px 9px!important;border-radius:999px!important;white-space:nowrap!important;background:#eef3f9!important;color:#52627a!important}
#cgb.cgb.cgb .cgb-arr-yes b{background:#e0f2fe!important;color:#075985!important}
#cgb.cgb.cgb .cgb-arr-no b{background:#fef3c7!important;color:#92400e!important}
#cgb.cgb.cgb .cgb-arr-mid{height:34px!important;margin:2px auto 14px!important}
#cgb.cgb.cgb .cgb-ans{display:flex!important;flex-direction:column!important;align-items:center!important;gap:0!important}
/* ===== 実機データ関連の補助 ===== */
#cgb.cgb.cgb .cgb-btn-sub{background:#fff!important;color:var(--blue-550)!important;border:1.5px solid var(--blue-250)!important;margin-top:6px!important}
#cgb.cgb.cgb .cgb-bto-none{font-size:13px!important;color:var(--ink-2)!important;background:#fff!important;border:1px dashed var(--line)!important;border-radius:10px!important;padding:12px 14px!important}
#cgb.cgb.cgb .cgb-pcard .cgb-price{margin-top:auto!important}

/* ===== 実機BTOカードの製品画像 ===== */
#cgb.cgb.cgb .cgb-bto-imgwrap{display:block!important;text-align:center!important;padding:6px 0 2px!important;margin:0 0 4px!important;background:#fff!important}
#cgb.cgb.cgb .cgb-bto-img{display:block!important;width:100%!important;max-width:150px!important;height:auto!important;aspect-ratio:1/1!important;object-fit:contain!important;margin:0 auto!important;padding:0!important;border:none!important;border-radius:8px!important;box-shadow:none!important;background:#fff!important}

#bto{scroll-margin-top:120px}

/* ===== #bto 内の gpc-sale 比較表を記事カラム幅にフィットさせる
   (gpc-sale.css はランキング用テンプレの固定幅1240pxを想定しているため) ===== */
#bto .gpc-sale{width:auto!important;max-width:100%!important}
#bto .gp{width:auto!important;max-width:100%!important;margin-left:0!important;margin-right:0!important}

/* ===== 後半(バランス例〜アーカイブ)を診断パートと視覚的に揃えるためのラッパー
   使い方: #bto の閉じdivの直後に <div class="cgb-tail"> を置き、
   本文の一番最後(アーカイブの</ul>の後)を </div> で閉じる ===== */
.cgb-tail{padding:0 28px;box-sizing:border-box}
.cgb-tail img{max-width:100%;height:auto}
@media(max-width:760px){.cgb-tail{padding:0 12px}}

/* ===== 見出しデザインをサイト標準(賢威側「バランス例」と同じ)に統一 ===== */
#cgb.cgb.cgb h2{position:relative!important;font-size:18.5px!important;font-weight:800!important;line-height:1.5!important;color:#1f2937!important;background:none!important;margin:0 0 12px!important;padding:0 0 12px!important;border:none!important;border-bottom:1px solid #e5e7eb!important;border-radius:0!important;letter-spacing:.01em!important}
#cgb.cgb.cgb h2::before{content:none!important}
#cgb.cgb.cgb h2::after{content:""!important;display:block!important;position:absolute!important;left:0!important;bottom:-1px!important;width:56px!important;height:3px!important;background:#2563eb!important;border-radius:3px!important}
#cgb.cgb.cgb h3{font-size:15.5px!important;font-weight:700!important;color:#1f2937!important;margin:26px 0 14px!important;padding:0 0 10px!important;border:none!important;border-bottom:2px solid #e5e7eb!important}
#cgb.cgb.cgb .cgb-pcard h3{border-bottom:none!important;padding:0!important;margin:2px 0 0!important;font-size:15px!important}
#cgb.cgb.cgb .cgb-step h3{border-bottom:none!important;padding:0!important;margin:0 0 6px!important;font-size:14.5px!important}

/* ===== 後半(バランス例〜アーカイブ)の幅を診断パートの余白に揃える(マークアップ変更不要) ===== */
#bto ~ h2, #bto ~ h3, #bto ~ h4, #bto ~ p, #bto ~ ul, #bto ~ ol, #bto ~ blockquote, #bto ~ div{margin-left:28px;margin-right:28px}
#bto ~ ul img, #bto ~ p img{max-width:100%;height:auto}
@media(max-width:760px){
#bto ~ h2, #bto ~ h3, #bto ~ h4, #bto ~ p, #bto ~ ul, #bto ~ ol, #bto ~ blockquote, #bto ~ div{margin-left:12px;margin-right:12px}
}

/* ===== 実機カードの一言コメント(note) ===== */
#cgb.cgb.cgb .cgb-bto-note-txt{display:inline-block!important;align-self:flex-start!important;font-size:10.5px!important;font-weight:700!important;color:#b45309!important;background:#fff7e6!important;border-radius:6px!important;padding:1px 8px!important;line-height:1.7!important}

/* ===== ページ内ナビを「目次」として明示 ===== */
#cgb.cgb.cgb .cgb-secnav{flex-wrap:wrap!important;border-radius:14px!important;row-gap:2px!important}
#cgb.cgb.cgb .cgb-secnav-label{flex:none!important;display:inline-flex!important;align-items:center!important;font-size:12.5px!important;font-weight:800!important;color:#1f2937!important;background:#eef3f9!important;border-radius:999px!important;padding:6px 14px!important;margin-right:4px!important;white-space:nowrap!important}
@media(max-width:760px){
#cgb.cgb.cgb .cgb-secnav{flex-wrap:nowrap!important}
}