@charset "UTF-8";
/* ==========================================================================
   こんなお悩みありませんか？ — Figma 10202:20077 / 1440x1734
   セクション余白: 64/100/80/100・縦gap64
   ========================================================================== */

.nayami {
  padding: 64px 100px 80px;
  background: var(--c-white);
}

.nayami__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 64px;
  max-width: var(--w-wide);
  margin-inline: auto;
}

/* --- グループ --- */
.nayami__groups {
  display: flex;
  flex-direction: column;
  gap: 64px;
  width: 100%;
}

.nayami__group {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
}

/* --- グループ見出し（カンプは幅501固定・内容は左寄せ） --- */
.nayami__label {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 501px;
}

.nayami__num {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 124px;
  height: 39px;
  border-radius: 999px;
  background: var(--c-main);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.8px;
  color: var(--c-white);
  white-space: nowrap;
}

.nayami__lead {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.96px;
  color: var(--c-text);
  white-space: nowrap;
}

/* 黄色マーカー（カンプ: 下から30%だけ不透明のグラデ） */
.nayami__mark {
  padding: 0 2px;
  background: linear-gradient(to top, var(--c-accent-yellow) 30%, transparent 30%);
  color: inherit;
}

/* --- カード列 --- */
.nayami__cards {
  display: flex;
  justify-content: center;
  gap: 40px;
}

.nayami-card {
  display: flex;
  flex-direction: column;
  width: 280px;
  height: 356px;
  padding: 20px 11px 0;   /* border1px込みで内容256pxを確保 */
  border: 1px solid var(--c-border);
  border-radius: 8px;
  background: var(--c-base-gray);
}

/* テキスト枠は高さ80px固定・中身を上下中央に（カンプ挙動） */
.nayami-card__text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 80px;
  text-align: center;
}

.nayami-card__sub {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.32px;
  color: var(--c-text);
}

.nayami-card__main {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.8px;
  color: var(--c-accent);
}

.nayami-card__illust {
  width: 256px;
  height: 256px;
}

/* --------------------------------------------------
   中間幅（769〜1365px）
   -------------------------------------------------- */
@media (min-width: 769px) and (max-width: 1365px) {
  .nayami { padding-inline: 40px; }
  .nayami__cards { flex-wrap: wrap; }
}

/* --------------------------------------------------
   SP（〜768px）
   -------------------------------------------------- */
@media (max-width: 768px) {
  .nayami { padding: 48px 0 56px; }
  .nayami__inner { gap: 40px; padding-inline: var(--sp-pad); }


  .nayami__groups { gap: 44px; }
  .nayami__group { gap: 24px; }

  .nayami__label {
    flex-direction: column;
    gap: 10px;
    width: 100%;
    text-align: center;
  }
  .nayami__num { width: 108px; height: 34px; font-size: 17px; }
  .nayami__lead { font-size: 18px; letter-spacing: 0.36px; white-space: normal; }

  .nayami__cards {
    flex-wrap: wrap;
    gap: 16px;
  }
  .nayami-card {
    width: calc(50% - 8px);
    height: auto;
    padding: 14px 8px 8px;
  }
  .nayami-card__text { height: auto; min-height: 66px; }
  /* 1文字だけ行末に落ちるのを防ぐ */
  .nayami-card__sub { font-size: 13px; letter-spacing: 0.26px; text-wrap: balance; }
  .nayami-card__main { font-size: 15px; letter-spacing: 0.3px; text-wrap: balance; }
  .nayami-card__illust { width: 100%; height: auto; }
}
