/* =========================================================
   page-recipe.css（261002 追加）
   レシピ一覧・レシピ詳細・トップのレシピ帯・品目ページのレシピ枠。
   色・書体は theme-f.css のトークンのみ使用（直値を増やさない）。
   料理写真が主役：角Rなし・影なし・紙白の地に写真を置き、文字は細く小さく。
   ========================================================= */

/* ---- 共通：見出し・カード ---- */
.rc-list-top{display:flex;justify-content:space-between;align-items:flex-end;gap:1.2rem 2rem;flex-wrap:wrap;margin-bottom:48px}
.rc-h2{font-family:var(--f-min);font-weight:500;font-size:clamp(1.3rem,2vw,1.6rem);letter-spacing:.16em;line-height:1.6;color:var(--sumi)}
.rc-h2 .ey{margin-bottom:.5rem}
.rc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:64px 40px}
.rc-grid>[hidden]{display:none}
.rc-card{display:block;color:var(--sumi)}
.rc-card .pic{aspect-ratio:3/2;overflow:hidden;background:var(--face);margin-bottom:1.2rem}
.rc-card .pic img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.rc-card:hover .pic img{transform:scale(1.04)}
.rc-card .var{display:block;font-size:.74rem;letter-spacing:.16em;color:var(--kin-t);margin-bottom:.4rem}
.rc-card h3{font-family:var(--f-min);font-weight:500;font-size:1.12rem;letter-spacing:.12em;line-height:1.7;margin-bottom:.6rem}
.rc-card:hover h3{color:var(--green)}
.rc-card .meta{display:flex;flex-wrap:wrap;gap:.2rem 1.2rem;font-size:.8rem;letter-spacing:.08em;color:var(--sub);line-height:1.8}

/* ---- 一覧：ページ頭 ---- */
.rc-head{padding:56px 0 96px}
.rc-head .wrap-w{align-items:start}
.rc-head-l .pic{aspect-ratio:16/7;overflow:hidden;margin-bottom:40px}
.rc-head-l .pic img{width:100%;height:100%;object-fit:cover}

/* ---- 一覧：特集プレート（SILVER面で区切る。写真3枚を横一列＝食べ比べの順番） ---- */
.rc-plate{background:var(--face);padding:120px 0}
.rc-plate .wrap-w{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 72px;align-items:start}
.rc-plate .head{order:2;display:flex;flex-direction:row-reverse;gap:28px;align-items:flex-start}
.rc-plate .intro{max-width:46em;color:var(--sub);line-height:2.2;margin-bottom:56px}
.plate{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px;counter-reset:none}
.plate li{display:flex;flex-direction:column}
.plate li:nth-child(2){margin-top:40px}
.plate li:nth-child(3){margin-top:80px}
.plate .pic{display:block;aspect-ratio:3/2;overflow:hidden;margin-bottom:1.3rem}
.plate .pic img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.plate .pic:hover img{transform:scale(1.04)}
.plate .no{font-size:.78rem;letter-spacing:.2em;color:var(--kin-t);margin-right:.8rem}
.plate .var{font-size:.78rem;letter-spacing:.16em;color:var(--sub)}
.plate h3{font-family:var(--f-min);font-weight:500;font-size:1.12rem;letter-spacing:.12em;line-height:1.7;margin:.5rem 0 .7rem}
.plate h3 a{border-bottom:1px solid var(--line-2);transition:border-color .3s}
.plate h3 a:hover{border-color:var(--sumi)}
.plate .pair{font-family:var(--f-min);font-size:1rem;letter-spacing:.12em;color:var(--green);margin-bottom:.8rem}
.plate .pair .k{font-family:var(--f-en);font-style:italic;font-size:.86rem;letter-spacing:.1em;color:var(--kin-t);margin-right:.8rem}
.plate .cm{font-size:.86rem;line-height:2;color:var(--sub)}

