/* ============================================================
   切手買取 比較LP 追加スタイル（kt-*）
   - 土台は parts.css（薬剤師比較ランキング型パーツ yk-* の原本そのまま）
   - ここには「切手買取用の調整」と「体験談パーツ（mt-talk / mt-say / mt-faq）の必要分」だけを書く
   - 色は parts.css の変数を使う（青=見出し・表／緑=特徴・数字／オレンジ=ボタン／赤=注意／黄=結論）
   ============================================================ */

/* ページの器（パーツ集の pd-wrap と同じ幅・余白。パーツ側の margin:0 -12px がそのまま効く） */
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
body { margin: 0; background: #f4f4f4; }
.kt-wrap { max-width: 640px; margin: 0 auto; padding: 0 12px; background: #fff; overflow-x: hidden; }
.kt-wrap img { max-width: 100%; }
[id] { scroll-margin-top: 12px; }
.kt-site { display: flex; align-items: center; justify-content: space-between; gap: .6em; margin: 0 -12px; padding: .45em 12px; background: var(--yk-blue-d); color: #fff; font-size: 13px; font-weight: 900; line-height: 1.4; }
.yk-body .kt-site a { color: #fff; text-decoration: none; }
.kt-site small { font-weight: 400; font-size: 11px; opacity: .85; }
.kt-h2 { margin: 1.8em 0 .7em !important; padding: .5em .7em; border-left: 6px solid var(--yk-blue); background: var(--yk-blue-pale); font-size: 19px; font-weight: 900; line-height: 1.45; }
.kt-h2 small { display: block; font-size: 12px; font-weight: 700; color: var(--yk-sub); }
.kt-lead { font-size: 15px; }
.kt-center { text-align: center; }
.yk-body .yk-btn { color: #fff; }

/* 注意書き（実績・順位・口コミの注記を常時表示） */
.kt-caution { margin: .6em 0 1.2em !important; padding: .6em .8em; border: 1px solid #f1c6c6; border-radius: 6px; background: #fff7f7; color: #6b2a2a; font-size: 12.5px; line-height: 1.7 !important; }
.kt-caution b { color: var(--yk-red); }
.kt-src { margin: .2em 0 1em !important; font-size: 11px !important; line-height: 1.6 !important; color: var(--yk-sub); word-break: break-all; }
.kt-src a { color: var(--yk-sub); }

/* A-1 FV：画像・サブコピー・注記 */
.yk-hero img.yk-hero__img { display: block; width: 100%; height: 100%; min-height: 150px; object-fit: cover; }
.kt-hero-sub { margin: 0 0 .6em !important; font-size: 13px; line-height: 1.65 !important; color: #34495e; font-weight: 700; }
.kt-hero-note { grid-column: 1 / -1; margin: .4em 0 0 !important; font-size: 10.5px !important; color: var(--yk-sub); line-height: 1.5 !important; }
.yk-hero__badges li { width: auto; min-width: 82px; flex: 1 1 0; max-width: 96px; aspect-ratio: 1 / 1; height: auto; padding: 4px; }

/* ロゴ画像を各パーツの箱にぴったり収める */
.yk-best3__logo, .yk-cmp__logo, .yk-combo__logo, .yk-jobex__logo { display: block; }
.yk-best3__logo img, .yk-cmp__logo img, .yk-combo__logo img, .yk-jobex__logo img, .yk-matrix__item img, .kt-logo img { display: block; width: 100%; height: 100%; object-fit: contain; }
.yk-matrix__item { display: grid; place-items: center; padding: 3px 4px; }
.yk-matrix__item.is-pick { display: block; }
.yk-matrix__item.is-pick img { height: 22px; }
.yk-matrix__item small { display: block; font-size: 9.5px; line-height: 1.3; color: var(--yk-sub); text-align: center; }
.yk-matrix__item.kt-has-cap { height: auto; }
.yk-matrix__item.kt-has-cap img { height: 20px; }

/* B-2 実績カード：画像の代わりに「切手風」の文字カード（公式写真は使わない） */
.kt-stamp { display: grid; place-items: center; align-content: center; aspect-ratio: 3 / 2; margin: 10px; padding: 14px; border-radius: 3px; background: #fffaf0; outline: 2px dashed #d8c39b; outline-offset: -7px; box-shadow: 0 1px 4px rgba(0,0,0,.12); text-align: center; }
.kt-stamp__item { display: block; font-family: "Hiragino Mincho ProN", "Yu Mincho", serif; font-size: 15px; font-weight: 700; line-height: 1.45; color: #5a3b12; }
.kt-stamp__by { display: inline-block; margin-top: .4em; padding: .1em .6em; border-radius: 99px; background: var(--yk-blue); color: #fff; font-size: 11px; font-weight: 700; }
.yk-jobcard__pay small { display: block; font-size: 11px; font-weight: 400; color: var(--yk-sub); }
.yk-jobcard .yk-btn, .yk-jobex .yk-btn { margin-bottom: 12px; }
.yk-jobex .yk-kv { margin-bottom: 10px; }
.yk-hscroll { scrollbar-width: thin; }

/* C-1 比較表：○／未確認 の表記 */
.kt-yes { display: block; color: var(--yk-red); font-size: 22px; font-weight: 900; line-height: 1.1; }
.kt-unk { display: inline-block; padding: .05em .4em; border-radius: 4px; background: #eef1f5; color: #6b7280; font-size: 10.5px; font-weight: 700; }
.yk-cmp td small { display: block; font-size: 10px; color: var(--yk-sub); line-height: 1.4; }
.yk-tabs__panels { background: #fff; }
.kt-cmp-note { margin: .4em 0 0 !important; padding: 0 .3em; font-size: 11px !important; color: var(--yk-sub); line-height: 1.6 !important; }

/* C-3 2社併用：パターンの小見出し */
.kt-combo-case { margin: 1.2em 0 .6em !important; padding: .3em .6em; border-radius: 6px; background: #fff; text-align: center; font-size: 14px; font-weight: 900; color: var(--yk-blue-d); }
.kt-combo-case:first-of-type { margin-top: 0 !important; }
.yk-combo__card .kt-sublink { display: block; margin: 0 12px 14px; text-align: center; font-size: 13px; font-weight: 700; }

/* D ランキング：バナー・タブ内の余白 */
.kt-rankpanel { padding: 10px; }
.kt-banner { display: block; width: 100%; height: auto; border-radius: 6px; border: 1px solid var(--yk-rule); }
.kt-banner-note { margin: .2em 0 .6em !important; text-align: right; font-size: 10.5px !important; color: var(--yk-sub); }
.yk-editor__chara { object-fit: contain; background: #fff; }
.yk-voice__face { display: block; }
.yk-voice__who b { display: block; font-size: 11px; color: var(--yk-blue-d); }

/* 体験談パーツ集（mt-*）から：導入会話 text-8 / 吹き出し / FAQ how-5（必要分のみ） */
:root { --mt-blue: #0066bf; --mt-blue-bg: #eef5fc; --mt-red: #e2231a; --mt-red-bg: #fdeeee; --mt-sub: #777; --mt-rule: #dcdcdc; }
.mt-talk { margin: 1.2em 0 1.6em; }
.mt-talk__row { display: flex; align-items: flex-start; gap: 12px; margin: 0 0 1em; animation: mt-talk-in .45s ease-out both; }
.mt-talk__row:nth-of-type(2) { animation-delay: .35s; }
.mt-talk__row:nth-of-type(3) { animation-delay: .7s; }
.mt-talk__row:nth-of-type(4) { animation-delay: 1.05s; }
@keyframes mt-talk-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .mt-talk__row { animation: none; } }
.mt-talk__row--r { flex-direction: row-reverse; }
.mt-talk__who { flex: 0 0 60px; text-align: center; }
.mt-talk__icon { display: grid; place-items: center; width: 56px; height: 56px; margin: 0 auto; border: 2px solid #9cc3e8; border-radius: 50%; background: var(--mt-blue-bg); overflow: hidden; color: var(--mt-blue); font-size: 13px; font-weight: 900; line-height: 1.2; }
.mt-talk__icon img { display: block; width: 100%; height: 100%; object-fit: cover; }
.mt-talk__row--r .mt-talk__icon { border-color: #f0a9a5; background: var(--mt-red-bg); color: var(--mt-red); }
.mt-talk__name { display: block; margin-top: .25em; font-size: 11px; font-weight: 700; color: var(--mt-sub); line-height: 1.3; }
.mt-talk__b { position: relative; max-width: calc(100% - 72px); margin-top: 4px; padding: .6em .9em; border: 2px solid #9cc3e8; border-radius: 12px; background: #fff; font-size: 15px; line-height: 1.75; }
.mt-talk__b::before { content: ""; position: absolute; top: 16px; left: -11px; border-style: solid; border-width: 8px 11px 8px 0; border-color: transparent #9cc3e8 transparent transparent; }
.mt-talk__b::after { content: ""; position: absolute; top: 18px; left: -7px; border-style: solid; border-width: 6px 8px 6px 0; border-color: transparent #fff transparent transparent; }
.mt-talk__row--r .mt-talk__b { border-color: #f0a9a5; }
.mt-talk__row--r .mt-talk__b::before { left: auto; right: -11px; border-width: 8px 0 8px 11px; border-color: transparent transparent transparent #f0a9a5; }
.mt-talk__row--r .mt-talk__b::after { left: auto; right: -7px; border-width: 6px 0 6px 8px; border-color: transparent transparent transparent #fff; }
.mt-say { display: flex; align-items: center; gap: 12px; margin: 1.3em 0; }
.mt-say__icon { flex: 0 0 52px; display: grid; place-items: center; width: 52px; height: 52px; border: 2px solid #f0a9a5; border-radius: 50%; background: var(--mt-red-bg); overflow: hidden; }
.mt-say__icon img { display: block; width: 100%; height: 100%; object-fit: cover; }
.mt-say__b { position: relative; margin: 0 !important; padding: .55em .9em; border: 2px solid #f0a9a5; border-radius: 12px; background: #fff; font-size: 15px; font-weight: 700; line-height: 1.65; }
.mt-say__b::before { content: ""; position: absolute; top: 50%; left: -11px; margin-top: -8px; border-style: solid; border-width: 8px 11px 8px 0; border-color: transparent #f0a9a5 transparent transparent; }
.mt-say__b::after { content: ""; position: absolute; top: 50%; left: -7px; margin-top: -6px; border-style: solid; border-width: 6px 8px 6px 0; border-color: transparent #fff transparent transparent; }
.mt-faq { margin: 1.2em 0; border-top: 1px solid var(--mt-rule); }
.mt-faq details { border-bottom: 1px solid var(--mt-rule); }
.mt-faq summary { position: relative; display: block; padding: .8em 2em .8em 2.1em; cursor: pointer; font-size: 15px; font-weight: 700; line-height: 1.6; list-style: none; }
.mt-faq summary::-webkit-details-marker { display: none; }
.mt-faq summary::before { content: "Q"; position: absolute; left: .3em; top: .6em; color: var(--mt-blue); font-size: 18px; font-weight: 900; }
.mt-faq summary::after { content: "+"; position: absolute; right: .5em; top: .5em; color: var(--mt-blue); font-size: 20px; font-weight: 700; }
.mt-faq details[open] summary::after { content: "−"; }
.mt-faq__a { position: relative; margin: 0 0 .9em !important; padding: 0 .6em 0 2.1em; font-size: 14.5px; line-height: 1.8; }
.mt-faq__a::before { content: "A"; position: absolute; left: .3em; top: -.1em; color: var(--mt-red); font-size: 18px; font-weight: 900; }
.kt-talk-note { margin: -.8em 0 1.4em !important; text-align: right; font-size: 11px !important; color: var(--yk-sub); }

/* 査定の流れ（3ステップ・画像つき） */
.kt-flow { margin: 1em 0 1.4em; padding: 0; list-style: none; counter-reset: kt-step; }
.kt-flow li { position: relative; margin: 0 0 12px; padding: 10px; border: 2px solid var(--yk-blue-bg); border-radius: 8px; background: #fff; }
.kt-flow li::before { counter-increment: kt-step; content: "STEP " counter(kt-step); display: inline-block; margin-bottom: .3em; padding: .1em .7em; border-radius: 4px; background: var(--yk-blue); color: #fff; font-size: 12px; font-weight: 900; }
.kt-flow h3 { margin: 0 0 .3em; font-size: 16px; color: var(--yk-blue-d); }
.kt-flow p { margin: 0 0 .5em !important; font-size: 14px; line-height: 1.7; }
.kt-flow .mt-img { margin: .4em 0 0; }

/* E-2 診断：結果表示 */
.yk-finder__row select { min-width: 0; }
.kt-finder-result { margin: 0 0 1.4em; }
.kt-finder-result:empty { display: none; }
.kt-res { padding: 12px; border: 2px solid var(--yk-green); border-radius: 8px; background: var(--yk-green-bg); }
.kt-res__ttl { margin: 0 0 .5em !important; font-size: 16px; font-weight: 900; color: var(--yk-green-d); }
.kt-res__card { margin: 0 0 10px; padding: 10px; border-radius: 6px; background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,.06); }
.kt-res__name { display: flex; align-items: center; gap: .5em; margin: 0 0 .3em !important; font-size: 15px; font-weight: 900; }
.kt-res__name img { width: 90px; height: 24px; object-fit: contain; }
.kt-res__tag { padding: .05em .5em; border-radius: 4px; background: var(--yk-blue); color: #fff; font-size: 11px; }
.kt-res__tag.is-sub { background: #7d8794; }
.kt-res__card ul { margin: 0 0 .5em; padding-left: 1.2em; font-size: 13.5px; line-height: 1.65; }
.kt-res .yk-btnpair { margin: .6em 0 0; }
.kt-res__note { margin: .4em 0 0 !important; font-size: 11.5px !important; color: var(--yk-sub); line-height: 1.6 !important; }

/* ASPリンク未設定のボタン（kitte.js が内部導線へ切り替えたとき）：青にして公式リンクと区別 */
.yk-btn.is-pending { background: linear-gradient(#5b8bd0, var(--yk-blue)); box-shadow: 0 3px 0 var(--yk-blue-d); }
.yk-btn.is-pending::after { display: none; }
.kt-catch-sub { margin: .3em 0 0 !important; text-align: center; font-size: 11px !important; color: var(--yk-sub); line-height: 1.5 !important; }

/* F 個別ページ：公式掲載画像のグリッド・テキスト図 */
.kt-shotgrid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; }
.kt-shotgrid figure { margin: 0; }
.kt-shotgrid img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border: 1px solid var(--yk-rule); border-radius: 4px; }
.kt-shotgrid figcaption { margin-top: .2em; text-align: center; font-size: 11.5px; font-weight: 700; color: var(--yk-ink); }
.kt-shotgrid--3 { grid-template-columns: repeat(3, 1fr); }
.kt-textshot { border: 1px solid var(--yk-rule); border-radius: 6px; background: #fff; overflow: hidden; }
.kt-textshot__bar { display: flex; align-items: center; gap: 6px; padding: .35em .7em; background: #eef1f5; font-size: 11px; color: var(--yk-sub); word-break: break-all; }
.kt-textshot__bar::before { content: "● ● ●"; flex: 0 0 auto; letter-spacing: -.1em; color: #c3c9d2; font-size: 9px; }
.kt-textshot dl { display: grid; grid-template-columns: 7.2em 1fr; gap: 0; margin: 0; font-size: 13px; line-height: 1.6; }
.kt-textshot dt, .kt-textshot dd { margin: 0; padding: .5em .7em; border-top: 1px solid var(--yk-rule); }
.kt-textshot dt { background: var(--yk-blue-pale); font-weight: 700; color: var(--yk-blue-d); }
.kt-areas { width: 100%; border-collapse: collapse; margin: .6em 0 1em; font-size: 13.5px; line-height: 1.6; }
.kt-areas th, .kt-areas td { padding: .5em .6em; border: 1px solid var(--yk-rule); text-align: left; vertical-align: top; }
.kt-areas th { width: 6.5em; background: var(--yk-blue-bg); color: var(--yk-blue-d); }
.kt-related { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 1em 0 1.4em; }
.kt-related .yk-btn--sub { min-height: 52px; font-size: 13px; }
.yk-svchead__img { display: block; width: 100%; height: auto; object-fit: contain; border: 1px solid var(--yk-rule); border-radius: 4px; background: #fff; }
.kt-svclogo { display: block; width: 160px; height: 40px; margin: .8em auto 0; }
.kt-svclogo img { display: block; width: 100%; height: 100%; object-fit: contain; }

/* 調査概要ページの表 */
.kt-table { width: 100%; border-collapse: collapse; margin: .6em 0 1.2em; font-size: 13px; line-height: 1.6; }
.kt-table th, .kt-table td { padding: .45em .5em; border: 1px solid var(--yk-rule); vertical-align: top; }
.kt-table th { background: var(--yk-blue-bg); color: var(--yk-blue-d); text-align: left; }
.kt-table td.is-c { text-align: center; font-weight: 700; }
.kt-x { overflow-x: auto; margin: 0 -12px; padding: 0 12px; }
.kt-x .kt-table { min-width: 520px; }
.kt-dl { display: grid; grid-template-columns: 6.5em 1fr; gap: .3em .7em; margin: .5em 0 1.2em; font-size: 14px; line-height: 1.7; }
.kt-dl dt { font-weight: 900; color: var(--yk-blue-d); }
.kt-dl dd { margin: 0; }
.kt-updated { margin: 0 0 1em !important; text-align: right; font-size: 12px !important; color: var(--yk-sub); }

/* E-3 フッター：更新日・PR */
.yk-body .yk-footer a { color: #fff; }
.yk-footer p { margin: 0 0 .6em !important; font-size: 11.5px; line-height: 1.7; opacity: .92; }

@media (min-width: 600px) {
  .yk-hscroll > * { flex-basis: 46%; }
  .kt-shotgrid { grid-template-columns: repeat(4, 1fr); }
  .kt-shotgrid--3 { grid-template-columns: repeat(3, 1fr); }
}

/* C-2 早見表：縦書きの軸ラベルが長いと Chromium で縮んで切れるため、1文字ずつ折り返す横書きで縦に並べる */
.yk-matrix__ax--l, .yk-matrix__ax--r { top: 0; bottom: 0; height: max-content; margin: auto 0; transform: none; writing-mode: horizontal-tb; width: 22px; padding: .6em 5px; white-space: normal; word-break: break-all; line-height: 1.2; text-align: center; }
.yk-matrix__ax--l { left: -20px; } .yk-matrix__ax--r { right: -20px; }

/* ============================================================
   2026-10-13 改訂：6社比較・編集部評価・実績写真・選び方カード
   ============================================================ */
/* 編集部評価の星（--p＝塗りの割合）と点数 */
.kt-stars { position: relative; display: inline-block; color: #d9dde3; font-size: 14px; letter-spacing: .04em; line-height: 1.2; white-space: nowrap; vertical-align: middle; }
.kt-stars::before { content: "★★★★★"; position: absolute; left: 0; top: 0; width: var(--p); overflow: hidden; color: #f5a623; }
.kt-score { display: inline-block; margin-left: .3em; color: var(--yk-red); font-size: 18px; font-weight: 900; line-height: 1.1; vertical-align: middle; }
.kt-score small { display: block; color: var(--yk-sub); font-size: 9.5px; font-weight: 700; }
.yk-cmp .kt-stars { display: block; margin: 0 auto; font-size: 11px; }
.yk-cmp .kt-score { display: block; margin: .15em 0 0; font-size: 20px; }
.kt-best3__score { margin: 0 4px 4px !important; text-align: center; line-height: 1.1 !important; }
.kt-best3__score .kt-stars { display: block; font-size: 11px; }
.kt-best3__score .kt-score { margin: 0; font-size: 17px; }
.kt-best3__score .kt-score small { display: inline; margin-right: .2em; }
.yk-best3__note.kt-note-pos { color: var(--yk-blue-d); }
.kt-best3__foot { margin: .6em 4px 0 !important; font-size: 10px !important; line-height: 1.5 !important; color: var(--yk-sub); }
.yk-rankhead { flex-wrap: wrap; }
.kt-rankscore { margin-left: auto; font-size: 14px; }
.kt-rankscore .kt-score small { display: inline; margin-right: .2em; }

/* ◎○△ の色 */
.kt-m5 { color: var(--yk-red) !important; } .kt-m4 { color: #e08a00 !important; } .kt-m3 { color: #8a94a3 !important; }

/* レーダー＋評価の内訳 */
.kt-radarbox { margin: .4em 0 1em; padding: 10px; border: 2px solid var(--yk-blue-bg); border-radius: 8px; background: #fff; }
.kt-radarbox__ttl { margin: 0 !important; text-align: center; font-size: 14px; font-weight: 900; }
.kt-radarbox .yk-radar { margin: .2em auto 0; }
.kt-radarlist { margin: 0 0 .4em; padding: 0; list-style: none; font-size: 12.5px; line-height: 1.5; }
.kt-radarlist li { display: grid; grid-template-columns: 6.6em 1.6em 1fr; gap: .4em; align-items: center; padding: .35em 0; border-bottom: 1px dashed var(--yk-rule); }
.kt-radarlist li > span { font-weight: 700; }
.kt-radarlist li > b { font-size: 17px; text-align: center; }
.kt-radarlist small { color: var(--yk-sub); font-size: 11px; }

/* 実績写真 */
.kt-recphoto { display: block; width: calc(100% - 20px); height: auto; aspect-ratio: 4 / 3; margin: 10px; object-fit: contain; border-radius: 4px; background: #f6f6f4; }
.kt-price { color: var(--yk-green-d); font-size: 16px; }

/* ランキング 3〜6位の「もっと見る」・コンパクト表示 */
.kt-rankfold { margin: 0 -12px; }
.kt-rankfold > .yk-fold__body { max-height: 560px; padding: 0 12px; }
.kt-rankfold > .yk-fold__body::after { height: 160px; background: linear-gradient(rgba(255,255,255,0), #fff 75%); }
.kt-rankfold > .yk-fold__btn { width: 80%; margin-top: -40px; border: 2px solid var(--yk-blue); color: var(--yk-blue-d); font-weight: 900; }
.kt-rankfold__lead { margin: 1em 0 0 !important; text-align: center; font-size: 13px !important; font-weight: 900; color: var(--yk-sub); }
.kt-rankarea--compact .kt-svclogo { margin: 0 auto .6em; }
.kt-offlink { display: block; margin: .6em 0 0; font-size: 13.5px; text-align: center; }
.kt-offlink small { display: block; font-size: 10.5px; font-weight: 400; color: var(--yk-sub); }

/* 額面だけで判断しない：4要素の写真タイル */
.kt-grid4 { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 0 0 .4em; }
.kt-grid4 figure { margin: 0; border: 2px solid var(--yk-blue-bg); border-radius: 8px; background: #fff; overflow: hidden; }
.kt-grid4 img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: contain; background: #f6f6f4; }
.kt-grid4 figcaption { padding: .4em .6em .5em; font-size: 12px; line-height: 1.5; }
.kt-grid4 figcaption b { display: block; color: var(--yk-blue-d); font-size: 14px; }

/* 出張買取と持ち込みの比較表 */
.kt-vs { width: 100%; min-width: 0; border-collapse: collapse; margin: .6em 0; font-size: 13px; line-height: 1.55; }
.kt-vs th, .kt-vs td { padding: .55em .5em; border: 1px solid var(--yk-rule); text-align: center; }
.kt-vs tr:first-child th { background: #7d8794; color: #fff; }
.kt-vs tr:first-child th.is-pick { background: var(--yk-orange); }
.kt-vs tr:first-child th:first-child { background: #fff; border-color: #fff var(--yk-rule) var(--yk-rule) #fff; }
.kt-vs tr > th:first-child { width: 5.5em; background: var(--yk-blue-bg); color: var(--yk-blue-d); }
.kt-vs td.is-pick { background: #fff8e6; }
.kt-vs td.is-pick b { color: var(--yk-red); }

/* 選び方の3ポイント（番号カード） */
.kt-points { margin: .6em 0 1.2em; padding: 0; list-style: none; }
.kt-points li { display: grid; grid-template-columns: 4.4em 1fr; gap: .8em; align-items: start; margin: 0 0 10px; padding: 12px 12px 10px; border-radius: 8px; background: var(--yk-cream); box-shadow: 0 1px 3px rgba(0,0,0,.08); }
.kt-points__no { display: grid; place-items: center; aspect-ratio: 1 / 1; border-radius: 50%; background: var(--yk-blue); color: #fff; font-size: 10px; font-weight: 700; line-height: 1.1; text-align: center; }
.kt-points__no b { display: block; font-size: 22px; }
.kt-points h3 { margin: 0 0 .25em; font-size: 15.5px; line-height: 1.45; color: var(--yk-blue-d); }
.kt-points p { margin: 0 !important; font-size: 13.5px; line-height: 1.7; }
.kt-points small { display: inline-block; margin-top: .3em; padding: .05em .6em; border-radius: 99px; background: #fff; color: var(--yk-green-d); font-size: 11px; font-weight: 700; }

/* 迷ったら：バナーを枠に合わせる */
.kt-pickup__img { width: calc(100% - 16px); height: auto; aspect-ratio: auto; object-fit: contain; }
.yk-matrix__item.kt-has-cap { width: 25%; }

/* ウリエル詳細：数字で見る・品目チップ */
.kt-nums { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; margin: .6em 0; padding: 0; list-style: none; }
.kt-nums li { position: relative; display: grid; place-items: center; align-content: center; aspect-ratio: 1 / 1; border-radius: 50%; background: radial-gradient(#fffdf0, #ffeeb5); border: 3px solid #f2c94c; text-align: center; line-height: 1.2; }
.kt-nums small { font-size: 10.5px; font-weight: 700; color: #7a5200; }
.kt-nums b { display: block; color: var(--yk-blue-d); font-size: 24px; font-weight: 900; }
.kt-nums i { font-style: normal; font-size: 11px; }
.kt-nums span { position: absolute; right: 12%; bottom: 14%; font-size: 9px; color: var(--yk-sub); }
.kt-chiplist { display: flex; flex-wrap: wrap; gap: 5px; padding: .3em 0 .2em !important; }
.kt-chiplist li { padding: .15em .7em !important; border-radius: 99px; background: #fff; border: 1px solid #9cc3e8; font-size: 12.5px !important; }
.kt-chiplist li::before { display: none; }

/* A-2 ロゴの横流し：縦長ロゴが枠からはみ出して切れないよう、枠と画像の高さを固定して収める */
.yk-logos { padding: 8px 0; }
.yk-logos__track { gap: 8px; }
.yk-logos__track li { flex: 0 0 112px; height: 40px; padding: 4px 6px; display: flex; align-items: center; justify-content: center; }
.yk-logos__track li img { display: block; width: 100%; height: 32px; max-height: 32px; object-fit: contain; }

/* A-1 FV：ヒーロー画像（ユーザー支給）を全幅で表示。見出しは読み上げ・検索用に残す */
.yk-hero.kt-hero--banner { display: block; padding: 0; background: none; }
.kt-hero__banner { display: block; width: 100%; height: auto; }
.kt-sr { position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* ウリエルのキャンペーン枠 */
.kt-campaign { margin: 1em 0 1.4em; }
.kt-campaign[hidden] { display: none; }
.kt-campaign img { display: block; width: 100%; height: auto; border-radius: 6px; }
.kt-campaign__link { display: block; }
.kt-campaign__terms { margin: .4em 0 0 !important; padding: .5em .7em; border-radius: 6px; background: #fff7ea; font-size: 11.5px !important; line-height: 1.65 !important; color: #5a3b12; }
.kt-campaign__terms b { color: var(--yk-red); }
.kt-campaign__terms a { color: var(--yk-blue); margin-left: .3em; }
.kt-campaign--mini { margin: .8em 0; }
