@charset "UTF-8";
:root{
  --article-ink:#17191d;
  --article-muted:#62666e;
  --article-line:rgba(20,22,26,.13);
  --article-serif:"Noto Serif JP","Yu Mincho",serif;
  --article-sans:"Noto Sans JP","Yu Gothic",sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html,body{width:100%;min-width:320px;min-height:100%}
body{
  min-height:100vh;
  margin:0;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  color:var(--article-ink);
  background:#fff;
  font-family:var(--article-sans);
}
body>#header{flex:0 0 auto}
body>main{width:100%;flex:1 0 auto}
body>#footer{position:relative;z-index:10;width:100%;max-width:none;margin-top:auto;flex:0 0 auto}
img{display:block;max-width:100%}

.article-page{
  width:min(100%,1620px);
  max-width:1620px;
  margin-right:auto;
  margin-left:0;
  overflow:hidden;
  background:#fff;
}
.article-inner{width:100%;padding-inline:clamp(18px,3.2vw,52px)}
.article-section{padding:66px 0 48px}
.article-section-title{
  position:relative;
  margin:0 0 48px;
  color:var(--article-ink);
  font-family:var(--article-serif);
  font-size:30px;
  font-weight:600;
  line-height:1.5;
  letter-spacing:.05em;
  text-align:center;
}
.article-section-title::after{
  content:"";
  position:absolute;
  bottom:-14px;
  left:50%;
  width:48px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,#111317,#a9adb4);
  transform:translateX(-50%);
}
.article-hero{min-height:560px;border-bottom:1px solid var(--article-line);background:#fff}
.article-hero__inner{
  min-height:560px;
  padding-top:52px;
  padding-bottom:52px;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px,.92fr);
  align-items:center;
  gap:clamp(30px,5vw,82px);
}
.article-hero__content{min-width:0;max-width:690px}
.article-kicker{margin:0 0 18px;padding-left:14px;border-left:3px solid #1b1d21;color:#565a62;font-size:12px;font-weight:700;line-height:1.5;letter-spacing:.16em}
.article-hero__logo{width:min(100%,410px);max-height:136px;margin:0 0 24px;object-fit:contain;object-position:left center}
.article-hero h1{margin:0;color:#14161a;font-family:var(--article-serif);font-size:clamp(34px,3.1vw,50px);font-weight:500;line-height:1.52;letter-spacing:.035em}
.article-hero h1 span{color:inherit}
.article-hero__text{max-width:680px;margin:22px 0 0;color:#53575f;font-size:15px;line-height:2}
.article-hero__visual{position:relative;overflow:hidden;border:1px solid var(--article-line);border-radius:28px;background:#fff;box-shadow:0 28px 70px rgba(25,27,31,.15)}
.article-hero__visual::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(20,22,26,.04);pointer-events:none}
.article-hero__visual img{width:100%;aspect-ratio:1.34/1;object-fit:cover;object-position:center}
.article-benefits{padding:22px 0 28px;border-bottom:1px solid var(--article-line);background:#fff}
.article-benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.article-benefit-grid article{min-height:124px;padding:18px 24px;display:flex;align-items:center;gap:22px;border:1px solid var(--article-line);border-radius:16px;background:#fff;box-shadow:0 12px 30px rgba(20,22,26,.05)}
.article-benefit-grid img{width:82px;height:82px;flex:0 0 82px;object-fit:contain}
.article-benefit-grid h2{margin:0 0 6px;font-family:var(--article-serif);font-size:18px}
.article-benefit-grid p{margin:0;color:#666a72;font-size:12px;line-height:1.7}
.article-problem-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.article-problem-card{min-height:150px;padding:24px;display:flex;align-items:center;gap:20px;border:1px solid var(--article-line);border-radius:14px;background:#fff;box-shadow:0 12px 32px rgba(20,22,26,.045)}
.article-problem-card img{width:68px;height:68px;flex:0 0 68px;object-fit:contain}
.article-problem-card h3{margin:0 0 9px;font-family:var(--article-serif);font-size:18px;line-height:1.55}
.article-problem-card p{margin:0;color:var(--article-muted);font-size:13px;line-height:1.8}
.article-comparison-grid{max-width:1220px;margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);align-items:stretch;gap:24px}
.article-comparison-card{min-width:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--article-line);border-radius:16px;background:#fff;box-shadow:0 12px 32px rgba(20,22,26,.045)}
.article-comparison-image{position:relative;margin:28px 28px 0;overflow:hidden;border-radius:12px;background:#f2f2ef}
.article-comparison-label,.article-comparison-image>span{position:absolute;top:8px;left:8px;z-index:4;padding:8px 18px;border-radius:999px;color:#fff;background:#3a3d43;box-shadow:0 4px 12px rgba(20,22,26,.2);font-size:15px;font-weight:700;line-height:1.2}
.article-after .article-comparison-label,.article-after .article-comparison-image>span{background:linear-gradient(135deg,#111317,#4e5259)}
.article-comparison-image>img{width:100%;aspect-ratio:16/9;object-fit:cover}
.article-before .article-comparison-image>img{filter:grayscale(1) contrast(1.12) brightness(.95)}
.article-after .article-comparison-image>img{filter:none;opacity:1;mix-blend-mode:normal}
.article-comparison-content{flex:1;padding:24px 30px 30px}
.article-comparison-content h3{min-height:3.1em;margin:0 0 16px;font-family:var(--article-serif);font-size:20px;line-height:1.55}
.article-comparison-content ul{padding:0;margin:0;list-style:none}
.article-comparison-content li{position:relative;margin-top:12px;padding-left:42px;font-size:15px;line-height:1.7}
.article-comparison-content li:first-child{margin-top:0}
.article-comparison-content li::before{content:"×";position:absolute;top:.08em;left:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;background:#70747c;font-family:Arial,sans-serif;font-size:20px;font-weight:700;line-height:1}
.article-after .article-comparison-content li::before{content:"✓";background:#17191d;font-size:18px}
.article-comparison-arrow{position:relative;display:flex;align-items:center;justify-content:center;font-size:0}
.article-comparison-arrow::before{content:"";width:44px;height:6px;border-radius:999px;background:#17191d}
.article-comparison-arrow::after{content:"";width:17px;height:17px;margin-left:-18px;border-top:6px solid #17191d;border-right:6px solid #17191d;transform:rotate(45deg)}
.article-after-result{position:absolute;left:clamp(12px,1.2vw,18px);bottom:clamp(12px,1.2vw,18px);z-index:4;width:clamp(126px,10vw,158px);padding:13px 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(20,22,26,.16);border-radius:14px;color:var(--article-ink);background:rgba(255,255,255,.94);box-shadow:0 10px 24px rgba(20,22,26,.15);text-align:center;pointer-events:none}
.article-after-result p,.article-after-result small{margin:0;line-height:1.2}
.article-after-result p{font-family:var(--article-serif);font-size:10px;font-weight:700}
.article-after-result strong{display:block;margin:3px 0 0;font-family:var(--article-serif);font-size:clamp(15px,1.4vw,22px);line-height:1.2;letter-spacing:.02em;white-space:nowrap}
.article-after-result small{margin-top:5px;font-size:9px;font-weight:600;white-space:nowrap}
.article-feature-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid var(--article-line);border-radius:18px;background:var(--article-line)}
.article-feature-grid article{min-height:245px;padding:28px 18px;background:#fff;text-align:center}
.article-feature-grid img{width:76px;height:76px;margin:0 auto 22px;object-fit:contain}
.article-feature-grid h3{min-height:2.9em;margin:0 0 14px;font-family:var(--article-serif);font-size:17px;line-height:1.45}
.article-feature-grid p{margin:0;color:var(--article-muted);font-size:13px;line-height:1.8}
.article-step-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.article-step-card{display:grid;grid-template-columns:64px minmax(0,1fr);grid-template-rows:auto 1fr;overflow:hidden;border:1px solid var(--article-line);border-radius:12px;background:#fff;box-shadow:0 12px 32px rgba(20,22,26,.045)}
.article-step-card>span{grid-column:1;grid-row:1;width:40px;height:40px;margin:14px 10px 14px 14px;display:flex;align-items:center;justify-content:center;border-radius:6px;color:#fff;background:linear-gradient(135deg,#111317,#4e5259);box-shadow:0 5px 15px rgba(20,22,26,.2);font-size:18px;font-weight:700}
.article-step-card>div{grid-column:2;grid-row:1;min-width:0;min-height:104px;padding:15px 10px 12px 4px}
.article-step-card h3{margin:0 0 6px;font-family:var(--article-serif);font-size:17px;line-height:1.5}
.article-step-card p{margin:0;color:var(--article-muted);font-size:14px;line-height:1.65}
.article-step-card img{grid-column:1/-1;grid-row:2;width:100%;aspect-ratio:1.55/1;object-fit:cover;filter:grayscale(1) saturate(0) contrast(1.12) brightness(.95)}
.article-scene-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.article-scene-grid article{overflow:hidden;border:1px solid var(--article-line);border-radius:12px;background:#fff;box-shadow:0 12px 32px rgba(20,22,26,.045)}
.article-scene-grid img{width:100%;aspect-ratio:1.65/1;object-fit:cover;filter:none}
.article-scene-grid article>div{padding:18px 22px 22px}
.article-scene-grid h3{margin:0 0 10px;font-family:var(--article-serif);font-size:19px}
.article-scene-grid ul{padding-left:20px;margin:0;color:#3f4248;font-size:15px;line-height:1.8}
.article-strength-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid var(--article-line);border-radius:16px;background:var(--article-line)}
.article-strength-grid article{min-height:136px;padding:22px;display:flex;align-items:flex-start;gap:17px;background:#fff}
.article-strength-grid img{width:58px;height:58px;flex:0 0 58px;object-fit:contain}
.article-strength-grid h3{margin:0 0 8px;font-family:var(--article-serif);font-size:17px;line-height:1.55}
.article-strength-grid p{margin:0;color:var(--article-muted);font-size:14px;line-height:1.8}
.article-cta{position:relative;overflow:hidden;padding:58px 0 64px;color:#fff;background:radial-gradient(circle at 78% 18%,rgba(255,255,255,.12),transparent 25%),linear-gradient(135deg,#0d0f12 0%,#282b31 62%,#111317 100%);text-align:center}
.article-cta::before{content:"";position:absolute;inset:0;background:linear-gradient(112deg,transparent 0 46%,rgba(255,255,255,.035) 46% 54%,transparent 54%);pointer-events:none}
.article-cta .article-inner{position:relative;z-index:1}
.article-cta h2{margin:0 0 12px;font-family:var(--article-serif);font-size:30px;font-weight:500;line-height:1.6}
.article-cta p{margin:0 0 24px;color:rgba(255,255,255,.74);font-size:14px;line-height:1.8}
.article-cta a{width:min(100%,520px);min-height:64px;margin-inline:auto;padding-inline:30px;display:flex;align-items:center;justify-content:center;gap:60px;border-radius:999px;color:#15171b;background:linear-gradient(135deg,#fff,#dfe1e5);box-shadow:0 14px 34px rgba(0,0,0,.3);text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}
.article-cta a:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(0,0,0,.35)}
.article-cta a span{font-family:var(--article-serif);font-size:23px}
.article-cta a strong{font-size:27px}
@media screen and (max-width:1036px){
  .article-page{width:100%;max-width:none;margin:0;padding-top:72px}
  .article-section{padding-top:54px;padding-bottom:42px}
  .article-section-title{margin-bottom:40px;font-size:25px}
  .article-hero{min-height:auto}
  .article-hero__inner{min-height:auto;padding:32px clamp(18px,5vw,42px) 36px;grid-template-columns:minmax(0,1fr) minmax(300px,.85fr);gap:28px}
  .article-hero__logo{width:min(100%,330px);margin-bottom:18px}
  .article-hero h1{font-size:clamp(26px,4.2vw,38px);line-height:1.5}
  .article-hero__text{font-size:13px;line-height:1.85}
  .article-hero__visual img{aspect-ratio:1.2/1}
  .article-benefit-grid article{min-width:0;padding:16px;gap:12px}
  .article-benefit-grid img{width:64px;height:64px;flex-basis:64px}
  .article-problem-grid,.article-step-grid,.article-strength-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .article-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .article-feature-grid article{min-height:220px}
  .article-comparison-grid{grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);gap:14px}
  .article-comparison-image{margin:18px 18px 0}
  .article-comparison-content{padding:20px 20px 24px}
}
@media screen and (max-width:767px){
  .article-inner{padding-inline:18px}
  .article-section{padding-top:44px;padding-bottom:34px}
  .article-section-title{margin-bottom:36px;font-size:23px}
  .article-hero__inner{padding:24px 18px 30px;display:flex;flex-direction:column;align-items:stretch;gap:24px}
  .article-kicker{margin-bottom:13px;padding-left:10px;font-size:9px;white-space:normal}
  .article-hero__logo{width:min(100%,280px);max-height:94px;margin-bottom:15px}
  .article-hero h1{font-size:clamp(24px,7vw,31px);line-height:1.52}
  .article-hero__text{margin-top:14px;font-size:12px;line-height:1.8}
  .article-hero__text br{display:none}
  .article-hero__visual{border-radius:18px;box-shadow:0 18px 42px rgba(25,27,31,.14)}
  .article-hero__visual img{aspect-ratio:1.45/1}
  .article-benefits{padding:18px 0 22px}
  .article-benefit-grid,.article-problem-grid,.article-step-grid,.article-scene-grid{grid-template-columns:1fr}
  .article-benefit-grid{gap:10px}
  .article-benefit-grid article{min-height:92px}
  .article-benefit-grid img{width:62px;height:62px;flex-basis:62px}
  .article-problem-grid{gap:12px}
  .article-problem-card{min-height:124px;padding:20px}
  .article-comparison-grid{grid-template-columns:1fr;gap:16px;max-width:560px}
  .article-comparison-arrow{min-height:34px;transform:rotate(90deg)}
  .article-comparison-image{margin:14px 14px 0}
  .article-comparison-content{padding:18px 18px 22px}
  .article-comparison-content h3{min-height:0;font-size:18px}
  .article-comparison-content li{padding-left:36px;font-size:14px}
  .article-comparison-content li::before{width:25px;height:25px}
  .article-after-result{width:126px;padding:10px 12px}
  .article-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .article-feature-grid article{min-height:230px;padding:24px 14px}
  .article-feature-grid h3{font-size:16px}
  .article-step-card>div{min-height:92px}
  .article-strength-grid{grid-template-columns:1fr}
  .article-strength-grid article{min-height:118px}
  .article-cta{padding:44px 0 48px}
  .article-cta h2{font-size:24px}
  .article-cta p{font-size:13px}
  .article-cta a{width:min(100%,360px);min-height:58px;gap:42px}
  .article-cta a span{font-size:19px}
}

@media screen and (max-width:360px){
  .article-feature-grid{grid-template-columns:1fr}
  .article-feature-grid article{min-height:0}
  .article-hero h1{letter-spacing:.015em}
}
.article-hero__inner{width:min(calc(100% - 104px),1420px);margin-inline:auto}
.article-hero,.article-hero__inner{min-height:620px}
.article-hero__inner{padding-top:0;padding-bottom:0;grid-template-columns:minmax(0,56%) minmax(0,44%);gap:38px}
.article-hero__content{max-width:none}
.article-kicker{margin:0 0 12px;padding-left:0;border-left:0;font-family:var(--article-serif);font-size:clamp(16px,1.25vw,22px);letter-spacing:.13em}
.article-hero__logo{width:min(420px,78%);max-height:136px;margin:0 0 18px}
.article-hero h1{font-size:clamp(44px,4.1vw,62px);line-height:1.15;letter-spacing:.04em}
.article-hero__text{max-width:760px;margin-top:30px;font-family:var(--article-serif);font-size:clamp(15px,1.2vw,20px);line-height:2;color:var(--article-ink)}
.article-hero__visual{overflow:visible;border:0;border-radius:0;box-shadow:none;background:transparent;display:flex;align-items:center;justify-content:center}
.article-hero__visual::after{display:none}
.article-hero__visual img{width:100%;max-width:620px;max-height:480px;aspect-ratio:auto;object-fit:contain}
.article-hero__cta{width:min(100%,360px);min-height:58px;margin-top:24px;padding:12px 24px 12px 28px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-radius:999px;color:#fff;background:linear-gradient(100deg,#111317 0%,#4b5058 100%);box-shadow:0 10px 22px rgba(20,22,26,.20);font-size:16px;font-weight:700;line-height:1.4;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}
.article-hero__cta:hover,.article-hero__cta:focus-visible{transform:translateY(-2px);box-shadow:0 14px 28px rgba(20,22,26,.27)}
.article-hero__cta-arrow{flex:0 0 auto;font-size:22px;line-height:1}
@media(max-width:1100px) and (min-width:768px){.article-hero__inner{width:min(calc(100% - 60px),1020px);gap:28px}}
@media(max-width:767px){
  .article-hero__inner{width:min(calc(100% - 36px),720px);margin-inline:auto}
  .article-hero,.article-hero__inner{min-height:0}
  .article-hero__inner{display:flex;flex-direction:column;padding:24px 0 28px;gap:0}
  .article-kicker{margin-bottom:10px;font-size:12px}
  .article-hero__logo{width:min(310px,82vw);margin:0 0 14px}
  .article-hero h1{font-size:clamp(31px,8.6vw,42px);line-height:1.15}
  .article-hero__text{width:100%;margin-top:22px;font-size:13px;line-height:1.9}
  .article-hero__cta{width:min(100%,330px);min-height:54px;margin-top:20px;padding:11px 20px 11px 24px;font-size:14px}
  .article-hero__visual,.article-hero__visual img{display:none!important}
}
@media screen and (min-width:768px){
  .article-kicker{
    margin:0 0 12px!important;
    padding:0!important;
    border:0!important;
    font-family:var(--article-serif)!important;
    font-size:clamp(16px,1.25vw,22px)!important;
    font-weight:400!important;
    line-height:normal!important;
    letter-spacing:.13em!important;
  }
  .article-kicker::before,.article-kicker::after{display:none!important;content:none!important;}
}
@media screen and (max-width:767px){
  .article-kicker{
    margin:0 0 10px!important;
    padding:0!important;
    border:0!important;
    font-size:12px!important;
    font-weight:600!important;
    line-height:1.4!important;
    letter-spacing:.08em!important;
  }
  .article-kicker::before,.article-kicker::after{display:none!important;content:none!important;}
}
@media screen and (min-width:768px){
  .article-hero__inner{align-items:stretch!important;}
  .article-hero__content{align-self:start!important;padding-top:128px!important;}
  .article-kicker{line-height:normal!important;}
  .article-hero__logo{height:136px!important;max-height:136px!important;object-fit:contain!important;object-position:left center!important;}
  .article-hero__visual{align-self:center!important;}
}
@media screen and (max-width:767px){
  .article-hero__content{padding-top:0!important;}
  .article-hero__logo{height:auto!important;max-height:none!important;}
}

/* =========================================================
   2026-08-31 | SERVICE HERO HEADING SIZE / MOBILE TOP OFFSET
   ========================================================= */
.article-hero h1{
  font-size:clamp(30px,5.6vw,40px)!important;
}
@media screen and (max-width:767px){
  .article-hero__content{
    padding-top:18px!important;
  }
}

/* =========================================================
   2026-09-01 | L.EVER FIXED BACKGROUND UNIFICATION
   TOP / SERVICES / FORMLINK compatible fixed backdrop
   ========================================================= */
html{background:#f7fbff;}
body{
  position:relative;
  isolation:isolate;
  min-height:100vh;
  background:transparent!important;
}
body::before,
body::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
}
body::before{
  z-index:-2;
  background-image:url("../img/top/top-page-background-v1.png");
  background-image:image-set(
    url("../img/top/top-page-background-v1.webp") type("image/webp"),
    url("../img/top/top-page-background-v1.png") type("image/png")
  );
  background-position:center center;
  background-size:cover;
  background-repeat:no-repeat;
  opacity:.78;
}
body::after{
  z-index:-1;
  background:linear-gradient(180deg,rgba(255,255,255,.24) 0%,rgba(248,252,255,.34) 52%,rgba(255,255,255,.46) 100%);
}
.article-page,
.article-hero,
.article-benefits,
.article-problems,
.article-comparison,
.article-features,
.article-steps,
.article-scenes,
.article-strengths{
  background:transparent!important;
}
.article-hero{
  border-bottom-color:rgba(20,22,26,.08);
}
.article-benefits{
  background:rgba(255,255,255,.34)!important;
}
@media(max-width:900px){
  body::before{background-position:72% center;opacity:.73;}
  body::after{background:linear-gradient(180deg,rgba(255,255,255,.32) 0%,rgba(248,252,255,.42) 52%,rgba(255,255,255,.54) 100%);}
}
@media(max-width:640px){body::before{background-position:84% center;opacity:.69;}}


/* =========================================================
   2026-09-04 | MOBILE HERO VISUAL — TREMO REFERENCE
   ---------------------------------------------------------
   TREMOのスマホHEROと同じ表示ルールに統一。
   ・本文の通常フロー内、CTA直前に配置
   ・画像全体を切らずに contain 表示
   ・高さ / 中央配置 / 余白をTREMO基準へ
   ・PC / tablet の既存ビジュアルには影響なし
   ========================================================= */
@media screen and (max-width:767px){
  .article-hero__visual-mobile.service-reveal-mobile-visual{
    position:relative!important;
    z-index:1!important;
    width:100%!important;
    height:clamp(180px,26svh,250px)!important;
    min-height:165px!important;
    margin:10px auto 6px!important;
    padding:0!important;
    display:flex!important;
    flex:0 1 auto!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:visible!important;
    pointer-events:none!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }

  .article-hero__visual-mobile.service-reveal-mobile-visual::before{
    content:""!important;
    position:absolute!important;
    right:8%!important;
    bottom:8%!important;
    left:8%!important;
    height:42%!important;
    border-radius:50%!important;
    background:radial-gradient(ellipse at center,rgba(23,25,29,.095),rgba(23,25,29,0) 70%)!important;
    filter:blur(22px)!important;
    pointer-events:none!important;
  }

  .article-hero__visual-mobile.service-reveal-mobile-visual img{
    position:relative!important;
    z-index:1!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:470px!important;
    max-height:none!important;
    margin:0!important;
    object-fit:contain!important;
    object-position:center!important;
    opacity:1!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    filter:drop-shadow(0 18px 22px rgba(23,25,29,.11))!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
  }
}

@media screen and (max-width:390px){
  .article-hero__visual-mobile.service-reveal-mobile-visual{
    height:clamp(165px,24svh,215px)!important;
    min-height:155px!important;
    margin-top:8px!important;
  }
}


/* =========================================================
   2026-09-12 | WHITE LABEL HERO — PC / SP BACKGROUND MATCH
   PC版でHERO越しに見えている共通背景をSP版HERO内へ同じ構成で再現。
   SPのレイアウトは変更しない。
   ========================================================= */
@media screen and (max-width:767px){
  .article-hero{
    position:relative!important;
    isolation:isolate!important;
    overflow:hidden!important;
    background:#f7fbff!important;
  }

  .article-hero::before{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:0!important;
    display:block!important;
    background-image:url("../img/top/top-page-background-v1.png")!important;
    background-image:image-set(
      url("../img/top/top-page-background-v1.webp") type("image/webp"),
      url("../img/top/top-page-background-v1.png") type("image/png")
    )!important;
    background-position:center center!important;
    background-size:cover!important;
    background-repeat:no-repeat!important;
    opacity:.78!important;
    pointer-events:none!important;
  }

  .article-hero::after{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:0!important;
    display:block!important;
    background:linear-gradient(
      180deg,
      rgba(255,255,255,.24) 0%,
      rgba(248,252,255,.34) 52%,
      rgba(255,255,255,.46) 100%
    )!important;
    pointer-events:none!important;
  }

  .article-hero__inner,
  .article-hero__content,
  .article-hero__visual-mobile{
    position:relative!important;
    z-index:1!important;
  }
}
