/* 用途: 選定見本 AM4/AP1/AD1〜AD5 の記事・広告枠を、既存の文字・リンク・画像を保って共通の見た目へそろえる。 */
.mq-content > .sc-article[data-post-slug] h1 {
  margin: 8px 0 20px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  color: var(--color-navy);
  font-size: clamp(24px, 2.5vw, 32px);
  line-height: 1.55;
  box-shadow: none;
  text-wrap: pretty;
}
.sc-article[data-post-slug] .sc-meta { gap: 8px 14px; margin-bottom: 12px; font-size: 12px; }
.sc-article[data-post-slug] .sc-article__eyecatch { border-radius: var(--radius-card); box-shadow: none; }
@media (min-width: 1024px) {
  .sc-article[data-post-slug] .sc-article__eyecatch { max-width: 640px; margin-left: auto; margin-right: auto; }
}
.sc-article .sc-article__content {
  font-size: max(16px, var(--swl-fz--content, 16px));
  --color_icon_announce: var(--color-orange);
  --color_icon_good: var(--color-green);
  --color_icon_info: var(--color-pink);
  --color_icon_point: var(--color-teal);
  --color_icon_check: var(--color-green);
  --color_icon_caution: var(--color-orange);
  --color_list_num: var(--color-teal);
  --color_list_check: var(--color-teal);
  --color_list_good: var(--color-green);
  --color_list_bad: var(--color-red);
}
.sc-article .sc-article__content :is(.u-fz-xs, .u-fz-s) { font-size: max(12px, .9em) !important; }
.sc-article .sc-article__content :is([style*="font-size:40%"], [style*="font-size:50%"], [style*="font-size:55%"], [style*="font-size:60%"], [style*="font-size:65%"], [style*="font-size:70%"], [style*="font-size:75%"], [style*="font-size:80%"], [style*="font-size:85%"], [style*="font-size:90%"]) { font-size: max(12px, .85em) !important; }
.sc-article .sc-article__content :is(figcaption, cite, .c-balloon__iconName) { font-size: max(12px, .85em); opacity: 1; }
.sc-article .sc-article__content .p-blogCard__caption { font-size: 12px; }
.sc-article .sc-article__content .p-blogCard__title { font-size: max(14px, 1em); }
.sc-article .sc-article__content .p-blogCard__excerpt { display: none; }
.sc-article .sc-article__content [style*="color:#969696"] { color: var(--color-muted) !important; }
.sc-article .sc-article__content .sl-bg-color[style*="#739bd7"] { background-color: var(--color-blue) !important; }
.sc-article .sc-article__content :is(p, li, td, th) { text-wrap: pretty; }
.sc-article .sc-article__content .is-style-num_circle ol li::before { opacity: 1; transform: scale(.75); }
.sc-article .sc-article__content h2 {
  padding: 14px 18px;
  background: var(--color-teal);
  color: #fff;
  border: 0;
  border-radius: var(--radius-small);
  box-shadow: none;
  font-size: 1.35em;
  line-height: 1.65;
}
.sc-article .sc-article__content h2::before { content: none; }
.sc-article .sc-article__content h2 :is(span, strong, a) { color: inherit !important; }
.sc-article .sc-article__content h3 {
  padding: 6px 0 6px 14px;
  border: 0;
  border-left: 4px solid var(--color-teal);
  background: none;
  color: var(--color-navy);
  border-radius: 0;
  box-shadow: none;
}
.sc-article .sc-article__content h3::before { content: none; }

