/* 採用案02「庭へ続く和紙」。トップページだけに適用。 */
body.garden-background { position:relative;isolation:isolate;background:#f8f7f3; }
/* スクリプト停止時・動きを減らす設定では、この静かな紙肌を表示。 */
body.garden-background::before { content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(#faf9f626,#faf9f626),url('../images/backgrounds/washi-leaf.webp') center/cover; }
.garden-background :is(.hero.hero--collage,.fv--collage,.fv--collage .fv-proof,.fv-support,.fv-after,.founder-band.is-dark,main>.section,main>.numbers,.founder-body,.band-copy,.proof-band,.wave,.site-footer) { background:transparent; }
.garden-background :is(.price-sheet,.compare-table,.faq-list) { background:#ffffffb8; }
/* 実績写真3枚の外側に残っていた水色の矩形背景だけを取り除く。 */
.garden-background #numbers .band-photo { background:transparent; }
.garden-background :is(.collage-wave,.wave svg) { visibility:hidden; }
.garden-background .collage-scroll { color:var(--text-accent, var(--accent)); }
.garden-background .cta-final :is(h2,.cta-tel,.cta-tel strong,.cta-tel small) { color:#fff; }
.garden-background .cta-final p { color:#e2efe9; }
.garden-background .cta-final .btn-primary { color:#fff; }
.garden-background .cta-final { scroll-margin-top:var(--header-h); }
.flow-backdrop { position:fixed;inset:0;z-index:-1;pointer-events:none;background:#f8f6ef;overflow:hidden; }
.flow-backdrop[hidden] { display:none; }
.flow-layer { position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;filter:contrast(1.08) brightness(.98); }
.flow-layer::after { content:"";position:absolute;inset:0;background:linear-gradient(90deg,#faf9f30d,#faf9f33d 28%,#faf9f34d 60%,#faf9f314); }
.flow-layer--garden::after { background:linear-gradient(90deg,#faf9f345,#faf9f3ad 26%,#faf9f3ad 72%,#faf9f345); }
.flow-layer--leaf { filter:contrast(1.16) brightness(.97); }
/* モバイルは右側の葉を見せ、文字の背面だけを明るく保つ。 */
@media(max-width:900px) {
 body.garden-background::before { background-image:linear-gradient(#faf9f638,#faf9f638),url('../images/backgrounds/washi-leaf-mobile.webp'); }
 .flow-layer--leaf { background-position: center; }
 .flow-layer--garden { background-position: 78% center; }
 .flow-layer::after { background:linear-gradient(90deg,#faf9f31a,#faf9f338 55%,#faf9f30d); }
 .flow-layer--garden::after { background:linear-gradient(90deg,#faf9f370,#faf9f3a6 24%,#faf9f399 68%,#faf9f350); }
}
.garden-background main>.section { padding-block:clamp(48px,5vw,76px); }
.garden-background .sec-head { margin-bottom:clamp(24px,3vw,40px); }
.garden-background main :is(p,li,td,address) { font-family:var(--sans); }
.garden-background .collage-label { font-size:13px; }
.garden-background #support .service-index { padding-block:22px; }
.garden-background .founder-body { padding-block:clamp(36px,4vw,60px); }
@media(max-width:900px) {
 .garden-background .collage-photo--main { left:-4%;width:59%; }
 .garden-background .collage-photo--main img { object-position:20% 50%; }
 .garden-background .collage-label { font-size:12.5px; }
}
@media(prefers-reduced-motion:reduce) { .flow-backdrop { display:none; } }

/* 最終お問い合わせ: 下層ページと同じ緑の背景に白いピル。 */
.garden-background .cta-final .cta-final-act .btn-white {
  min-height: 60px;
  min-width: 280px;
  padding: 16px 25px;
  gap: 18px;
  background: #fff;
  color: var(--text-accent, var(--accent));
  border: 1px solid #fff;
  border-radius: 999px;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: .04em;
  box-shadow: 0 4px 12px rgba(28, 77, 55, .12);
  transition: background .2s, box-shadow .2s;
}
.garden-background .cta-final .cta-final-act .btn-white::after {
  content: "";
  width: 18px;
  height: 18px;
  flex: none;
  background: currentColor;
  mask: var(--ico-arrow) center / 18px 18px no-repeat;
}
.garden-background .cta-final .cta-final-act .btn-white:hover {
  background: #eef1ec;
  border-color: #eef1ec;
  box-shadow: 0 5px 14px rgba(28, 77, 55, .18);
}
.garden-background .cta-final .cta-final-act .btn-white:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 5px;
}
@media (max-width: 600px) {
  .garden-background .cta-final .cta-final-act { width: 100%; }
  .garden-background .cta-final .cta-final-act .btn-white { min-width: 0; width: 100%; padding-inline: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .garden-background .cta-final .cta-final-act .btn-white { transition: none; }
}
