/* Hallmark · pre-emit critique: P5 H5 E5 S5 R5 V4 */
/* Hallmark · genre: modern-minimal · macrostructure: Map / Diagram (growth-curve + eligibility-split variation) · theme: studied-DNA (source: _codespec_/html-design-standard/foundations.html) · nav: N9 · footer: shared Ft2 · contrast: pass (40–41) · slop: pass (42–45) · honest: pass (46) · chrome: pass (47) · tokens: pass (48) · responsive: pass (34, 49, 50–57) · icons: pass (30) */
/* Audience: 100億企業を目指す中小企業経営者 · Primary action: 制度理解から無料相談へ · Tone: expert, steady, direct */

:root {
  --growth-strong: #1d6b3b;
  --growth-base: #2f9451;
  --growth-soft: #ecf7ef;
  --growth-text: #1d6b3b;
  --growth-border: #b9dec4;
  --growth-on-strong: #ffffff;
  --growth-navy: #101b3d;
  --growth-navy-soft: #1e2c5c;
  --growth-orange: #ff7001;
  --growth-orange-dark: #eb5101;
  --growth-paper-strong: #ffffff;
  --growth-ink-plain: #2d2d2d;
  --growth-rule-strong: #d6dce8;
  --growth-wash: rgb(255 255 255 / 40%);
  --growth-localnav-z: 90;
  --growth-cut-sm: 0.75rem;
  --growth-cut-md: 1.25rem;
  --growth-brand-rule: linear-gradient(90deg, #ff5f9e, #16b7e8, #ffd400);
  --growth-brand-slash: linear-gradient(128deg, transparent 0 16%, #ff5f9e 16% 24%, transparent 24% 35%, #16b7e8 35% 44%, transparent 44% 55%, #ffd400 55% 64%, transparent 64% 100%);
  --growth-paper: oklch(99.2% 0.003 247.9);
  --growth-paper-subtle: oklch(96.8% 0.007 247.9);
  --growth-ink: oklch(24.5% 0.039 264.4);
  --growth-ink-soft: oklch(37.2% 0.039 257.3);
  --growth-muted: oklch(48% 0.025 257.3);
  --growth-rule: oklch(86.9% 0.020 252.9);
  --growth-focus: oklch(61.3% 0.243 356.7);
  --growth-shadow: oklch(20% 0.03 260 / 0.12);
  --growth-transparent: oklch(0% 0 0 / 0);
  --growth-font: "Kozuka Gothic Pr6N", "小塚ゴシック Pr6N", "Kozuka Gothic Pro", "小塚ゴシック Pro", "Yu Gothic", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  --growth-shell: 75rem;
  --growth-narrow: 60rem;
  --growth-pad: clamp(1rem, 4vw, 2.5rem);
  --growth-section: clamp(4.5rem, 8vw, 7rem);
  --growth-radius-sm: 0.25rem;
  --growth-radius-md: 0.5rem;
  --growth-radius-lg: 1rem;
  --growth-ease: cubic-bezier(0.16, 1, 0.3, 1);
}

html,
body {
  overflow-x: clip;
}

.p-growth,
.p-growth *,
.p-growth *::before,
.p-growth *::after {
  box-sizing: border-box;
}

.p-growth {
  background: var(--growth-paper);
  color: var(--growth-ink);
  font-family: var(--growth-font);
  line-height: 1.7;
}

.p-growth :where(h1, h2, h3, p, ol, ul, dl, dd, figure) {
  margin: 0;
}

.p-growth :where(ol, ul) {
  padding: 0;
  list-style: none;
}

.p-growth a {
  color: inherit;
  text-decoration: none;
}

.p-growth :where(a, summary):focus-visible {
  outline: 0.1875rem solid var(--growth-focus);
  outline-offset: 0.25rem;
}


/* =========================================================
   ボタン: 共通仕様 (.c-btn) を使用
   ========================================================= */
.p-growth a.c-btn {
  white-space: normal;
  text-align: center;
  text-decoration: none;
}

.p-growth a.c-btn--primary {
  color: #fff;
}

.p-growth a.c-btn--outline {
  border-color: var(--growth-strong);
  color: var(--growth-text);
}

.p-growth a.c-btn--outline:hover {
  background: var(--growth-soft);
}

/* .c-btn--consult は共通仕様(actions.html)に定義があり
   common/css/style.css には未実装のため、補助金色でページ内に補完 */
.p-growth a.c-btn--consult {
  background: var(--growth-orange);
  color: #fff;
}

.p-growth a.c-btn--consult:hover {
  background: var(--growth-orange-dark);
}

.p-growth .c-btn svg {
  display: block;
  flex: none;
  inline-size: 1.35em;
  block-size: 1.35em;
}

.p-growth .c-btn--block {
  inline-size: 100%;
}

.p-growth .c-btn--sm {
  font-size: .95rem;
}

/* Service MV · approved 2026-09-06 layout; page-specific palette and SVG background. */
.p-growth-hero,
.p-growth-localnav {
  --color-growth-mv-ink: var(--color-navy);
  --color-growth-mv-body: var(--color-text);
  --color-growth-mv-feature-orange: #ad5000;
  --color-growth-mv-feature-pink: #cb315e;
  --color-growth-mv-feature-blue: var(--color-service-combined-strong);
  --color-growth-mv-strong: var(--growth-strong);
  --color-growth-mv-base: var(--growth-base);
  --color-growth-mv-cyan: var(--growth-base);
  --color-growth-mv-pale: var(--growth-soft);
  --color-growth-mv-rule: var(--color-border);
  --shadow-growth-mv-panel: 0 2px 6px rgb(16 38 111 / 14%);
  --shadow-growth-mv-nav: 0 3px 7px rgb(16 38 111 / 10%);
}

.p-growth-hero {
  position: relative;
  overflow: clip;
  background-color: var(--growth-paper-strong);
  background-image: url("https://svltd2.files.cmssv.awsv.jp/_build_/common_v7/assets/service-register-20260906/seichohojo/assets/service-hero-bg.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  border-block-end: 1px solid var(--color-growth-mv-rule);
}

.p-growth-hero__inner {
  inline-size: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  gap: 1.75rem;
  padding-block: 2rem;
}

.p-growth-hero__copy,
.p-growth-hero__panel { min-inline-size: 0; }

.p-growth-hero__lead {
  display: inline-block;
  margin-block-end: 1.125rem;
  padding: .3rem .75rem;
  border-radius: var(--radius-sm);
  color: var(--growth-paper-strong);
  background: var(--color-growth-mv-strong);
  font-size: clamp(.75rem, 1.1vw, 1rem);
  font-weight: 700;
  line-height: 1.5;
}

.p-growth-hero__title {
  color: var(--color-growth-mv-ink);
  font-size: clamp(1.4375rem, 4.5vw, 3rem);
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: -.04em;
}

.p-growth-hero__subtitle {
  display: block;
  margin-block-start: .4rem;
  font-size: .6em;
  letter-spacing: 0;
  line-height: 1.5;
}

.p-growth-hero__programs {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: .875rem;
  margin-block-start: 1.5rem;
  padding: 0;
  list-style: none;
}

.p-growth-hero__program {
  --color-growth-mv-program: var(--color-growth-mv-feature-blue);
  min-inline-size: 0;
  padding: 1rem;
  background: var(--growth-paper-strong);
  border: 1px solid var(--color-growth-mv-rule);
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-growth-mv-panel);
}

.p-growth-hero__program:nth-child(1) { --color-growth-mv-program: var(--color-growth-mv-feature-orange); }
.p-growth-hero__program:nth-child(2) { --color-growth-mv-program: var(--color-growth-mv-feature-pink); }
.p-growth-hero__program h2 {
  display: flex;
  align-items: center;
  gap: .5rem;
  min-block-size: 2.625rem;
  color: var(--color-growth-mv-program);
  font-size: .9375rem;
  font-weight: 800;
  line-height: 1.4;
}
.p-growth-hero__program svg {
  flex: none;
  inline-size: 1.875rem;
  block-size: 1.875rem;
}
.p-growth-hero__program p {
  color: var(--color-growth-mv-body);
  margin-block-start: .5rem;
  font-size: .8125rem;
  font-weight: 600;
  line-height: 1.65;
}

.p-growth-hero__facts {
  overflow: clip;
  border: 1px solid var(--color-growth-mv-rule);
  border-radius: var(--radius-md);
  background: var(--growth-paper-strong);
  color: var(--color-growth-mv-ink);
  box-shadow: var(--shadow-growth-mv-panel);
}
.p-growth-hero__round {
  padding: .375rem 1rem;
  background: var(--color-growth-mv-strong);
  color: var(--growth-paper-strong);
  font-size: 1rem;
  font-weight: 700;
  text-align: center;
}
.p-growth-hero__fact { margin-inline: 1.5rem; padding-block: .875rem; }
.p-growth-hero__fact--accent {
  padding-block: .75rem 1rem;
  border-block-start: 1px solid var(--color-growth-mv-rule);
}
.p-growth-hero__fact-label {
  display: flex;
  align-items: center;
  gap: .65rem;
  color: var(--color-growth-mv-ink);
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.5;
}
.p-growth-hero__fact-label svg {
  flex: none;
  inline-size: 1.5rem;
  block-size: 1.5rem;
}
.p-growth-hero__fact--accent svg { color: var(--color-growth-mv-ink); }
.p-growth-hero__fact-year {
  margin-block-start: .5rem;
  text-align: center;
  font-size: 1rem;
  font-weight: 700;
}
.p-growth-hero__fact-value {
  text-align: center;
  font-size: 3rem;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  letter-spacing: -.035em;
  line-height: 1.25;
  white-space: nowrap;
}
.p-growth-hero__fact-value small { font-size: 1.25rem; letter-spacing: 0; }
.p-growth-hero__support-date {
  margin-block-start: .375rem;
  font-size: .8125rem;
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
}
.p-growth-hero__support-date strong { font-size: 1.375rem; }
.p-growth-hero__actions { display: grid; gap: .625rem; margin-block-start: .875rem; }
.p-growth-hero .p-growth-hero__cta {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .625rem;
  min-block-size: 3.25rem;
  padding: .625rem .875rem;
  border: 1px solid transparent;
  border-radius: var(--radius-md);
  color: var(--growth-paper-strong);
  background: var(--color-navy);
  box-shadow: var(--shadow-growth-mv-panel);
  font-size: .9375rem;
  font-weight: 800;
  line-height: 1.4;
  text-decoration: none;
  white-space: nowrap;
  transition: transform .15s ease, box-shadow .15s ease;
}
.p-growth-hero .p-growth-hero__cta--consult { background: var(--color-consult); }
.p-growth-hero .p-growth-hero__cta svg { flex: none; inline-size: 1.25rem; block-size: 1.25rem; }
.p-growth-hero__arrow { margin-inline-start: auto; font-size: 1.5rem; font-weight: 400; line-height: 1; }
.p-growth-hero .p-growth-hero__cta:hover { transform: translateY(-2px); box-shadow: var(--shadow-md); }
.p-growth-hero .p-growth-hero__cta:active { transform: translateY(0); }

@media (min-width: 37.5rem) {
  .p-growth-hero__programs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .p-growth-hero__panel { inline-size: min(100%, 26rem); justify-self: center; }
}
@media (min-width: 64rem) {
  .p-growth-hero__inner {
    grid-template-columns: minmax(0, 1fr) minmax(18.5rem, .48fr);
    gap: clamp(2rem, 4vw, 4.5rem);
    min-block-size: 28rem;
    padding-block: 2.5rem;
  }
  .p-growth-hero__title { font-size: clamp(2.125rem, 3.3vw, 3rem); }
  .p-growth-hero__programs { margin-block-start: 2rem; }
  .p-growth-hero__program { padding: .875rem; }
  .p-growth-hero__panel { inline-size: 100%; }
}
@media (min-width: 90rem) {
  .p-growth-hero__inner { grid-template-columns: minmax(0, 1fr) minmax(0, .46fr); min-block-size: 30rem; gap: 4rem; }
  .p-growth-hero__panel { max-inline-size: 24rem; justify-self: end; }
  .p-growth-hero__program { padding: 1rem 1.125rem; }
  .p-growth-hero__program h2 { font-size: 1.0625rem; }
  .p-growth-hero__program p { font-size: .875rem; }
  .p-growth-hero__fact-value { font-size: 3.5rem; }
  .p-growth-hero__support-date { font-size: 1rem; }
  .p-growth-hero__support-date strong { font-size: 1.5rem; }
  .p-growth-hero .p-growth-hero__cta { font-size: 1rem; padding-inline: 1.25rem; }
}
.p-growth-hero :where(h1, h2) { font-family: var(--font-display); font-style: normal; overflow-wrap: anywhere; }
.p-growth-hero :where(a):focus-visible { outline: 3px solid var(--growth-focus); outline-offset: 4px; }
.p-growth-hero :where(a):active { opacity: .78; }
.p-growth-hero__closing-time { text-align: center; font-size: 1rem; font-weight: 700; }

.p-growth-note,
.p-growth-source {
  color: var(--growth-ink-soft);
  font-size: 0.8rem;
}

.p-growth-note {
  margin-top: 1rem;
}

.p-growth-localnav {
  position: sticky;
  inset-block-start: var(--growth-sticky-offset, 0px);
  z-index: var(--growth-localnav-z);
  padding-block: .75rem;
  background: var(--growth-paper-strong);
  border-block-end: 1px solid var(--color-growth-mv-rule);
}
.p-growth-localnav__items {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .875rem .5rem;
  inline-size: 100%;
  padding-block: .25rem .625rem;
}
.p-growth .p-growth-localnav a {
  position: relative;
  display: inline-flex;
  min-inline-size: 0;
  align-items: center;
  justify-content: center;
  gap: .375rem;
  min-block-size: 2.75rem;
  padding: .625rem .5rem;
  border: 1px solid var(--color-growth-mv-rule);
  border-radius: var(--radius-full);
  color: var(--color-growth-mv-ink);
  background: var(--growth-paper-strong);
  box-shadow: var(--shadow-growth-mv-nav);
  font-size: .8125rem;
  font-weight: 700;
  line-height: 1.25;
  text-decoration: none;
  white-space: nowrap;
  transition: background-color var(--duration-service-combined), color var(--duration-service-combined);
}
.p-growth .p-growth-localnav a svg { flex: none; inline-size: 1.25rem; block-size: 1.25rem; }
.p-growth .p-growth-localnav a:hover { background: var(--color-growth-mv-pale); }
.p-growth .p-growth-localnav a.is-current {
  border-color: var(--color-growth-mv-ink);
  color: var(--growth-paper-strong);
  background: var(--color-growth-mv-strong);
}
.p-growth .p-growth-localnav a.is-current::after {
  position: absolute;
  inset-block-start: calc(100% - 1px);
  inset-inline-start: calc(50% - 8px);
  inline-size: 16px;
  block-size: 10px;
  background: var(--color-growth-mv-strong);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
}

@media (min-width: 37.5rem) {
  .p-growth-localnav__items { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .p-growth .p-growth-localnav a { min-block-size: 3.25rem; font-size: .875rem; }
}
@media (max-width: 63.999rem) {
  .p-growth-localnav__items > a:last-child { grid-column: 1 / -1; }
}
@media (min-width: 64rem) {
  .p-growth-localnav__items { display: flex; flex-wrap: wrap; }
  .p-growth .p-growth-localnav a { flex: 1 0 calc(100% / 7 - .5rem); gap: .25rem; }
}
@media (min-width: 90rem) {
  .p-growth .p-growth-localnav a { flex: 1 0 auto; padding-inline: .375rem; }
  .p-growth .p-growth-localnav a svg { inline-size: 1.125rem; block-size: 1.125rem; }
}
.p-growth-localnav :where(a):focus-visible { outline: 3px solid var(--growth-focus); outline-offset: 4px; }

/* =========================================================
   Section frame
   Section headings use the site-wide .c-heading component.
   ========================================================= */
.p-growth-section {
  position: relative;
  scroll-margin-top: var(--growth-anchor-offset, 7rem);
  padding-block: var(--growth-section);
  overflow: clip;
  background-color: var(--growth-paper-strong);
  background-image: url("https://svltd2.files.cmssv.awsv.jp/_build_/common_v7/assets/service-register-20260906/common/img/bg_top_right.svg");
  background-position: right top;
  background-repeat: no-repeat;
  background-size: clamp(11.875rem, 24vw, 21.6875rem) auto;
}

.p-growth-section--soft {
  background-color: var(--growth-paper-subtle);
  background-image: url("https://svltd2.files.cmssv.awsv.jp/_build_/common_v7/assets/service-register-20260906/common/img/bg_bottom_left.svg");
  background-position: left bottom;
  background-size: clamp(5.75rem, 10vw, 9.25rem) auto;
}

.p-growth-section-heading {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  min-width: 0;
  margin-block-end: var(--space-5);
}

.p-growth-section-heading__sub {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  color: var(--growth-text);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
}

.p-growth-section-heading__sub::before {
  flex: none;
  width: 2.125rem;
  height: 0.125rem;
  background: var(--growth-strong);
  content: "";
}

.p-growth .c-heading {
  min-width: 0;
  margin-block-end: 0;
  overflow-wrap: anywhere;
}

.p-growth-section__lead {
  max-width: 52rem;
  margin: 0;
  color: var(--growth-ink-soft);
  font-size: 1.05rem;
  text-align: left;
}

/* =========================================================
   Shared parts: note bar / panel / icon frame / number badge
   ========================================================= */
.p-growth-notebar {
  display: grid;
  grid-template-columns: 2.75rem minmax(0, 1fr);
  align-items: center;
  gap: 1.125rem;
  margin-top: 2.5rem;
  padding: 1.125rem 1.5rem;
  background: var(--growth-soft);
  border: 0.0625rem solid var(--growth-border);
  clip-path: polygon(var(--growth-cut-sm) 0, 100% 0, 100% calc(100% - var(--growth-cut-sm)), calc(100% - var(--growth-cut-sm)) 100%, 0 100%, 0 var(--growth-cut-sm));
}

.p-growth-icon {
  display: grid;
  place-items: center;
  width: 2.75rem;
  height: 2.75rem;
  border: 0.125rem solid var(--growth-base);
  color: var(--growth-text);
  background: var(--growth-paper-strong);
  clip-path: polygon(0 0, calc(100% - 0.5rem) 0, 100% 0.5rem, 100% 100%, 0.5rem 100%, 0 calc(100% - 0.5rem));
}

.p-growth-icon svg {
  display: block;
  width: 60%;
  height: 60%;
}

.p-growth-icon--lg {
  width: 4.5rem;
  height: 4.5rem;
  background: var(--growth-soft);
  clip-path: polygon(0 0, calc(100% - 0.75rem) 0, 100% 0.75rem, 100% 100%, 0.75rem 100%, 0 calc(100% - 0.75rem));
}

.p-growth-notebar p {
  color: var(--growth-ink);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.55;
}

.p-growth-panel {
  position: relative;
  margin-top: 3.5rem;
}

.p-growth-panel__label {
  position: absolute;
  top: -1.375rem;
  left: 2.5rem;
  z-index: 1;
  padding: 0.7rem 1.75rem;
  background: var(--growth-strong);
  color: var(--growth-on-strong);
  font-size: 1.05rem;
  font-weight: 800;
  line-height: 1.2;
  white-space: nowrap;
  clip-path: polygon(0 0, 100% 0, calc(100% - 0.75rem) 100%, 0 100%);
}

.p-growth-panel__body {
  padding: 3rem 1.5rem 1.5rem;
  background: var(--growth-paper-strong);
  border: 0.125rem solid var(--growth-border);
  clip-path: polygon(var(--growth-cut-md) 0, 100% 0, 100% calc(100% - var(--growth-cut-md)), calc(100% - var(--growth-cut-md)) 100%, 0 100%, 0 var(--growth-cut-md));
}

.p-growth-num {
  display: grid;
  place-items: center;
  min-width: 2.25rem;
  height: 2.25rem;
  padding-inline: 0.5rem;
  background: var(--growth-strong);
  color: var(--growth-on-strong);
  font-size: 0.9rem;
  font-weight: 800;
  line-height: 1;
  font-variant-numeric: tabular-nums;
  clip-path: polygon(0 0, 100% 0, calc(100% - 0.4rem) 100%, 0 100%);
}

.p-growth-card {
  position: relative;
  min-width: 0;
  padding: 1.75rem 1.5rem;
  background: var(--growth-paper-strong);
  border: 0.0625rem solid var(--growth-border);
  clip-path: polygon(var(--growth-cut-sm) 0, 100% 0, 100% calc(100% - var(--growth-cut-sm)), calc(100% - var(--growth-cut-sm)) 100%, 0 100%, 0 var(--growth-cut-sm));
}

.p-growth-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
  margin-top: 2.5rem;
}

.p-growth-grid--two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.p-growth-source {
  margin-top: 1.5rem;
}

/* =========================================================
   01 · 制度概要
   ========================================================= */
.p-growth-overview {
  display: grid;
  grid-template-columns: 1.08fr 0.92fr;
  margin-top: 2.5rem;
  background: var(--growth-paper-strong);
  border: 0.125rem solid var(--growth-border);
  border-left: 0.5rem solid var(--growth-base);
  clip-path: polygon(var(--growth-cut-md) 0, 100% 0, 100% calc(100% - var(--growth-cut-md)), calc(100% - var(--growth-cut-md)) 100%, 0 100%, 0 var(--growth-cut-md));
}

.p-growth-headline-stat {
  position: relative;
  display: grid;
  align-content: center;
  justify-items: center;
  min-width: 0;
  min-height: 26rem;
  padding: 2.5rem;
  background: linear-gradient(145deg, var(--growth-paper), var(--growth-paper-strong) 72%);
  text-align: center;
}

.p-growth-headline-stat::after {
  position: absolute;
  top: 1.75rem;
  right: 1.875rem;
  width: 7rem;
  height: 4.5rem;
  background-image: url("https://svltd2.files.cmssv.awsv.jp/_build_/common_v7/assets/service-register-20260906/common/img/bg_diadef_lt.svg");
  background-position: right center;
  background-repeat: no-repeat;
  background-size: auto 100%;
  content: "";
}

.p-growth-headline-stat > p:first-child {
  color: var(--growth-navy);
  font-size: 1.5rem;
  font-weight: 800;
}

.p-growth-headline-stat__value {
  display: flex;
  align-items: baseline;
  margin: 0.25rem 0 0.875rem;
  color: var(--growth-navy);
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

.p-growth-headline-stat__value b {
  font-size: clamp(6rem, 10vw, 11.875rem);
  font-weight: 800;
  letter-spacing: -0.07em;
}

.p-growth-headline-stat__value span {
  margin-left: 0.75rem;
  font-size: clamp(2.25rem, 3.4vw, 4rem);
  font-weight: 800;
}

.p-growth-headline-stat__copy {
  color: var(--growth-navy);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.55;
}

.p-growth-ministats {
  display: grid;
  grid-template-rows: repeat(2, minmax(0, 1fr));
  min-width: 0;
}

.p-growth-ministat {
  display: grid;
  grid-template-columns: 6.5rem minmax(0, 1fr);
  align-items: center;
  gap: 1.5rem;
  min-width: 0;
  padding: 2.5rem;
}

.p-growth-ministat + .p-growth-ministat {
  border-top: 0.0625rem solid var(--growth-rule-strong);
}

.p-growth-ministat .p-growth-icon {
  width: 6.5rem;
  height: 6.5rem;
  background: var(--growth-soft);
  clip-path: polygon(0 0, calc(100% - 0.75rem) 0, 100% 0.75rem, 100% 100%, 0.75rem 100%, 0 calc(100% - 0.75rem));
}

.p-growth-ministat p {
  margin-bottom: 0.25rem;
  color: var(--growth-navy);
  font-size: 1.25rem;
  font-weight: 800;
}

.p-growth-ministat strong {
  display: block;
  color: var(--growth-navy);
  font-size: clamp(2.5rem, 4vw, 4.25rem);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.04em;
  font-variant-numeric: tabular-nums;
}

.p-growth-ministat strong small {
  margin-left: 0.5rem;
  font-size: 0.43em;
  letter-spacing: 0;
}

.p-growth-ministat span {
  display: block;
  margin-top: 0.5rem;
  color: var(--growth-muted);
  font-size: 0.9rem;
}

.p-growth-targets {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.p-growth-target {
  min-width: 0;
  padding: 0.375rem 2rem 1.125rem;
  text-align: center;
}

.p-growth-target + .p-growth-target {
  border-left: 0.0625rem solid var(--growth-rule-strong);
}

.p-growth-target > span {
  display: inline-block;
  margin-bottom: 0.5rem;
  color: var(--growth-navy);
  font-size: 0.9rem;
  font-weight: 800;
  letter-spacing: 0.1em;
}

.p-growth-target h3 {
  margin-bottom: 0.625rem;
  color: var(--growth-navy);
  font-size: 1.25rem;
}

.p-growth-target p {
  color: var(--growth-ink-soft);
  font-size: 1.05rem;
  font-weight: 600;
  line-height: 1.45;
}

.p-growth-target p strong {
  display: block;
  color: var(--growth-navy);
  font-size: 1.75rem;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}

/* =========================================================
   02 · 公募ポイント
   ========================================================= */
.p-growth-split {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 1.5rem;
  align-items: start;
  margin-top: 3.5rem;
}

.p-growth-facts {
  margin: 0;
}

.p-growth-facts > div {
  display: grid;
  grid-template-columns: 3.5rem 9rem minmax(0, 1fr);
  align-items: center;
  gap: 1.25rem;
  padding-block: 1.5rem;
}

.p-growth-facts > div + div {
  border-top: 0.0625rem solid var(--growth-rule);
}

.p-growth-facts dt {
  color: var(--growth-navy);
  font-size: 1.05rem;
  font-weight: 800;
}

.p-growth-facts dd {
  color: var(--growth-navy);
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1.3;
  font-variant-numeric: tabular-nums;
}

.p-growth-facts dd small {
  font-size: 0.68em;
}

.p-growth-facts dd.p-growth-facts__plain {
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.5;
}

.p-growth-points {
  display: grid;
  gap: 1.25rem;
}

.p-growth-points article {
  display: grid;
  grid-template-columns: 2.25rem minmax(0, 1fr);
  align-items: start;
  gap: 1rem;
}

.p-growth-points h3 {
  margin-bottom: 0.5rem;
  color: var(--growth-navy);
  font-size: 1.25rem;
}

.p-growth-points p {
  color: var(--growth-navy);
  font-size: 1.125rem;
  font-weight: 800;
}

.p-growth-points small {
  display: block;
  margin-top: 0.4rem;
  color: var(--growth-ink-soft);
  font-size: 0.9rem;
  line-height: 1.6;
}

/* =========================================================
   03 · 対象診断
   ========================================================= */
.p-growth-diagnosis-figure {
  margin: 2.5rem 0 0;
}

.p-growth-diagnosis-figure picture,
.p-growth-diagnosis-figure img {
  display: block;
  width: 100%;
}

.p-growth-diagnosis-figure img {
  height: auto;
}

.p-growth-diagnosis-figure figcaption {
  margin-top: 0.75rem;
  color: var(--growth-muted);
  font-size: 0.85rem;
  line-height: 1.6;
  text-align: center;
}

.p-growth-checks {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.25rem;
  margin-top: 2.5rem;
}

.p-growth-checks li {
  display: grid;
  justify-items: center;
  gap: 0.875rem;
  min-width: 0;
  padding: 2rem 1.25rem;
  background: var(--growth-paper-strong);
  border: 0.0625rem solid var(--growth-border);
  border-top: 0.25rem solid var(--growth-base);
  text-align: center;
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--growth-cut-sm)), calc(100% - var(--growth-cut-sm)) 100%, 0 100%);
}

.p-growth-checks h3 {
  color: var(--growth-navy);
  font-size: 1.25rem;
}

.p-growth-checks p {
  color: var(--growth-navy);
  font-size: 1.25rem;
  font-weight: 800;
  line-height: 1.45;
}

.p-growth-checks p small {
  display: block;
  margin-top: 0.25rem;
  color: var(--growth-muted);
  font-size: 0.8rem;
  font-weight: 600;
}

.p-growth-inline-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 1.5rem;
  margin-top: 2.5rem;
  padding: 1.75rem 2rem;
  background: var(--growth-soft);
  border: 0.0625rem solid var(--growth-border);
  clip-path: polygon(var(--growth-cut-sm) 0, 100% 0, 100% calc(100% - var(--growth-cut-sm)), calc(100% - var(--growth-cut-sm)) 100%, 0 100%, 0 var(--growth-cut-sm));
}