/* ---- 一覧：絞り込み ---- */
.rc-list{padding:140px 0 150px}
.rc-filter{display:flex;flex-wrap:wrap;gap:8px}
.rc-filter[hidden]{display:none}
.rc-filter button{font:inherit;font-size:.82rem;letter-spacing:.14em;padding:.6rem 1.2rem;min-height:44px;border:1px solid var(--line-2);background:transparent;color:var(--sub);cursor:pointer;transition:background .3s,color .3s,border-color .3s}
.rc-filter button:hover{border-color:var(--green);color:var(--green)}
.rc-filter button[aria-pressed="true"]{background:var(--green);border-color:var(--green);color:var(--on-dark)}
.rc-count{font-size:.8rem;letter-spacing:.14em;color:var(--sub);margin:-24px 0 32px}
.rc-count .num{font-size:1rem;margin-right:.2rem;color:var(--sumi)}

/* ---- 詳細：頭（写真＝主役で横幅いっぱい。右端に縦組みの料理名、写真の下に要点） ---- */
.rd-hero{padding:48px 0 120px}
.rd-hero .wrap-w{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:44px 56px;align-items:start}
.rd-photo{display:block;grid-column:1;grid-row:1}
.rd-photo img{width:100%;aspect-ratio:3/2;object-fit:cover}
.rd-side{display:contents}
.rd-title{grid-column:2;grid-row:1/3;display:flex;flex-direction:row-reverse;gap:24px;align-items:flex-start}
.rd-title .vh{font-size:clamp(1.5rem,2.1vw,1.9rem);letter-spacing:.18em}
.rd-info{grid-column:1;grid-row:2;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:0 56px;align-items:start}
.rd-var{grid-column:1/-1;justify-self:start;font-size:.78rem;letter-spacing:.16em;color:var(--kin-t);border-bottom:1px solid currentColor;padding-bottom:.2rem;margin-bottom:1.4rem}
.rd-var:hover{color:var(--sumi)}
.rd-desc{font-family:var(--f-min);font-size:1.02rem;letter-spacing:.06em;line-height:2.1;color:var(--sumi)}
.rd-facts{border-top:1px solid var(--line-2)}
.rd-facts div{display:grid;grid-template-columns:6.5em 1fr;gap:0 .8rem;padding:.9rem 0;border-bottom:1px solid var(--line-2);font-size:.86rem;letter-spacing:.08em}
.rd-facts dt{color:var(--sub)}
.rd-facts dd{font-family:var(--f-min);font-size:.98rem;color:var(--sumi)}

/* ---- 詳細：ペアリング（SILVER面・お酒の名前を大きく） ---- */
.rd-pair{background:var(--face);padding:110px 0;text-align:center}
.rd-pair .ey{margin-bottom:1.2rem}
.rd-pair-h{font-family:var(--f-min);font-weight:500;font-size:clamp(1.6rem,2.8vw,2.3rem);letter-spacing:.18em;line-height:1.6;color:var(--green);margin-bottom:2rem}
.rd-pair-h .k{display:block;font-size:.84rem;letter-spacing:.2em;color:var(--sub);margin-bottom:.6rem}
.rd-pair p{max-width:40em;margin:0 auto;font-size:.95rem;line-height:2.2;color:var(--sumi);text-align:left}

