.new-case-section{position:absolute;top:3880px;left:0;width:100%;padding:86px 5% 110px;background:linear-gradient(180deg,#f4fbff 0%,#fff 100%);color:#123f76;z-index:8}
.new-case-inner{max-width:1491px;margin:0 auto}.new-case-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:30px}.new-case-eyebrow{margin:0 0 10px;color:#2384c7;font-weight:700;letter-spacing:.08em}.new-case-title{margin:0;font-size:clamp(30px,3vw,54px);line-height:1.2}.new-case-intro{margin:0;max-width:430px;line-height:1.8;font-weight:600}.new-case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.new-case-card{display:flex;flex-direction:column;background:#fff;border:1px solid #cfe8f7;border-radius:14px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 8px 22px rgba(25,104,157,.08);transition:transform .2s,box-shadow .2s}.new-case-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(25,104,157,.14)}.new-case-photo{height:190px;display:grid;grid-template-columns:1fr 1fr;background:#edf7fd}.new-case-photo img{width:100%;height:100%;object-fit:cover;display:block}.new-case-body{padding:20px 22px 22px}.new-case-meta{margin:0 0 8px;color:#5ca9d7;font-size:14px;font-weight:700}.new-case-card h3{margin:0 0 10px;font-size:clamp(18px,1.35vw,24px);line-height:1.45}.new-case-card p{margin:0;color:#344f6b;line-height:1.7;font-size:14px}.new-case-more{display:inline-block;margin-top:26px;color:#1778bb;font-weight:700;text-decoration:none}.new-case-more:after{content:' →'}.new-case-empty{padding:24px;border:1px dashed #9ecce7;border-radius:12px;background:#fff}.new-case-photos{position:relative}.new-case-photos button{position:absolute;top:50%;transform:translateY(-50%);border:0;border-radius:50%;width:30px;height:30px;background:rgba(255,255,255,.9);color:#145d99;cursor:pointer}.new-case-prev{left:8px}.new-case-next{right:8px}.new-case-counter{position:absolute;right:10px;bottom:8px;padding:3px 7px;border-radius:10px;background:rgba(18,63,118,.78);color:#fff;font-size:12px}@media(max-width:900px){.new-case-section{top:3350px;padding:64px 5% 80px}.new-case-heading{display:block}.new-case-intro{margin-top:14px}.new-case-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.new-case-section{top:3150px;padding:52px 5% 64px}.new-case-grid{grid-template-columns:1fr}.new-case-photo{height:210px}}

/* 既存サイトの施工事例ページを踏襲した暖色ベース */
.new-case-section{background:#fffaf0;color:#4a3828;padding:72px 4% 92px}
.new-case-inner{max-width:980px}
.new-case-heading{display:block;text-align:center;margin-bottom:28px}
.new-case-eyebrow{color:#e98b72;font-family:Georgia,serif;font-weight:400;letter-spacing:.08em;margin:0 0 8px}
.new-case-title{color:#4a3828;font-size:clamp(28px,3vw,42px);font-weight:700}
.new-case-intro{max-width:none;margin:12px 0 0;color:#6f5a46;font-size:14px;font-weight:400}
.new-case-grid{display:flex;justify-content:center;gap:20px}
.new-case-card{width:min(100%,300px);border:1px solid #ead8bd;border-radius:0;background:#fffaf0;box-shadow:0 4px 12px rgba(117,77,37,.08);color:#4a3828}
.new-case-photo{height:150px;background:#f2e7d6}
.new-case-body{padding:16px 14px 18px}
.new-case-meta{color:#e98b72;font-size:12px;font-weight:400}
.new-case-card h3{color:#4a3828;font-size:18px}
.new-case-card p{color:#6f5a46;font-size:13px;line-height:1.7}
.new-case-more{display:block;width:max-content;margin:26px auto 0;color:#e98b72;font-size:14px;font-weight:400}
.new-case-section{background:#fff!important}
.new-case-summary{margin-bottom:8px!important}.new-case-facts{margin:12px 0 0;border-top:1px solid #ead8bd}.new-case-facts div{display:grid;grid-template-columns:62px 1fr;gap:5px;padding:6px 0;border-bottom:1px solid #ead8bd}.new-case-facts dt,.new-case-facts dd{font-size:11px!important;line-height:1.5}.new-case-facts dt{color:#8d7563}.new-case-facts dd{margin:0;color:#4a3828}.new-case-body h3{margin-bottom:8px}
@media(max-width:560px){.new-case-grid{display:block}.new-case-card{margin-inline:auto}.new-case-section{padding-inline:16px}}

/* 後続の情報発信セクションを覆わないよう、施工事例を通常フローに戻す */
#cases.new-case-section{
  position:relative;
  top:auto;
  left:auto;
  margin-top:0;
}
@media(max-width:900px){#cases.new-case-section{top:auto}}
@media(max-width:560px){#cases.new-case-section{top:auto}}

/* 修繕事例セクション以降は白背景で統一 */
.symptoms-section,
.new-case-section{background:#fff!important}
.symptoms-section::before,
.symptoms-section::after{display:none!important;background:none!important}

/* 施工事例：指定の背景・見出し画像 */
.new-case-section{
  background-color:#fff!important;
  background-image:url("../images/cases-background.png")!important;
  background-position:center top!important;
  background-size:100% auto!important;
  background-repeat:no-repeat!important;
}
.new-case-heading{
  display:block!important;
  height:300px!important;
  margin:0 auto 24px!important;
  background:url("../images/cases-heading.png") center top / contain no-repeat!important;
}
.new-case-heading>*{visibility:hidden!important}
@media(max-width:560px){
  .new-case-heading{height:190px!important}
}

/* 施工事例見出しを初期サイズの1.1倍に拡大 */
#cases .new-case-inner{max-width:1491px}
#cases .new-case-heading{
  position:relative;
  height:330px!important;
  background-image:none!important;
  overflow:hidden;
}
#cases .new-case-heading::before,
#cases .new-case-heading::after{
  content:"";
  position:absolute;
  inset:0;
  background-image:url("../images/cases-heading.png");
  background-repeat:no-repeat;
  background-size:90% auto;
  background-position:left -170px;
  pointer-events:none;
}
#cases .new-case-heading::after{
  transform:none;
  background-position:150px -170px;
  clip-path:inset(0 0 0 60%);
}
#cases .new-case-heading::before{
  clip-path:inset(0 52% 0 0);
}



.new-case-photos{position:relative}.new-case-photo{position:relative;display:block;overflow:hidden}.new-case-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .25s}.new-case-slide.is-active{opacity:1}.new-case-prev,.new-case-next{z-index:2;border:1px solid #e98b72!important;color:#e98b72!important;background:#fffaf0!important}.new-case-counter{z-index:2;background:rgba(74,56,40,.75)!important}

/* B案：施工事例を白い直線額縁の中に配置 */
#cases .new-case-grid{position:relative;display:grid;grid-template-columns:minmax(0,7fr) minmax(240px,3fr);gap:18px;padding:28px;border:2px solid #123f76;background:#fff;box-shadow:inset 0 0 0 4px #e6f5fc,inset 0 0 0 6px #9ed5ef}
#cases .new-case-card{width:auto;min-width:0;border:1px solid #cfe8f7;border-radius:2px;background:#fff;box-shadow:none;overflow:visible}
#cases .new-case-card--hero{grid-row:1}
#cases .new-case-card--rail{grid-column:2}
#cases .new-case-card--rail .new-case-photo{height:112px}
#cases .new-case-card--rail .new-case-body{padding:12px 14px 14px}
#cases .new-case-card--rail .new-case-facts{display:none}
#cases .new-case-card--placeholder{min-height:150px;border:1px solid #123f76;background:#fff;box-shadow:none;pointer-events:none}
#cases .new-case-placeholder-surface{min-height:150px;background:#fff}
#cases .new-case-photos button{width:38px;height:38px;border:2px solid #e98b72!important;background:#fff!important;color:#e06f5b!important;font-size:24px;line-height:1}
#cases .new-case-card--hero .new-case-prev{left:-50px}
#cases .new-case-card--hero .new-case-next{right:-50px}
#cases .new-case-card--rail .new-case-prev,#cases .new-case-card--rail .new-case-next{display:none}
@media(max-width:900px){#cases .new-case-grid{padding:20px;grid-template-columns:1fr}#cases .new-case-card--rail{grid-column:1}#cases .new-case-card--rail .new-case-photo{height:150px}#cases .new-case-card--placeholder{min-height:120px}#cases .new-case-placeholder-surface{min-height:120px}#cases .new-case-card--hero .new-case-prev{left:-12px}#cases .new-case-card--hero .new-case-next{right:-12px}}
@media(max-width:560px){#cases .new-case-grid{padding:12px;border-width:2px;gap:14px}#cases .new-case-card--hero .new-case-prev{left:8px}#cases .new-case-card--hero .new-case-next{right:8px}}

/* Compact B layout: let the frame size itself to the card grid. */
#cases .new-case-grid{width:min(1180px,100%);margin-inline:auto;padding:20px;grid-template-columns:minmax(0,7fr) minmax(250px,3fr);gap:16px;border:1px solid #123f76;box-shadow:inset 0 0 0 2px #e6f5fc,inset 0 0 0 3px #9ed5ef}
#cases .new-case-card--placeholder{min-height:0;height:88px}
#cases .new-case-placeholder-surface{min-height:0;height:100%}
#cases .new-case-card--rail .new-case-photo{height:82px}
#cases .new-case-card--rail .new-case-body{padding:8px 10px}
@media(max-width:900px){#cases .new-case-grid{width:100%;padding:16px;grid-template-columns:1fr;gap:12px}#cases .new-case-card--placeholder{height:88px}#cases .new-case-card--rail .new-case-photo{height:120px}}
@media(max-width:560px){#cases .new-case-grid{padding:12px;gap:10px}}

/* Simple equal-card layout */
#cases .new-case-grid{width:min(1400px,100%);padding:24px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
#cases .new-case-photo{height:240px}
#cases .new-case-grid{margin-top:-100px}
#cases.new-case-section{position:absolute;top:3800px;left:0;margin-top:0}
#cases .new-case-grid{margin-top:-100px}
#cases{position:relative}
#cases .case-feature-arrow{position:absolute;top:58%;z-index:3;width:42px;height:42px;border:1px solid #f28b72;border-radius:50%;background:#fff;color:#ef765b;font-size:24px;line-height:1;cursor:pointer}
#cases .case-feature-prev{left:1.2%}
#cases .case-feature-next{right:1.2%}
@media(max-width:900px){#cases .case-feature-arrow{top:auto;bottom:34px}.new-case-section .case-feature-prev{left:6%}.new-case-section .case-feature-next{right:6%}}
#cases .new-case-body{padding:22px 24px 24px}
#cases .new-case-card--hero,#cases .new-case-card--rail{grid-column:auto;grid-row:auto}
#cases .new-case-card--placeholder{height:auto;min-height:0;border:1px solid #123f76}
#cases .new-case-placeholder-surface{height:100%;min-height:0}
#cases .new-case-card--rail .new-case-photo,#cases .new-case-card--rail .new-case-body{height:auto;padding:20px 22px 22px}
#cases .new-case-card--hero .new-case-prev{left:8px}
#cases .new-case-card--hero .new-case-next{right:8px}
#cases .new-case-card--rail .new-case-prev,#cases .new-case-card--rail .new-case-next{display:block}
@media(max-width:900px){#cases .new-case-grid{width:100%;grid-template-columns:1fr;padding:18px}.new-case-card--placeholder{min-height:220px!important}#cases .new-case-photo{height:220px}}

/* 情報発信は施工事例の表示領域の直後に配置（正本チェックポイントは変更しない） */
#information.information-hub{
  position:relative;
  z-index:1;
  margin-top:430px;
  box-shadow:none;
  isolation:isolate;
}
#information.information-hub::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:-430px;
  height:430px;
  background:#f5fbff;
  z-index:0;
  pointer-events:none;
}
#cases.new-case-section{z-index:8 !important}
body{background:#f5fbff !important}
html,body{overflow-x:hidden}
.stage{left:0;right:0}
@media(max-width:900px){#information.information-hub{margin-top:230px}#information.information-hub::before{top:-230px;height:230px}}
@media(max-width:560px){#information.information-hub{margin-top:90px}#information.information-hub::before{top:-90px;height:90px}}

/* 施工事例セクションが情報発信へ重なる領域の背景色のみ統一 */
#cases.new-case-section{background-color:#f5fbff !important}

/* スマホでは固定座標・負の余白を解除し、施工事例を通常フローで表示 */
@media(max-width:700px){
  #cases.new-case-section{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:28px 14px 44px!important;
    overflow:visible!important;
  }
  #cases .new-case-inner{max-width:none!important;width:100%!important}
  #cases .new-case-heading{
    height:150px!important;
    margin:0 0 18px!important;
    background-size:contain!important;
    background-position:center top!important;
  }
  #cases .new-case-heading::before,#cases .new-case-heading::after{display:none!important}
  #cases .new-case-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:10px!important;
    gap:14px!important;
  }
  #cases .new-case-card--hero,#cases .new-case-card--rail{grid-column:auto!important;grid-row:auto!important}
  #cases .new-case-card--placeholder{height:auto!important;min-height:0!important}
  #cases .new-case-photo{height:170px!important}
  #cases .new-case-body{padding:16px!important}
  #cases .case-feature-arrow{top:auto!important;bottom:12px!important}
  #information.information-hub{margin-top:0!important}
  #information.information-hub::before{display:none!important}
}

/* Mobile flow reset: one coherent layout for 390–768px. */
@media (max-width:768px){
  html,body{width:100%;max-width:100%;overflow-x:hidden}
  .stage{position:relative!important;top:auto!important;left:auto!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:76px 16px 36px!important;overflow:visible!important;clip-path:none!important}
  .stage>.layer,.stage>.handwritten{display:none!important}
  .stage>.hero-kicker,.stage>.hero-title,.stage>.hero-sub,.stage>.hero-ctas-strip,.stage>.fact-photo-only,.stage>.fact-area-only,.stage>.contact-heading,.stage>.contact-divider,.stage>.contact-lead,.stage>.cards-strip{position:static!important;top:auto!important;left:auto!important;right:auto!important;width:100%!important;height:auto!important;min-height:0!important;margin:0 auto 18px!important;transform:none!important}
  .stage>.hero-kicker{max-width:360px}.stage>.hero-title{max-width:620px}.stage>.hero-sub{max-width:620px}
  .stage>.hero-ctas-strip{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important}
  .stage>.hero-ctas-strip a{display:block!important;width:100%!important;min-width:0!important}
  .stage>.hero-ctas-strip img{display:block;width:100%;height:auto}
  .stage>.fact-photo-only,.stage>.fact-area-only{max-width:420px}
  .stage>.contact-lead img{display:block;width:100%;height:auto}
  .stage>.cards-strip{display:grid!important;grid-template-columns:1fr!important;gap:14px!important}
  .belief-section,.belief-card1,.belief-card2,.belief-card3,.belief-lead,.symptoms-section{position:relative!important;top:auto!important;left:auto!important;right:auto!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;transform:none!important}
  .belief-section{display:block!important;padding:24px 16px!important}
  .belief-card1,.belief-card2,.belief-card3,.belief-lead{padding:0!important;margin:18px 0!important}
  .symptoms-section{padding:36px 16px 44px!important}
  .symptoms-heading{display:block!important;margin:0 auto 24px!important;max-width:620px}
  .symptoms-grid{display:grid!important;grid-template-columns:1fr!important;gap:18px!important;width:100%!important;max-width:620px!important;margin:0 auto!important}
  .symptom-card{position:relative!important;top:auto!important;left:auto!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;transform:none!important}
  .symptom-card .symptom-photo{height:auto!important;aspect-ratio:16/9!important}
  #cases.new-case-section{position:relative!important;top:auto!important;left:auto!important;right:auto!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:38px 16px 48px!important;overflow:visible!important}
  #cases .new-case-inner{width:100%!important;max-width:620px!important;margin:0 auto!important}
  #cases .new-case-heading{height:auto!important;min-height:0!important;margin:0 0 22px!important;background:none!important;overflow:visible!important}
  #cases .new-case-heading>*{visibility:visible!important}
  #cases .new-case-heading::before,#cases .new-case-heading::after{display:none!important}
  #cases .new-case-grid{display:grid!important;grid-template-columns:1fr!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;gap:18px!important;border:0!important;box-shadow:none!important}
  #cases .new-case-card,#cases .new-case-card--hero,#cases .new-case-card--rail{position:relative!important;grid-column:auto!important;grid-row:auto!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important}
  #cases .new-case-photo{height:auto!important;aspect-ratio:16/9!important}
  #cases .new-case-slide{position:static!important;display:none!important;opacity:1!important;transform:none!important}
  #cases .new-case-slide.is-active{display:block!important}
  #cases .new-case-photos button{position:static!important;transform:none!important;display:inline-grid!important;margin:8px 4px 0!important}
  #cases .new-case-body{padding:18px!important}
  #cases .new-case-card--placeholder{height:auto!important;min-height:0!important}
  #cases .case-feature-arrow{position:static!important;top:auto!important;bottom:auto!important;transform:none!important;margin:12px 4px 0!important}
  #information.information-hub{position:relative!important;top:auto!important;left:auto!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:42px 16px 54px!important}
  #information.information-hub::before{display:none!important}
  #information .information-hub__inner{width:100%!important;max-width:620px!important;margin:0 auto!important;padding:0!important}
  #information .information-hub__heading{display:block!important;margin:0 0 20px!important}
  #information .information-hub__tabs{display:grid!important;grid-template-columns:1fr 1fr!important;gap:0!important}
  #information .information-hub__card{padding:20px!important}
}