.p-growth-inline-cta strong {
  display: block;
  color: var(--growth-navy);
  font-size: 1.35rem;
}

.p-growth-inline-cta p {
  margin-top: 0.35rem;
  color: var(--growth-ink-soft);
  font-size: 0.95rem;
}

/* =========================================================
   04 · 補助額
   ========================================================= */
.p-growth-amount {
  display: grid;
  grid-template-columns: 1.25fr 0.75fr;
  gap: 1.5rem;
  align-items: start;
  margin-top: 2.5rem;
}

.p-growth-spec {
  margin: 0;
  background: var(--growth-paper-strong);
  border: 0.125rem solid var(--growth-border);
  clip-path: polygon(var(--growth-cut-md) 0, 100% 0, 100% calc(100% - var(--growth-cut-md)), calc(100% - var(--growth-cut-md)) 100%, 0 100%, 0 var(--growth-cut-md));
}

.p-growth-spec > div {
  display: grid;
  grid-template-columns: 11rem minmax(0, 1fr);
  align-items: center;
  gap: 1.5rem;
  min-height: 6.5rem;
  padding: 1.25rem 2rem;
}

.p-growth-spec > div + div {
  border-top: 0.0625rem solid var(--growth-rule);
}

.p-growth-spec dt {
  color: var(--growth-navy);
  font-size: 1.05rem;
  font-weight: 800;
}