/* ---- 詳細：材料・作り方 ---- */
.rd-body{padding:140px 0}
.rd-body .wrap-w{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:0 96px;align-items:start}
.rd-h{font-family:var(--f-min);font-weight:500;font-size:clamp(1.3rem,2vw,1.6rem);letter-spacing:.16em;line-height:1.6;margin-bottom:28px}
.rd-h .ey{margin-bottom:.5rem}
.rd-h .sv,.rd-nut h3 .sv{font-family:var(--f-sans);font-size:.82rem;letter-spacing:.1em;color:var(--sub);margin-left:.4rem}
.rd-ing .spec-t{width:100%}
.rd-ing .spec-t th{font-weight:400}
.rd-ing .spec-t td{text-align:right;white-space:nowrap}
.rd-ing .memo{display:block;font-size:.76rem;color:var(--sub);letter-spacing:.08em;margin-top:.1rem}
.rd-nut{margin-top:56px;padding:28px 28px 20px;border:1px solid var(--line-2)}
.rd-nut h3{font-family:var(--f-min);font-weight:500;font-size:1rem;letter-spacing:.14em;margin-bottom:.8rem}
.rd-nut dl div{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-top:1px solid var(--line);font-size:.86rem}
.rd-nut dt{color:var(--sub)}
.rd-nut dd .num{font-size:1rem;margin-right:.2rem}
.rd-ol{border-top:1px solid var(--line-2)}
.rd-ol li{display:grid;grid-template-columns:auto 1fr;gap:0 24px;padding:1.5rem 0;border-bottom:1px solid var(--line-2)}
.rd-ol .no{font-size:.82rem;letter-spacing:.2em;color:var(--kin-t);padding-top:.35rem}
.rd-ol p{font-size:.98rem;line-height:2.05}
.rd-point{margin-top:40px;padding:26px 30px;background:var(--face)}
.rd-point h3{font-family:var(--f-min);font-weight:500;font-size:1rem;letter-spacing:.14em;color:var(--green);margin-bottom:.5rem}
.rd-point p{font-size:.92rem;line-height:2}
.rd-process{margin-top:40px}
.rd-process img{width:100%;aspect-ratio:3/2;object-fit:cover}
.rd-process figcaption{font-size:.76rem;letter-spacing:.14em;color:var(--sub);margin-top:.7rem}

/* ---- 詳細：この黒枝豆 ---- */
.rd-prod{padding:0 0 140px}
.rd-prod .wrap{display:grid;grid-template-columns:220px 1fr;gap:0 56px;align-items:center;border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2);padding-block:48px}
.rd-prod .pic{background:var(--face);aspect-ratio:1/1;padding:12%}
.rd-prod .pic img{width:100%;height:100%;object-fit:contain}
.rd-prod h2{font-family:var(--f-min);font-weight:500;font-size:clamp(1.4rem,2.2vw,1.8rem);letter-spacing:.16em;line-height:1.6;margin:.5rem 0 1.6rem}
.rd-prod .acts{display:flex;gap:12px;flex-wrap:wrap}

/* ---- 詳細：同じ品種のほかのレシピ ---- */
.rd-more{padding:120px 0 150px;border-top:1px solid var(--line)}

/* ---- 品目ページ：おいしい食べ方の末尾 ---- */
.howto .rc-in-howto{grid-column:1/-1;margin-top:110px;padding-top:72px;border-top:1px solid var(--line)}
.rc-in-howto .rc-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:48px 28px}
.rc-in-howto .rc-card h3{font-size:1rem}

/* ---- トップ：レシピ帯（写真3枚を段違いに。右に縦組み見出し） ---- */
.rc-band{padding:150px 0;border-top:1px solid var(--line)}
.rc-band .wrap-w{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:56px 72px;align-items:start}
.rc-band .head{grid-column:2;grid-row:1/3;display:flex;flex-direction:row-reverse;gap:28px;align-items:flex-start}
.rc-band .pics{grid-column:1;grid-row:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px}
.rc-band .p{display:block;color:var(--sumi)}
.rc-band .p img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .8s ease}
.rc-band .p{overflow:hidden}
.rc-band .p:hover img{transform:scale(1.03)}
.rc-band .p2{margin-top:56px}
.rc-band .p3{margin-top:112px}
.rc-band .cap{display:block;font-family:var(--f-min);font-size:.92rem;letter-spacing:.12em;line-height:1.7;margin-top:.9rem}
.rc-band .txt{grid-column:1;grid-row:2;display:flex;justify-content:space-between;align-items:flex-end;gap:1.6rem 3rem;flex-wrap:wrap}
.rc-band .txt p{max-width:34em;color:var(--sub);line-height:2.1}

