
.section--pz { padding-bottom: 0; }
.pz { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); align-items: center; margin-top: var(--space-7); }
.pz__main { padding-right: var(--space-8); border-right: var(--bd) solid var(--c-line); }
.pz__lbl { font-family: var(--ff-serif); color: var(--c-accent-2-dark); }
.pz__price { margin: var(--space-2) 0 0; font-family: var(--ff-serif); font-size: var(--fs-9); color: var(--c-accent-2); }
.pz__yen { margin-left: var(--space-1); font-size: var(--fs-5); color: var(--c-ink); }
.pz__cap { margin: var(--space-2) 0 0; font-family: var(--ff-serif); font-size: var(--fs-4); }
.pz__sub { display: grid; gap: var(--space-5); margin: 0; padding-left: var(--space-8); }
.pz__sub dt { font-family: var(--ff-serif); color: var(--c-accent-2-dark); }
.pz__sub dd { margin: var(--space-1) 0 0; font-family: var(--ff-serif); font-size: var(--fs-4); }
.pz-band { margin-top: var(--space-8); padding: var(--space-8) 0; background: var(--c-tint); }
.pz-band__ttl { font-family: var(--ff-serif); font-size: var(--fs-6); font-weight: normal; }
.pz-band__wrap { overflow: hidden; }
.pz-band__list { display: flex; flex-wrap: wrap; gap: var(--space-3) 0; margin: var(--space-5) 0 0 calc(var(--space-7) * -1); }
.pz-band__list li { position: relative; padding-left: var(--space-7); }
.pz-band__list li::before { content: "／"; position: absolute; left: 0; width: var(--space-7); text-align: center; color: var(--c-ink-sub); }
.pz-band__bring { display: flex; flex-wrap: wrap; gap: var(--space-1) var(--space-4); margin: var(--space-6) 0 0; }
.pz-band__bring dt { font-family: var(--ff-serif); color: var(--c-accent-2-dark); }
.pz-band__bring dd { margin: 0; }

.sv { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); gap: var(--space-8); }
.sv__head .h2 { padding-left: var(--space-5); border-left: calc(var(--bd-2) * 2) solid var(--c-accent-2); }
.sv__list { display: grid; gap: var(--space-7); margin: 0; }
.sv__list dt { font-family: var(--ff-serif); font-size: var(--fs-5); }
.sv__list dd { margin: var(--space-2) 0 0; }
.sv__links { display: flex; flex-wrap: wrap; gap: var(--space-3) var(--space-6); margin-top: var(--space-4); }
.sv__list dd .sv__link { display: inline-flex; align-items: center; gap: var(--space-3); padding-bottom: var(--space-1); border-bottom: var(--bd) solid currentColor; font-family: var(--ff-serif); color: var(--c-accent-2-dark); transition: color var(--t-1); }
.sv__list dd .sv__link:hover { color: var(--c-accent-2-dark); }

.gd { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: var(--space-8); align-items: stretch; }
.gd__ph { position: relative; margin: 0; overflow: hidden; }
.gd__ph img { position: absolute; height: 100%; object-fit: cover; }
.gd__list { display: grid; gap: var(--space-7); margin: var(--space-7) 0 0; }
.gd__list dt { padding-left: var(--space-4); border-left: calc(var(--bd-2) * 2) solid var(--c-accent-2); font-family: var(--ff-serif); font-size: var(--fs-5); }
.gd__list dd { margin: var(--space-2) 0 0; padding-left: calc(var(--space-4) + var(--bd-2) * 2); }
.gd__body > .note { margin-top: var(--space-6); }

@media (max-width: 768px) {
  .pz { grid-template-columns: minmax(0, 1fr); margin-top: var(--space-6); }
  .pz__main { padding: 0 0 var(--space-6); border-right: 0; border-bottom: var(--bd) solid var(--c-line); }
  .pz__price { font-size: var(--fs-8); }
  .pz__yen { font-size: var(--fs-4); }
  .pz__cap, .pz__sub dd { font-size: var(--fs-3); }
  .pz__sub { padding: var(--space-6) 0 0; }
  .pz-band { margin-top: var(--space-7); padding: var(--space-7) 0; }
  .pz-band__ttl { font-size: var(--fs-5); }
  .pz-band__list { margin-left: calc(var(--space-6) * -1); }
  .pz-band__list li { padding-left: var(--space-6); }
  .pz-band__list li::before { width: var(--space-6); }
  .sv { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
  .sv__head .h2 { padding-left: var(--space-4); }
  .sv__list, .gd__list { gap: var(--space-6); }
  .sv__list dt, .gd__list dt { font-size: var(--fs-4); }
  .gd { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
  .gd__ph { aspect-ratio: 4 / 3; }
  .gd__list { margin-top: var(--space-6); }
}