.p-growth-spec dd {
  color: var(--growth-navy);
  font-size: clamp(1.75rem, 2.6vw, 2.25rem);
  font-weight: 800;
  line-height: 1.2;
  font-variant-numeric: tabular-nums;
}

.p-growth-spec dd small {
  margin-left: 0.4rem;
  font-size: 0.55em;
}

.p-growth-spec dd b {
  display: block;
  margin-top: 0.3rem;
  color: var(--growth-muted);
  font-size: 0.85rem;
  font-weight: 500;
}

.p-growth-example {
  position: relative;
  padding: 3rem 1.75rem 1.75rem;
  background: var(--growth-paper-strong);
  border: 0.125rem solid var(--growth-border);
  clip-path: polygon(var(--growth-cut-md) 0, 100% 0, 100% calc(100% - var(--growth-cut-md)), calc(100% - var(--growth-cut-md)) 100%, 0 100%, 0 var(--growth-cut-md));
  text-align: center;
}

.p-growth-example__rows {
  display: grid;
  gap: 0.75rem;
  margin-top: 1.25rem;
  text-align: left;
}

.p-growth-example__rows > p {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
  padding-bottom: 0.75rem;
  border-bottom: 0.0625rem solid var(--growth-rule);
  color: var(--growth-ink-soft);
  font-size: 0.95rem;
  font-weight: 700;
}

