/* ===== 案A専用スタイル（0708修正版: ポスターデザイン準拠） ===== */

/* Mochiy Pop One / Yusei Magic は400のみ提供のため疑似ボールドを無効化 */
body { font-synthesis: none; }

/* ヘッダーCTA: 「黄色に白文字は読めない」指摘対応 → 黄色地×濃色文字を明示
   （common.css の .nav-list a より詳細度を上げて確実に濃色にする） */
.nav-cta,
.nav-list a.nav-cta {
  background: var(--color-accent7);
  color: var(--text-primary);
}

/* --- ヘッダー: 佐賀県ロゴ（0713県戻し: サイト名の左に配置） --- */
.site-brand {
  display: flex;
  align-items: center;
  gap: 14px;
}
.header-pref-logo { display: flex; align-items: center; }
.header-pref-logo img { height: 22px; width: auto; display: block; }
@media (max-width: 480px) {
  .header-pref-logo img { height: 18px; }
  .site-brand { gap: 10px; }
}

/* スクリーンリーダー用テキスト */
.visually-hidden {
  position: absolute; width: 1px; height: 1px;
  margin: -1px; padding: 0; overflow: hidden;
  clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

/* --- もんだロゴ（「だ」に目のあるデザインをSVGで再現・後日支給データに差し替え） --- */
.monda-logo { display: block; width: 100%; height: auto; }

/* --- ポスター風吹き出し（もこもこの雲形。形はSVGマスクで再現し、しっぽ込みで::beforeに描く） --- */
:root {
  --cloud-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 178'%3E%3Cg fill='%23fff'%3E%3Cellipse cx='110' cy='86' rx='88' ry='56'/%3E%3Ccircle cx='48' cy='48' r='29'/%3E%3Ccircle cx='95' cy='34' r='32'/%3E%3Ccircle cx='145' cy='39' r='30'/%3E%3Ccircle cx='184' cy='62' r='27'/%3E%3Ccircle cx='195' cy='98' r='24'/%3E%3Ccircle cx='170' cy='128' r='27'/%3E%3Ccircle cx='124' cy='144' r='28'/%3E%3Ccircle cx='72' cy='138' r='27'/%3E%3Ccircle cx='30' cy='112' r='25'/%3E%3Ccircle cx='24' cy='76' r='24'/%3E%3Ccircle cx='58' cy='164' r='13'/%3E%3C/g%3E%3C/svg%3E");
  /* バリエーション2: 小さなこぶが多い花びら形（ポスターのもこもこ濃いめ） */
  --cloud-mask-2: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 178'%3E%3Cg fill='%23fff'%3E%3Cellipse cx='110' cy='88' rx='90' ry='54'/%3E%3Ccircle cx='30' cy='60' r='22'/%3E%3Ccircle cx='58' cy='36' r='24'/%3E%3Ccircle cx='92' cy='24' r='25'/%3E%3Ccircle cx='128' cy='26' r='25'/%3E%3Ccircle cx='162' cy='36' r='24'/%3E%3Ccircle cx='190' cy='56' r='22'/%3E%3Ccircle cx='202' cy='86' r='20'/%3E%3Ccircle cx='192' cy='116' r='21'/%3E%3Ccircle cx='166' cy='138' r='23'/%3E%3Ccircle cx='132' cy='150' r='24'/%3E%3Ccircle cx='96' cy='152' r='24'/%3E%3Ccircle cx='62' cy='142' r='23'/%3E%3Ccircle cx='34' cy='120' r='21'/%3E%3Ccircle cx='20' cy='90' r='20'/%3E%3Ccircle cx='66' cy='165' r='12'/%3E%3C/g%3E%3C/svg%3E");
  /* バリエーション3: 大きなこぶ少なめの丸い雲形 */
  --cloud-mask-3: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 178'%3E%3Cg fill='%23fff'%3E%3Cellipse cx='110' cy='90' rx='85' ry='52'/%3E%3Ccircle cx='60' cy='50' r='40'/%3E%3Ccircle cx='140' cy='42' r='42'/%3E%3Ccircle cx='190' cy='95' r='32'/%3E%3Ccircle cx='38' cy='105' r='30'/%3E%3Ccircle cx='120' cy='140' r='36'/%3E%3Ccircle cx='70' cy='164' r='13'/%3E%3C/g%3E%3C/svg%3E");
}
.pbubble {
  --rot: 0deg;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 30px 24px;
  transform: rotate(var(--rot));
}
.pbubble::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: -10px -12px -22px -12px;
  background: var(--pb, var(--p-red));
  -webkit-mask: var(--cloud-mask) center / 100% 100% no-repeat;
  mask: var(--cloud-mask) center / 100% 100% no-repeat;
}
.pbubble--tail-r::before { transform: scaleX(-1); }
/* 吹き出しの形をポスターのように数種類に（並び順で3形状を循環） */
.pbubble:nth-child(3n+2)::before {
  -webkit-mask-image: var(--cloud-mask-2);
  mask-image: var(--cloud-mask-2);
}
.pbubble:nth-child(3n)::before {
  -webkit-mask-image: var(--cloud-mask-3);
  mask-image: var(--cloud-mask-3);
}
.pbubble > span {
  /* 0713県戻し: 文言背景の四角を削除。可読性は形の見えない極薄シャドウで補強 */
  padding: 7px 11px;
  color: #fff;
  text-shadow: 0 1px 5px rgba(40, 20, 10, 0.3);
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 0.82rem;
  line-height: 1.6;
  text-align: left;
}