/* 吹き出しの元の画像・左右・文を保つ。 */
.sc-article .c-balloon { --balloon-color: var(--color-tint); --balloon-border-color: var(--color-border); }
.sc-article .c-balloon[data-col="gray"] { --balloon-color: #f0f5f8; }
.sc-article .c-balloon__text { border-radius: var(--radius-card); box-shadow: none; color: var(--color-text); background: var(--balloon-color); border-color: var(--color-border); }
.sc-article .c-balloon__before { border-right-color: var(--balloon-color); }
.sc-article .c-balloon__icon img { border: 1px solid var(--color-border) !important; box-shadow: none; object-fit: contain; }
.sc-article .c-balloon.-bln-right .c-balloon__icon img { border: 0 !important; border-radius: 0; }
/* 吹き出しの名前は1行に収める（「ショータ」が2行に折れていた）。アイコンの幅（56px）に4文字が入る 12px にし、長い名前はアイコンの中央にそろえたままはみ出させる。 */
.sc-article .sc-article__content .c-balloon__iconName { position: relative; left: 50%; width: max-content; min-width: 100%; transform: translateX(-50%); font-size: 12px; line-height: 1.3; letter-spacing: 0; white-space: nowrap; }

/* 既存の番号・開閉を使う目次。小見出しの表示条件は既存CSSのまま。 */
.sc-article .sc-article__content .toc-box { background: var(--color-bg); border: 1px solid var(--color-border); border-radius: var(--radius-card); box-shadow: none; }
.sc-article .sc-article__content .toc-box::before,
.sc-article .sc-article__content .toc-box::after { content: none; }
.sc-article .sc-article__content .toc-box__title { padding: 12px 16px; background: var(--color-tint); border: 0; color: var(--color-navy); font-size: 16px; letter-spacing: 0; text-shadow: none; }
.sc-article .sc-article__content .toc-box__title::before { color: var(--color-teal); background: var(--color-teal); box-shadow: none; border: 0; transform: none; }
.sc-article .sc-article__content .toc-box__title::after { font-size: 12px; color: var(--color-muted); background: #fff; border-color: var(--color-border); letter-spacing: 0; }
.sc-article .sc-article__content .toc-box__list { padding: 8px 16px; }
.sc-article .sc-article__content .toc-box__item { padding: 0 0 0 36px; border: 0; background: none; box-shadow: none; border-radius: 0; }
.sc-article .sc-article__content .toc-box__item::before { background: var(--color-teal); color: #fff; border: 0; box-shadow: none; border-radius: 50%; width: 24px; height: 24px; left: 0; top: 10px; font-size: 12px; line-height: 24px; content: counter(toc-item); }
.sc-article .sc-article__content .toc-box__item--h3 { margin-left: 18px; padding-left: 18px; }
.sc-article .sc-article__content .toc-box__item--h3::before { background: var(--color-muted); width: 5px; height: 5px; top: 20px; content: ''; }
.sc-article .sc-article__content .toc-box__item:hover { background: var(--color-tint); transform: none; }
.sc-article .sc-article__content .toc-box a { display: flex; align-items: center; padding: 8px 0; min-height: 44px; font-size: 14px; line-height: 1.7; color: var(--color-navy); }
.sc-article .sc-article__content .toc-box a:hover { color: var(--color-teal); }
.sc-article .sc-article__content .toc-box__more { display: flex; align-items: center; justify-content: center; min-height: 44px; margin: 8px 16px 16px; padding: 8px; border: 1px solid var(--color-border); border-radius: var(--radius-button); background: #fff; color: var(--color-teal); font-size: 14px; }
.sc-article .sc-article__content .toc-box__toggle:focus-visible ~ .toc-box__more { outline: 3px solid var(--color-focus); outline-offset: 3px; }

/* 囲み・手順・引用・表。表の横スクロールとセルアイコンの配置は保つ。 */
.sc-article .sc-article__content :is(.cap_box, .wp-block-group[class*="is-style-big_icon"], .is-style-crease) { border-radius: var(--radius-card); box-shadow: none; }
/* 題と本文を一体で囲む。色違いにも同じ外枠を使う。 */
.sc-article .sc-article__content .cap_box { border: 1px solid color-mix(in srgb, var(--capbox-color) 24%, #fff); background: color-mix(in srgb, var(--capbox-color) 7%, #fff); overflow: hidden; }
.sc-article .sc-article__content .cap_box > .cap_box_ttl { border-radius: 0; }
.sc-article .sc-article__content .cap_box > .cap_box_content { margin: 0; border: 0; border-radius: 0; background: transparent; }
.sc-article .sc-article__content .cap_box[data-colset="col1"] { border-color: #f4c8d8; }
.sc-article .sc-article__content .cap_box[data-colset="col1"] { --capbox-color: var(--color-pink); --capbox-color--bg: var(--color-pink-tint); }
.sc-article .sc-article__content .cap_box[data-colset="col1"] > .cap_box_ttl { color: var(--color-pink); background: var(--color-pink-tint); }
.sc-article .sc-article__content .cap_box.is-style-shadow[data-colset="col1"] > .cap_box_content { background: var(--color-pink-tint); }
.sc-article .sc-article__content .sc-bl-step { padding: 18px; background: var(--color-chip-yellow); border: 1px solid var(--color-border); border-radius: var(--radius-card); }
.sc-article .sc-article__content .sc-bl-step__number { background: var(--color-teal); border-radius: 50%; color: #fff; }
.sc-article .sc-article__content .sc-bl-step__number .__label { font-size: 12px; }
.sc-article .sc-article__content .sc-bl-step.is-style-small .sc-bl-step__number { background: transparent; color: var(--color-teal); }
.sc-article .sc-article__content .sc-bl-step.is-style-small .sc-bl-step__number .__label { opacity: 1; }
.sc-article .sc-article__content .sc-bl-step__title { color: var(--color-navy); }
.sc-article .sc-article__content blockquote:not(.mq-review-card):not(.twitter-tweet) { padding: 20px 24px; border: 1px solid var(--color-border); border-radius: var(--radius-card); background: #f0f5f8; }
.sc-article .sc-article__content blockquote:not(.mq-review-card):not(.twitter-tweet)::before,
.sc-article .sc-article__content blockquote:not(.mq-review-card):not(.twitter-tweet)::after { content: none; }
.sc-article .sc-article__content :is(.mq-review-card, .mq-review-summary, .mq-stat-card) { border-color: var(--color-border); border-radius: var(--radius-card); background: var(--color-bg); box-shadow: none; }
.sc-article .sc-article__content .mq-review-card { --mq-review-accent: var(--color-teal); }
.sc-article .sc-article__content .mq-review-card--bad { --mq-review-accent: var(--color-pink); }
.sc-article .sc-article__content :is(.mq-review-card, .mq-review-summary, .mq-stat-card)::before { font-size: max(12px, .82em); }
.sc-article .sc-article__content .wp-block-table { border-radius: var(--radius-small); }
.sc-article .sc-article__content .wp-block-table :is(th, td) { border-color: var(--color-border); }
.sc-article .sc-article__content .wp-block-table thead th { background: var(--color-tint); color: var(--color-navy); }
.sc-article .sc-article__content .sc-bl-tab .c-tabList { gap: 8px; }
.sc-article .sc-article__content .sc-bl-tab .c-tabList__button { min-height: 44px; font-size: 14px; border-radius: var(--radius-small); box-shadow: none; background: #fff; color: var(--color-teal); border: 1px solid var(--color-border); text-shadow: none; }
.sc-article .sc-article__content .sc-bl-tab .c-tabList__button:is([aria-selected="true"], :hover) { background: var(--color-teal); color: #fff; box-shadow: none; border-color: var(--color-teal); }
.sc-article .sc-article__content .sc-bl-tab .c-tabBody__item[aria-hidden="false"] { padding: 16px; border: 1px solid var(--color-border); background: var(--color-bg); box-shadow: none; }
.sc-article .sc-article__content .sc-bl-faq { border-color: var(--color-border) !important; background: var(--color-bg); box-shadow: none; }
.sc-article .sc-article__content .sc-bl-faq .faq_q { background: var(--color-tint); }
.sc-article .sc-article__content .sc-bl-faq :is(.faq_q, .faq_a)::before { font-size: 12px; color: #fff; background: var(--color-teal); }
.sc-article .sc-article__content .sc-bl-faq .faq_q::before { background: var(--color-pink); }

/* AD1: 同じ構造の単独CTAを、全サービスで共通に受ける。 */
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)):has(> .sc-bl-button) { margin-bottom: 24px !important; padding: 20px 18px; border: 2px solid var(--color-teal); border-radius: var(--radius-card); background: #fff; box-shadow: var(--shadow-card); }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)):has(> .sc-bl-button) > p:first-child { color: var(--color-teal); font-weight: 700; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)):has(> .sc-bl-button) > p:first-child .sl-inline-color { display: inline-block; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)):has(> .sc-bl-button) > p:last-child { padding-top: 12px; border-top: 1px dashed var(--color-border); font-size: 13px; color: var(--color-muted); }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) > .sc-bl-button { margin-top: 16px !important; margin-bottom: 16px !important; }
.sc-article .sc-article__content :is(.sc-bl-button.red_ a, .sl-inline-btn.red_ a) { display: flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 20px; border: 0; border-radius: var(--radius-button); background: var(--color-cta); color: #fff !important; box-shadow: var(--shadow-card); font-size: 16px; font-weight: 700; line-height: 1.6; text-shadow: none; text-decoration: none; }
.sc-article .sc-article__content :is(.sc-bl-button.red_ a, .sl-inline-btn.red_ a):hover { background: var(--color-cta-hover); color: #fff !important; }
.sc-article .sc-article__content .sc-bl-button a .u-fz-xs { display: inline-block; white-space: nowrap; }
.sc-article .sc-article__content .sl-inline-btn.is-style-btn_line a { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; border-color: var(--color-teal); border-radius: var(--radius-button); color: var(--color-teal); }
.sc-article .sc-article__content .sl-inline-btn.is-style-btn_line a:hover { background: var(--color-tint); color: var(--color-teal-hover); }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .sl-inline-btn { margin-top: 14px !important; margin-bottom: 14px !important; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .sl-inline-btn a { padding: 10px 14px; white-space: normal; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .sl-inline-btn a span { font-size: inherit !important; white-space: normal !important; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) > .is-style-balloon_box2 { padding: 8px 16px; border-color: var(--color-border); border-radius: var(--radius-button); background: var(--color-tint); color: var(--color-teal); }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) > .is-style-balloon_box2::after { content: none; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) > .is-style-balloon_box2::before { content: none; }

/* AD2〜4: ブログパーツのサービス表だけを白いカードへ。通常の比較表には適用しない。 */
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(.sl-inline-btn):has(img) {
  --ad-columns: 1;
  margin-bottom: 16px !important;
  padding: 16px;
  background: var(--color-tint);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-card);
  overflow: visible;
}
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(.sl-inline-btn):has(img) > table { border: 0; background: transparent; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(.sl-inline-btn):has(img) thead { background: transparent; color: var(--color-teal); }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(.sl-inline-btn):has(img) :is(th, td) { padding: 16px 12px; border: 0; background: #fff; font-size: 16px; line-height: 1.8; min-width: 0 !important; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(.sl-inline-btn):has(img) thead th { background: transparent; color: var(--color-teal); padding: 0 0 16px; font-size: 20px; line-height: 1.6; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(.sl-inline-btn):has(img) img { width: 80px !important; height: 80px; max-width: 100%; object-fit: contain; border-radius: var(--radius-card); }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(.sl-inline-btn):has(img) td a:not(.sl-inline-btn a):not(:has(img)) { font-size: 16px; font-weight: 700; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(.sl-inline-btn):has(img) + p { font-size: 13px; color: var(--color-muted); }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)):has(> .sc-bl-button) > p:last-child span,
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(.sl-inline-btn):has(img) + p span { font-size: inherit !important; color: inherit !important; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(.sl-inline-btn):has(img) + p .sl-marker { color: var(--color-navy) !important; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .sl-marker { color: var(--color-navy); }

/* AD2: 2行×3列の表を、HTMLを動かさずサービス単位に並べる。 */
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) table,
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) thead,
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) thead tr { display: block; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) thead th { display: block; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) tbody { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 12px; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) tbody tr { display: contents; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) tbody tr:first-child td { border-radius: var(--radius-card) var(--radius-card) 0 0; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) tbody tr:last-child td { border-radius: 0 0 var(--radius-card) var(--radius-card); padding-top: 0; }

/* AD3: 1サービスの詳細表。アイコンと名前をCSS gridで横に置く。 */
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(tbody tr:first-child > td:only-child) :is(table, thead, tbody, tr, td, th) { display: block; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(tbody tr:first-child > td:only-child) td { text-align: left; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(tbody tr:first-child > td:only-child) tbody tr:first-child td { text-align: center; border-radius: var(--radius-card) var(--radius-card) 0 0; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(tbody tr:first-child > td:only-child) tbody tr:last-child td { border-radius: 0 0 var(--radius-card) var(--radius-card); }

.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(tbody tr:first-child > td:only-child) tbody tr:first-child td { display: grid; grid-template-columns: 80px minmax(0, 1fr); align-items: center; gap: 10px 16px; text-align: left; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(tbody tr:first-child > td:only-child) tbody tr:first-child td > .sl-fz:first-child { grid-column: 1 / -1; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(tbody tr:first-child > td:only-child) tbody tr:first-child td > br { display: none; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(tbody tr:first-child > td:only-child) tbody tr:first-child td a:not(:has(img)) { font-size: 26px; }

/* AD4: 4サービスをPCでは4列、スマホでは1サービスずつ横長の枠に。 */
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(thead th[colspan="2"]):has(img) :is(table, thead, thead tr, th) { display: block; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(thead th[colspan="2"]):has(img) tbody { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(thead th[colspan="2"]):has(img) tbody tr { display: flex; flex-direction: column; min-width: 0; border-radius: var(--radius-card); background: #fff; box-shadow: var(--shadow-card); }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(thead th[colspan="2"]):has(img) td { display: block; width: auto !important; background: transparent; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(thead th[colspan="2"]):has(img) td:last-child { padding-top: 0; font-size: 14px; flex: 1; text-align: left; }
.sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(thead th[colspan="2"]):has(img) td:first-child a:not(:has(img)) { white-space: nowrap; font-size: 14px; }

@media (min-width: 768px) {
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(thead th[colspan="2"]):has(img) td:last-child { display: flex; flex-direction: column; gap: 6px; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(thead th[colspan="2"]):has(img) td:last-child > br { display: none; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(thead th[colspan="2"]):has(img) td:last-child > .sl-inline-btn { display: flex !important; flex: 1; flex-direction: column; justify-content: flex-end; }
}

/* 既存の著者欄の画像と紹介文。 */
.sc-article .sc-article__content .sc-bl-columns.is-style-clmn-border:has(figcaption) { background: var(--color-tint); border: 1px solid var(--color-border); border-radius: var(--radius-card); }
.sc-article .sc-article__content .sc-bl-columns.is-style-clmn-border:has(figcaption) > .sc-bl-columns__inner { border: 0; }
.sc-article .sc-article__content .sc-bl-columns.is-style-clmn-border:has(figcaption) .sc-bl-column { border: 0; }
@media (min-width: 600px) {
  .sc-article .sc-article__content .sc-bl-columns.is-style-clmn-border:has(figcaption) > .sc-bl-columns__inner { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 4px 16px; align-items: start; margin: 0; padding: 16px; }
  .sc-article .sc-article__content .sc-bl-columns.is-style-clmn-border:has(figcaption) .sc-bl-column,
  .sc-article .sc-article__content .sc-bl-columns.is-style-clmn-border:has(figcaption) figure { display: contents; }
  .sc-article .sc-article__content .sc-bl-columns.is-style-clmn-border:has(figcaption) picture { grid-column: 1; grid-row: 1 / span 3; }
  .sc-article .sc-article__content .sc-bl-columns.is-style-clmn-border:has(figcaption) figure img { display: block; width: 72px !important; height: 72px; margin: 0; object-fit: contain; }
  .sc-article .sc-article__content .sc-bl-columns.is-style-clmn-border:has(figcaption) figcaption { grid-column: 2; grid-row: 1; margin: 0; text-align: left; font-size: 14px; }
  .sc-article .sc-article__content .sc-bl-columns.is-style-clmn-border:has(figcaption) .sc-bl-column:last-child > p { grid-column: 2; margin: 0; line-height: 1.7; }
}

/* AD5: kb.jsが注入するCSSより詳細度を上げ、表示条件と計測を保つ。 */
.mq-kbar .mq-kbar__in { width: min(760px, 100%); gap: 8px; padding: 8px; border: 1px solid var(--color-border); border-radius: var(--radius-card); background: linear-gradient(110deg, #fff 65%, var(--color-tint)); box-shadow: var(--shadow-card-hover); }
.mq-kbar .mq-kbar__ic { width: 44px; height: 44px; border-radius: var(--radius-small); }
.mq-kbar .mq-kbar__t1 { font-size: 12px; color: var(--color-navy); line-height: 1.35; text-wrap: pretty; }
.mq-kbar .mq-kbar__t2 { font-size: 12px; color: var(--color-muted); line-height: 1.35; text-wrap: pretty; }
.mq-kbar .mq-kbar__bt a { display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 12px; background: var(--color-cta); color: #fff !important; border-radius: var(--radius-button); box-shadow: var(--shadow-card); font-size: 12px; }
.mq-kbar .mq-kbar__bt a:hover { background: var(--color-cta-hover); }
.mq-kbar .mq-kbar__x { top: -20px; right: -4px; width: 44px; height: 44px; border-color: var(--color-border); color: var(--color-muted); font-size: 22px; line-height: 42px; box-shadow: var(--shadow-card); }

@media (max-width: 767px) {
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) thead th { word-break: auto-phrase; text-wrap: pretty; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) tbody tr:first-child td { display: flex; flex-direction: column; align-items: center; gap: 6px; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) tbody tr:first-child td > br { display: none; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) tbody tr:first-child td > strong:first-child { display: flex; align-items: center; justify-content: center; min-height: 40px; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) tbody tr:first-child td > .sl-fz { display: flex; align-items: center; min-height: 44px; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) thead th .sl-fz { font-size: 12px !important; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) tbody tr:last-child td { display: flex; flex-direction: column; align-items: stretch; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) tbody tr:last-child td > strong { display: flex; align-items: center; justify-content: center; min-height: 40px; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) tbody tr:last-child td > br { display: none; }
  /* AD2: スマホでも3列。特徴・アイコン・名前・ポイントは上段、CTAは下段。 */
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) { padding: 4px; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) tbody { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 3px; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) td { padding: 10px 2px; font-size: 12px; line-height: 1.6; word-break: auto-phrase; overflow-wrap: normal; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) td :is(.sl-fz, a) { font-size: 12px !important; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) td img { width: 64px !important; height: 64px; margin: 8px 0 4px; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) .sl-inline-btn { display: block; margin: 10px 0 !important; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) .sl-inline-btn a { display: flex !important; align-items: center; justify-content: center; min-height: 52px; padding: 6px 2px; line-height: 1.6; word-break: auto-phrase; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(thead th[colspan="2"]):has(img) tbody { grid-template-columns: minmax(0, 1fr); }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(thead th[colspan="2"]):has(img) tbody tr { display: grid; grid-template-columns: 108px minmax(0, 1fr); }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(thead th[colspan="2"]):has(img) td { padding: 14px 10px; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(thead th[colspan="2"]):has(img) td:last-child { padding-top: 14px; }
}
@media (max-width: 599px) {
  .mq-content > .sc-article[data-post-slug] h1 { font-size: 24px; }
  .sc-article .sc-article__content h2 { padding: 12px 14px; font-size: 1.25em; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(.sl-inline-btn):has(img) { padding: 12px; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(.sl-inline-btn):has(img) thead th { font-size: 18px; text-wrap: balance; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)):has(> .sc-bl-button) { padding: 16px 12px; }
  .sc-article .sc-article__content .sc-bl-step { padding: 16px 12px; }
  .mq-kbar .mq-kbar__ic { width: 36px; height: 36px; }
  .mq-kbar .mq-kbar__bt a { padding: 8px; }
}
@media (max-width: 359px) {
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(thead th[colspan="2"]):has(img) tbody tr { grid-template-columns: minmax(0, 1fr); }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table.is-thead-centered:has(thead th[colspan="2"]):has(img) td:last-child { padding-top: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .sc-article *, .mq-kbar, .mq-kbar * { transition: none !important; animation: none !important; }
}

/* 記事の題の上の行は、小さな印と日付を1行にそろえる。 */
.sc-article[data-post-slug] .sc-meta { gap: 6px; font-size: 12px; }
.sc-article[data-post-slug] .sc-meta .sc-category-badge { position: relative; min-height: 44px; height: 44px; padding: 3px 6px; border-radius: 6px; white-space: nowrap; }
.sc-article[data-post-slug] .sc-meta .sc-category-badge::after { content: ""; position: absolute; inset: 0; }
.sc-article[data-post-slug] .sc-meta .sc-pr-label { padding: 2px 3px; font-size: 12px; }
.sc-article[data-post-slug] .sc-meta__date { gap: 2px; }
@media (min-width: 375px) and (max-width: 767px) {
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)):has(> .sc-bl-button) { padding-inline: 8px; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)):has(> .sc-bl-button) > p:first-child .sl-fz { font-size: 12px !important; white-space: nowrap; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) > .sc-bl-button a { padding-inline: 8px; font-size: 13px; white-space: nowrap; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) > .sc-bl-button a .sl-fz { font-size: 12px !important; }
}

@media (max-width: 374px) {
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)):has(> .sc-bl-button) > p:first-child .sl-fz { font-size: 12px !important; word-break: auto-phrase; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) > .sc-bl-button a { padding-inline: 8px; font-size: 12px; word-break: auto-phrase; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) > .sc-bl-button a .sl-fz { font-size: 12px !important; }
  .sc-article .sc-article__content .p-blogParts:where(:not(.mq-ad)) .wp-block-table:has(thead th[colspan="3"]):has(.sl-inline-btn) tbody tr:last-child td:last-child .sl-inline-btn a { letter-spacing: -.08em; }
}

/* 記事の題・吹き出し・目次・STEPの密度をそろえる。固定ページには適用しない。 */
.mq-content > .sc-article.mq-article-v2[data-post-slug] h1 { margin-bottom: 16px; }
.mq-article-v2 .c-balloon { margin-block: 14px; }
.mq-article-v2 .c-balloon__icon { width: 56px; }
.mq-article-v2 .c-balloon .c-balloon__icon img { width: 56px; height: 56px; }
.mq-article-v2 .c-balloon__body { padding: 2px 14px; }
.mq-article-v2 .c-balloon__text { padding: 10px 12px; font-size: 14px; line-height: 1.65; }
.mq-article-v2 .c-balloon__text :is(.sl-fz, p) { font-size: inherit !important; }
.sc-article.mq-article-v2 .sc-article__content h2 { margin-block: 24px 14px; padding: 10px 14px; }
.sc-article.mq-article-v2 .sc-article__content .toc-box__list { padding: 4px 12px; }
.sc-article.mq-article-v2 .sc-article__content .toc-box__item + .toc-box__item { margin-top: 0; }
.sc-article.mq-article-v2 .sc-article__content .toc-box a { padding-block: 5px; line-height: 1.5; }
.sc-article.mq-article-v2 .sc-article__content .sc-bl-step { padding: 12px; }
.sc-article.mq-article-v2 .sc-article__content .sc-bl-step__item { display: grid; grid-template-columns: 44px minmax(0, 1fr); align-items: start; gap: 8px 10px; padding: 0; margin-block: 0 16px !important; }
.sc-article.mq-article-v2 .sc-article__content .sc-bl-step__item:last-child { margin-bottom: 0 !important; }
.sc-article.mq-article-v2 .sc-article__content .sc-bl-step__item::before { content: none; }
.sc-article.mq-article-v2 .sc-article__content .sc-bl-step__number { position: static; box-sizing: border-box; width: 44px; height: 44px; border-radius: 50%; background: var(--color-teal); color: #fff; }
.sc-article.mq-article-v2 .sc-article__content .sc-bl-step__number .__label { font-size: 12px; }
.sc-article.mq-article-v2 .sc-article__content .sc-bl-step__title { align-self: center; font-size: 14px; line-height: 1.6; }
.sc-article.mq-article-v2 .sc-article__content .sc-bl-step__body { grid-column: 1 / -1; margin: 0; }
@media (min-width: 768px) {
  .sc-article.mq-article-v2 .sc-article__content .toc-box__list { display: block; column-count: 2; column-gap: 20px; }
  .sc-article.mq-article-v2 .sc-article__content .toc-box__item { break-inside: avoid; }
  .sc-article.mq-article-v2 .sc-article__content .toc-box__item:has(+ .toc-box__item--h3) { break-after: avoid; }
  .sc-article.mq-article-v2 .sc-article__content .sc-bl-step:has(> .sc-bl-step__item:nth-child(3):last-child) { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
  .sc-article.mq-article-v2 .sc-article__content .sc-bl-step:has(> .sc-bl-step__item:nth-child(3):last-child) > .sc-bl-step__item { margin-bottom: 0 !important; }
}
@media (max-width: 767px) {
  .mq-content > .sc-article.mq-article-v2[data-post-slug] h1 { font-size: 22px; line-height: 1.5; }
  .sc-article.mq-article-v2 .sc-article__content h2 { font-size: 18px; line-height: 1.55; }
}

/* AD1〜4: 構造検査に合格した枠だけに適用する。リンクの祖先・画像・文字は保持。 */
.sc-article .sc-article__content .mq-ad { --ad-cta: #d6283f; --ad-cta-end: #c41e3a; --ad-button: #d6283f; --ad-button-end: #c41e3a; --ad-tint: #fff0f5; --ad-ink: #c41e3a; }
.sc-article .sc-article__content .mq-ad .mq-ad-symbol,
.sc-article .sc-article__content .mq-ad .mq-ad-dot { display: none; }
.sc-article .sc-article__content .mq-ad .mq-ad-number { font-size: 22px !important; font-weight: 800; white-space: nowrap; color: #b52424 !important; }
.sc-article .sc-article__content .mq-ad :is(.sl-inline-btn, .sc-bl-button) { margin-block: 10px !important; }
.sc-article .sc-article__content .mq-ad :is(.sl-inline-btn, .sc-bl-button) a { position: relative; display: flex !important; align-items: center; justify-content: center; gap: 5px; min-height: 48px; padding: 10px 30px 10px 12px; border: 0; border-radius: 999px; background: linear-gradient(160deg, var(--ad-cta), var(--ad-cta-end)); color: #fff !important; box-shadow: 0 3px 6px #20374720, inset 0 2px 0 #ffffff30; text-decoration: none; font-size: 14px; line-height: 1.55; }
.sc-article .sc-article__content .mq-ad :is(.sl-inline-btn, .sc-bl-button) a:hover { filter: brightness(.93); color: #fff !important; }
.sc-article .sc-article__content .mq-ad :is(.sl-inline-btn, .sc-bl-button) a::after { content: '›'; position: absolute; right: 11px; top: 50%; transform: translateY(-50%); font-size: 24px; line-height: 1; }
.sc-article .sc-article__content .mq-ad :is(.sl-inline-btn, .sc-bl-button) a .__icon { display: none; }
.sc-article .sc-article__content .mq-ad :is(.sl-inline-btn, .sc-bl-button) a :is(span, .sl-fz) { font-size: inherit !important; }
.sc-article .sc-article__content .mq-ad a:focus-visible { outline: 3px solid var(--color-focus); outline-offset: 3px; }
.sc-article .sc-article__content .mq-ad > p:last-child:not(:first-child) { font-size: 13px; line-height: 1.65; color: #526574; }
.sc-article .sc-article__content .mq-ad > p:last-child:not(:first-child) span { font-size: inherit !important; color: inherit !important; }
.sc-article .sc-article__content .mq-ad-single { padding: 14px 10px; border: 2px solid var(--color-teal); }
.sc-article .sc-article__content .mq-ad-single > p:first-child { margin-bottom: 0 !important; line-height: 1.5 !important; font-size: 12px; }
.sc-article .sc-article__content .mq-ad-single > p:first-child .sl-fz { font-size: inherit !important; white-space: normal; }
.sc-article .sc-article__content .mq-ad-single > p:last-child:not(:first-child) { margin-bottom: 0 !important; padding-top: 10px; border-top: 1px dashed var(--color-border); }
.sc-article .sc-article__content .mq-ad-single > .sc-bl-button a { padding-right: 38px; font-size: 14px; white-space: normal; }
.sc-article .sc-article__content .mq-ad-single > .sc-bl-button a::after { display: grid; place-items: center; width: 24px; height: 24px; right: 10px; border-radius: 50%; color: var(--ad-cta); background: #fff; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table,
.sc-article .sc-article__content .mq-ad-four > .wp-block-table { padding: 8px; border-radius: 12px; }
.sc-article .sc-article__content :is(.mq-ad-three, .mq-ad-four) > .wp-block-table :is(th, td) { line-height: 1.5; }
.sc-article .sc-article__content :is(.mq-ad-three, .mq-ad-four) > .wp-block-table img { width: 64px !important; height: 64px; margin: 6px 0; border-radius: 10px; }
.sc-article .sc-article__content :is(.mq-ad-three, .mq-ad-four, .mq-ad-detail) > .wp-block-table td a:not(.sl-inline-btn a):not(:has(img)) { color: var(--color-navy); text-decoration: none; font-size: 16px !important; line-height: 1.45; font-weight: 800; word-break: auto-phrase; }
.sc-article .sc-article__content :is(.mq-ad-three, .mq-ad-four, .mq-ad-detail) > .wp-block-table td a:not(.sl-inline-btn a):not(:has(img)):hover { color: var(--color-teal); text-decoration: underline; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody { gap: 0 5px; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody tr:first-child td { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 8px 3px 4px; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table td > br { display: none; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody tr:first-child td > strong:first-child { display: flex; justify-content: center; align-items: center; width: 100%; min-height: 38px; padding: 3px; border-radius: 7px; background: var(--ad-tint); }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody tr:first-child td > strong:first-child :is(span, .sl-fz) { color: var(--ad-ink) !important; font-size: 12px !important; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody tr:first-child td > strong:not(:first-child) { padding: 3px 0; border-radius: 6px; background: #fff0f5; color: #b52424; font-size: 12px; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody tr:first-child td > strong:not(:first-child) span { font-size: inherit !important; color: inherit !important; white-space: normal; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody tr:first-child td > strong:not(:first-child) .mq-ad-number { font-size: 19px !important; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody tr:first-child td > .sl-fz { min-height: 46px; display: flex; align-items: center; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody tr:last-child td { display: flex; flex-direction: column; padding: 4px 3px 2px; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody tr:last-child td > strong { min-height: 38px; display: flex; align-items: center; justify-content: center; font-size: 12px; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody tr:last-child td > strong .sl-fz { font-size: 12px !important; }
.sc-article .sc-article__content .mq-ad-three .sl-inline-btn { margin-block: 8px !important; }
.sc-article .sc-article__content .mq-ad-three .sl-inline-btn a { padding: 6px 17px 6px 4px; min-height: 52px; font-size: 12px; }
.sc-article .sc-article__content .mq-ad-three .sl-inline-btn a::after { right: 5px; font-size: 20px; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table td:nth-child(2),
.sc-article .sc-article__content .mq-ad-four > .wp-block-table tbody tr:nth-child(2) { --ad-button: #1765a6; --ad-button-end: #124e85; --ad-tint: #e7f3ff; --ad-ink: #265d9f; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table td:nth-child(3),
.sc-article .sc-article__content .mq-ad-four > .wp-block-table tbody tr:nth-child(3) { --ad-button: #187a50; --ad-button-end: #12623e; --ad-tint: #e2f7ee; --ad-ink: #28753e; }
.sc-article .sc-article__content .mq-ad-four > .wp-block-table tbody tr:nth-child(4) { --ad-button: #a85413; --ad-button-end: #86400d; --ad-tint: #fff7dc; --ad-ink: #92520d; }

/* AD3: 既存のラベル、表の見出し、サービス名、文字の箇条書きを一体のカードへ。 */
.sc-article .sc-article__content .mq-ad-detail { padding: 14px; border: 2px solid #d7e8ec; border-radius: 14px; background: #fff; }
.sc-article .sc-article__content .mq-ad-detail > .wp-block-table { margin: 0 !important; padding: 0; border: 0; background: #fff; }
.sc-article .sc-article__content .mq-ad-detail > .is-style-balloon_box2 { width: fit-content; margin: 0 0 12px !important; padding: 6px 12px; font-size: 13px; }
.sc-article .sc-article__content .mq-ad-detail > .is-style-balloon_box2 .sl-fz { font-size: inherit !important; }
.sc-article .sc-article__content .mq-ad-detail > .wp-block-table thead th { padding: 0 0 12px; background: #fff; color: var(--color-navy); font-size: 20px; text-decoration: underline; text-decoration-color: #f6df71; text-decoration-thickness: 7px; text-underline-offset: -2px; text-decoration-skip-ink: none; }
.sc-article .sc-article__content .mq-ad-detail > .wp-block-table td { padding: 6px 0; }
.sc-article .sc-article__content .mq-ad-detail > .wp-block-table tbody tr:first-child td { grid-template-columns: 64px minmax(0, 1fr); gap: 8px 12px; }
.sc-article .sc-article__content .mq-ad-detail > .wp-block-table tbody tr:first-child td > .sl-fz:first-child { width: fit-content; padding: 4px 12px; border-radius: 999px; background: var(--ad-button); color: #fff; font-size: 12px; }
.sc-article .sc-article__content .mq-ad-detail > .wp-block-table tbody tr:first-child td > .sl-fz:first-child span { color: #fff !important; font-size: inherit !important; }
.sc-article .sc-article__content .mq-ad-detail > .wp-block-table td img { width: 64px !important; height: 64px; margin: 0; border-radius: 10px; }
.sc-article .sc-article__content .mq-ad-detail > .wp-block-table td a:not(.sl-inline-btn a):not(:has(img)) { font-size: 28px !important; }
.sc-article .sc-article__content .mq-ad-detail > .wp-block-table tbody tr:last-child td > strong:first-child { display: block; padding: 8px; border-radius: 8px; background: #fff0f5; color: #b52424; font-size: 14px; }
.sc-article .sc-article__content .mq-ad-detail > .wp-block-table tbody tr:last-child td > strong:first-child span { font-size: inherit !important; }
.sc-article .sc-article__content .mq-ad-detail > .wp-block-table tbody tr:last-child td > strong:first-child .mq-ad-number { font-size: 26px !important; }
.sc-article .sc-article__content .mq-ad .mq-ad-check-line { display: block; position: relative; padding: 7px 0 7px 26px; border-bottom: 1px solid var(--color-border); color: var(--color-navy); line-height: 1.65; }
.sc-article .sc-article__content .mq-ad .mq-ad-check-line::before { content: ''; position: absolute; left: 5px; top: 12px; width: 10px; height: 6px; border-left: 2px solid var(--color-teal); border-bottom: 2px solid var(--color-teal); transform: rotate(-45deg); }
.sc-article .sc-article__content .mq-ad-detail .mq-ad-check-line :is(span, strong) { font-size: inherit !important; }
.sc-article .sc-article__content .mq-ad-detail .mq-ad-check-line .sl-marker { background: none; }
.sc-article .sc-article__content .mq-ad-detail td > .sl-fz:has(.mq-ad-check-line) + br { display: none; }
.sc-article .sc-article__content .mq-ad-detail > p:last-child { margin: 4px 0 0 !important; }

/* AD4: リンクを動かさず、CSSの配置でアイコン・名前・説明・特典・ボタンを並べる。 */
.sc-article .sc-article__content .mq-ad-four > .wp-block-table tbody tr { padding: 10px; border: 1px solid var(--color-border); }
.sc-article .sc-article__content .mq-ad-four > .wp-block-table td { padding: 0; }
.sc-article .sc-article__content .mq-ad-four > .wp-block-table td > br { display: none; }
.sc-article .sc-article__content .mq-ad-four > .wp-block-table td:first-child > :first-child { display: block; width: fit-content; margin: 0 auto 6px; padding: 3px 8px; border-radius: 999px; background: var(--ad-button); color: #fff; font-size: 12px; }
.sc-article .sc-article__content .mq-ad-four > .wp-block-table td:first-child > :first-child span { color: #fff !important; font-size: inherit !important; }
.sc-article .sc-article__content .mq-ad-four .mq-ad-caption { display: block; color: var(--ad-ink); font-weight: 700; line-height: 1.5; }
.sc-article .sc-article__content .mq-ad-four :is(.mq-ad-caption, .mq-ad-description) .sl-fz { font-size: 12px !important; }
.sc-article .sc-article__content .mq-ad-four .mq-ad-description { display: block; }
.sc-article .sc-article__content .mq-ad-four .mq-ad-description > br { display: none; }
.sc-article .sc-article__content .mq-ad-four .mq-ad-check-line { padding: 2px 0; border: 0; font-size: 12px; line-height: 1.5; }
.sc-article .sc-article__content .mq-ad-four .mq-ad-check-line::before { content: none; }
.sc-article .sc-article__content .mq-ad-four .mq-ad-benefit { display: block; margin-top: auto; padding: 6px; border-radius: 8px; background: #fff0f5; color: #b52424; font-size: 12px; line-height: 1.4; }
.sc-article .sc-article__content .mq-ad-four .mq-ad-benefit :is(strong, span) { font-size: inherit !important; color: inherit !important; }
.sc-article .sc-article__content .mq-ad-four .mq-ad-benefit .mq-ad-number { font-size: 20px !important; }
.sc-article .sc-article__content .mq-ad-four > .wp-block-table + p { padding: 12px; border-radius: 10px; background: var(--color-tint); color: var(--color-navy); font-size: 14px; }
.sc-article .sc-article__content .mq-ad-four > .wp-block-table + p span { font-size: inherit !important; }
@media (max-width: 767px) {
  .sc-article .sc-article__content .mq-ad-three > .wp-block-table { padding: 5px; }
  .sc-article .sc-article__content .mq-ad-three > .wp-block-table thead th { padding-bottom: 10px; font-size: 14px; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table tbody { gap: 8px; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table tbody tr { display: grid; grid-template-columns: 58px minmax(0, 1fr) 108px; gap: 5px 7px; padding: 8px; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table td { display: contents; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table td:first-child > :first-child { grid-column: 1; grid-row: 1; margin: 0; padding: 2px; text-align: center; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table td:first-child > .sr-bl:has(img) { grid-column: 1; grid-row: 2 / span 2; align-self: start; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table img { width: 54px !important; height: 54px; margin: 0; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table td:first-child > :is(.sl-fz, .sr-bl):has(a):not(:has(img)) { grid-column: 2; grid-row: 1; font-size: 16px !important; }
  .sc-article .sc-article__content .mq-ad-four .mq-ad-caption { grid-column: 2; grid-row: 2; font-size: 12px; }
  .sc-article .sc-article__content .mq-ad-four .mq-ad-description { grid-column: 2; grid-row: 3; font-size: 12px; }
  .sc-article .sc-article__content .mq-ad-four .mq-ad-benefit { grid-column: 3; grid-row: 1 / span 2; align-self: start; margin: 0; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table td:last-child > .sl-inline-btn { grid-column: 3; grid-row: 3; align-self: start; margin-block: 4px !important; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table .sl-inline-btn a { padding: 6px 20px 6px 4px; font-size: 12px; min-height: 44px; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table .sl-inline-btn a::after { right: 6px; font-size: 20px; }
}
@media (max-width: 374px) {
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table tbody tr { grid-template-columns: 58px minmax(0, 1fr); }
  .sc-article .sc-article__content .mq-ad-four .mq-ad-benefit { grid-column: 1 / -1; grid-row: 4; width: 100%; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table td:last-child > .sl-inline-btn { grid-column: 1 / -1; grid-row: 5; }
  .sc-article .sc-article__content .mq-ad-single > .sc-bl-button a { font-size: 12px; }
}
.mq-kbar .mq-kbar__bt a::after { content: '›'; margin-left: 5px; font-size: 20px; line-height: 1; }

/* 旧来の:hasによる配置指定は未変換の枠だけに残し、検査済みの枠はここで明示する。 */
.sc-article .sc-article__content .mq-ad-three > .wp-block-table :is(table, thead, thead tr, th),
.sc-article .sc-article__content .mq-ad-four > .wp-block-table :is(table, thead, thead tr, th) { display: block; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 5px; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody tr { display: contents; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody tr:first-child td { border-radius: 10px 10px 0 0; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody tr:last-child td { border-radius: 0 0 10px 10px; }
.sc-article .sc-article__content :is(.mq-ad-three, .mq-ad-four, .mq-ad-detail) > .wp-block-table { overflow: visible; background: var(--color-tint); border: 1px solid var(--color-border); }
.sc-article .sc-article__content :is(.mq-ad-three, .mq-ad-four, .mq-ad-detail) > .wp-block-table :is(table, th, td) { border: 0; min-width: 0 !important; width: auto; }
.sc-article .sc-article__content :is(.mq-ad-three, .mq-ad-four) > .wp-block-table thead th { padding: 6px 0 12px; background: transparent; color: var(--color-teal); font-size: 18px; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table td { background: #fff; font-size: 12px; word-break: auto-phrase; overflow-wrap: normal; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table td .sl-fz { font-size: 12px !important; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table td :is(.sr-bl, a:has(img), picture) { line-height: 1; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table img { display: block; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table td > strong:not(:first-child) { width: 100%; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table td > strong:not(:first-child) .mq-ad-number { font-size: 19px !important; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody tr:first-child td > strong:first-child .mq-ad-symbol { display: none; }
.sc-article .sc-article__content .mq-ad-three > p:last-child { margin-top: 10px; font-size: 13px; color: #526574; }
.sc-article .sc-article__content .mq-ad-detail > .wp-block-table :is(table, thead, tbody, tr, th, td) { display: block; background: #fff; }
.sc-article .sc-article__content .mq-ad-detail > .wp-block-table tbody tr:first-child td { display: grid; }
.sc-article .sc-article__content .mq-ad-detail > .wp-block-table tbody tr:first-child td > .sl-fz:first-child { grid-column: 1 / -1; }
.sc-article .sc-article__content .mq-ad-detail > .wp-block-table tbody tr:first-child td > br { display: none; }
.sc-article .sc-article__content .mq-ad-detail > .wp-block-table td:last-child { text-align: left; }
.sc-article .sc-article__content .mq-ad-detail > .wp-block-table tbody tr:last-child td > .sl-fz { font-size: 14px !important; }
.sc-article .sc-article__content .mq-ad-detail > .wp-block-table tbody tr:last-child td > strong:first-child .mq-ad-number { font-size: 26px !important; }
.sc-article .sc-article__content .mq-ad-detail > .wp-block-table { border: 0; background: #fff; }
.sc-article .sc-article__content .mq-ad-detail .sl-inline-btn { display: block; }
.sc-article .sc-article__content .mq-ad-detail .sl-inline-btn a { width: 100%; font-size: 16px; }
.sc-article .sc-article__content .mq-ad-four > .wp-block-table tbody { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.sc-article .sc-article__content .mq-ad-four > .wp-block-table tbody tr { display: flex; flex-direction: column; background: #fff; border-radius: 12px; }
.sc-article .sc-article__content .mq-ad-four > .wp-block-table td { display: block; background: transparent; width: auto !important; }
.sc-article .sc-article__content .mq-ad-four > .wp-block-table td:last-child { display: flex; flex-direction: column; gap: 6px; flex: 1; }
.sc-article .sc-article__content .mq-ad-four > .wp-block-table td > :is(.sl-fz, .sr-bl):has(a):not(:has(img)) { display: block; margin-block: 2px 8px; }
.sc-article .sc-article__content .mq-ad-four .sl-inline-btn a { font-size: 13px; }
.sc-article .sc-article__content .mq-ad-four .mq-ad-check-line .mq-ad-dot { display: none; }
@media (max-width: 767px) {
  .sc-article .sc-article__content :is(.mq-ad-three, .mq-ad-four) > .wp-block-table thead th { font-size: 14px; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table tbody { grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table tbody tr { display: grid; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table td { display: contents; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table td:first-child > :is(.sl-fz, .sr-bl):has(a):not(:has(img)) { margin: 0; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table td .mq-ad-check-line { line-height: 1.5; }
  .sc-article .sc-article__content .mq-ad-four .sl-inline-btn a { font-size: 12px; }
}

/* 表の元の地とnowrap、箇条書きの重複改行を、検査済みの枠内だけで解除する。 */
.sc-article .sc-article__content :is(.mq-ad-three, .mq-ad-four) > .wp-block-table :is(thead, thead tr) { background: transparent; color: var(--color-teal); }
.sc-article .sc-article__content .mq-ad :is(.sl-inline-btn, .sc-bl-button) a span { white-space: normal !important; }
.sc-article .sc-article__content .mq-ad-detail > .is-style-balloon_box2 { background: var(--color-tint); border: 0; color: var(--color-teal); border-radius: 999px; }
.sc-article .sc-article__content .mq-ad-detail > .is-style-balloon_box2::before,
.sc-article .sc-article__content .mq-ad-detail > .is-style-balloon_box2::after { content: none; }
.sc-article .sc-article__content .mq-ad-detail .mq-ad-check-line + br,
.sc-article .sc-article__content .mq-ad-detail tbody tr:last-child td > br,
.sc-article .sc-article__content .mq-ad-four .mq-ad-description br { display: none; }
.sc-article .sc-article__content .mq-ad-four .mq-ad-description > .sl-fz { display: contents; }
@media (max-width: 767px) {
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table td:last-child { display: contents; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table td:first-child > :first-child { align-self: start; font-size: 12px !important; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table td:first-child > :has(img) { grid-column: 1; grid-row: 2 / span 2; align-self: start; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table td:first-child > a:not(:has(img)) { grid-column: 2; grid-row: 1; }
  .sc-article .sc-article__content .mq-ad-detail > .wp-block-table thead th { font-size: 18px; word-break: auto-phrase; text-wrap: pretty; }
}

.sc-article .sc-article__content .mq-ad-single { border-radius: 14px; background: #fff; box-shadow: var(--shadow-card); }
.sc-article .sc-article__content .mq-ad .mq-ad-service-word { display: inline-block; white-space: nowrap; font-size: inherit !important; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table td a:not(.sl-inline-btn a):not(:has(img)) { text-wrap: balance; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody tr:first-child td { gap: 3px; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table img { margin-block: 4px; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody tr:last-child td > strong { min-height: 34px; }
.sc-article .sc-article__content .mq-ad-three > p:last-child { margin-top: 6px; }
@media (max-width: 767px) {
  .sc-article .sc-article__content .mq-ad-three > .wp-block-table thead th { padding: 4px 0 8px; }
  /* 12pxの説明と44pxのボタンを保つため、特典とボタンは行の下段へ。 */
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table tbody tr { grid-template-columns: 58px minmax(0, 1fr); }
  .sc-article .sc-article__content .mq-ad-four .mq-ad-benefit { grid-column: 1 / -1; grid-row: 4; width: calc(50% - 4px); margin-right: auto; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table td:last-child > .sl-inline-btn { grid-column: 1 / -1; grid-row: 4; width: calc(50% - 4px); margin-left: auto; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table .sl-inline-btn a { width: 100%; }
}

/* 復号でaの中身が戻っても、サービス名の幅を列いっぱいに使う。 */
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody tr:first-child td > .sl-fz,
.sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody tr:first-child td > .sl-fz > .sr-bl { width: 100%; }
.sc-article .sc-article__content .mq-ad-three > .wp-block-table td a:not(.sl-inline-btn a):not(:has(img)) { display: block; width: 100%; white-space: normal; word-break: normal; text-wrap: balance; }

/* 早見表は3列を保ち、サービス名を1行で読める大きさにする。 */
@media (min-width: 360px) and (max-width: 767px) {
  .sc-article .sc-article__content .mq-ad-three > .wp-block-table td a:not(.sl-inline-btn a):not(:has(img)) { font-size: 13.5px !important; letter-spacing: -.025em; white-space: nowrap; text-wrap: nowrap; }
  .sc-article .sc-article__content .mq-ad-three > .wp-block-table td a:not(.sl-inline-btn a):not(:has(img)) span { font-size: inherit !important; }
  .sc-article .sc-article__content .mq-ad-three > .wp-block-table tbody tr:first-child td > .sl-fz { min-height: 22px; }
}

/* 4サービス枠は、タグ・アイコンと紹介文・特典とボタンの順で左をそろえる。 */
@media (max-width: 767px) {
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table tbody tr { grid-template-columns: 56px minmax(0, 1fr); grid-template-rows: auto auto auto auto auto; gap: 4px 10px; text-align: left; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table td:first-child > :first-child { grid-column: 1 / -1; grid-row: 1; margin: -8px -8px 4px; padding: 4px 10px; border-radius: 11px 11px 0 0; text-align: left; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table td:first-child > :has(img) { grid-column: 1; grid-row: 2 / 5; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table img { width: 56px !important; height: 56px; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table td:first-child > :is(.sl-fz, .sr-bl):has(a):not(:has(img)),
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table td:first-child > a:not(:has(img)) { grid-column: 2; grid-row: 2; text-align: left; }
  .sc-article .sc-article__content .mq-ad-four .mq-ad-caption { grid-column: 2; grid-row: 3; text-align: left; }
  .sc-article .sc-article__content .mq-ad-four .mq-ad-caption .mq-ad-symbol { display: inline; }
  .sc-article .sc-article__content .mq-ad-four .mq-ad-description { grid-column: 2; grid-row: 4; text-align: left; }
  .sc-article .sc-article__content .mq-ad-four .mq-ad-benefit { grid-column: 1 / -1; grid-row: 5; width: calc(50% - 5px); margin: 4px auto 0 0; text-align: left; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table td:last-child > .sl-inline-btn { grid-column: 1 / -1; grid-row: 5; width: calc(50% - 5px); margin: 4px 0 4px auto !important; align-self: center; text-align: left; }
  .sc-article .sc-article__content .mq-ad-four > .wp-block-table .sl-inline-btn a { justify-content: flex-start; padding-left: 10px; text-align: left; }
}

/* 本文の部品。固定ページ・広告枠・計測の構造には適用しない。 */
.mq-article-v2 .sc-article__content {
  --mq-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='m6 12 4 4 8-8'/%3E%3C/svg%3E");
  --mq-cross: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' d='m7 7 10 10M17 7 7 17'/%3E%3C/svg%3E");
}
.sc-article.mq-article-v2 .sc-article__content h3 { margin-block: 22px 12px; padding: 9px 12px; border-left: 5px solid var(--color-teal); border-radius: 0 6px 6px 0; background: var(--color-tint); font-size: 1.12em; line-height: 1.6; }
.sc-article.mq-article-v2 .sc-article__content h4 { margin-block: 20px 10px; padding: 5px 0 5px 10px; border: 0; border-left: 2px solid var(--color-teal); background: none; color: var(--color-navy); font-size: 1em; line-height: 1.65; box-shadow: none; }
.sc-article.mq-article-v2 .sc-article__content h4::before { content: none; }
.mq-article-v2 .sc-article__content .sl-marker { background: linear-gradient(transparent 60%, #fff1a1 60%); }
.mq-article-v2 .sc-article__content .sl-marker.mark_green { background: linear-gradient(transparent 60%, #e0f3ec 60%); }
.mq-article-v2 .sc-article__content .sl-marker.mark_blue { background: linear-gradient(transparent 60%, #d7e9fa 60%); }
.mq-article-v2 .sc-article__content .sl-marker.mark_pink { background: linear-gradient(transparent 60%, #fce0eb 60%); }
.mq-article-v2 .c-balloon.-bln-right .c-balloon__text { color: var(--color-teal); background: var(--color-tint); }

/* 題つきの囲みは、既存の色の種類を保って同じ枠・題・チェックの形にする。 */
.sc-article.mq-article-v2 .sc-article__content .cap_box { --mq-box-ink: var(--color-teal); --mq-box-tint: var(--color-tint); margin-block: 18px; border: 1px solid color-mix(in srgb, var(--mq-box-ink) 28%, #fff); border-radius: 8px; background: var(--mq-box-tint); overflow: hidden; }
.sc-article.mq-article-v2 .sc-article__content .cap_box[data-colset="col1"] { --mq-box-ink: var(--color-pink); --mq-box-tint: var(--color-pink-tint); }
.sc-article.mq-article-v2 .sc-article__content .cap_box[data-colset="col2"] { --mq-box-ink: var(--color-blue); --mq-box-tint: var(--color-chip-blue); }
.sc-article.mq-article-v2 .sc-article__content .cap_box[data-colset="col3"] { --mq-box-ink: var(--color-green); --mq-box-tint: var(--color-chip-green); }
.sc-article.mq-article-v2 .sc-article__content .cap_box[data-colset="col4"] { --mq-box-ink: var(--color-orange); --mq-box-tint: var(--color-chip-yellow); }
.sc-article.mq-article-v2 .sc-article__content .cap_box > .cap_box_ttl { position: static; float: none; inset: auto; display: flex; align-items: center; justify-content: flex-start; gap: 8px; width: auto; max-width: none; margin: 0; padding: 9px 12px; background: var(--mq-box-tint); color: var(--mq-box-ink); font-size: 16px; line-height: 1.6; font-weight: 700; text-align: left; white-space: normal; transform: none; }
.sc-article.mq-article-v2 .sc-article__content .cap_box > .cap_box_ttl::before,
.sc-article.mq-article-v2 .sc-article__content .cap_box > .cap_box_ttl::after { content: none; }
.sc-article.mq-article-v2 .sc-article__content .cap_box_ttl > svg { flex-shrink: 0; width: 22px; height: 22px; fill: currentColor; }
.sc-article.mq-article-v2 .sc-article__content .cap_box:is(.is-style-shadow, .is-style-small_ttl, .is-style-onborder_ttl) > .cap_box_content { padding: 12px; background: #fff; }
.sc-article.mq-article-v2 .sc-article__content .cap_box > .cap_box_content { padding: 12px; }
.sc-article.mq-article-v2 .sc-article__content .cap_box_content > :first-child { margin-top: 0 !important; }
.sc-article.mq-article-v2 .sc-article__content .cap_box_content > ul { margin: 0; padding: 0; list-style: none; }
.sc-article.mq-article-v2 .sc-article__content .cap_box_content > ul > li { position: relative; margin: 0; padding: 7px 0 7px 30px; border: 0; line-height: 1.7; }
.sc-article.mq-article-v2 .sc-article__content .cap_box_content > ul > li::before { content: ''; position: absolute; top: 10px; left: 0; width: 21px; height: 21px; border-radius: 50%; background: var(--mq-box-ink) var(--mq-check) center / 19px no-repeat; transform: none; }

/* 良い点・気になる点。既存の2列は維持し、メディア付きの組も2列にそろえる。 */
.mq-article-v2 .sc-article__content :is(.is-style-good_list, .is-style-bad_list) { --mq-list-ink: var(--color-green); --mq-list-tint: var(--color-chip-green); margin: 0 0 16px; padding: 8px 12px; border: 1px solid color-mix(in srgb, var(--mq-list-ink) 22%, #fff); border-radius: 0 0 8px 8px; background: var(--mq-list-tint); list-style: none; }
.mq-article-v2 .sc-article__content .is-style-bad_list { --mq-list-ink: var(--color-pink); --mq-list-tint: var(--color-pink-tint); }
.mq-article-v2 .sc-article__content :is(.is-style-good_list, .is-style-bad_list) > li { position: relative; margin: 0; padding: 6px 0 6px 28px; border: 0; font-size: 14px; line-height: 1.7; }
.mq-article-v2 .sc-article__content :is(.is-style-good_list, .is-style-bad_list) > li::before { content: ''; position: absolute; top: 9px; left: 0; width: 20px; height: 20px; border-radius: 50%; background: var(--mq-list-ink) var(--mq-check) center / 18px no-repeat; transform: none; }
.mq-article-v2 .sc-article__content .is-style-bad_list > li::before { background-image: var(--mq-cross); }
.mq-article-v2 .sc-article__content p:has(+ .is-style-good_list),
.mq-article-v2 .sc-article__content p:has(+ .is-style-bad_list) { display: flex; align-items: center; gap: 8px; margin: 0 !important; padding: 8px 12px; border-radius: 8px 8px 0 0; background: var(--color-chip-green); color: var(--color-green); font-weight: 700; }
.mq-article-v2 .sc-article__content p:has(+ .is-style-bad_list) { background: var(--color-pink-tint); color: var(--color-pink); }
/* 色つきの文字は、本文全体で語をひとまとまりにした小さな印にする。 */
.sc-article.mq-article-v2 .sc-article__content .sl-bg-color { --mq-label-ink: var(--color-teal); --mq-label-bg: var(--color-tint); display: inline-block; max-width: 100%; padding: 1px 6px; border-radius: 6px; background-color: var(--mq-label-bg) !important; color: var(--mq-label-ink) !important; line-height: 1.6; vertical-align: baseline; }
.sc-article.mq-article-v2 .sc-article__content .sl-bg-color * { color: inherit !important; background-color: transparent !important; }
.sc-article.mq-article-v2 .sc-article__content .sl-bg-color:has([style*="rgb(112, 8, 190)"]) { --mq-label-ink: #634296; --mq-label-bg: var(--color-chip-purple); }
.sc-article.mq-article-v2 .sc-article__content .sl-bg-color.has-sl-deep-01-background-color { --mq-label-ink: var(--color-red); --mq-label-bg: #fff0f0; }
.sc-article.mq-article-v2 .sc-article__content .sl-bg-color:is(.has-sl-deep-02-background-color, [style*="#739bd7"]) { --mq-label-ink: var(--color-blue); --mq-label-bg: var(--color-chip-blue); }
.sc-article.mq-article-v2 .sc-article__content .sl-bg-color.has-sl-deep-03-background-color { --mq-label-ink: var(--color-green); --mq-label-bg: var(--color-chip-green); }
.sc-article.mq-article-v2 .sc-article__content .sl-bg-color.has-sl-deep-04-background-color { --mq-label-ink: var(--color-orange); --mq-label-bg: var(--color-chip-yellow); }
.sc-article.mq-article-v2 .sc-article__content .sl-bg-color:is([style*="#ff84f5"], [style*="#ff91fa"], [style*="#ff9afa"]) { --mq-label-ink: var(--color-pink); --mq-label-bg: var(--color-pink-tint); }
.mq-article-v2 .sc-article__content p:has(+ .is-style-good_list)::before { content: ''; flex-shrink: 0; width: 22px; height: 22px; background: var(--color-green); mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2 10h4v12H2zm6 12V10l4-8h2v8h6l2 3-3 9z'/%3E%3C/svg%3E") center / contain no-repeat; }
.mq-article-v2 .sc-article__content p:has(+ .is-style-bad_list)::before { content: ''; flex-shrink: 0; width: 22px; height: 22px; border-radius: 50%; background: var(--color-pink) var(--mq-cross) center / 20px no-repeat; }
.mq-article-v2 .wp-block-media-text__content:has(> .is-style-good_list):has(> .is-style-bad_list) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 12px; padding: 0; }
.mq-article-v2 .wp-block-media-text__content:has(> .is-style-good_list):has(> .is-style-bad_list) > .mq-score-line { grid-column: 1 / -1; }
.mq-article-v2 .wp-block-media-text__content > p:has(+ .is-style-good_list) { grid-column: 1; grid-row: 2; }
.mq-article-v2 .wp-block-media-text__content > .is-style-good_list { grid-column: 1; grid-row: 3; }
.mq-article-v2 .wp-block-media-text__content > p:has(+ .is-style-bad_list) { grid-column: 2; grid-row: 2; }
.mq-article-v2 .wp-block-media-text__content > .is-style-bad_list { grid-column: 2; grid-row: 3; }

/* 引用は元の文と出典を保ち、人の印と引用符を添える。評価は追加しない。 */
.sc-article.mq-article-v2 .sc-article__content blockquote:not(.twitter-tweet) { position: relative; margin-block: 16px; padding: 16px 16px 14px 58px; border: 1px solid var(--color-border); border-radius: 8px; background: #f0f5f8; box-shadow: none; }
.sc-article.mq-article-v2 .sc-article__content blockquote:not(.twitter-tweet)::before { content: ''; position: absolute; top: 16px; left: 12px; width: 32px; height: 32px; border: 0; border-radius: 50%; background: #8b9da8 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ccircle cx='16' cy='11' r='5' fill='white'/%3E%3Cpath d='M6 29v-3a10 10 0 0 1 20 0v3' fill='white'/%3E%3C/svg%3E") center / 32px no-repeat; transform: none; }
.sc-article.mq-article-v2 .sc-article__content blockquote:not(.twitter-tweet)::after { content: '“'; position: absolute; top: 0; right: 10px; color: #526574; font-size: 32px; line-height: 1; opacity: .45; }
.mq-article-v2 .sc-article__content blockquote p { margin-bottom: 10px; }
.mq-article-v2 .sc-article__content blockquote cite { display: block; margin: 0; color: #526574; font-size: 13px; font-style: normal; text-align: right; }
.sc-article.mq-article-v2 .sc-article__content .sc-bl-step__item { position: relative; padding: 10px; border: 1px solid var(--color-border); border-radius: 8px; background: #fff; }
@media (min-width: 768px) {
  .sc-article.mq-article-v2 .sc-article__content .sc-bl-step:has(> .sc-bl-step__item:nth-child(3):last-child) { gap: 22px; }
  .sc-article.mq-article-v2 .sc-article__content .sc-bl-step:has(> .sc-bl-step__item:nth-child(3):last-child) > .sc-bl-step__item:not(:last-child)::after { content: '›'; position: absolute; right: -18px; top: 22px; color: var(--color-teal); font-size: 28px; line-height: 1; }
}
.sc-article.mq-article-v2 .sc-article__content .sc-bl-faq { padding: 10px; border: 1px solid var(--color-border); border-radius: 8px; background: var(--color-tint); }
.sc-article.mq-article-v2 .sc-article__content .sc-bl-faq__item { margin: 0 0 10px; border: 1px solid var(--color-border); border-radius: 8px; background: #fff; overflow: hidden; }
.sc-article.mq-article-v2 .sc-article__content .sc-bl-faq__item:last-child { margin-bottom: 0; }
.sc-article.mq-article-v2 .sc-article__content .sc-bl-faq .faq_q { margin: 0; padding: 12px 12px 12px 48px; border: 0; border-bottom: 1px solid var(--color-border); background: #fff; color: var(--color-navy); font-weight: 700; }
.sc-article.mq-article-v2 .sc-article__content .sc-bl-faq .faq_a { margin: 0; padding: 12px 12px 12px 48px; background: #fff; }
.sc-article.mq-article-v2 .sc-article__content .sc-bl-faq :is(.faq_q, .faq_a)::before { top: 12px; left: 10px; width: 28px; height: 28px; font-size: 16px; background: var(--color-teal); color: #fff; }
.sc-article.mq-article-v2 .sc-article__content .sc-bl-faq .faq_a::before { background: var(--color-pink); }
.mq-article-v2 .sc-article__content :is(p.has-small-font-size, p.u-fz-xs, p.u-fz-s, p:has(> .sl-fz.u-fz-xs:only-child)) { padding-top: 8px; border-top: 1px solid var(--color-border); color: #526574; font-size: 13px; }

/* 開いた目次の切り替えは右上に置き、既存のcheckboxと文をそのまま使う。 */
.sc-article.mq-article-v2 .sc-article__content .toc-box { position: relative; border-radius: 8px; }
.sc-article.mq-article-v2 .sc-article__content .toc-box__title { display: flex; align-items: center; min-height: 54px; padding: 8px 12px; }
.sc-article.mq-article-v2 .sc-article__content .toc-box:has(.toc-box__toggle:checked) .toc-box__title { padding-right: 172px; }
.sc-article.mq-article-v2 .sc-article__content .toc-box__toggle:checked ~ .toc-box__more { position: absolute; top: 5px; right: 7px; margin: 0; padding: 4px 8px; border-radius: 6px; background: #fff; font-size: 13px; }
.sc-article.mq-article-v2 .sc-article__content .toc-box__item { border-bottom: 1px solid var(--color-border); }
.sc-article.mq-article-v2 .sc-article__content .toc-box__item--h3 { border: 0; }

/* 通常表のセルアイコンは既存CSSが描く。スクロール表は表の中だけで動かす。 */
.mq-article-v2 .sc-article__content .wp-block-table:not(.p-blogParts .wp-block-table) :is(th, td) { padding: 8px 10px; border-color: var(--color-border); color: var(--color-navy); font-size: 14px; line-height: 1.65; }
.mq-article-v2 .sc-article__content .wp-block-table:not(.p-blogParts .wp-block-table) thead th { background: var(--color-tint); color: var(--color-navy); font-weight: 700; }
.mq-article-v2 .sc-article__content .wp-block-table:not(.p-blogParts .wp-block-table) thead th > .sl-cell-bg { background: transparent !important; }
.mq-article-v2 .sc-article__content .wp-block-table:not(.p-blogParts .wp-block-table) tbody :is(td, th):first-child { background-color: #f0f5f8; }
.mq-article-v2 .sc-article__content .wp-block-table:not(.p-blogParts .wp-block-table) td .has-sl-deep-01-color { color: var(--color-red) !important; }
.mq-article-v2 .sc-article__content .wp-block-table > figcaption { margin-top: 6px; color: #526574; font-size: 13px; text-align: left; }
.mq-article-v2 .sc-article__content .wp-block-table + p:has(> .sl-fz.u-fz-xs:only-child) { margin-top: 6px; font-size: 13px; }
.mq-article-v2 .sc-article__content .mq-suitability-table table { table-layout: fixed; }
.mq-article-v2 .sc-article__content .mq-suitability-table :is(th, td):first-child { background: var(--color-chip-green) !important; }
.mq-article-v2 .sc-article__content .mq-suitability-table :is(th, td):last-child { background: var(--color-pink-tint) !important; }
.mq-article-v2 .sc-article__content .mq-suitability-table th::before { content: ''; display: inline-block; width: 16px; height: 16px; margin-right: 5px; border: 3px solid var(--color-teal); border-radius: 50%; vertical-align: -2px; }
.mq-article-v2 .sc-article__content .mq-suitability-table th:last-child::before { border: 0; background: var(--color-pink) var(--mq-cross) center / 20px no-repeat; width: 22px; height: 22px; }
.mq-article-v2 .sc-article__content .mq-plan-table { border: 1px solid var(--color-border); background: #fff; }
.mq-article-v2 .sc-article__content .mq-plan-table table { table-layout: fixed; }
.mq-article-v2 .sc-article__content .mq-plan-table :is(th, td) { padding: 8px 4px; border: 0; border-right: 1px solid var(--color-border); background: #fff !important; text-align: center; }
.mq-article-v2 .sc-article__content .mq-plan-table td { color: var(--color-pink); font-size: 16px; font-weight: 700; }
.mq-article-v2 .sc-article__content .mq-plan-table :is(th, td):last-child { border-right: 0; }
.mq-article-v2 .sc-article__content .wp-block-table:not(.p-blogParts .wp-block-table):has(.sl-inline-btn):has(img) { overflow-x: auto; scrollbar-color: var(--color-teal) var(--color-tint); }
.mq-article-v2 .sc-article__content .wp-block-table:not(.p-blogParts .wp-block-table):has(.sl-inline-btn):has(img) img { width: 48px !important; height: 48px; object-fit: contain; border-radius: 8px; }
.mq-article-v2 .sc-article__content .c-tabList__button { background: var(--color-tint); }
.mq-article-v2 .sc-article__content .c-tabList__button[aria-selected="true"] { background: var(--color-teal); color: #fff; }

/* 元の画像を切らずに表示し、画面写真と説明の幅をそろえる。広告内の画像は対象外。 */
.mq-article-v2 .sc-article__content .wp-block-image:not(.p-blogParts .wp-block-image) img { border-radius: 8px; }
.sc-article.mq-article-v2 .sc-article__content .wp-block-image > figcaption { margin-top: 8px; color: #526574; font-size: 13px; text-align: center; }
.mq-article-v2 .sc-article__content .mq-portrait-image { width: min(100%, 280px); margin-inline: auto; }
.mq-article-v2 .sc-article__content h3 + .wp-block-image:not(.p-blogParts .wp-block-image) img { width: auto; max-height: 360px; object-fit: contain; }
.mq-article-v2 .sc-article__content h3 + .wp-block-image:not(.p-blogParts .wp-block-image) { text-align: center; }
.sc-article.mq-article-v2 .sc-article__content .mq-score-line { margin-block: 16px; padding: 10px 12px; border: 1px solid #f4c8d8; border-radius: 8px; background: var(--color-pink-tint); color: var(--color-pink); font-size: 16px; text-align: left; }
.sc-article.mq-article-v2 .sc-article__content .mq-score-line::before,
.sc-article.mq-article-v2 .sc-article__content .mq-score-line::after { content: none; }
.sc-article.mq-article-v2 .sc-article__content .mq-score-line > .u-fz-l { color: var(--color-pink); font-size: 32px !important; line-height: 1; }
.sc-article.mq-article-v2 .sc-article__content .mq-score-line > .u-fz-s { color: var(--color-navy); font-size: 14px !important; }

/* 本文のボタンと関連記事。登録リンク・data属性・抜粋の非表示は保持する。 */
.mq-article-v2 .sc-article__content :is(.sl-inline-btn, .sc-bl-button):not(.p-blogParts .sl-inline-btn):not(.p-blogParts .sc-bl-button) { margin-block: 12px !important; }
.mq-article-v2 .sc-article__content :is(.is-style-btn_solid, .is-style-btn_line):not(.p-blogParts *) a { position: relative; display: inline-flex; align-items: center; justify-content: center; min-height: 44px; max-width: 100%; padding: 10px 30px 10px 16px; border-radius: 999px; background: var(--color-cta); color: #fff !important; font-size: 15px; line-height: 1.6; text-align: center; text-decoration: none; }
.mq-article-v2 .sc-article__content .is-style-btn_solid:not(.p-blogParts *) a::after { content: '›'; position: absolute; top: 50%; right: 12px; transform: translateY(-50%); font-size: 24px; line-height: 1; }
.mq-article-v2 .sc-article__content .is-style-btn_line:not(.p-blogParts *) a { padding-right: 16px; border: 1px solid var(--color-teal); background: #fff; color: var(--color-teal) !important; }
.mq-article-v2 .sc-article__content :is(.is-style-btn_solid, .is-style-btn_line):not(.p-blogParts *) a span { font-size: inherit !important; white-space: normal !important; }
.mq-article-v2 .sc-article__content :is(.is-style-btn_solid, .is-style-btn_line):not(.p-blogParts *) a:hover { filter: brightness(.93); }
.mq-article-v2 .sc-article__content .sc-bl-button__text { color: var(--color-teal); font-size: 13px; }
.sc-article.mq-article-v2 .sc-article__content .p-blogCard { margin-block: 18px; padding: 10px; border: 1px solid var(--color-border); border-radius: 8px; background: var(--color-tint); box-shadow: none; }
.sc-article.mq-article-v2 .sc-article__content .p-blogCard__inner { position: relative; display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 6px 12px; padding: 0 20px 0 0; }
.sc-article.mq-article-v2 .sc-article__content .p-blogCard__caption { position: static; grid-column: 1 / -1; margin: 0; padding: 0; background: none; color: var(--color-teal); font-size: 13px; text-align: left; }
.sc-article.mq-article-v2 .sc-article__content .p-blogCard__caption::before { content: none; }
.sc-article.mq-article-v2 .sc-article__content .p-blogCard__thumb { display: block; position: static; grid-column: 1; grid-row: 2; width: auto; align-self: center; }
.sc-article.mq-article-v2 .sc-article__content .p-blogCard__thumb .c-postThumb__figure { position: relative; width: 100%; height: auto; margin: 0; padding: 0; aspect-ratio: 16 / 9; }
.sc-article.mq-article-v2 .sc-article__content .p-blogCard__thumb .c-postThumb__figure::before { content: none; }
.sc-article.mq-article-v2 .sc-article__content .p-blogCard__thumb :is(picture, img) { position: static; display: block; width: 100%; height: auto; object-fit: contain; border-radius: 6px; }
.sc-article.mq-article-v2 .sc-article__content .p-blogCard__body { grid-column: 2; grid-row: 2; min-width: 0; margin: 0; padding: 0; align-self: center; }
.sc-article.mq-article-v2 .sc-article__content .p-blogCard__title { display: flex; align-items: center; min-height: 44px; color: var(--color-navy); font-size: 14px; font-weight: 700; line-height: 1.6; text-decoration: none; }
.sc-article.mq-article-v2 .sc-article__content .p-blogCard__title:hover { color: var(--color-teal); }
.sc-article.mq-article-v2 .sc-article__content .p-blogCard__inner::after { content: '›'; position: absolute; right: 0; top: 50%; color: var(--color-teal); font-size: 24px; }
.mq-article-v2 .sc-article__content :is(a, button, .c-tabList__button):focus-visible { outline: 3px solid var(--color-focus); outline-offset: 3px; }
@media (max-width: 767px) {
  .mq-article-v2 .sc-article__content .wp-block-table:not(.p-blogParts .wp-block-table):has(.sl-inline-btn):has(img) table { min-width: 620px; }
  .mq-article-v2 .sc-article__content .wp-block-table:not(.p-blogParts .wp-block-table):has(.sl-inline-btn):has(img) { box-shadow: inset -10px 0 8px -10px #526574; border-right: 3px solid #c0e0e5; }
  .sc-article.mq-article-v2 .sc-article__content .p-blogCard__inner { grid-template-columns: 92px minmax(0, 1fr); gap: 5px 9px; }
}
@media (max-width: 359px) {
  .mq-article-v2 .wp-block-media-text__content:has(> .is-style-good_list):has(> .is-style-bad_list) { display: block; }
}
