/* 100均ラボ：購入導線の共通UI。各テンプレート固有CSSより高い詳細度で揃える。 */
[data-affiliate-box]{--hrp-aff-ink:#2d251f;--hrp-aff-muted:#70645a;--hrp-aff-line:#eadfd5}
.ps-shopbox[data-affiliate-box],.rt-shopbox[data-affiliate-box],.srp-buybox[data-affiliate-box]{position:relative;border:1px solid var(--hrp-aff-line);border-radius:20px;background:linear-gradient(145deg,#fff 0%,#fffaf3 100%);box-shadow:0 12px 34px rgba(74,54,36,.1);padding:18px;overflow:hidden}
.ps-shopbox[data-affiliate-box]::before,.rt-shopbox[data-affiliate-box]::before,.srp-buybox[data-affiliate-box]::before{content:"PR";position:absolute;top:0;right:0;padding:4px 9px;border-radius:0 0 0 10px;background:#f4eee8;color:#74675c;font-size:10px;font-weight:800;letter-spacing:.06em}
[data-affiliate-box] .ps-shopbox-title,[data-affiliate-box] .rt-shopbox-title,[data-affiliate-box] .srp-buybox__title{color:var(--hrp-aff-ink);font-size:17px;font-weight:900;line-height:1.4}
[data-affiliate-box] .ps-shopbox-note,[data-affiliate-box] .rt-shopbox-note,[data-affiliate-box] .srp-buybox__anchor{color:var(--hrp-aff-muted)}
[data-affiliate-box] .ps-shop,[data-affiliate-box] .rt-shop,[data-affiliate-box] .srp-buybox__primary,[data-affiliate-box] .srp-buybox__secondary,[data-affiliate-box] .shop-btn,[data-affiliate-box] .srp-buy-btn,[data-affiliate-box] .ps-cta-btn,[data-affiliate-box] .rt-btn,[data-affiliate-box] .review-deal-banner__btn{min-height:54px;border-radius:13px;text-decoration:none;font-weight:900;line-height:1.35;box-shadow:0 6px 14px rgba(45,37,31,.15);transition:transform .16s ease,box-shadow .16s ease,filter .16s ease;touch-action:manipulation}
[data-affiliate-box] .ps-shop:hover,[data-affiliate-box] .rt-shop:hover,[data-affiliate-box] .srp-buybox__primary:hover,[data-affiliate-box] .srp-buybox__secondary:hover,[data-affiliate-box] .shop-btn:hover,[data-affiliate-box] .srp-buy-btn:hover,[data-affiliate-box] .ps-cta-btn:hover,[data-affiliate-box] .rt-btn:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(45,37,31,.22);filter:saturate(1.06)}
[data-affiliate-box] a:focus-visible{outline:3px solid #2673dd;outline-offset:3px}
[data-affiliate-box] .ps-shop-amazon,[data-affiliate-box] .rt-shop-amazon,[data-affiliate-box] .srp-buybox__primary,[data-affiliate-box] .srp-buy-btn--amazon{background:linear-gradient(135deg,#ffad22,#f39100);color:#21180d;border-color:#e58900}
[data-affiliate-box] .ps-shop-rakuten,[data-affiliate-box] .rt-shop-rakuten,[data-affiliate-box] .srp-buybox__secondary--rakuten,[data-affiliate-box] .srp-buy-btn--rakuten{background:linear-gradient(135deg,#cf1717,#a90000);color:#fff;border-color:#a90000}
[data-affiliate-box] .ps-shop-yahoo,[data-affiliate-box] .rt-shop-yahoo,[data-affiliate-box] .srp-buybox__secondary--yahoo,[data-affiliate-box] .srp-buy-btn--yahoo{background:linear-gradient(135deg,#f32336,#d60018);color:#fff;border-color:#c90016}
[data-affiliate-box] .hrp-aff-cta-copy{display:flex;flex:1;min-width:0;flex-direction:column;align-items:flex-start;text-align:left}
[data-affiliate-box] .hrp-aff-cta-copy strong{font-size:14px;font-weight:900}
[data-affiliate-box] .hrp-aff-cta-copy small{margin-top:2px;font-size:10px;font-weight:700;opacity:.86}
[data-affiliate-box] .hrp-aff-cta-arrow{margin-left:auto;font-size:20px;line-height:1}
[data-affiliate-box] .ps-shop{display:flex;align-items:center;gap:9px;padding:11px 13px}
[data-affiliate-box] .rt-shop small{font-size:10px;opacity:.9}
[data-affiliate-box] .srp-buybox__secondary{padding:.82rem .75rem}
[data-affiliate-box] .srp-buybox__secondary .hrp-aff-cta-copy{color:inherit}
[data-affiliate-box] .srp-buybox__note,[data-affiliate-box] .ps-shopbox-pr,[data-affiliate-box] .rt-shopbox-pr{font-size:11px;line-height:1.55;color:#746b63}
@media(max-width:520px){
  .ps-shopbox[data-affiliate-box],.rt-shopbox[data-affiliate-box],.srp-buybox[data-affiliate-box]{padding:15px;border-radius:17px}
  [data-affiliate-box] .ps-shopbox-btns,[data-affiliate-box] .rt-shopbox-btns{grid-template-columns:1fr!important;gap:8px}
  [data-affiliate-box] .ps-shop,[data-affiliate-box] .rt-shop{min-height:58px}
  [data-affiliate-box] .srp-buybox__subrow{gap:8px}
}
@media(prefers-reduced-motion:reduce){[data-affiliate-box] a{transition:none!important}}