/* 吹き出しがポンッと湧き出す出現アニメーション */
@keyframes monda-pop {
  from { transform: scale(0.3) rotate(var(--rot)); opacity: 0; }
  to   { transform: scale(1) rotate(var(--rot)); opacity: 1; }
}
.hero-bubbles .pbubble { animation: monda-pop 0.55s cubic-bezier(0.34, 1.56, 0.64, 1) backwards; }
.hero-bubbles .pbubble:nth-child(1) { animation-delay: 0.15s; }
.hero-bubbles .pbubble:nth-child(2) { animation-delay: 0.3s; }
.hero-bubbles .pbubble:nth-child(3) { animation-delay: 0.45s; }
.hero-bubbles .pbubble:nth-child(4) { animation-delay: 0.6s; }
.hero-bubbles .pbubble:nth-child(5) { animation-delay: 0.75s; }
.hero-bubbles .pbubble:nth-child(6) { animation-delay: 0.9s; }
@media (prefers-reduced-motion: reduce) {
  .hero-bubbles .pbubble { animation: none !important; }
}

/* --- ヒーロー（ポスターベース・白背景） --- */
.hero--poster {
  position: relative;
  overflow: hidden;
  padding: 56px 0 60px;
  /* ポスターの下地: 白 + 薄い「もんだ」散らしパターン */
  background-color: #FFFFFF;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='380' height='340' viewBox='0 0 380 340'%3E%3Cg fill='%23231815' fill-opacity='0.028' font-family='Hiragino Maru Gothic ProN, Yu Gothic, sans-serif' font-weight='bold'%3E%3Ctext x='24' y='70' font-size='30' transform='rotate(-14 24 70)'%3Eもんだ%3C/text%3E%3Ctext x='230' y='58' font-size='22' transform='rotate(10 230 58)'%3Eもんだ%3C/text%3E%3Ctext x='120' y='185' font-size='26' transform='rotate(6 120 185)'%3Eもんだ%3C/text%3E%3Ctext x='280' y='210' font-size='30' transform='rotate(-8 280 210)'%3Eもんだ%3C/text%3E%3Ctext x='40' y='300' font-size='22' transform='rotate(12 40 300)'%3Eもんだ%3C/text%3E%3Ctext x='210' y='318' font-size='25' transform='rotate(-11 210 318)'%3Eもんだ%3C/text%3E%3C/g%3E%3C/svg%3E");
  background-size: 380px 340px;
}
.hero-inner { position: relative; }

