/* ==========================================================
   PROMISE RING 商品詳細ページ（ring-*.html）
   2026-09-19 公開／shop.css の共通ヘッダー・フッター・パンくずの上に重ねる
   ========================================================== */

/* ── 共通 ── */
.pd{max-width:1120px;margin:0 auto;padding:0 48px;}
.pd-eye{font-family:var(--script);font-style:italic;font-size:14px;letter-spacing:.2em;color:var(--ac-d);}
.pd-h2{font-family:var(--serif);font-weight:300;font-size:clamp(20px,2.6vw,26px);letter-spacing:.14em;color:var(--ink);}
.pd-code{font-family:var(--script);font-weight:500;font-size:16px;letter-spacing:.1em;color:var(--g5);}
.yen{font-variant-numeric:tabular-nums;}
.pd-thumb img,.pd-photo img,.pd-grid img,.pd-main img{height:auto;}

/* ── ① ヒーロー：ギャラリー＋概要 ── */
.pd-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:56px;align-items:center;padding-block:56px 64px;}
.pd-main{aspect-ratio:800/488;background:#fff;box-shadow:0 4px 24px rgba(90,70,110,.07);overflow:hidden;}
.pd-main img{width:100%;object-fit:contain;}
.pd-thumbs{display:flex;gap:10px;margin-top:14px;}
.pd-thumb{flex:0 0 88px;background:#fff;border:1px solid var(--g3);padding:0;cursor:pointer;transition:border-color .2s;}
.pd-thumb img{width:100%;aspect-ratio:700/427;object-fit:contain;}
.pd-thumb span{display:block;font-family:var(--serif);font-size:10px;color:var(--g4);padding:4px 0 5px;letter-spacing:.06em;}
.pd-thumb[aria-pressed="true"]{border-color:var(--ac);}
.pd-thumb[aria-pressed="true"] span{color:var(--ac-d);}
.pd-thumb:focus-visible{outline:2px solid var(--ac-d);outline-offset:2px;}

.pd-sum .pd-no{font-family:var(--script);font-style:italic;font-size:15px;color:var(--g4);letter-spacing:.1em;}
.pd-sum h1{font-family:var(--serif);font-weight:500;font-size:clamp(32px,4.4vw,46px);letter-spacing:.14em;color:var(--ink);line-height:1.2;margin:4px 0 6px;}
.pd-sum h1 small{display:block;font-size:13px;font-weight:300;letter-spacing:.12em;color:var(--g5);margin-top:10px;}
.pd-vow{font-family:var(--serif);font-size:16px;letter-spacing:.06em;color:var(--ink);margin:22px 0 26px;padding:16px 0;border-top:1px solid var(--ac-l);border-bottom:1px solid var(--ac-l);}
.pd-vow b{display:block;font-family:var(--serif);font-weight:400;font-size:11px;letter-spacing:.2em;color:var(--ac-d);margin-bottom:4px;}
.pd-from{display:grid;grid-template-columns:auto 1fr;gap:6px 18px;align-items:baseline;margin-bottom:28px;}
.pd-from dt{font-family:var(--serif);font-size:12px;color:var(--g5);letter-spacing:.06em;}
.pd-from dd{font-family:var(--serif);font-size:20px;color:var(--ink);}
.pd-from dd .code{font-family:var(--script);font-size:13px;color:var(--g4);letter-spacing:.08em;margin-left:8px;}
.pd-from dd .tax{font-size:11px;color:var(--g4);margin-left:2px;}
.pd-btns{display:flex;flex-wrap:wrap;gap:12px;}
.pd-btn{display:inline-block;padding:14px 30px;font-family:var(--serif);font-size:13px;letter-spacing:.1em;transition:background .2s,color .2s,border-color .2s;}
.pd-btn.pri{background:var(--ac);color:#fff;}
.pd-btn.pri:hover{background:var(--ac-d);}
.pd-btn.sec{border:1px solid var(--g3);color:var(--ink);}
.pd-btn.sec:hover{border-color:var(--ac);color:var(--ac-d);}
.pd-rev{font-size:11px;color:var(--g4);margin-top:14px;}

/* ── ページ内ナビ ── */
.pd-jump{display:flex;justify-content:center;gap:0;border-top:1px solid var(--g2);border-bottom:1px solid var(--g2);background:#fff;position:sticky;top:90px;z-index:50;}
.pd-jump a{padding:14px 26px;font-family:var(--serif);font-size:12px;letter-spacing:.14em;color:var(--g5);transition:color .2s;}
.pd-jump a:hover{color:var(--ac-d);}

/* ── ②③ 婚約・結婚セクション ── */
.pd-sec{padding-block:72px 8px;scroll-margin-top:130px;}
.pd-sec + .pd-sec{border-top:1px solid var(--g2);}
.pd-sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:28px;}
.pd-sec-head .pd-code{text-align:right;}
.pd-block{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center;margin-bottom:36px;}
.pd-photo{background:#fff;}
.pd-photo img{width:100%;aspect-ratio:700/427;object-fit:contain;}
.pd-photo figcaption{font-size:11px;color:var(--g4);margin-top:8px;letter-spacing:.04em;}
.pd-photo figcaption .cap-code{font-family:var(--script);font-size:13px;font-weight:500;letter-spacing:.06em;color:var(--g5);margin-left:4px;}
.pd-spec{display:grid;grid-template-columns:11em 1fr;border-top:1px solid var(--g2);}
.pd-spec dt,.pd-spec dd{padding:12px 0;border-bottom:1px solid var(--g2);font-size:13px;}
.pd-spec dt{font-family:var(--serif);color:var(--g5);letter-spacing:.04em;}
.pd-spec dd{color:var(--ink);}

/* 価格表 */
.pd-tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.pd-tbl{width:100%;min-width:720px;border-collapse:collapse;font-size:13px;}
.pd-tbl th,.pd-tbl td{padding:11px 12px;border-bottom:1px solid var(--g2);text-align:right;white-space:nowrap;}
.pd-tbl thead th{font-family:var(--serif);font-weight:400;font-size:11.5px;letter-spacing:.04em;color:var(--g5);border-bottom:1px solid var(--ink);vertical-align:bottom;}
.pd-tbl thead th small{display:block;font-size:10px;color:var(--g4);}
.pd-tbl th.l,.pd-tbl td.l{text-align:left;}
.pd-tbl td{font-family:var(--serif);color:var(--ink);font-variant-numeric:tabular-nums;}
.pd-tbl td.mat{font-family:var(--sans);font-size:12px;color:var(--g5);}
.pd-tbl td.model{font-family:var(--script);font-weight:500;font-size:15px;letter-spacing:.06em;vertical-align:middle;}
.pd-tbl td.model i{display:block;font-family:var(--serif);font-style:normal;font-size:11px;color:var(--ac-d);letter-spacing:.06em;margin-top:2px;}
.pd-tbl td.wd{font-family:var(--script);font-size:13px;letter-spacing:.14em;color:var(--ac-d);background:var(--ac-ll);vertical-align:middle;text-align:center;}
.pd-tbl tbody tr.grp td{border-top:1px solid var(--g3);}
.pd-notes{list-style:none;margin:14px 0 0;display:grid;gap:4px;font-size:12px;color:var(--g5);}
.pd-notes li::before{content:'■';color:var(--ac);font-size:9px;margin-right:8px;vertical-align:1px;}

/* ── ④ 刻印のことば ── */
.pd-engr{margin-top:72px;background:var(--ac-ll);padding:48px 40px;text-align:center;}
.pd-engr-txt{font-family:var(--script);font-weight:500;font-size:clamp(20px,3vw,28px);letter-spacing:.2em;color:var(--ink);margin:10px 0 6px;}
.pd-engr-sub{font-family:var(--serif);font-weight:300;font-size:13px;color:var(--g5);}
.pd-engr-cnt{font-size:11px;color:var(--g4);margin-top:4px;font-variant-numeric:tabular-nums;}
.pd-engr a{display:inline-block;margin-top:18px;font-family:var(--serif);font-size:12px;letter-spacing:.08em;color:var(--ac-d);border-bottom:1px solid var(--ac-l);}

/* ── ⑤ 納期・アフター ── */
.pd-info{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:64px;border-top:1px solid var(--g2);border-bottom:1px solid var(--g2);}
.pd-info div{padding:24px 24px 26px;}
.pd-info div + div{border-left:1px solid var(--g2);}
.pd-info h3{font-family:var(--serif);font-weight:500;font-size:14px;letter-spacing:.08em;margin-bottom:8px;}
.pd-info p{font-size:12.5px;color:var(--g5);line-height:1.9;}

/* ── ⑥ 他のコレクション ── */
.pd-others{padding-block:80px 88px;text-align:center;}
.pd-pn{display:flex;justify-content:space-between;gap:12px;margin:0 auto 40px;max-width:1120px;}
.pd-pn a{font-family:var(--serif);font-size:12px;letter-spacing:.1em;color:var(--g5);padding:10px 0;transition:color .2s;}
.pd-pn a:hover{color:var(--ac-d);}
.pd-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px 14px;margin-top:28px;}
.pd-grid a{display:block;transition:opacity .2s;}
.pd-grid a:hover{opacity:.75;}
.pd-grid img{width:100%;aspect-ratio:800/488;object-fit:contain;background:#fff;border:1px solid var(--g2);}
.pd-grid span{display:block;font-family:var(--serif);font-size:11.5px;letter-spacing:.12em;margin-top:6px;color:var(--ink);}
.pd-grid a[aria-current="page"] img{border-color:var(--ac);}
.pd-grid a[aria-current="page"] span{color:var(--ac-d);}

/* ── CTA ── */
.pd-cta{background:var(--ac-ll);text-align:center;padding:72px 24px;}
.pd-cta h2{font-family:var(--serif);font-weight:300;font-size:clamp(20px,3vw,26px);letter-spacing:.12em;margin:10px 0 14px;}
.pd-cta p{font-family:var(--serif);font-weight:300;font-size:14px;color:var(--g5);line-height:2;margin-bottom:26px;}

/* ── レスポンシブ ── */
@media(max-width:900px){
  .pd{padding:0 24px;}
  .pd-hero{grid-template-columns:1fr;gap:32px;padding-block:32px 48px;}
  .pd-block{grid-template-columns:1fr;gap:24px;}
  .pd-info{grid-template-columns:1fr;}
  .pd-info div + div{border-left:none;border-top:1px solid var(--g2);}
  .pd-grid{grid-template-columns:repeat(3,1fr);}
  .pd-jump{top:90px;}
  .pd-jump a{padding:12px 14px;letter-spacing:.08em;}
}
@media(max-width:520px){
  .pd-thumb{flex-basis:30%;}
  .pd-spec{grid-template-columns:8.5em 1fr;}
  .pd-engr{padding:36px 20px;}
  .pd-btn{flex:1 1 100%;text-align:center;}
}
@media(max-width:520px){
  header .back-link{display:none;}
}

/* ── サージカルステンレス（2026-09-19） ── */
.pd-sst{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;align-items:center;margin-top:72px;padding:40px 44px;background:#f3f7f7;border-top:1px solid #d5e4e4;border-bottom:1px solid #d5e4e4;scroll-margin-top:130px;}
.pd-sst .pd-eye{color:#4f7f80;}
.pd-sst .pd-h2{font-size:19px;margin:6px 0 12px;}
.pd-sst-txt p:not(.pd-eye){font-size:13px;color:var(--g5);line-height:1.9;}
.pd-sst-txt a{display:inline-block;margin-top:14px;font-family:var(--serif);font-size:12px;letter-spacing:.06em;color:#4f7f80;border-bottom:1px solid currentColor;}
.pd-sst-price{display:grid;grid-template-columns:1fr auto;border-top:1px solid #d5e4e4;}
.pd-sst-price dt,.pd-sst-price dd{padding:11px 0;border-bottom:1px solid #d5e4e4;}
.pd-sst-price dt{font-family:var(--serif);font-size:13px;color:var(--ink);}
.pd-sst-price dt small{font-family:var(--script);font-size:12px;color:var(--g4);letter-spacing:.06em;margin-left:10px;}
.pd-sst-price dd{font-family:var(--serif);font-size:18px;text-align:right;font-variant-numeric:tabular-nums;}
.pd-more{display:inline-block;margin-left:6px;color:var(--ac-d);border-bottom:1px solid var(--ac-l);}
@media(max-width:900px){
  .pd-sst{grid-template-columns:1fr;gap:24px;padding:32px 24px;}
}
