.mh-pr{display:none!important}

  :where(.hm-front-events,.hm-article-calendar-lazy,.hm-today-tomorrow-events,.mh-product-front,.mh-campaign-box,.sp1-campaign-front,.sc-portfolio-front,.codex-swell-popular) {
    --codex-muted-text:#475569;
    --codex-muted-strong:#334155;
    --codex-accent-green:#166534;
    --codex-accent-orange:#9a3f0d;
  }
  :where(.hm-front-events,.hm-article-calendar-lazy,.hm-today-tomorrow-events,.mh-product-front,.mh-campaign-box,.sp1-campaign-front,.sc-portfolio-front,.codex-swell-popular) :where(.hm-lead,.hm-sub,.hm-ac-sub,.hm-submit-cta span,.hm-card em,.hm-guide-card em,.mh-sub,.mh-note,.sp1-sub,.sc-sub) {
    color:var(--codex-muted-text)!important;
  }
  :where(.hm-front-events,.hm-article-calendar-lazy,.hm-today-tomorrow-events) :where(.hm-eyebrow,.hm-ac-eyebrow) {
    color:var(--codex-accent-orange)!important;
  }
  :where(.hm-front-events,.hm-article-calendar-lazy,.hm-today-tomorrow-events) :where(.hm-cal-day.muted,.hm-cal-day.muted .hm-cal-num) {
    color:#64748b!important;
  }
  :where(.hm-front-events,.hm-article-calendar-lazy,.hm-today-tomorrow-events,.mh-product-front,.mh-campaign-box,.sp1-campaign-front,.sc-portfolio-front,.codex-swell-popular) :where(button,a.hm-btn,.hm-btn,.hm-month-tab,.hm-cal-day,.hm-cal-nav,.hm-ac-main-link,.hm-submit-cta a,.mh-btn,.mh-campaign-link,.sp1-btn,.sc-btn,.codex-swell-popular-tab) {
    min-height:44px!important;
    touch-action:manipulation;
  }
  :where(.hm-chip,.mh-chip,.sp-chip,.sc-chip,.sp-compact-offer,.codex-swell-popular-tab,.c-searchForm__submit) {
    min-height:44px!important;
    touch-action:manipulation;
  }
  @media (max-width: 640px) {
    :where(.p-spMenu a,.p-spMenu__inner a,.c-widget a,.c-gnav a,.hm-front-events a,.mh-product-front a,.mh-campaign-box a,.sp1-campaign-front a,.sc-portfolio-front a) {
      min-height:44px;
      display:inline-flex;
      align-items:center;
    }
  }
  :where(.c-categoryList__link,.c-tagList__link,.p-breadcrumb__text,.p-toc__link) {
    min-height:32px;
    display:inline-flex;
    align-items:center;
  }
  :where(.p-articleMetas__termList.c-categoryList,.p-articleMetas__termList.c-tagList) {
    display:flex!important;
    flex-wrap:wrap;
    align-items:center;
    gap:8px!important;
    width:100%;
    margin:0!important;
    padding-left:0!important;
    box-sizing:border-box;
  }
  :where(.p-articleMetas__termList.c-categoryList,.p-articleMetas__termList.c-tagList)::before {
    content:none!important;
    display:none!important;
  }
  :where(.p-articleMetas__termList.c-categoryList,.p-articleMetas__termList.c-tagList) :where(.c-categoryList__link,.c-tagList__link) {
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box;
    min-height:0!important;
    height:34px;
    margin:0!important;
    padding:0 13px!important;
    line-height:1!important;
    white-space:nowrap;
  }
  :where(.hm-front-events,.hm-article-calendar-lazy,.hm-today-tomorrow-events) :where(.hm-month-tab,.hm-cal-nav) {
    padding-top:9px;
    padding-bottom:9px;
  }
  :where(.hm-traffic-alert span,.hm-guide-card span,.sp-feature-label,.sp-offer-row-label.deadline) {
    color:#9a3f0d!important;
  }
  :where(.hm-traffic-alert span) {
    background:#9a3f0d!important;
    color:#fff!important;
  }
  :where(.hm-chip span,.mh-chip span,.sp-chip span,.sc-chip span,.hm-cal-panel-head span,.hm-cal-pick-body > span,.hm-date) {
    color:#334155!important;
  }
  :where(.codex-swell-popular-tab.is-active,.codex-swell-popular-rank,.c-postThumb__cat,.mh-amazon) {
    background:#9a3f0d!important;
    color:#fff!important;
  }
  :where(.monohikaku-price-btn) {
    min-height:44px!important;
    background:#0b63b6!important;
    color:#fff!important;
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    padding:10px 12px!important;
  }
  :where(.codex-symbol-muted) {
    color:#475569!important;
  }
  :where(.footer-kouki-label,.footer-kouki-tag) {
    background:#e5edf6!important;
    color:#17324d!important;
  }
  :where(.l-footer,.l-footer__body,.l-footer__widgetArea,.footer-kouki,.footer-kouki *) {
    color:#334155!important;
  }
  :where(.post_content,.entry-content,.c-entry__content) table th {
    background:#e5edf6!important;
    color:#17324d!important;
  }
  :where(.post_content,.entry-content,.c-entry__content) a {
    color:#0b63b6;
  }
  :where(.c-postTimes__modified,.c-postTimes__posted) {
    color:#475569!important;
  }
  :where(.hm-front-events,.hm-article-calendar-lazy) :where(.hm-cal-thumb img,.hm-card img,.hm-cal-pick img) {
    aspect-ratio:16/9;
  }