.p-growth-example__rows > p b {
  color: var(--growth-navy);
  font-size: 1.35rem;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}

.p-growth-example__result {
  margin-top: 1.25rem;
  color: var(--growth-navy);
  font-size: 1rem;
  font-weight: 800;
}

.p-growth-example__result b {
  display: block;
  margin-top: 0.25rem;
  color: var(--growth-navy);
  font-size: clamp(2.75rem, 4.6vw, 3.75rem);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.04em;
  font-variant-numeric: tabular-nums;
}

.p-growth-checklist {
  display: grid;
  gap: 0.75rem;
  margin-top: 1.5rem;
  text-align: left;
}

.p-growth-checklist li {
  display: grid;
  grid-template-columns: 1.5rem minmax(0, 1fr);
  gap: 0.75rem;
  color: var(--growth-ink-soft);
  font-size: 0.9rem;
  font-weight: 600;
  line-height: 1.5;
}

.p-growth-checklist svg {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  color: var(--growth-base);
}

/* =========================================================
   05 · 対象経費
   ========================================================= */
.p-growth-expenses {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
}

.p-growth-expenses li {
  display: grid;
  grid-template-columns: 3.5rem minmax(0, 1fr);
  align-items: start;
  gap: 1.125rem;
  min-width: 0;
  padding: 1.5rem;
  border: 0.0625rem solid var(--growth-border);
  clip-path: polygon(var(--growth-cut-sm) 0, 100% 0, 100% calc(100% - var(--growth-cut-sm)), calc(100% - var(--growth-cut-sm)) 100%, 0 100%, 0 var(--growth-cut-sm));
}