/* ポスターの密度を再現する文字なしダミー吹き出し（画面端で見切れさせる） */
.hero-deco { position: absolute; inset: 0; pointer-events: none; }
.hero-deco span {
  position: absolute;
  background: var(--pb, var(--p-yellow));
  -webkit-mask: var(--cloud-mask) center / 100% 100% no-repeat;
  mask: var(--cloud-mask) center / 100% 100% no-repeat;
  transform: rotate(var(--rot, 0deg));
}
.hero-deco span:nth-child(1) { left: -48px;  top: -34px;    width: 158px; height: 122px; --rot: 9deg; }
.hero-deco span:nth-child(2) { left: 17%;    top: -52px;    width: 138px; height: 106px; --rot: -7deg; }
.hero-deco span:nth-child(3) { right: 21%;   top: -44px;    width: 126px; height: 98px;  --rot: 6deg; }
.hero-deco span:nth-child(4) { right: -52px; top: 21%;      width: 150px; height: 118px; --rot: -9deg; }
.hero-deco span:nth-child(5) { left: -56px;  top: 54%;      width: 146px; height: 114px; --rot: 7deg; }
.hero-deco span:nth-child(6) { left: 9%;     bottom: -48px; width: 142px; height: 110px; --rot: -6deg; }
.hero-deco span:nth-child(7) { right: 11%;   bottom: -54px; width: 154px; height: 120px; --rot: 6deg; }
.hero-deco span:nth-child(8) { right: -46px; top: 57%;      width: 132px; height: 104px; --rot: 8deg; }
/* ダミー吹き出しにも形のバリエーションを適用 */
.hero-deco span:nth-child(3n+2) {
  -webkit-mask-image: var(--cloud-mask-2);
  mask-image: var(--cloud-mask-2);
}
.hero-deco span:nth-child(3n) {
  -webkit-mask-image: var(--cloud-mask-3);
  mask-image: var(--cloud-mask-3);
}
/* コラージュ配置でないタブレット以下では省略（グリッドと干渉するため） */
@media (max-width: 1024px) {
  .hero-deco { display: none; }
}
.hero-copy, .hero-foot { position: relative; z-index: 2; max-width: 560px; margin: 0 auto; }

/* キャッチ（ポスターの読み順: あ、それ、→ ロゴ） */
.hero-catch {
  font-family: var(--font-accent);
  font-weight: 400;
  font-size: clamp(1.2rem, 2.6vw, 1.6rem);
  margin-bottom: 14px;
}
.hero-catch em {
  font-style: normal;
  /* ポスターの黄色アンダーラインをマーカー風に再現 */
  background: linear-gradient(transparent 62%, var(--color-accent7) 62%);
  padding: 0 2px;
}

/* ロゴのロックアップ（もんだ[ロゴ]は、あちこちに あるもんだ。） */
.hero-title { margin-bottom: 20px; }
.hero-logo-lockup {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 4px;
}
.hero-logo-lockup .monda-logo { width: clamp(210px, 32vw, 320px); }
.hero-title-wa {
  font-family: var(--font-heading);
  font-weight: 800;
  font-size: clamp(1.7rem, 4.2vw, 2.6rem);
  line-height: 1.1;
  padding-bottom: 6px;
}
.hero-title-rest {
  display: block;
  font-family: var(--font-heading);
  font-weight: 800;
  font-size: clamp(1.55rem, 4vw, 2.4rem);
  line-height: 1.5;
  margin-top: 10px;
}

/* 吹き出し配置: モバイル/タブレットはグリッド */
.hero-bubbles {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px 14px;
  max-width: 840px;
  margin: 28px auto;
  justify-items: center;
  align-items: center;
}

.hero-lead { text-align: center; }
.hero-lead strong { white-space: nowrap; } /* “ もんだ ”が行末で泣き別れしないように */
.hero-foot { text-align: center; }

/* PC（1025px〜）: コピーを中央、吹き出しを左右に散らすポスター風コラージュ */
@media (min-width: 1025px) {
  .hero--poster { padding: 64px 0; }
  .hero-inner {
    min-height: 600px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
  }
  .hero-bubbles { display: contents; }
  .hero-bubbles .pbubble { position: absolute; z-index: 1; max-width: 226px; }
  .hero-bubbles .pbubble:nth-child(1) { left: 0.5%; top: 2%;  --rot: -5deg; }
  .hero-bubbles .pbubble:nth-child(2) { left: 0%;   top: 36%; --rot: 4deg; }
  .hero-bubbles .pbubble:nth-child(3) { left: 2%;   top: 70%; --rot: -3deg; }
  .hero-bubbles .pbubble:nth-child(4) { right: 2%;  top: 3%;  --rot: 5deg; }
  .hero-bubbles .pbubble:nth-child(5) { right: 0%;  top: 36%; --rot: -4deg; }
  .hero-bubbles .pbubble:nth-child(6) { right: 2%;  top: 72%; --rot: 3deg; }
}

