.pqb-hero-badges {
  color: #192333;
  font-family: "Noto Sans JP", sans-serif;
  margin: 12px auto 0;
  max-width: 1180px;
  padding: 0 20px 18px;
  position: relative;
  z-index: 3;
}

.pqb-hero-badges *,
.pqb-hero-badges *::before,
.pqb-hero-badges *::after { box-sizing: border-box; }

.pqb-hero-badges-inner {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding: 10px 14px 8px;
}

.pqb-hero-badges-label {
  align-items: baseline;
  display: flex;
  gap: 9px;
  margin-bottom: 7px;
}

.pqb-hero-badges-label span { color: #50360a; font-size:16px; font-weight: 900; letter-spacing: .04em; }
.pqb-hero-badges-label small { color: #7a6542; font-size:16px; font-weight: 800; }
.pqb-badge-stage { align-items: center; display: grid; gap: 12px; grid-template-columns: 190px minmax(0, 1fr); }
.pqb-badge-list { align-items: center; display: grid; gap: 7px; grid-template-columns: repeat(7, minmax(0, 1fr)); }
.pqb-image-badge { align-items: center; display: flex; flex-direction: column; justify-content: center; min-width: 0; position: relative; }
.pqb-image-badge img { display: block; height: auto; max-width: 100%; object-fit: contain; }
.pqb-pass { color: #c51f2c; display: block; font-size: 18px; font-weight: 900; letter-spacing: .12em; line-height: 1.15; margin-top: 2px; text-align: center; }
.pqb-image-badge--primary .pqb-pass { font-size: 28px; }
.pqb-image-badge--primary img { max-height: 102px; width: 182px; }
.pqb-image-badge--small img,
.pqb-image-badge--model-only img { max-height: 58px; width: 106px; }
.pqb-badge-note { border-radius: 999px; display: block; font-size:16px; font-weight: 800; line-height: 1.25; margin-top: 2px; max-width: 100%; overflow-wrap: anywhere; padding: 2px 5px; text-align: center; }
.pqb-badge-note--condition { background: #fff3ce; color: #6d4800; }
.pqb-badge-note--model { background: #e8eef4; color: #304d68; }
.pqb-hero-disclosure { color: #69717b; font-size:16px; line-height: 1.5; margin: 5px 0 0; text-align: right; }

.pqb-noscript .pqb-badge-stage { display: grid; }

.pqb-hero-badges-inner--compact,
.pqb-noscript--compact { padding: 8px 12px; }
.pqb-hero-badges-inner--compact .pqb-badge-stage,
.pqb-noscript--compact .pqb-badge-stage { margin: 0; }

@media (max-width: 900px) {
  .pqb-hero-badges { margin-top: 8px; padding-left: 14px; padding-right: 14px; }
  .pqb-badge-stage { grid-template-columns: 160px minmax(0, 1fr); }
  .pqb-badge-list { grid-template-columns: repeat(4, minmax(0, 1fr)); row-gap: 5px; }
  .pqb-image-badge--primary img { max-height: 90px; width: 155px; }
  .pqb-image-badge--small img,
  .pqb-image-badge--model-only img { max-height: 45px; width: 95px; }
}

@media (max-width: 620px) {
  .pqb-hero-badges { padding: 0 10px 12px; }
  .pqb-hero-badges-inner { border-radius: 0; padding: 8px 8px 7px; }
  .pqb-hero-badges-label { margin-bottom: 5px; }
  .pqb-hero-badges-label span { font-size:16px; }
  .pqb-badge-stage { align-items: start; gap: 7px; grid-template-columns: 1fr; }
  .pqb-badge-list { gap: 5px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pqb-image-badge--primary img { max-height: 130px; width: 200px; }
  .pqb-image-badge--small img,
  .pqb-image-badge--model-only img { max-height: 70px; width: 100%; }
  .pqb-badge-note { border-radius: 3px; font-size:16px; padding: 1px 3px; }
  .pqb-hero-disclosure { font-size:16px; line-height: 1.45; margin-top: 5px; text-align: left; }
}

@media (prefers-reduced-motion: reduce) {
  .pqb-hero-badges *,
  .pqb-hero-badges *::before,
  .pqb-hero-badges *::after { transition-duration: .01ms !important; }
}
