.pr-payment {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 210px minmax(0, 1fr);
  align-items: center;
  gap: 32px;
  max-width: 880px;
  margin: 36px auto 0;
  padding: 32px;
  background: radial-gradient(ellipse at 82% 32%, #e3ede1, transparent 40%), linear-gradient(120deg, #f8f3e7, #faf8f0 44%, #e9f3ed);
  color: #203f50;
  font-family: "Noto Sans JP", "Yu Gothic", Meiryo, sans-serif;
  text-align: left;
}
.pr-payment *, .pr-payment *::before, .pr-payment *::after { box-sizing: border-box; }
#payment-refined.pr-payment { scroll-margin-top: 180px; }
.pr-payment .pr-payment__visual img { display: block; width: 210px; height: auto; }
.pr-payment h3 {
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  font-size: 23px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .04em;
  color: #203f50;
}
.pr-payment h3::before, .pr-payment h3::after { display: none; }
.pr-payment .pr-payment__description { margin: 12px 0 0; padding: 0; color: #445d69; font-size: 14px; line-height: 1.9; }
.pr-payment .pr-payment__methods { display: inline-flex; align-items: center; gap: 24px; margin-top: 20px; padding: 10px 24px; background: #fff9; }
.pr-payment .pr-payment__method { font-size: 26px; font-weight: 700; line-height: 1.5; letter-spacing: .04em; white-space: nowrap; }
.pr-payment .pr-payment__or { color: #657975; font-size: 12px; }
@media (max-width: 950px) {
  .pr-payment { grid-template-columns: 180px minmax(0, 1fr); gap: 24px; padding: 28px; }
  .pr-payment .pr-payment__visual img { width: 180px; }
  .pr-payment .pr-payment__method { font-size: 24px; }
}
@media (max-width: 650px) {
  #payment-refined.pr-payment { scroll-margin-top: 90px; }
  .pr-payment { margin-top: 28px; grid-template-columns: 1fr; gap: 28px; padding: 26px 24px 30px; }
  .pr-payment .pr-payment__visual img { width: 220px; margin: 0 auto; }
  .pr-payment h3 { font-size: 21px; }
  .pr-payment .pr-payment__methods { display: flex; justify-content: center; gap: 20px; width: 100%; padding: 12px; }
  .pr-payment .pr-payment__method { font-size: 23px; }
}
@media (max-width: 380px) {
  .pr-payment { padding-right: 22px; padding-left: 22px; }
  .pr-payment .pr-payment__methods { gap: 16px; }
  .pr-payment .pr-payment__method { font-size: 22px; }
}