/* ---- 1080px以下 ---- */
@media (max-width:1080px){
  .rc-grid{gap:48px 24px}
  .rc-in-howto .rc-grid{grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr))}
  .rd-hero .wrap-w{gap:40px 40px}
  .rd-info{gap:0 36px}
  .rd-body .wrap-w{gap:0 56px}
  .rc-plate .wrap-w{gap:0 40px}
  .rc-band .wrap-w{gap:48px 40px}
}

/* ---- SP ---- */
@media (max-width:768px){
  .rc-list-top{margin-bottom:28px}
  .rc-grid,.rc-in-howto .rc-grid{grid-template-columns:1fr;gap:20px}
  .rc-card{display:grid;grid-template-columns:42% minmax(0,1fr);gap:0 16px;align-items:start;padding-bottom:20px;border-bottom:1px solid var(--line)}
  .rc-card .pic{margin-bottom:0}
  .rc-card h3,.rc-in-howto .rc-card h3{font-size:.98rem;letter-spacing:.08em;margin-bottom:.3rem}
  .rc-card .var{font-size:.7rem;margin-bottom:.2rem}
  .rc-card .meta{flex-direction:column;font-size:.74rem;gap:0}
  .rc-head{padding:28px 0 56px}
  .rc-head-l{order:2}
  .rc-head-l .pic{aspect-ratio:4/3;margin:0 -20px 28px}
  .rc-plate{padding:80px 0}
  .rc-plate .wrap-w{grid-template-columns:1fr;gap:32px 0}
  .rc-plate .head{order:0;justify-content:flex-end;gap:20px}
  .rc-plate .intro{font-size:.92rem;margin-bottom:36px}
  .plate{grid-template-columns:1fr;gap:44px 0}
  .plate li:nth-child(2),.plate li:nth-child(3){margin-top:0}
  .rc-list{padding:80px 0 96px}
  .rc-count{margin:0 0 20px}
  .rd-hero{padding:20px 0 72px}
  .rd-hero .wrap-w{padding:0;grid-template-columns:1fr;grid-template-rows:none;gap:36px 0}
  .rd-photo{grid-column:auto;grid-row:auto}
  .rd-photo img{aspect-ratio:4/5}
  .rd-title{grid-column:auto;grid-row:auto;justify-content:flex-start;justify-self:end;padding:0 20px}
  .rd-info{grid-column:auto;grid-row:auto;grid-template-columns:1fr;gap:28px 0;padding:0 20px}
  .rd-var{margin-bottom:0}
  .rd-desc{font-size:.96rem}
  .rd-pair{padding:72px 0}
  .rd-pair .wrap{padding:0 20px}
  .rd-pair p{font-size:.92rem}
  .rd-body{padding:80px 0}
  .rd-body .wrap-w{grid-template-columns:1fr;gap:64px 0}
  .rd-nut{margin-top:40px;padding:22px 20px 14px}
  .rd-ol li{gap:0 16px;padding:1.2rem 0}
  .rd-ol p{font-size:.94rem}
  .rd-point{padding:22px 20px}
  .rd-prod{padding:0 0 88px}
  .rd-prod .wrap{grid-template-columns:96px 1fr;gap:0 20px;padding:32px 20px}
  .rd-prod h2{font-size:1.2rem;margin:.3rem 0 1rem}
  .rd-prod .acts{grid-column:1/-1;margin-top:20px}
  .rd-prod .acts .btn{flex:1 1 140px;padding-inline:1rem}
  .rd-more{padding:80px 0 96px}
  .howto .rc-in-howto{margin-top:64px;padding-top:48px}
  .rc-band{padding:88px 0}
  .rc-band .wrap-w{grid-template-columns:1fr;grid-template-rows:none;gap:36px 0}
  .rc-band .head{grid-column:auto;grid-row:auto;justify-content:flex-end;gap:20px}
  .rc-band .pics{grid-column:auto;grid-row:auto;gap:0 10px}
  .rc-band .p2{margin-top:28px}.rc-band .p3{margin-top:56px}
  .rc-band .cap{font-size:.74rem;letter-spacing:.04em}
  .rc-band .txt{grid-column:auto;grid-row:auto}
  .rc-band .txt p{font-size:.92rem}
}