.p-growth-expenses .p-growth-icon {
  width: 3.5rem;
  height: 3.5rem;
  background: var(--growth-soft);
}

.p-growth-expenses strong {
  display: block;
  color: var(--growth-navy);
  font-size: 1.2rem;
}

.p-growth-expenses small {
  display: block;
  margin-top: 0.35rem;
  color: var(--growth-ink-soft);
  font-size: 0.9rem;
  line-height: 1.55;
}

.p-growth-tally {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem;
}

.p-growth-tally > div {
  min-width: 0;
  padding: 1.5rem;
  border: 0.0625rem solid var(--growth-border);
  clip-path: polygon(var(--growth-cut-sm) 0, 100% 0, 100% calc(100% - var(--growth-cut-sm)), calc(100% - var(--growth-cut-sm)) 100%, 0 100%, 0 var(--growth-cut-sm));
}

.p-growth-tally--in {
  background: var(--growth-soft);
}

.p-growth-tally h3 {
  margin-bottom: 0.875rem;
  padding-bottom: 0.75rem;
  border-bottom: 0.0625rem solid var(--growth-border);
  color: var(--growth-navy);
  font-size: 1.1rem;
}

.p-growth-tally p {
  color: var(--growth-ink-soft);
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.7;
}

.p-growth-alert {
  display: grid;
  grid-template-columns: 2.75rem minmax(0, 1fr);
  align-items: start;
  gap: 1.125rem;
  margin-top: 2.5rem;
  padding: 1.375rem 1.5rem;
  background: var(--growth-paper-strong);
  border: 0.0625rem solid var(--growth-orange);
  border-left: 0.25rem solid var(--growth-orange);
}

.p-growth-alert .p-growth-icon {
  border-color: var(--growth-orange);
  color: var(--growth-orange-dark);
}

.p-growth-alert strong {
  display: block;
  margin-bottom: 0.25rem;
  color: var(--growth-navy);
  font-size: 1.1rem;
}

.p-growth-alert p {
  color: var(--growth-ink-soft);
  font-size: 0.95rem;
  line-height: 1.6;
}

/* =========================================================
   06 · 申請要件
   ========================================================= */
.p-growth-req {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
  margin-top: 2.5rem;
}

.p-growth-req > article {
  min-width: 0;
  padding: 1.75rem 1.5rem;
  background: var(--growth-paper-strong);
  border: 0.0625rem solid var(--growth-border);
  text-align: center;
  clip-path: polygon(var(--growth-cut-sm) 0, 100% 0, 100% calc(100% - var(--growth-cut-sm)), calc(100% - var(--growth-cut-sm)) 100%, 0 100%, 0 var(--growth-cut-sm));
}