.sp1-cat-entry{box-sizing:border-box;margin:18px 0 22px;padding:16px;border:1px solid #dbe4ee;border-radius:8px;background:#f8fafc;color:#223042;overflow:hidden;}
    .sp1-cat-entry *{box-sizing:border-box;}
    .sp1-cat-entry a{color:inherit;text-decoration:none;}
    .sp1-cat-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px;}
    .sp1-cat-kicker{margin:0 0 3px;color:#c75a1a;font-size:14px!important;font-weight:800;line-height:1.5;}
    .sp1-cat-title{margin:0!important;padding:0 0 7px!important;border:0!important;border-bottom:2px solid #2563a6!important;background:transparent!important;color:#17324d!important;font-size:21px;font-weight:800;line-height:1.35;letter-spacing:0;}
    .sp1-cat-updated{color:#64748b;font-size:11px;font-weight:700;}
    .sp1-cat-lead{margin:0 0 12px;color:#475569;font-size:13px;line-height:1.75;}
    .sp1-cat-section{margin:14px 0 0;padding-top:12px;border-top:1px solid #dbe4ee;}
    .sp1-cat-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:9px;}
    .sp1-cat-section-title{margin:0!important;padding:0!important;border:0!important;background:transparent!important;color:#17324d!important;font-size:17px;font-weight:800;line-height:1.4;letter-spacing:0;}
    .sp1-cat-section-sub{margin:0;color:#64748b;font-size:12px;line-height:1.6;}
    .sp1-cat-track{display:flex;gap:10px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:1px 2px 8px;}
    .sp1-cat-track::-webkit-scrollbar{height:8px;}
    .sp1-cat-track::-webkit-scrollbar-thumb{border-radius:999px;background:#cbd5e1;}
    .sp1-cat-scroll-progress{width:78px;height:4px;margin:2px auto 0;border-radius:999px;background:#e2e8f0;overflow:hidden;}
    .sp1-cat-scroll-progress span{display:block;width:34%;height:100%;margin-left:0;border-radius:inherit;background:#2563a6;transition:margin-left .12s linear,width .12s linear;}
    .sp1-cat-card{display:grid;grid-template-rows:auto 1fr;gap:8px;flex:0 0 calc(33.333% - 7px);min-width:0;padding:9px;border:1px solid #dbe4ee;border-radius:8px;background:#fff;scroll-snap-align:start;}
    .sp1-cat-card.no-image{grid-template-rows:1fr;}
    .sp1-cat-card img{display:block;width:100%;aspect-ratio:16/9;border-radius:6px;object-fit:cover;background:#e2e8f0;}
    .sp1-cat-card strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:#17324d;font-size:14px;line-height:1.45;letter-spacing:0;}
    .sp1-cat-card em{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:4px;color:#64748b;font-size:12px;font-style:normal;line-height:1.55;}
    .sp1-cat-empty{display:block;padding:12px;border:1px dashed #cbd5e1;border-radius:8px;background:#fff;color:#64748b;font-size:13px;line-height:1.7;}
    @media (max-width:640px){
      .sp1-cat-entry{margin:16px -4px 20px;padding:13px 8px;border-radius:8px;}
      .sp1-cat-title{font-size:19px;}
      .sp1-cat-section-head{display:block;}
      .sp1-cat-section-sub{margin-top:3px;}
      .sp1-cat-card{flex:0 0 82%;}
    }/* Codex 2026-06-18: keep category blog parts readable when rendered through category descriptions. */
.sp1-cat-entry{font-variant-numeric:tabular-nums;}
.sp1-cat-entry :where(.sp1-cat-card,.sp1-cat-route,.sp1-cat-pick){box-shadow:0 8px 18px rgba(15,23,42,.035);}
.sp1-cat-entry :where(a,button){-webkit-tap-highlight-color:rgba(37,99,166,.12);}
@media (max-width:640px){
  .sp1-cat-entry{margin:14px 0 18px;padding:14px;border-radius:10px;}
  .sp1-cat-title{font-size:19px!important;}
  .sp1-cat-lead{font-size:13px;line-height:1.75;}
}
.sp1-cat-scroll-hint{display:flex;align-items:center;justify-content:flex-end;gap:5px;margin:0 0 8px;color:#64748b;font-size:12px;font-weight:700;line-height:1.5;}
.sp1-cat-scroll-hint span{color:#2563a6;font-size:15px;line-height:1;}


:root {
  --codex-readable-font-stack: system-ui, -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic, Meiryo, sans-serif;
  --codex-readable-text: #172033;
  --codex-readable-muted: #475569;
  --codex-readable-heading: #0f172a;
}

body,
button,
input,
select,
textarea {
  font-family: var(--codex-readable-font-stack);
}

body {
  color: var(--codex-readable-text);
  letter-spacing: 0;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.post_content,
.entry-content,
.c-postContent {
  color: var(--codex-readable-text);
  font-size: 16.5px !important;
  line-height: 1.86 !important;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

.post_content :where(p, li, dd),
.entry-content :where(p, li, dd),
.c-postContent :where(p, li, dd) {
  line-height: 1.86 !important;
}

.post_content :where(p),
.entry-content :where(p),
.c-postContent :where(p) {
  margin-top: 0;
  margin-bottom: 1.16em;
}

.post_content :where(ul, ol),
.entry-content :where(ul, ol),
.c-postContent :where(ul, ol) {
  padding-left: 1.45em;
}

.post_content :where(li + li),
.entry-content :where(li + li),
.c-postContent :where(li + li) {
  margin-top: 0.28em;
}

.post_content :where(h2, h3, h4),
.entry-content :where(h2, h3, h4),
.c-postContent :where(h2, h3, h4) {
  color: var(--codex-readable-heading);
  letter-spacing: 0;
  line-height: 1.44;
  overflow-wrap: anywhere;
  text-wrap: balance;
}

.post_content :where(figcaption, small, .wp-element-caption),
.entry-content :where(figcaption, small, .wp-element-caption),
.c-postContent :where(figcaption, small, .wp-element-caption) {
  color: var(--codex-readable-muted);
  line-height: 1.72;
}

.p-postList__title,
.c-postTitle__ttl,
.c-widget .p-postList__title {
  letter-spacing: 0;
  line-height: 1.48;
  overflow-wrap: anywhere;
}

.post_content :where(table),
.entry-content :where(table),
.c-postContent :where(table) {
  font-size: 0.96em;
  line-height: 1.62;
}

.post_content :where(a),
.entry-content :where(a),
.c-postContent :where(a) {
  text-underline-offset: 0.16em;
}

@media (max-width: 640px) {
  .post_content,
  .entry-content,
  .c-postContent {
    font-size: 16px !important;
    line-height: 1.82 !important;
  }

  .post_content :where(p, li, dd),
  .entry-content :where(p, li, dd),
  .c-postContent :where(p, li, dd) {
    line-height: 1.82 !important;
  }

  .post_content :where(p),
  .entry-content :where(p),
  .c-postContent :where(p) {
    margin-bottom: 1.08em;
  }

  .p-postList__title,
  .c-postTitle__ttl,
  .c-widget .p-postList__title {
    line-height: 1.46;
  }
}


/* Recommended and missed campaigns lead the article, before its body. */
.l-mainContent__inner { display: flex; flex-direction: column; }
.l-mainContent__inner > .p-articleHead { order: 1; }
.l-mainContent__inner > .p-articleMetas { order: 2; }
.l-mainContent__inner > .p-articleThumb { order: 3; }
.l-mainContent__inner > .post_content { order: 6; }
.l-mainContent__inner > .w-singleTop { order: 5; }
.l-mainContent__inner > .w-singleBottom { order: 7; }
.l-mainContent__inner > .p-articleFoot { order: 8; }
.l-mainContent__inner > .l-articleBottom { order: 9; }

/* Codex direct-design: compact hero-to-first-answer spacing. */
.l-mainContent__inner > .post_content {
    margin-top: 32px !important;
}
@media (max-width: 767px) {
    .l-mainContent__inner > .post_content {
        margin-top: 24px !important;
    }
}


@media (max-width: 640px) {
  .post_content table,
  .entry-content table,
  .c-postContent table,
  .swell-block-dl table,
  .wp-block-table table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 13px;
    line-height: 1.55;
  }

  .post_content th,
  .post_content td,
  .entry-content th,
  .entry-content td,
  .c-postContent th,
  .c-postContent td,
  .wp-block-table th,
  .wp-block-table td {
    padding: 8px 9px;
    vertical-align: top;
    word-break: normal;
    overflow-wrap: anywhere;
  }

  .codex-mobile-table-wrap {
    position: relative;
    box-sizing: border-box;
    max-width: 100%;
    margin: 14px 0 18px;
  }

  .codex-mobile-table-caption {
    margin: 6px 2px 0;
    color: #64748b;
    font-size: 12px;
    line-height: 1.5;
    text-align: left;
  }

  .codex-mobile-table-scroll {
    overflow-x: auto;
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
    padding: 19px 0 6px;
    scrollbar-width: thin;
  }

  .codex-mobile-table-scroll::before {
    content: "表は横にスクロールできます";
    position: absolute;
    top: 0;
    left: 2px;
    color: #475569;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.4;
  }

  .codex-mobile-table-scroll.codex-table-at-start.codex-table-at-end {
    padding-top: 0;
  }

  .codex-mobile-table-scroll.codex-table-at-start.codex-table-at-end::before {
    content: none;
    display: none;
  }

  .codex-mobile-table-scroll::after {
    content: none;
    display: none;
  }

  .codex-mobile-table-scroll.codex-table-at-end::after {
    display: none;
  }

  .codex-mobile-table-scroll table {
    width: max-content;
    min-width: min(520px, 133vw);
    max-width: none;
  }

  .codex-mobile-table-scroll th:first-child,
  .codex-mobile-table-scroll td:first-child {
    position: static !important;
    left: auto !important;
    z-index: auto !important;
    min-width: 6.5em;
    background: #dcebf6;
    color: #0b2440;
    font-weight: 700;
  }

  .codex-mobile-table-compare-wide table {
    table-layout: fixed;
    width: var(--codex-table-min-width, 760px) !important;
    min-width: var(--codex-table-min-width, 760px) !important;
    max-width: none !important;
  }

  .codex-mobile-table-compare-wide th,
  .codex-mobile-table-compare-wide td {
    width: var(--codex-table-col-width, 116px) !important;
    min-width: var(--codex-table-col-width, 116px) !important;
    max-width: var(--codex-table-col-width, 116px) !important;
    padding: 6px 8px !important;
    border-color: #aebfd0 !important;
    color: #172033;
    font-size: 13px;
    line-height: 1.45;
  }

  .codex-mobile-table-compare-wide tbody tr:nth-child(even) td,
  .codex-mobile-table-compare-wide tbody tr:nth-child(even) th,
  .codex-mobile-table-compare-wide table > tr:nth-child(even) td,
  .codex-mobile-table-compare-wide table > tr:nth-child(even) th {
    background: #f3f7fb;
  }

  .codex-mobile-table-compare-wide thead th,
  .codex-mobile-table-compare-wide tr[data-codex-header-row="1"] th {
    background: #102a43 !important;
    color: #fff !important;
    font-weight: 900;
  }

  .codex-mobile-table-compare-wide th:first-child,
  .codex-mobile-table-compare-wide td:first-child {
    position: sticky !important;
    left: 0 !important;
    z-index: 2;
    width: var(--codex-table-label-width, 88px) !important;
    min-width: var(--codex-table-label-width, 88px) !important;
    max-width: var(--codex-table-label-width, 88px) !important;
    background: #dcebf6 !important;
    color: #0b2440 !important;
    box-shadow: 6px 0 0 #dcebf6, 7px 0 0 #8aa8c2;
  }

  .codex-mobile-table-compare-wide tr[data-codex-row-kind="image"] td,
  .codex-mobile-table-compare-wide tr[data-codex-row-kind="image"] th {
    background: #fff !important;
    text-align: center;
    vertical-align: middle;
  }

  .codex-mobile-table-compare-wide tr[data-codex-row-kind="image"] td:first-child,
  .codex-mobile-table-compare-wide tr[data-codex-row-kind="image"] th:first-child {
    background: #dcebf6 !important;
    color: #0b2440 !important;
    text-align: left;
  }

  .codex-mobile-table-compare-wide tr[data-codex-row-kind="image"] img {
    display: block;
    width: auto !important;
    max-width: 74px !important;
    height: 52px !important;
    object-fit: contain;
    margin: 0 auto;
  }

  .codex-mobile-table-compare-wide tr[data-codex-row-kind="price"] td,
  .codex-mobile-table-compare-wide tr[data-codex-row-kind="price"] th {
    background: #fff0cf !important;
    vertical-align: middle;
  }

  .codex-mobile-table-compare-wide tr[data-codex-row-kind="price"] td:first-child,
  .codex-mobile-table-compare-wide tr[data-codex-row-kind="price"] th:first-child {
    background: #ffd98a !important;
    color: #3f2500 !important;
  }

  .codex-mobile-table-compare-wide thead th:first-child {
    z-index: 3;
  }

  .codex-mobile-table-compare-wide .wp-block-button__link,
  .codex-mobile-table-compare-wide .mh-price-btn,
  .codex-mobile-table-compare-wide .monohikaku-price-btn,
  .codex-mobile-table-compare-wide a[class*="btn"],
  .codex-mobile-table-compare-wide a[class*="button"],
  .codex-mobile-table-compare-wide span[class*="btn"],
  .codex-mobile-table-compare-wide span[class*="button"] {
    box-sizing: border-box;
    display: inline-block !important;
    width: 100%;
    min-width: 0 !important;
    max-width: 100%;
    min-height: 34px !important;
    padding: 7px 6px !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
    font-size: 13px !important;
    line-height: 1.25 !important;
  }

  .codex-mobile-table-stack {
    display: block;
  }

  .codex-mobile-table-stack table,
  .codex-mobile-table-stack thead,
  .codex-mobile-table-stack tbody,
  .codex-mobile-table-stack tr,
  .codex-mobile-table-stack th,
  .codex-mobile-table-stack td {
    display: block;
    width: 100% !important;
    min-width: 0 !important;
  }

  .codex-mobile-table-stack table {
    border: 1px solid #aebfd0;
    border-radius: 7px;
    overflow: hidden;
    background: #fff;
  }

  .codex-mobile-table-stack thead {
    position: absolute;
    width: 1px !important;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }

  .codex-mobile-table-stack tr[data-codex-header-row="1"] {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    white-space: nowrap !important;
  }

  .codex-mobile-table-stack tr {
    box-sizing: border-box;
    margin: 0;
    border: 0;
    border-top: 1px solid #b8c8d8;
    border-radius: 0;
    background: #fff;
    overflow: visible;
  }

  .codex-mobile-table-stack tbody tr:first-child,
  .codex-mobile-table-stack table > tr:first-child {
    border-top: 0;
  }

  .codex-mobile-table-stack td,
  .codex-mobile-table-stack th {
    box-sizing: border-box;
    border-width: 0 0 1px !important;
    border-color: #c7d5e2 !important;
    background: #fff !important;
    color: #111827 !important;
  }

  .codex-mobile-table-stack tr > :last-child {
    border-bottom: 0 !important;
  }

  .codex-mobile-table-stack td[data-codex-label]::before {
    content: none;
    display: none;
  }

  .codex-mobile-table-stack-labeled tr > :not(:first-child)[data-codex-label]::before {
    content: attr(data-codex-label-short);
    display: block;
    grid-column: 1;
    margin: 0.15em 0 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: #5b7086;
    font-size: 10.5px;
    font-weight: 800;
    line-height: 1.35;
  }

  .codex-mobile-table-stack-labeled td[data-codex-label],
  .codex-mobile-table-stack-labeled th[data-codex-label] {
    display: grid;
    grid-template-columns: 5.2em minmax(0, 1fr);
    column-gap: 8px;
    align-items: start;
    padding: 8px 10px 10px;
    line-height: 1.7;
  }

  .codex-mobile-table-stack-labeled .codex-mobile-table-cell-value {
    display: block;
    grid-column: 2;
    min-width: 0;
  }

  .codex-mobile-table-stack td:first-child,
  .codex-mobile-table-stack th:first-child {
    background: #dcebf6 !important;
    color: #0b2440 !important;
    font-weight: 800;
  }

  .codex-mobile-table-stack-labeled tr > :first-child {
    background: #102a43 !important;
    color: #fff !important;
    font-weight: 900;
    padding: 10px 11px !important;
    line-height: 1.45;
  }

  .codex-mobile-table-record table,
  .codex-mobile-table-place table,
  .codex-mobile-table-usecase table,
  .codex-mobile-table-rank table {
    border: 0;
    border-radius: 0;
    background: transparent;
  }

  .codex-mobile-table-record tr,
  .codex-mobile-table-place tr,
  .codex-mobile-table-usecase tr,
  .codex-mobile-table-rank tr {
    margin: 0 0 10px;
    border: 1px solid #aebfd0;
    border-radius: 7px;
    background: #fff;
    overflow: hidden;
  }

  .codex-mobile-table-record tbody tr:first-child,
  .codex-mobile-table-record table > tr:first-child,
  .codex-mobile-table-place tbody tr:first-child,
  .codex-mobile-table-place table > tr:first-child,
  .codex-mobile-table-usecase tbody tr:first-child,
  .codex-mobile-table-usecase table > tr:first-child,
  .codex-mobile-table-rank tbody tr:first-child,
  .codex-mobile-table-rank table > tr:first-child {
    border-top: 1px solid #aebfd0;
  }

  .codex-mobile-table-record tr > :not(:first-child),
  .codex-mobile-table-place tr > :not(:first-child),
  .codex-mobile-table-usecase tr > :not(:first-child) {
    padding: 9px 11px 11px !important;
    line-height: 1.72;
  }

  .codex-mobile-table-record tr:last-child,
  .codex-mobile-table-place tr:last-child,
  .codex-mobile-table-usecase tr:last-child,
  .codex-mobile-table-rank tr:last-child {
    margin-bottom: 0;
  }

  .codex-mobile-table-procedure td[data-codex-label]::before,
  .codex-mobile-table-procedure th[data-codex-label]::before {
    content: none;
    display: none;
  }

  .codex-mobile-table-procedure td[data-codex-label],
  .codex-mobile-table-procedure th[data-codex-label] {
    padding: 9px 11px 11px;
    line-height: 1.75;
  }

  .codex-mobile-table-stack tr > :first-child:last-child {
    background: #102a43 !important;
    color: #fff !important;
    font-weight: 900;
  }

  .codex-mobile-table-rank tbody,
  .codex-mobile-table-rank tr,
  .codex-mobile-table-rank td {
    display: block;
  }

  .codex-mobile-table-rank td {
    border-width: 0 0 1px !important;
  }

  .codex-mobile-table-rank tr > :last-child {
    border-bottom: 0 !important;
  }

  .codex-mobile-table-rank td:first-child {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #dcebf6 !important;
    color: #0b2440 !important;
    font-size: 15px;
    font-weight: 900;
    line-height: 1.35;
  }

  .codex-mobile-table-rank td:first-child::before {
    content: none;
    display: none;
  }

}


/* Keep long visible TOCs readable without hiding any decision link. */
@media (max-width: 767px) {
    .p-toc.-capbox:not(.is-omitted):has(> .p-toc__list > li:nth-of-type(8)) {
        margin-top: 32px !important;
        margin-bottom: 32px !important;
        padding-bottom: 16px !important;
    }
    .p-toc.-capbox:not(.is-omitted):has(> .p-toc__list > li:nth-of-type(8)) > .p-toc__list > li {
        margin-top: 4px !important;
        margin-bottom: 4px !important;
        font-size: 15px !important;
        line-height: 1.55 !important;
    }
    .p-toc.-capbox:not(.is-omitted):has(> .p-toc__list > li:nth-of-type(8)) > .p-toc__list > li > .p-toc__link {
        font-size: 15px !important;
        line-height: 1.55 !important;
    }
}


@media (max-width: 767px) {
    .l-header__spNav {
        min-height: 44px !important;
        position: relative !important;
    }
    .l-header__spNav .p-spHeadMenu {
        min-height: 44px !important;
        height: 44px !important;
    }
    .l-header__spNav .p-spHeadMenu > li > a {
        box-sizing: border-box !important;
        display: flex !important;
        align-items: center !important;
        min-height: 44px !important;
        height: 44px !important;
        padding: 4px 10px !important;
    }
    /* The nav is intentionally horizontal; show that more destinations continue right. */
    .l-header__spNav::after {
        content: "";
        position: absolute;
        z-index: 2;
        top: 0;
        right: 0;
        bottom: 0;
        width: 34px;
        pointer-events: none;
        background: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, .98) 82%);
        transition: opacity .18s ease;
    }
    .l-header__spNav::before {
        content: "›";
        position: absolute;
        z-index: 3;
        top: 50%;
        right: 4px;
        width: 24px;
        height: 24px;
        display: flex;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
        transform: translateY(-50%);
        border: 1px solid rgba(26, 75, 95, .18);
        border-radius: 999px;
        background: rgba(255, 255, 255, .96);
        box-shadow: 0 1px 5px rgba(16, 55, 70, .14);
        color: #1a4b5f;
        font-size: 22px;
        font-weight: 700;
        line-height: 1;
        pointer-events: none;
        transition: opacity .18s ease;
    }
    .l-header__spNav.is-sp-nav-end::before,
    .l-header__spNav.is-sp-nav-end::after {
        opacity: 0;
    }
}

.single-post .l-mainContent__inner > .p-articleThumb.p-articleThumb{order:5}

@media (max-width: 959px) {
  html.pmx-ft-new .single .l-footer .w-footer__box:has(.widget_swell_new_posts) { display: none; }
  html.pmx-pop-5 #body_wrap.single #footer .w-footer__box .codex-swell-popular-panel .codex-swell-popular-item:nth-child(n+6) { display: none !important; }
  .single .l-footer .c-listMenu li { margin: 0; border: 0; }
  .single .l-footer .c-listMenu li a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 14px; border: 1px solid currentColor; border-radius: 999px; line-height: 1.4; }
  .single .l-footer .c-listMenu li a::before, .single .l-footer .c-listMenu li a::after { display: none; }
  .single .l-footer .c-listMenu .children, .single .l-footer .c-listMenu .sub-menu { display: none; }
}
@media (max-width: 959px) {
  .single .l-footer .c-listMenu ul { display: grid !important; grid-template-rows: repeat(3, auto); grid-auto-flow: column; grid-auto-columns: max-content; overflow-x: auto; gap: 8px; padding: 0 0 6px; }
  #body_wrap.single #footer [data-partsID="24143"] ul { display: grid !important; grid-template-columns: 1fr 1fr; gap: 6px !important; }
  #body_wrap.single #footer [data-partsID="24143"] li a > div > div + div, #body_wrap.single #footer [data-partsID="24143"] li a > span:last-child { display: none !important; }
  #body_wrap.single #footer [data-partsID="24143"] li a { height: 100%; padding: 8px !important; gap: 6px !important; }
  html.pmx-kouki-tag .single .l-footer .footer-kouki-tag { display: none; }
}
@media (max-width: 959px) {
  #body_wrap.single #footer [data-partsID="24143"] > div > div:first-child > div > div + div { display: none !important; }
}
@media (max-width: 959px) {
  .single #content.l-content { margin-bottom: 24px !important; padding-bottom: 24px !important; }
  .single #before_footer_widget { margin-top: 24px !important; margin-bottom: 20px !important; }
  .single .codex-preferred-source-widget { margin: 8px auto !important; }
  .single .codex-preferred-source-widget:has([google-add-preferred-source-btn] > *) > p:last-of-type { display: none !important; }
  html.pmx-ft-search .single .l-footer .widget_search { display: none; }
}


:root {
  --sp1-ink: #17283a;
  --sp1-heading: #12324f;
  --sp1-link: #075ea9;
  --sp1-link-hover: #064c87;
  --sp1-accent: #a84f0d;
  --sp1-canvas: #f6f8fb;
  --sp1-surface: #ffffff;
  --sp1-soft: #edf4fa;
  --sp1-border: #d8e2ec;
  --sp1-muted: #52657a;
  --sp1-focus: #ffbf47;
  --sp1-radius-sm: 8px;
  --sp1-radius: 14px;
  --sp1-shadow: 0 8px 24px rgba(18, 50, 79, .08);
  --sp1-shadow-hover: 0 12px 30px rgba(18, 50, 79, .13);
}

html { scroll-behavior: smooth; }
body { color: var(--sp1-ink); background: var(--sp1-canvas); }
a { text-underline-offset: .16em; }
a, button, input, select, textarea { -webkit-tap-highlight-color: rgba(7, 94, 169, .14); }
:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid var(--sp1-focus) !important;
  outline-offset: 3px !important;
  border-radius: 4px;
}

/* Compact, stable site chrome. */
@media (min-width: 960px) {
  .l-header__logo { height: 80px !important; }
  .l-header__logo .c-headLogo { height: 80px; display: flex; align-items: center; }
  .l-header__logo img { width: auto !important; max-height: 62px !important; object-fit: contain; }
  .l-header__gnav { height: 48px !important; }
  .c-gnav > li > a { min-height: 48px; font-size: 14px; font-weight: 700; letter-spacing: .015em; }
}

.l-content { background: transparent; }
.l-mainContent__inner,
.c-sidebar__inner,
.p-searchContent { color: var(--sp1-ink); }
.c-pageTitle,
.c-postTitle__ttl,
.p-termHead__title,
.c-searchForm__label { color: var(--sp1-heading); letter-spacing: -.01em; text-wrap: balance; }
.c-postTitle__ttl { font-size: clamp(1.45rem, 2.45vw, 2.05rem) !important; line-height: 1.42 !important; }
.p-breadcrumb { color: var(--sp1-muted); font-size: 12px; }
.p-breadcrumb a { color: var(--sp1-link); }

/* Article hierarchy: the shared campaign inventory precedes article content. */
.single-post .l-mainContent__inner { display: flex !important; flex-direction: column !important; }
.single-post .l-mainContent__inner > .c-postTitle { order: 1; }
.single-post .l-mainContent__inner > .p-articleMetas { order: 2; }
.single-post .l-mainContent__inner > .p-articleThumb { order: 3; }
.single-post .l-mainContent__inner > .post_content { order: 5; }
.single-post .l-mainContent__inner > .w-singleTop { order: 4; }
.single-post .l-mainContent__inner > .w-singleBottom { order: 6; }
.single-post .l-mainContent__inner > .p-articleFoot { order: 7; }
.single-post .p-articleThumb {
  overflow: hidden;
  max-width: 840px;
  margin-right: auto;
  margin-left: auto;
  border-radius: var(--sp1-radius);
  box-shadow: var(--sp1-shadow);
}
.post_content { max-width: 840px; margin-right: auto; margin-left: auto; }
.post_content > h2 {
  margin-top: clamp(2.4rem, 5vw, 3.6rem) !important;
  padding: .78em .9em !important;
  border: 0 !important;
  border-left: 5px solid var(--sp1-link) !important;
  border-radius: 0 var(--sp1-radius-sm) var(--sp1-radius-sm) 0 !important;
  color: var(--sp1-heading) !important;
  background: var(--sp1-soft) !important;
  box-shadow: none !important;
  font-size: clamp(1.35rem, 2.3vw, 1.7rem) !important;
  line-height: 1.5 !important;
}
.post_content > h3 {
  margin-top: 2.1rem !important;
  padding: 0 0 .48em !important;
  border: 0 !important;
  border-bottom: 2px solid var(--sp1-border) !important;
  color: var(--sp1-heading) !important;
  background: transparent !important;
  font-size: clamp(1.16rem, 2vw, 1.38rem) !important;
}
.post_content :where(.swell-block-capbox, .is-style-big_icon_point, .is-style-big_icon_check, .wp-block-group, .wp-block-table) {
  border-radius: var(--sp1-radius-sm);
}
.post_content :where(.swell-block-button__link, .wp-block-button__link, a[class*="btn"], .is-style-btn_normal a) {
  min-height: 48px;
  border-radius: var(--sp1-radius-sm) !important;
  font-weight: 800;
  line-height: 1.45;
}
.post_content .swell-block-button__link,
.post_content .wp-block-button__link { box-shadow: 0 5px 14px rgba(7, 94, 169, .16); }
.single-post .w-singleTop {
  max-width: 840px;
  margin: 42px auto 0 !important;
  padding-top: 28px;
  border-top: 1px solid var(--sp1-border);
}

/* Home keeps its editorial identity while sharing the system. */
.home .spz :where(.spz-feature, .spz-row, .spz-carriers, .spz-nav, .spz-priority),
.home .sp-section,
.home .sp-front-campaign-blog-part {
  border-color: var(--sp1-border) !important;
  border-radius: var(--sp1-radius) !important;
  box-shadow: var(--sp1-shadow) !important;
}
.home .spz :where(.spz-label, .spz-section-head, .sp-heading) { color: var(--sp1-heading) !important; }
.home .spz-actions a,
.home .spz-navs a { min-height: 48px; border-radius: var(--sp1-radius-sm); }

/* Category guides: keep all choices, reduce the distance to recent articles. */
.category .sp1-cat-entry { margin-bottom: 36px !important; }
.category .sp1-cat-entry :where(.sp1-cat-section, .sp1-cat-card) {
  border-color: var(--sp1-border) !important;
  border-radius: var(--sp1-radius) !important;
}
.category .sp1-cat-card {
  min-height: 0 !important;
  box-shadow: 0 5px 16px rgba(18, 50, 79, .06) !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.category .sp1-cat-card:hover {
  transform: translateY(-2px);
  border-color: #a9c4dc !important;
  box-shadow: var(--sp1-shadow-hover) !important;
}
.category .sp1-cat-card :where(p, .sp1-cat-card__excerpt) {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.category .p-postList__item { border-color: var(--sp1-border); }
.category .p-postList__link { border-radius: var(--sp1-radius-sm); }

/* Lists, search and fixed pages. */
:where(.p-postList__item, .p-searchContent__item, .c-cardLink) {
  border-color: var(--sp1-border);
}
:where(.p-postList__link, .p-searchContent__item a) { border-radius: var(--sp1-radius-sm); }
.c-searchForm :where(input[type="search"], .c-searchForm__s) { min-height: 48px; border-color: #aebfd0; background: var(--sp1-surface); }
.c-searchForm button { min-width: 48px; min-height: 48px; background: var(--sp1-link); }
.p-toc__expandBtn,
.c-modal__close { min-height: 48px; }
.page .post_content,
.search .l-mainContent__inner,
.error404 .l-mainContent__inner { max-width: 840px; margin-right: auto; margin-left: auto; }

/* Contact form uses the same visual grammar and accessible targets. */
.cx-contact {
  padding: clamp(18px, 4vw, 30px) !important;
  border: 1px solid var(--sp1-border) !important;
  border-radius: var(--sp1-radius) !important;
  background: var(--sp1-surface) !important;
  box-shadow: var(--sp1-shadow) !important;
}
.cx-contact :where(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]), select, textarea) {
  width: 100%;
  min-height: 48px;
  border: 1px solid #aebfd0 !important;
  border-radius: var(--sp1-radius-sm) !important;
  color: var(--sp1-ink);
  background: #fff;
}
.cx-contact textarea { min-height: 168px; }
.cx-contact :where(input[type="checkbox"], input[type="radio"]) { width: 20px; height: 20px; }
.cx-contact label:has(input[type="checkbox"]),
.cx-contact label:has(input[type="radio"]) { min-height: 44px; display: flex; gap: 10px; align-items: center; }
.cx-contact :where(button, input[type="submit"]) {
  min-height: 48px;
  padding: 0 24px;
  border: 0;
  border-radius: var(--sp1-radius-sm);
  color: #fff;
  background: var(--sp1-link);
  font-weight: 800;
}

/* A concise footer index instead of a second sitemap. */
#swell_new_posts-2 .p-postList__item:nth-child(n+5),
#custom_html-15 .codex-swell-popular-item:nth-child(n+6) { display: none !important; }
.l-footer .w-footer__box { align-content: start; }
.l-footer .c-widget { margin-bottom: 28px !important; }
.l-footer .c-widget__title { margin-bottom: 14px; color: #fff; font-size: 1rem; letter-spacing: .03em; }
.l-footer .widget_categories > ul,
.l-footer .widget_nav_menu > div > ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4px 18px;
}
.l-footer :where(.widget_categories, .widget_nav_menu) li { margin: 0 !important; }
.l-footer :where(.widget_categories, .widget_nav_menu) a { display: flex; min-height: 40px; align-items: center; }

@media (max-width: 767px) {
  .c-postTitle__ttl { font-size: 1.48rem !important; line-height: 1.46 !important; }
  .single-post .p-articleThumb { border-radius: 10px; }
  .post_content > h2 { margin-top: 2.25rem !important; padding: .72em .72em !important; font-size: 1.32rem !important; }
  .post_content > h3 { margin-top: 1.8rem !important; font-size: 1.16rem !important; }
  .single-post .w-singleTop { margin-top: 34px !important; padding-top: 22px; }
  .category .sp1-cat-entry { margin-bottom: 26px !important; }
  .category .sp1-cat-card { padding: 13px !important; }
  .category .sp1-cat-card :where(p, .sp1-cat-card__excerpt) { display: none !important; }
  .category .sp1-cat-card :where(h2, h3, h4, .sp1-cat-card__title) { margin-bottom: 0 !important; line-height: 1.48 !important; }
  .category :where(.sp1-cat-track, .sp1-cat-grid) { gap: 10px !important; }
  .l-footer .widget_categories > ul,
  .l-footer .widget_nav_menu > div > ul { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2px 12px; }
  .l-footer .w-footer__box { padding-top: 28px; padding-bottom: 8px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}


.post_content :is(p,li,dd,td,th,figcaption,blockquote) a:not([class]):not([style]):not(:has(img)){text-decoration:underline!important;text-decoration-thickness:1px!important;text-underline-offset:.22em!important;text-decoration-skip-ink:auto}
.post_content :is(p,li,dd,td,th,figcaption,blockquote) a:not([class]):not([style]):not(:has(img)):hover{text-decoration-thickness:2px!important}
.post_content :is(p,li,dd) a:not([class]):not([style]):not(:has(img)):visited{color:#6b3fa0}

/* SP1 compare table (たまコイン型, 2026-10-09). スマホでも2〜3列の横並びを保ち、数字を主役にする。
   部品: .sp1-cmp > table.sp1-cmp-table[data-codex-mobile-table="1"] / caption(.sp1-cmp-sub) / .is-key 列 / tr.is-best / .sp1-num .sp1-unit .sp1-cmp-diff .sp1-cmp-tag
         details.sp1-cmp-all（全行の一覧） / .sp1-example（自分ならいくらか） 
   - 2026-10-29 60sai：補足文を列幅の範囲で折り返し、320pxで金額列が299pxの表を押し広げる問題を解消（数値本体の改行禁止は維持）。
   改善の記録（使って合わなかった所を直したら1行足し、古くなった行は消す）:
   - 2026-10-09 列幅を中身に合わせる（table-layout:auto）：招待コードナビの狭い本文で項目列が95pxになり3〜4行折り返した（2399、表の高さ951→733px）
   - 2026-10-09 群の見出し行 tr.sp1-group：モノヒカク洋服レンタルの9行が1表に詰まりサービス名が毎行折り返した（36059）
   - 2026-10-09 見出し行の補足 thead small を白系に：ハリマップのムーミン展「前売 10/9まで」が濃い背景で読めなかった（36756）
   - 2026-10-10 overflow-wrap:anywhere をやめ、文のセルに最小幅（列が1〜3字幅に細った。共通版 site-engine/assets/compare-table.css と同じ修正）
   - 2026-10-09 長い注記はセルに入れず表の下の foot へ：付与時期の注記で行が縦に伸びた（招待コードナビ2364）
*/
.sp1-cmp { margin: 1.6em 0; padding: 16px 14px 14px; border: 1px solid #cbd8e1; border-radius: 12px; background: #fff; max-width: 100%; }
.sp1-cmp .sp1-cmp-table { width: 100% !important; min-width: 0 !important; table-layout: auto; border-collapse: separate; border-spacing: 0; margin: 0 !important; font-size: 16px; line-height: 1.5; display: table !important; }
.sp1-cmp .sp1-cmp-table caption { display: table-caption !important; caption-side: top; text-align: left; padding: 0 0 12px !important; color: #172b3a; font-size: 1.2em !important; font-weight: 800; line-height: 1.45; }
.sp1-cmp .sp1-cmp-table caption .sp1-cmp-sub { display: block; margin-top: 4px; color: #465b6a; font-size: 14px; font-weight: 400; line-height: 1.5; }
.sp1-cmp .sp1-cmp-table thead { position: static !important; width: auto !important; height: auto !important; clip-path: none !important; overflow: visible !important; display: table-header-group !important; }
.sp1-cmp .sp1-cmp-table tbody { display: table-row-group !important; }
.sp1-cmp .sp1-cmp-table tr { display: table-row !important; border: 0 !important; }
.sp1-cmp .sp1-cmp-table :is(th,td) { display: table-cell !important; width: auto !important; padding: 12px 10px !important; border: 0 !important; border-bottom: 1px solid #dfe7ee !important; vertical-align: middle !important; background: #fff; color: #172b3a; white-space: normal !important; overflow-wrap: break-word; }
.sp1-cmp .sp1-cmp-table :is(th,td)::before { content: none !important; display: none !important; }
.sp1-cmp .sp1-cmp-table thead th { background: #172b3a !important; color: #fff !important; font-size: 14px !important; font-weight: 700; text-align: center !important; padding: 9px 6px !important; text-wrap: balance; }
.sp1-cmp .sp1-cmp-table thead th small { display: block; margin-top: 1px; color: rgba(255,255,255,.85) !important; font-size: 14px !important; font-weight: 400; }
.sp1-cmp .sp1-cmp-table thead th:first-child { border-radius: 8px 0 0 0; }
.sp1-cmp .sp1-cmp-table thead th:last-child { border-radius: 0 8px 0 0; }
.sp1-cmp .sp1-cmp-table tbody th { width: auto; min-width: 6.5em; text-align: left !important; font-weight: 700; background: #f6f9fb !important; }
.sp1-cmp .sp1-cmp-table tbody th small { display: block; margin-top: 2px; color: #465b6a; font-size: 14px !important; font-weight: 400; }
.sp1-cmp .sp1-cmp-table tbody td { text-align: right !important; white-space: nowrap !important; }
.sp1-cmp .sp1-cmp-table tbody td .sp1-cmp-diff { white-space: normal; }
.sp1-cmp .sp1-cmp-table tbody td.is-text { text-align: left !important; font-size: 15px; white-space: normal !important; }
.sp1-cmp .sp1-num { font-size: 1.4em; font-weight: 800; letter-spacing: .01em; font-variant-numeric: tabular-nums; line-height: 1.2; }
.sp1-cmp .sp1-unit { margin-left: 1px; font-size: max(14px, .8em); font-weight: 700; color: inherit; }
.sp1-cmp .sp1-pre { font-size: .85em; font-weight: 700; margin-right: 1px; }
.sp1-cmp .sp1-cmp-diff { display: block; width: min-content; min-width: 100%; overflow-wrap: anywhere; text-wrap: pretty; margin-top: 3px; font-size: 14px; font-weight: 700; line-height: 1.3; }
.sp1-cmp .sp1-cmp-diff.is-up { color: #b42318; }
.sp1-cmp .sp1-cmp-diff.is-up::before { content: "▲"; font-size: .8em; margin-right: 2px; }
.sp1-cmp .sp1-cmp-diff.is-good { color: #067647; }
.sp1-cmp .sp1-cmp-diff.is-note { color: #465b6a; font-weight: 400; }
.sp1-cmp .sp1-cmp-table .is-key { background: #fff4f2 !important; color: #b42318; }
.sp1-cmp .sp1-cmp-table thead .is-key { background: #b42318 !important; color: #fff !important; }
.sp1-cmp .sp1-cmp-table td.is-win { background: #ecfdf3 !important; color: #067647; box-shadow: inset 0 0 0 2px #12b76a; }
.sp1-cmp .sp1-cmp-tag { display: inline-block; margin: 0 0 0 6px; padding: 1px 7px; border-radius: 4px; background: #fde68a; color: #713f12; font-size: 14px; font-weight: 800; line-height: 1.5; vertical-align: 1px; }
.sp1-cmp tr.is-best th { box-shadow: inset 4px 0 0 #f59e0b; }
.sp1-cmp .sp1-cmp-foot { margin: 10px 0 0 !important; color: #465b6a; font-size: 14px !important; line-height: 1.6; }
.sp1-cmp-all { margin: -.6em 0 1.6em; border: 1px solid #cbd8e1; border-radius: 10px; background: #f6f9fb; }
.sp1-cmp-all > summary { cursor: pointer; list-style: none; padding: 14px 44px 14px 16px; position: relative; font-weight: 700; color: #172b3a; min-height: 48px; }
.sp1-cmp-all > summary::-webkit-details-marker { display: none; }
.sp1-cmp-all > summary::after { content: "▼"; position: absolute; right: 16px; top: 50%; transform: translateY(-50%); font-size: 12px; color: #465b6a; }
.sp1-cmp-all[open] > summary::after { content: "▲"; }
.sp1-cmp-all > :not(summary) { margin: 0 12px 12px !important; width: auto !important; max-width: calc(100% - 24px) !important; }
.sp1-example { display: flex; gap: 12px; align-items: flex-start; margin: 1.2em 0 1.6em; padding: 14px 16px; border-radius: 10px; background: #effaf3; border-left: 4px solid #12b76a; }
.sp1-example::before { content: "例"; flex: none; display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%; background: #12b76a; color: #fff; font-size: 14px; font-weight: 800; }
.sp1-example p { margin: 0 !important; }
.sp1-example mark { background: linear-gradient(transparent 55%, #fde68a 55%); color: #b42318; font-weight: 800; padding: 0 1px; }
/* 群の見出し行（例：サービス名ごとにプランを並べる）。2026-10-09 モノヒカク洋服レンタルで9行が1表に詰まり読みにくかったため追加 */
.sp1-cmp .sp1-cmp-table tr.sp1-group > th { background: #e8eef3 !important; color: #172b3a !important; font-size: 14px !important; font-weight: 800; text-align: left !important; padding: 6px 10px !important; border-bottom: 0 !important; }
.sp1-cmp .sp1-cmp-table tr.sp1-group + tr > * { border-top: 0 !important; }
@media (max-width: 600px) {
  .sp1-cmp { padding: 12px 8px 10px; margin-inline: 0; }
  .sp1-cmp .sp1-cmp-table caption { font-size: 1.12em !important; }
  .sp1-cmp .sp1-cmp-table :is(th,td) { padding: 10px 6px !important; }
  .sp1-cmp .sp1-cmp-table tbody th { font-size: 15px !important; }
  .sp1-cmp .sp1-num { font-size: 1.18em; }
  .sp1-cmp .sp1-cmp-table tbody td { padding: 10px 5px !important; }
}

/* 2026-10-10 文のセル：最小幅を持たせ、補足（確認日・購入先）は折らない */
.sp1-cmp .sp1-cmp-table tbody td.is-text small { display: block; margin-top: 2px; color: #465b6a; font-size: 14px !important; font-weight: 400; white-space: nowrap; }
@media (max-width: 600px) {
  .sp1-cmp .sp1-cmp-table tbody th { min-width: 5em; }
  .sp1-cmp .sp1-cmp-table tbody td.is-text { min-width: 6em; font-size: 14px; }
}

/* 狭い画面では容量・期間を金額の上に置き、金額自体は分断しない。 */
@media (max-width: 360px) {
  .sp1-cmp .sp1-pre { display: block; }
}