/* タブレット以下: 見出し（キャッチ→ロゴ）を先頭に、吹き出しはその下 */
@media (max-width: 1024px) {
  .hero-inner { display: flex; flex-direction: column; text-align: center; }
  .hero-copy { order: -1; }
}

/* モバイル（〜768px）: 2列 */
@media (max-width: 768px) {
  .hero--poster { padding: 40px 0 48px; }
  /* 0714戻し: 吹き出し同士の重なり解消（行間を広げる）。0714追指示で吹き出し自体は大きめに再調整 */
  .hero-bubbles { grid-template-columns: repeat(2, 1fr); gap: 34px 14px; margin: 20px auto; }
  .hero-bubbles .pbubble { padding: 18px 12px; }
  .hero-bubbles .pbubble::before { inset: -10px -10px -19px -10px; }
  /* 0714追指示: 「料理の取り分け」の吹き出しは雲形3のへこみが深く「料」が欠けるため、SPでは縁のなだらかな雲形1に差し替え */
  .hero-bubbles .pbubble:nth-child(6)::before {
    -webkit-mask-image: var(--cloud-mask);
    mask-image: var(--cloud-mask);
  }
  .pbubble { padding: 20px 16px; }
  .pbubble > span { font-size: 0.74rem; padding: 6px 9px; }
  .hero-cta { font-size: 0.92rem; padding: 14px 22px; }
}

/* 幅の狭い端末では文言の折り返し(3行化)と縁への接近を防ぐ */
@media (max-width: 380px) {
  .pbubble > span { font-size: 0.7rem; }
}

/* --- PICKUP: ポスター調の募集バナー（新規作成） --- */
.pickup-banner--poster {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  background: var(--p-ink);
  border: none;
  border-radius: 14px;
  padding: 34px 38px;
  color: #fff;
  transition: opacity 0.2s;
}
.pickup-banner--poster:hover { opacity: 0.92; }
.pickup-banner--poster .pickup-banner-label {
  color: var(--color-accent7);
  margin-bottom: 10px;
}
.pickup-banner--poster .pickup-banner-title {
  color: #fff;
  font-size: clamp(1.15rem, 2.4vw, 1.5rem);
  line-height: 1.7;
}
.pickup-banner--poster .pickup-banner-title em {
  font-style: normal;
  color: var(--color-accent7);
  background: linear-gradient(transparent 68%, rgba(248, 248, 72, 0.45) 68%);
  padding: 0 2px;
  white-space: nowrap; /* “ もんだ ”の途中改行を防ぐ */
}
.pickup-banner--poster .pickup-deadline { color: var(--color-accent7); }
.pickup-banner--poster .pickup-banner-cta {
  position: relative;
  z-index: 1;
  background: var(--color-accent7);
  color: var(--text-primary);
  border-radius: 50% 50% 46% 54% / 56% 52% 48% 44%;
  padding: 26px 22px;
  font-family: var(--font-heading);
  font-weight: 800;
  font-size: 0.95rem;
  white-space: nowrap;
  transform: rotate(-3deg);
}
/* バナー四隅の吹き出しあしらい */
.pickup-banner--poster::before,
.pickup-banner--poster::after {
  content: '';
  position: absolute;
  width: 110px; height: 86px;
  border-radius: 54% 46% 52% 48% / 58% 52% 48% 42%;
  opacity: 0.85;
}
.pickup-banner--poster::before { left: -46px; top: -40px; background: var(--p-green); transform: rotate(-14deg); }
.pickup-banner--poster::after { right: -40px; bottom: -46px; background: var(--p-magenta); transform: rotate(12deg); }
@media (max-width: 768px) {
  .pickup-banner--poster { flex-direction: column; text-align: center; padding: 28px 22px; }
}

