/*
 * Secret review cards
 * Only elements with an explicit mq-review-* class are styled.
 * Terms and other ordinary blockquotes are intentionally excluded.
 */
.sc-article__content blockquote.mq-review-card,
.mq-content blockquote.mq-review-card {
  --mq-review-accent: #8d6417;
  --mq-review-bg: #fffaf0;
  --mq-review-border: #e5d3ab;
  margin: 1.1em 0 1.45em;
  padding: 3.15em 1.25em 1.25em;
  color: var(--color-text, #2c2c2c);
  background: linear-gradient(180deg, var(--mq-review-bg) 0%, #fff 100%);
  border: 1px solid var(--mq-review-border);
  border-radius: 12px;
  box-shadow:
    inset 4px 0 0 var(--mq-review-accent),
    0 8px 20px rgba(26, 35, 50, 0.07);
  font-style: normal;
  overflow: hidden;
  overflow-wrap: anywhere;
  isolation: isolate;
}

.sc-article__content blockquote.mq-review-card.mq-review-card--good,
.mq-content blockquote.mq-review-card.mq-review-card--good {
  --mq-review-accent: #267f7a;
  --mq-review-bg: #f3fbfa;
  --mq-review-border: #b8ddd9;
}

.sc-article__content blockquote.mq-review-card.mq-review-card--bad,
.mq-content blockquote.mq-review-card.mq-review-card--bad {
  --mq-review-accent: #ad554f;
  --mq-review-bg: #fff6f4;
  --mq-review-border: #e6c1bd;
}

.sc-article__content blockquote.mq-review-card::before,
.mq-content blockquote.mq-review-card::before {
  content: "口コミ";
  display: inline-flex;
  align-items: center;
  width: auto;
  height: auto;
  top: 0.9em;
  right: auto;
  bottom: auto;
  left: 1em;
  padding: 0.24em 0.78em;
  color: #fff;
  background: var(--mq-review-accent);
  border: 0;
  border-radius: 999px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.82em;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.02em;
  z-index: 2;
}

.sc-article__content blockquote.mq-review-card.mq-review-card--good::before,
.mq-content blockquote.mq-review-card.mq-review-card--good::before {
  content: "高評価の口コミ";
}

.sc-article__content blockquote.mq-review-card.mq-review-card--bad::before,
.mq-content blockquote.mq-review-card.mq-review-card--bad::before {
  content: "低評価の口コミ";
}

.sc-article__content blockquote.mq-review-card > p,
.mq-content blockquote.mq-review-card > p {
  line-height: 1.9;
}

.sc-article__content p.mq-review-summary,
.mq-content p.mq-review-summary {
  position: relative;
  margin: 1.4em 0 2em;
  padding: 2.9em 1.2em 1.15em;
  color: #273747;
  background: linear-gradient(180deg, #fffaf0 0%, #fff 100%);
  border: 1px solid #e5d3ab;
  border-radius: 10px;
  box-shadow: 0 6px 16px rgba(26, 35, 50, 0.06);
}

.sc-article__content p.mq-review-summary::before,
.mq-content p.mq-review-summary::before {
  content: "口コミの見方";
  position: absolute;
  top: 0.82em;
  left: 1em;
  padding: 0.16em 0.65em;
  color: #fff7db;
  background: var(--color-navy, #1a2332);
  border-radius: 4px;
  font-family: "M PLUS Rounded 1c", "Noto Sans JP", sans-serif;
  font-size: 0.72em;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.06em;
}

.sc-article__content p.mq-stat-card,
.mq-content p.mq-stat-card {
  margin: 1.1em 0 1.5em;
  padding: 1em 1.15em 1.05em;
  color: #273747;
  background: linear-gradient(135deg, #fff7e2 0%, #fff 78%);
  border: 1px solid #e5d3ab;
  border-left: 5px solid var(--color-gold, #d4a03c);
  border-radius: 10px;
  box-shadow: 0 6px 16px rgba(26, 35, 50, 0.06);
  font-size: 1.05em;
  text-align: center;
}

.sc-article__content p.mq-stat-card::before,
.mq-content p.mq-stat-card::before {
  content: "実機検証";
  display: block;
  margin-bottom: 0.35em;
  color: #8d6417;
  font-family: "M PLUS Rounded 1c", "Noto Sans JP", sans-serif;
  font-size: 0.72em;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
}

@media (max-width: 599px) {
  .sc-article__content blockquote.mq-review-card,
  .mq-content blockquote.mq-review-card {
    margin: 1em 0 1.3em;
    padding: 3em 1em 1.05em 1.1em;
    border-radius: 10px;
    box-shadow:
      inset 4px 0 0 var(--mq-review-accent),
      0 5px 14px rgba(26, 35, 50, 0.07);
  }

  .sc-article__content blockquote.mq-review-card::before,
  .mq-content blockquote.mq-review-card::before {
    top: 0.78em;
    left: 0.85em;
  }

  .sc-article__content p.mq-review-summary,
  .mq-content p.mq-review-summary {
    padding: 2.8em 1em 1.05em;
  }

  .sc-article__content p.mq-stat-card,
  .mq-content p.mq-stat-card {
    padding-right: 0.9em;
    padding-left: 0.9em;
    font-size: 1em;
  }
}