.p-growth-req__head {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  padding-bottom: 1.125rem;
  border-bottom: 0.0625rem solid var(--growth-rule);
}

.p-growth-req__head h3 {
  color: var(--growth-navy);
  font-size: 1.2rem;
}

.p-growth-req strong {
  display: block;
  margin-top: 1.375rem;
  color: var(--growth-navy);
  font-size: clamp(1.9rem, 3vw, 2.5rem);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.03em;
}

.p-growth-req > article > p {
  margin-top: 0.5rem;
  color: var(--growth-navy);
  font-size: 0.95rem;
  font-weight: 800;
}

.p-growth-req small {
  display: block;
  margin-top: 0.5rem;
  color: var(--growth-ink-soft);
  font-size: 0.85rem;
  line-height: 1.6;
}

.p-growth-subreq {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.p-growth-subreq > article {
  min-width: 0;
  padding: 0.5rem 1.5rem;
}

.p-growth-subreq > article + article {
  border-left: 0.0625rem solid var(--growth-rule-strong);
}

.p-growth-subreq__head {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 0.875rem;
}

.p-growth-subreq h3 {
  color: var(--growth-navy);
  font-size: 1.05rem;
}

.p-growth-subreq p {
  color: var(--growth-ink-soft);
  font-size: 0.9rem;
  line-height: 1.65;
}

/* =========================================================
   07 · 申請の流れ / 08 · 申請支援
   ========================================================= */
.p-growth-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.25rem;
  margin-top: 2.5rem;
}

.p-growth-panel__body .p-growth-steps {
  margin-top: 0;
}

.p-growth-steps li {
  min-width: 0;
  padding: 1.5rem;
  background: var(--growth-paper-strong);
  border: 0.0625rem solid var(--growth-border);
  clip-path: polygon(var(--growth-cut-sm) 0, 100% 0, 100% calc(100% - var(--growth-cut-sm)), calc(100% - var(--growth-cut-sm)) 100%, 0 100%, 0 var(--growth-cut-sm));
}

.p-growth-steps__head {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  min-height: 4rem;
  padding-bottom: 1rem;
  border-bottom: 0.0625rem solid var(--growth-rule);
}

.p-growth-steps h3 {
  min-width: 0;
  color: var(--growth-navy);
  font-size: 1.1rem;
  line-height: 1.35;
}

.p-growth-steps p {
  margin-top: 1rem;
  color: var(--growth-ink-soft);
  font-size: 0.9rem;
  line-height: 1.65;
}

.p-growth-proof {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 1.25rem;
  align-items: start;
  margin-top: 2.5rem;
}

.p-growth-proof__list {
  display: grid;
  gap: 0.875rem;
  padding: 1.75rem;
  background: var(--growth-soft);
  border: 0.0625rem solid var(--growth-border);
  clip-path: polygon(var(--growth-cut-sm) 0, 100% 0, 100% calc(100% - var(--growth-cut-sm)), calc(100% - var(--growth-cut-sm)) 100%, 0 100%, 0 var(--growth-cut-sm));
}

.p-growth-proof__list li {
  display: grid;
  grid-template-columns: 1.5rem minmax(0, 1fr);
  gap: 0.75rem;
  color: var(--growth-navy);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
}

.p-growth-proof__list svg {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  color: var(--growth-base);
}

.p-growth-proof__badge {
  display: grid;
  grid-template-columns: 4.5rem minmax(0, 1fr);
  align-items: center;
  gap: 1.25rem;
  padding: 1.75rem;
  background: var(--growth-paper-strong);
  border: 0.0625rem solid var(--growth-border);
  clip-path: polygon(var(--growth-cut-sm) 0, 100% 0, 100% calc(100% - var(--growth-cut-sm)), calc(100% - var(--growth-cut-sm)) 100%, 0 100%, 0 var(--growth-cut-sm));
}

.p-growth-proof__badge h3 {
  margin-bottom: 0.4rem;
  color: var(--growth-navy);
  font-size: 1.15rem;
}

.p-growth-proof__badge p {
  color: var(--growth-ink-soft);
  font-size: 0.9rem;
  line-height: 1.6;
}

/* =========================================================
   09 · 活用イメージ
   ========================================================= */
.p-growth-cases {
  display: grid;
  gap: 1.25rem;
  margin-top: 2.5rem;
}

.p-growth-cases > article {
  display: grid;
  grid-template-columns: 8.5rem minmax(0, 1fr) 1.3fr;
  align-items: stretch;
  min-width: 0;
  background: var(--growth-paper-strong);
  border: 0.0625rem solid var(--growth-border);
  clip-path: polygon(var(--growth-cut-sm) 0, 100% 0, 100% calc(100% - var(--growth-cut-sm)), calc(100% - var(--growth-cut-sm)) 100%, 0 100%, 0 var(--growth-cut-sm));
}

.p-growth-cases__index {
  display: grid;
  place-items: center;
  align-content: center;
  gap: 0.75rem;
  padding: 1.75rem 1rem;
  background: var(--growth-strong);
  color: var(--growth-on-strong);
}

.p-growth-cases__index b {
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

.p-growth-cases__index svg {
  display: block;
  width: 2.75rem;
  height: 2.75rem;
}

.p-growth-cases__body {
  min-width: 0;
  padding: 1.75rem;
}

.p-growth-cases__body h3 {
  color: var(--growth-navy);
  font-size: 1.35rem;
}

.p-growth-cases__body > p {
  margin-top: 0.3rem;
  color: var(--growth-text);
  font-size: 0.95rem;
  font-weight: 700;
}

.p-growth-cases__body > small {
  display: block;
  margin-top: 0.75rem;
  color: var(--growth-ink-soft);
  font-size: 0.9rem;
  line-height: 1.65;
}

.p-growth-cases dl {
  display: grid;
  align-content: center;
  gap: 0.625rem;
  min-width: 0;
  padding: 1.75rem;
  border-left: 0.0625rem solid var(--growth-rule);
}

.p-growth-cases dl > div {
  display: grid;
  grid-template-columns: 8.75rem minmax(0, 1fr);
  align-items: center;
  gap: 1rem;
}

.p-growth-cases dt {
  padding: 0.35rem 0.5rem;
  background: var(--growth-soft);
  color: var(--growth-text);
  font-size: 0.8rem;
  white-space: nowrap;
  font-weight: 800;
  text-align: center;
}

.p-growth-cases dd {
  color: var(--growth-navy);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
}

/* =========================================================
   10 · 支援実績
   ========================================================= */
.p-growth-record {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
  margin-top: 2.5rem;
}

.p-growth-record > div {
  display: grid;
  justify-items: center;
  gap: 0.75rem;
  min-width: 0;
  padding: 2rem 1.5rem;
  background: var(--growth-paper-strong);
  border: 0.0625rem solid var(--growth-border);
  text-align: center;
  clip-path: polygon(var(--growth-cut-sm) 0, 100% 0, 100% calc(100% - var(--growth-cut-sm)), calc(100% - var(--growth-cut-sm)) 100%, 0 100%, 0 var(--growth-cut-sm));
}

.p-growth-record dt {
  color: var(--growth-navy);
  font-size: 1.1rem;
  font-weight: 800;
}

.p-growth-record dd {
  color: var(--growth-navy);
  font-size: clamp(2.5rem, 4.4vw, 3.75rem);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.04em;
  font-variant-numeric: tabular-nums;
}

.p-growth-record dd small {
  margin-left: 0.35rem;
  font-size: 0.42em;
  letter-spacing: 0;
}

.p-growth-record dd.p-growth-record__text {
  font-size: clamp(1.35rem, 2.1vw, 1.75rem);
  line-height: 1.35;
  letter-spacing: -0.02em;
}

.p-growth-record span {
  color: var(--growth-ink-soft);
  font-size: 0.9rem;
  line-height: 1.55;
}

.p-growth-track-cases {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
  margin-top: 1.25rem;
}

.p-growth-track-cases article {
  display: grid;
  grid-template-rows: auto auto 1fr auto;
  min-width: 0;
  background: var(--growth-paper-strong);
  border: 0.0625rem solid var(--growth-border);
  clip-path: polygon(var(--growth-cut-sm) 0, 100% 0, 100% calc(100% - var(--growth-cut-sm)), calc(100% - var(--growth-cut-sm)) 100%, 0 100%, 0 var(--growth-cut-sm));
}

.p-growth-track-cases img {
  width: 100%;
  height: 13rem;
  object-fit: cover;
}

.p-growth-track-cases h3 {
  margin: 1.25rem 1.5rem 0;
  color: var(--growth-navy);
  font-size: 1.15rem;
}

.p-growth-track-cases p {
  margin: 0.5rem 1.5rem 0;
  color: var(--growth-ink-soft);
  font-size: 0.9rem;
  line-height: 1.65;
}

.p-growth a.p-growth-track-cases__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin: 1.25rem 1.5rem 1.5rem;
  padding-top: 1rem;
  border-top: 0.0625rem solid var(--growth-rule);
  color: var(--growth-text);
  font-size: 0.9rem;
  font-weight: 800;
  text-decoration: none;
}