/* --- ABOUT内に統合した「“ もんだ ”は、どこにでも」 --- */
.about-scenes {
  background: var(--hero-bg);
  border-radius: 20px;
  padding: 36px 20px 32px;
  margin-top: 28px;
  text-align: center;
}
.about-scenes-title {
  font-family: var(--font-heading);
  font-size: clamp(1.15rem, 2.6vw, 1.45rem);
  font-weight: 800;
  margin-bottom: 8px;
}
.about-scenes-title em { font-style: normal; color: var(--color-accent1); }
.scenes-lead {
  font-size: 0.95rem;
  color: var(--text-secondary);
  margin: 0 0 28px;
}
.scenes-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  max-width: 720px;
  margin: 0 auto;
}
.scene-item { display: flex; flex-direction: column; align-items: center; gap: 10px; }
.scene-icon {
  width: 92px;
  height: 92px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 10px rgba(40, 24, 24, 0.08);
  display: grid;
  place-items: center;
  color: var(--sc);
}
.scene-icon svg { width: 50px; height: 50px; display: block; }
.scene-name {
  font-family: var(--font-heading);
  font-weight: 800;
  font-size: 0.95rem;
  color: var(--sc);
}
@media (max-width: 768px) {
  .scenes-grid { grid-template-columns: repeat(2, 1fr); gap: 24px 12px; }
}

/* --- 応募はかんたん3ステップ --- */
.steps { background: var(--bg-base); text-align: center; }
.steps-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  max-width: 860px;
  margin: 0 auto 24px;
}
.step-card {
  background: var(--bg-alt);
  border-radius: 16px;
  padding: 28px 20px 24px;
  position: relative;
}
.step-num {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  color: #fff;
  font-family: var(--font-heading);
  font-weight: 800;
  font-size: 1.15rem;
  display: grid;
  place-items: center;
  margin: 0 auto 12px;
}
.step-card:nth-child(1) .step-num { background: var(--color-accent1); }
.step-card:nth-child(2) .step-num { background: var(--color-accent4); }
.step-card:nth-child(3) .step-num { background: var(--color-accent2); }
.step-title {
  font-family: var(--font-heading);
  font-size: 1.05rem;
  font-weight: 800;
  margin-bottom: 8px;
}
.step-text { font-size: 0.85rem; color: var(--text-secondary); line-height: 1.9; }
/* カード間の矢印コネクタ */
.step-card:not(:last-child)::after {
  content: '';
  position: absolute;
  right: -16px;
  top: 50%;
  transform: translateY(-50%);
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
  border-left: 11px solid var(--color-accent5);
  z-index: 1;
}
.steps-chips {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 32px;
}
.steps-chip {
  border: 2px solid var(--color-accent5);
  background: #fff;
  border-radius: 999px;
  padding: 4px 18px;
  font-size: 0.8rem;
  font-weight: 700;
}
.steps-chip--deadline { border-color: var(--color-accent1); }
@media (max-width: 768px) {
  .steps-grid { grid-template-columns: 1fr; gap: 24px; }
  .step-card:not(:last-child)::after {
    right: auto;
    left: 50%;
    top: auto;
    bottom: -18px;
    transform: translateX(-50%);
    border-left: 9px solid transparent;
    border-right: 9px solid transparent;
    border-top: 11px solid var(--color-accent5);
    border-bottom: 0;
  }
}

/* --- 「もんだプロジェクトとは」ページ: 場面別“ もんだ ” --- */
.about-logo-lockup {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 4px;
  margin: 8px auto 20px;
}
.about-logo-lockup .monda-logo { width: clamp(180px, 26vw, 260px); }
.scene-group { margin-top: 40px; }
.scene-group-head {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 20px;
}
.scene-group-head .scene-icon { width: 64px; height: 64px; background: var(--hero-bg); box-shadow: none; }
.scene-group-head .scene-icon svg { width: 36px; height: 36px; }
.scene-group-head h3 {
  font-family: var(--font-heading);
  font-weight: 800;
  font-size: 1.25rem;
  color: var(--sc);
}
.scene-bubbles {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px 14px;
  justify-items: center;
  align-items: center;
}
.scene-bubbles .pbubble:nth-child(odd) { --rot: -3deg; }
.scene-bubbles .pbubble:nth-child(even) { --rot: 3deg; }
@media (max-width: 768px) {
  .scene-bubbles { grid-template-columns: repeat(2, 1fr); }
}

/* --- 黄色い雲（ポスターの「あなたの声が誰かの気づきに」）
     0710指示: 黒ベタは違和感 → 背景なしで吹き出しだけを置く --- */
