.om-reco{margin:4rem 0;padding:2.4rem 1.2rem;background:var(--om-bg,#FAF8F3);border:1px solid var(--om-border,#E7E1D8);border-radius:var(--om-radius,8px);color:var(--om-text,#444);font-size:1.5rem;line-height:1.75;text-align:left}
.om-reco,.om-reco *{box-sizing:border-box}
.om-reco .om-reco__eyebrow{display:block;font-size:1.3rem;font-weight:700;letter-spacing:.06em;line-height:1.5;color:var(--om-green-dark,#445426)}
.om-reco .om-reco__title{display:block;margin-top:.4rem;font-family:var(--om-font-heading,inherit);font-size:2.2rem;font-weight:var(--om-weight-heading,700);line-height:1.4;color:#333}
.om-reco .om-reco__nb{display:inline-block}
.om-reco .om-reco__lead{display:block;margin-top:1rem}
.om-reco .om-reco__jump{display:flex;gap:1rem;margin-top:1.6rem}
.om-reco .om-reco__jump-btn{flex:1 1 0;min-height:48px;padding:10px 8px;line-height:1.4;text-align:center}
.om-reco .om-reco__group{margin-top:2.8rem;scroll-margin-top:9rem}
.om-reco .om-reco__group-head{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1.2rem}
.om-reco .om-reco__label{display:inline-block;padding:.5rem 1.6rem;border-radius:999px;background:#F3E7CC;color:#5E4A1C;font-family:var(--om-font-heading,inherit);font-size:1.7rem;font-weight:var(--om-weight-heading,700);line-height:1.4}
.om-reco .om-reco__group--tsubu .om-reco__label{background:#E3EBD3;color:#3A4A1F}
.om-reco .om-reco__group-text{flex:1 1 100%;font-size:1.4rem;line-height:1.6}
.om-reco .om-reco__cards{display:grid;grid-template-columns:1fr;gap:1.4rem;margin-top:1.4rem}
.om-reco .om-reco__card{margin:0;display:grid;grid-template-columns:10.4rem 1fr;grid-template-rows:auto 1fr auto;grid-template-areas:"media head" "desc desc" "action action";gap:1.2rem 1.4rem;padding:1.4rem;background:#fff;border:1px solid var(--om-border,#E7E1D8);border-radius:var(--om-radius,8px)}
.om-reco .om-reco__media{grid-area:media;display:block;align-self:start;aspect-ratio:1/1;overflow:hidden;border-radius:6px;background:#F1EDE4;transition:opacity var(--om-transition,.25s ease)}
.om-reco .om-reco__media:hover{opacity:.85}
.om-reco .om-reco__media img{display:block;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;object-fit:cover}
.om-reco .om-reco__head{margin:0;grid-area:head;min-width:0}
.om-reco .om-reco__badge{display:inline-block;margin-bottom:.4rem;padding:.2rem 1rem;border:1px solid var(--om-green,#556B2F);border-radius:999px;background:var(--om-green,#556B2F);color:#fff;font-size:1.2rem;font-weight:700;line-height:1.6}
.om-reco .om-reco__badge--sub{background:#fff;color:var(--om-green-dark,#445426)}
.om-reco .om-reco__name{display:block;font-family:var(--om-font-heading,inherit);font-size:1.8rem;font-weight:var(--om-weight-heading,700);line-height:1.4;color:#333}
.om-reco .om-reco__origin{display:block;margin-top:.2rem;font-size:1.3rem;line-height:1.5;color:#666}
.om-reco .om-reco__price{display:block;margin-top:.6rem;line-height:1.4;color:#333}
.om-reco .om-reco__price-size{font-size:1.4rem;font-weight:700}
.om-reco .om-reco__price-num{margin-left:.4rem;font-family:var(--om-font-price,Arial,sans-serif);font-size:2.2rem;font-weight:700}
.om-reco .om-reco__price-yen{font-size:1.4rem;font-weight:700}
.om-reco .om-reco__price-note{display:block;margin-top:.2rem;font-size:1.2rem;line-height:1.5;color:#666}
.om-reco .om-reco__desc{margin:0;grid-area:desc;display:block;font-size:1.4rem;line-height:1.7}
.om-reco .om-reco__facts{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}
.om-reco .om-reco__fact{display:inline-block;padding:.3rem 1rem;border:1px solid var(--om-border,#E7E1D8);border-radius:999px;background:var(--om-bg,#FAF8F3);font-size:1.3rem;line-height:1.6}
.om-reco .om-reco__action{margin:0;grid-area:action}
.om-reco .om-reco__btn{width:100%;min-height:48px;padding:12px;line-height:1.4;text-align:center}
.om-reco .om-reco__assure{display:flex;flex-wrap:wrap;gap:.6rem 1.8rem;margin-top:2.4rem;padding-top:1.8rem;border-top:1px solid var(--om-border,#E7E1D8);font-size:1.4rem;font-weight:700;line-height:1.6}
.om-reco .om-reco__assure-item{position:relative;padding-left:2.2rem}
.om-reco .om-reco__assure-item::before{content:"";position:absolute;left:.5rem;top:.3em;width:.6rem;height:1.1rem;border:solid var(--om-green,#556B2F);border-width:0 2px 2px 0;transform:rotate(45deg)}
.om-reco .om-reco__hint{display:block;margin-top:1.8rem;padding:1.4rem;border:1px dashed #C9BFA9;border-radius:var(--om-radius,8px);background:#fff;font-size:1.4rem;line-height:1.7}
.om-reco .om-reco__hint-title{display:block;margin-bottom:.4rem;font-weight:700;color:#333}
.om-reco .om-reco__more{display:block;margin-top:1.6rem;text-align:center}
.om-reco a.om-reco__link{color:var(--om-green-dark,#445426);font-weight:700;text-decoration:underline}
.om-reco--photo .om-reco__card{display:flex;flex-direction:column;gap:0;padding:0;overflow:hidden}
.om-reco--photo .om-reco__media{align-self:auto;border-radius:0}
.om-reco--photo .om-reco__head{padding:1.4rem 1.4rem 0}
.om-reco--photo .om-reco__desc{padding:1rem 1.4rem 0}
.om-reco--photo .om-reco__action{margin-top:auto;padding:1.4rem}
.om-reco .om-reco__card--wide{display:flex;flex-direction:column;gap:0;padding:0;overflow:hidden}
.om-reco .om-reco__card--wide .om-reco__media{align-self:auto;border-radius:0}
.om-reco .om-reco__card--wide .om-reco__head{padding:1.4rem 1.4rem 0}
.om-reco .om-reco__card--wide .om-reco__desc{padding:1rem 1.4rem 0}
.om-reco .om-reco__card--wide .om-reco__action{padding:1.4rem}
.om-reco--compactbox{padding:2rem 1.2rem}
.om-reco--compactbox .om-reco__title{font-size:1.9rem}
@media (min-width:769px){
.om-reco{padding:3.2rem 2.8rem;font-size:1.6rem}
.om-reco .om-reco__title{font-size:2.6rem}
.om-reco .om-reco__jump{max-width:46rem}
.om-reco .om-reco__group-text{flex:1 1 20rem}
.om-reco .om-reco__cards{grid-template-columns:1fr 1fr;gap:1.6rem}
.om-reco .om-reco__cards--single{grid-template-columns:1fr}
.om-reco .om-reco__card{grid-template-columns:11.2rem 1fr}
.om-reco .om-reco__card--wide{display:grid;grid-template-columns:26rem 1fr;grid-template-rows:auto auto 1fr;grid-template-areas:"media head" "media desc" "media action";gap:0;align-items:start}
.om-reco .om-reco__card--wide .om-reco__media{align-self:start;margin:2rem 0 2rem 2rem;border-radius:6px}
.om-reco .om-reco__card--wide .om-reco__head{padding:2rem 2rem 0}
.om-reco .om-reco__card--wide .om-reco__desc{padding:1rem 2rem 0}
.om-reco .om-reco__card--wide .om-reco__action{padding:1.6rem 2rem 2rem}
.om-reco .om-reco__card--wide .om-reco__btn{width:auto;min-width:28rem}
.om-reco--compactbox{padding:2.4rem 2.8rem}
.om-reco--compactbox .om-reco__title{font-size:2.2rem}
}