.p-growth-track-cases__link svg {
  display: block;
  flex: none;
  width: 1.25rem;
  height: 1.25rem;
}

/* =========================================================
   11 · 関連資料
   ========================================================= */
.p-growth-resources {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
  margin-top: 2.5rem;
}

.p-growth a.p-growth-resource {
  display: grid;
  grid-template-rows: auto auto 1fr auto;
  min-width: 0;
  padding: 1.75rem 1.5rem;
  background: var(--growth-paper-strong);
  border: 0.0625rem solid var(--growth-border);
  clip-path: polygon(var(--growth-cut-sm) 0, 100% 0, 100% calc(100% - var(--growth-cut-sm)), calc(100% - var(--growth-cut-sm)) 100%, 0 100%, 0 var(--growth-cut-sm));
  transition: background 180ms var(--growth-ease);
}

.p-growth a.p-growth-resource:hover {
  background: var(--growth-soft);
}

.p-growth-resource__tag {
  justify-self: start;
  margin-bottom: 1rem;
  padding: 0.4rem 1.125rem;
  background: var(--growth-strong);
  color: var(--growth-on-strong);
  font-size: 0.8rem;
  font-weight: 800;
  clip-path: polygon(0 0, 100% 0, calc(100% - 0.5rem) 100%, 0 100%);
}

.p-growth-resource h3 {
  color: var(--growth-navy);
  font-size: 1.2rem;
  line-height: 1.45;
}

.p-growth-resource p {
  margin-top: 0.625rem;
  color: var(--growth-ink-soft);
  font-size: 0.9rem;
  line-height: 1.65;
}

.p-growth-resource__more {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1.25rem;
  padding-top: 1rem;
  border-top: 0.0625rem solid var(--growth-rule);
  color: var(--growth-text);
  font-size: 0.9rem;
  font-weight: 800;
}

.p-growth-resource__more svg {
  display: block;
  width: 1.25rem;
  height: 1.25rem;
}

/* =========================================================
   12 · FAQ
   ========================================================= */
.p-growth-faq {
  inline-size: 100%;
  margin-top: 2.5rem;
  border-top: 0.0625rem solid var(--growth-border);
}

.p-growth-faq details {
  border-bottom: 0.0625rem solid var(--growth-border);
  background: var(--growth-paper-strong);
}

.p-growth-faq summary {
  position: relative;
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  align-items: center;
  gap: 1rem;
  min-height: 4.75rem;
  padding: 1rem 4rem 1rem 1.5rem;
  color: var(--growth-navy);
  font-size: 1.05rem;
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}

.p-growth-faq summary::-webkit-details-marker {
  display: none;
}

.p-growth-faq summary > b {
  display: grid;
  place-items: center;
  width: 2rem;
  height: 2rem;
  color: var(--growth-text);
  font-size: 1.15rem;
  font-weight: 800;
}

.p-growth-faq summary::after {
  position: absolute;
  inset: 50% 1.5rem auto auto;
  color: var(--growth-text);
  font-size: 1.75rem;
  font-weight: 400;
  content: "+";
  transform: translateY(-50%);
}

.p-growth-faq details[open] summary::after {
  content: "−";
}

.p-growth-faq summary:hover {
  background: var(--growth-soft);
}

.p-growth-faq details > p {
  padding: 0 4rem 1.5rem 4.5rem;
  color: var(--growth-ink-soft);
  line-height: 1.8;
}

/* =========================================================
   13 · 無料相談
   ========================================================= */
.p-growth-closing {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem;
  align-items: start;
  margin-top: 2.5rem;
}

.p-growth-closing > div {
  min-width: 0;
  padding: 1.75rem;
  background: var(--growth-paper-strong);
  border: 0.125rem solid var(--growth-border);
  clip-path: polygon(var(--growth-cut-md) 0, 100% 0, 100% calc(100% - var(--growth-cut-md)), calc(100% - var(--growth-cut-md)) 100%, 0 100%, 0 var(--growth-cut-md));
}

.p-growth-closing__head {
  display: grid;
  grid-template-columns: 4.5rem minmax(0, 1fr);
  align-items: center;
  gap: 1.25rem;
}

.p-growth-closing__head h3 {
  color: var(--growth-navy);
  font-size: 1.35rem;
  line-height: 1.4;
}

.p-growth-closing__tag {
  justify-self: start;
  margin-top: 1.25rem;
  padding: 0.5rem 1.25rem;
  background: var(--growth-strong);
  color: var(--growth-on-strong);
  font-size: 0.9rem;
  font-weight: 800;
  clip-path: polygon(0 0, 100% 0, calc(100% - 0.5rem) 100%, 0 100%);
}

.p-growth-closing__dates {
  margin-top: 1rem;
}

.p-growth-closing__dates > div {
  display: grid;
  grid-template-columns: 9rem minmax(0, 1fr);
  align-items: center;
  gap: 1rem;
  padding: 1.125rem 1.25rem;
  background: var(--growth-soft);
}

.p-growth-closing__dates > div + div {
  margin-top: 0.75rem;
}

.p-growth-closing__dates dt {
  color: var(--growth-navy);
  font-size: 1rem;
  font-weight: 800;
}

.p-growth-closing__dates dd {
  color: var(--growth-navy);
  font-size: clamp(1.5rem, 2.4vw, 2rem);
  font-weight: 800;
  line-height: 1.2;
  font-variant-numeric: tabular-nums;
}

.p-growth-closing__dates dd small {
  font-size: 0.6em;
}