.notice-cloud {
  text-align: center;
  margin: 36px 0 28px;
}
.notice-cloud-bubble {
  display: inline-block;
  background: var(--p-yellow);
  border-radius: 48% 52% 44% 56% / 62% 58% 42% 38%;
  padding: 34px 46px;
  transform: rotate(-3deg);
}
.notice-cloud-bubble span {
  display: block;
  font-family: var(--font-accent);
  font-size: clamp(1.05rem, 2.4vw, 1.35rem);
  color: var(--text-primary);
  line-height: 1.7;
  transform: rotate(-2deg);
}

/* --- 募集記事（お知らせ記事化）の吹き出しあしらい --- */
.notice-bubbles {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px 16px;
  margin: 8px 0 28px;
}
.notice-bubbles .pbubble { padding: 20px 16px; }
.notice-bubbles .pbubble > span { font-size: 0.74rem; }

/* 応募要項の別囲み */
.entry-requirements--boxed {
  background: #fff;
  border: 2.5px solid var(--color-accent1);
  border-radius: 14px;
}
.entry-requirements--boxed h2 { color: var(--color-accent1); }

/* --- フッター: 関連ロゴ（白抜き支給PNG） --- */
.footer-logos {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px 28px;
  margin: 16px 0 12px;
}
.footer-logo {
  display: block;
  width: auto;
}
.footer-logo-link {
  display: block;
  transition: opacity 0.2s;
}
.footer-logo-link:hover { opacity: 0.75; }
/* 0713県戻し: SWAロゴは佐賀県ロゴとの並列表示をやめ、フッターリンクのテキストに変更 */
.footer-logo--pref { height: 34px; }
/* 0721追加: 公式Instagramアイコン（公式グラデーションのカラー版・角丸は SVG 側で処理） */
.footer-logo--insta { height: 28px; width: 28px; }
@media (max-width: 480px) {
  .footer-logo--pref { height: 28px; }
  .footer-logo--insta { height: 22px; width: 22px; }
}

/* --- 場面タグの色（下層ページで使用） --- */
.scene-tag--work   { --sc: #C85848; }
.scene-tag--home   { --sc: #B84888; }
.scene-tag--school { --sc: #68B8E8; }
.scene-tag--area   { --sc: #A8C858; }

/* ===== 0709赤入れ対応 ===== */

/* PICKUPバナーは一旦非表示（時期に合わせて再表示するため hidden 属性で退避） */
.pickup[hidden] { display: none; }

/* 「お知らせ」「あ、それ、“ もんだ ”じゃない？」見出しをセンタリング */
.news .section-label, .news .section-title,
.about .section-label, .about .section-title { text-align: center; }

/* クリーム色背景をABOUTセクション全体に */
.about { background: var(--hero-bg); }
.about .about-card { background: #FFFFFF; }

/* 応募セクションのキャッチコピー（ポスターの募集コピー） */
.steps-catch {
  text-align: center;
  font-family: var(--font-accent);
  font-weight: 400;
  font-size: clamp(1.1rem, 2.6vw, 1.55rem);
  line-height: 1.7;
  margin-bottom: 12px;
}
.steps-catch em { font-style: normal; color: var(--color-accent1); }

/* 応募CTAボタンの赤色化 */
.hero-cta--red, .entry-cta {
  background: var(--p-red);
  color: #fff;
}

/* ヒーロー内CTA: 黒は重い → ヘッダーCTAと同じ黄色×濃色文字に（0710指示） */
.hero-cta--yellow {
  background: var(--color-accent7);
  color: var(--text-primary);
}

/* 0714戻し: SP追従CTA「あなたの“ もんだ ”を教えて」を黄色ベタ×黒文字に */
.mobile-cta {
  background: var(--color-accent7);
  color: var(--text-primary);
}

/* 募集記事冒頭の吹き出しコラージュ（トップのヒーロー同様のにぎやかさに） */
.notice-bubbles-deco {
  width: 74px;
  height: 58px;
  align-self: flex-end;
  background: var(--pb, var(--p-yellow));
  -webkit-mask: var(--cloud-mask) center / 100% 100% no-repeat;
  mask: var(--cloud-mask) center / 100% 100% no-repeat;
  transform: rotate(var(--rot, 0deg));
}
.notice-bubbles-deco:nth-child(3n+2) {
  -webkit-mask-image: var(--cloud-mask-2);
  mask-image: var(--cloud-mask-2);
}
.notice-bubbles-deco:nth-child(3n) {
  -webkit-mask-image: var(--cloud-mask-3);
  mask-image: var(--cloud-mask-3);
}