.p-growth-closing__note {
  margin-top: 1rem;
  color: var(--growth-muted);
  font-size: 0.85rem;
}

.p-growth-closing__consult {
  text-align: center;
}

.p-growth-closing__consult > p:first-child {
  color: var(--growth-text);
  font-size: 1rem;
  font-weight: 800;
}

.p-growth-closing__consult h3 {
  margin-top: 0.5rem;
  color: var(--growth-navy);
  font-size: clamp(1.75rem, 3vw, 2.35rem);
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: -0.03em;
}

.p-growth-closing__consult > p + p {
  margin-top: 0.75rem;
  color: var(--growth-ink-soft);
  font-size: 0.95rem;
}

.p-growth-merits {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 1.5rem;
}

.p-growth-merits li {
  display: grid;
  justify-items: center;
  gap: 0.625rem;
  min-width: 0;
  color: var(--growth-navy);
  font-size: 0.85rem;
  font-weight: 800;
}

.p-growth-closing__actions {
  display: grid;
  gap: 0.875rem;
  margin-top: 1.75rem;
}

/* --- component adjustments --- */
.p-growth .p-growth-icon {
  color: var(--growth-text);
  font-size: 0;
}

.p-growth .p-growth-icon svg {
  stroke-width: 1.6;
}

.p-growth .p-growth-icon--lg svg {
  stroke-width: 1.4;
}

/* the arrow clip-path would slice an outlined border open */

.p-growth-split > .p-growth-panel,
.p-growth-amount > .p-growth-panel,
.p-growth-panel--flush {
  margin-top: 0;
}

.p-growth-steps--three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}




/* =========================================================
   Responsive
   ========================================================= */
@media (max-width: 67.5rem) {
  .p-growth-overview,
  .p-growth-split,
  .p-growth-amount,
  .p-growth-proof,
  .p-growth-closing { grid-template-columns: minmax(0, 1fr); }
  .p-growth-headline-stat { min-height: 21rem; }
  .p-growth-checks,
  .p-growth-steps,
  .p-growth-steps--three,
  .p-growth-expenses,
  .p-growth-track-cases { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .p-growth-cases > article { grid-template-columns: 7rem minmax(0, 1fr); }
  .p-growth-cases dl { grid-column: 1 / -1; border-left: 0; border-top: 0.0625rem solid var(--growth-rule); }
  .p-growth-split > .p-growth-panel + .p-growth-panel { margin-top: 2rem; }
}

@media (max-width: 50rem) {
  .p-growth-req,
  .p-growth-record,
  .p-growth-track-cases,
  .p-growth-resources,
  .p-growth-tally { grid-template-columns: minmax(0, 1fr); }
  .p-growth-targets,
  .p-growth-subreq { grid-template-columns: minmax(0, 1fr); }
  .p-growth-target + .p-growth-target,
  .p-growth-subreq > article + article { border-left: 0; border-top: 0.0625rem solid var(--growth-rule-strong); }
  .p-growth-target { padding-block: 1.5rem; }
  .p-growth-subreq > article { padding-block: 1.25rem; }
  .p-growth-headline-stat::after { top: 0.75rem; right: 0.75rem; width: 4rem; height: 2.5rem; }
  .p-growth-ministat { grid-template-columns: 5rem minmax(0, 1fr); gap: 1.125rem; padding: 1.75rem 1.5rem; }
  .p-growth-ministat .p-growth-icon { width: 5rem; height: 5rem; }
  .p-growth-inline-cta { grid-template-columns: minmax(0, 1fr); }
  .p-growth-cases > article { grid-template-columns: minmax(0, 1fr); }
  .p-growth-cases__index { grid-auto-flow: column; justify-content: center; gap: 1rem; padding-block: 1rem; }
  .p-growth-facts > div { grid-template-columns: 3rem minmax(0, 1fr); row-gap: 0.35rem; }
  .p-growth-facts dt { grid-column: 2; }
  .p-growth-facts dd { grid-column: 2; }
}

@media (max-width: 37.5rem) {
  :root { --growth-section: 4rem; }
  .p-growth-checks,
  .p-growth-steps,
  .p-growth-steps--three,
  .p-growth-expenses,
  .p-growth-merits { grid-template-columns: minmax(0, 1fr); }
  .p-growth-panel { margin-top: 2.75rem; }
  .p-growth-panel__label { left: 1rem; padding: 0.55rem 1.125rem; font-size: 0.9rem; white-space: normal; }
  .p-growth-panel__body { padding: 2.5rem 1rem 1.25rem; }
  .p-growth-notebar { grid-template-columns: 2.25rem minmax(0, 1fr); gap: 0.875rem; padding: 1rem 1.125rem; }
  .p-growth-notebar p { font-size: 0.9rem; }
  .p-growth .p-growth-icon { width: 2.25rem; height: 2.25rem; }
  .p-growth .p-growth-icon--lg { width: 3.5rem; height: 3.5rem; }
  .p-growth-headline-stat { min-height: 17rem; padding: 1.75rem 1.25rem; }
  .p-growth-headline-stat > p:first-child,
  .p-growth-headline-stat__copy { font-size: 1.15rem; }
  .p-growth-ministat { padding: 1.5rem 1.125rem; }
  .p-growth-spec > div { grid-template-columns: minmax(0, 1fr); gap: 0.4rem; min-height: 0; padding: 1.25rem; }
  .p-growth-example { padding: 2.5rem 1.125rem 1.25rem; }
  .p-growth-expenses li,
  .p-growth-cases__body,
  .p-growth-cases dl,
  .p-growth-proof__list,
  .p-growth-proof__badge,
  .p-growth-closing > div { padding: 1.25rem; }
  .p-growth-cases dl > div { grid-template-columns: minmax(0, 1fr); gap: 0.35rem; }
  .p-growth-cases dt { justify-self: start; padding-inline: 0.75rem; }
  .p-growth-proof__badge { grid-template-columns: 3.5rem minmax(0, 1fr); gap: 1rem; }
  .p-growth-inline-cta { padding: 1.25rem; }
  .p-growth-closing__head { grid-template-columns: 3.5rem minmax(0, 1fr); gap: 1rem; }
  .p-growth-closing__head h3 { font-size: 1.1rem; }
  .p-growth-closing__dates > div { grid-template-columns: minmax(0, 1fr); gap: 0.35rem; padding: 1rem; }
  .p-growth-merits li { grid-template-columns: 3.5rem minmax(0, 1fr); justify-items: start; align-items: center; gap: 1rem; }
  .p-growth-track-cases img { height: 11rem; }
  .p-growth-faq summary { grid-template-columns: 1.5rem minmax(0, 1fr); gap: 0.75rem; padding: 1rem 3rem 1rem 1rem; font-size: 0.95rem; }
  .p-growth-faq summary::after { right: 1rem; }
  .p-growth-faq details > p { padding: 0 1rem 1.25rem 3.25rem; }
}

@media (max-width: 37.5rem) {
  .p-growth .c-btn { padding-inline: 16px; font-size: .95rem; }
  .p-growth .c-btn svg { inline-size: 1.2em; block-size: 1.2em; }
}

@media (prefers-reduced-motion: reduce) {
  .p-growth *,
  .p-growth *::before,
  .p-growth *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}
