/* =========================================================
   Shiraume Digital — home-mobile.css (v1 / 2026-09-28)
   Mobile-only redesign of the HOME page (index.html).
   Desktop untouched: everything below is inside max-width:768px,
   except the m-only / pc-only helpers.
   ========================================================= */
.m-only{display:none;}
.m-fv-top,.m-fv-bottom{display:contents;}

@media (max-width:768px){
  .m-only{display:block;}
  .pc-only{display:none!important;}

  /* ---------- section order on phone ---------- */
  .page{display:flex;flex-direction:column;}
  .page > .nav{order:0;}
  .page > .stage-intro{order:1;}
  .page > .m-intro{order:2;}
  .page > .hero{display:none!important;}          /* old "ともに、未来を、作ろう。" */
  .page > .works{order:3;}
  .page > .services{order:4;}
  .page > .price-brief{order:5;}
  .page > .strengths{order:6;}
  .page > .flow{order:7;}
  .page > .cta-home{order:8;}
  .page > .footer{order:9;}

  /* ---------- global rhythm ---------- */
  .section-heading__title{font-size:26px!important;line-height:1.35!important;}
  .section-heading__desc{font-size:13.5px!important;line-height:1.85!important;}
  .works,.services,.price-brief,.strengths,.flow{padding-top:56px!important;padding-bottom:56px!important;}
  .services,.price-brief,.strengths,.flow{padding-left:24px!important;padding-right:24px!important;}

  /* ---------- FV: 写真全面・中央揃え。見出し(上)→ボタン(下)→Scroll(最下部)の3段 ---------- */
  .stage-intro{height:calc(100svh - 68px)!important;min-height:600px!important;padding:0!important;display:block!important;
    background:#141612 url(images/m-hero-moon.webp) 40% 40%/cover no-repeat!important;overflow:hidden;}
  .stage-intro::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
    background:linear-gradient(180deg,rgba(12,13,11,.30) 0%,rgba(12,13,11,.42) 30%,rgba(12,13,11,.18) 50%,rgba(12,13,11,.45) 72%,rgba(12,13,11,.85) 100%);}
  .stage-intro .plum-branch{display:none!important;}
  .stage-intro .petal-layer{z-index:1!important;}
  .stage-intro__content{position:absolute!important;inset:0;z-index:2!important;display:flex!important;flex-direction:column!important;
    align-items:center!important;justify-content:flex-start!important;text-align:center!important;gap:0!important;padding:13vh 22px 0!important;max-width:none!important;
    transform:translateY(calc(var(--fvp,0) * -40px));opacity:calc(1 - var(--fvp,0) * 1.1);}
  .m-fv-top{display:flex;flex-direction:column;align-items:center;gap:14px;}
  .m-fv-bottom{display:flex;flex-direction:column;align-items:center;width:100%;max-width:330px;margin-top:auto;margin-bottom:150px;}
  .stage-intro__title{color:#F4F1EA!important;text-shadow:0 1px 2px rgba(0,0,0,.35),0 8px 30px rgba(0,0,0,.4);text-align:center!important;}
  .stage-intro__title--ja{font-size:clamp(20px,6.1vw,26px)!important;line-height:1.7!important;letter-spacing:.04em!important;white-space:nowrap;}
  .stage-intro__title .c-ink{color:#F4F1EA!important;}
  .stage-intro__title .c-brand{color:#BFE3CC!important;}
  .sd-intro__en{color:rgba(244,241,234,.85)!important;font-size:13px!important;letter-spacing:.16em!important;margin:0!important;}
  .stage-intro__rule{background:rgba(215,184,91,.9)!important;margin:2px auto 0!important;width:36px!important;}
  .sd-intro__price{display:none!important;}
  .stage-intro__services{color:rgba(244,241,234,.82)!important;font-size:12px!important;text-align:center!important;line-height:2!important;margin:0!important;}
  .sd-intro__cta{width:100%;margin:0!important;gap:10px!important;}
  .sd-btn{min-height:50px!important;width:100%;}
  .sd-btn--line{background:#1C7A4B!important;color:#fff!important;border:0!important;box-shadow:0 8px 24px -10px rgba(0,0,0,.6)!important;}
  .sd-btn--line::after{content:"→";margin-left:14px;font-weight:400;}
  .sd-btn--ghost{background:rgba(244,241,234,.08)!important;color:#F4F1EA!important;border:1px solid rgba(244,241,234,.55)!important;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);}
  .sd-intro__note{color:rgba(244,241,234,.75)!important;font-size:11.5px!important;text-align:center;margin:12px 0 0!important;}
  /* スクロールを促す：最下部に「Scroll」と、上から下へ流れる線 */
  .stage-intro__scroll{display:flex!important;position:absolute!important;left:0;right:0;bottom:66px;margin:0!important;z-index:3;flex-direction:column;align-items:center;gap:8px;
    color:rgba(244,241,234,.9)!important;cursor:pointer;opacity:1!important;animation:none!important;font-size:11px;letter-spacing:.3em;}
  .stage-intro__scroll-line{position:relative;width:1px!important;height:40px!important;background:rgba(244,241,234,.25)!important;overflow:hidden;}
  .stage-intro__scroll-line::after{content:"";position:absolute;left:0;top:-40%;width:1px;height:40%;background:#F4F1EA;animation:fvScrollLine 2s cubic-bezier(.6,0,.3,1) infinite;}
  @keyframes fvScrollLine{0%{top:-40%}100%{top:100%}}

  /* ---------- m-intro: one full-bleed photo/video, copy bottom-left ---------- */
  .m-intro{position:relative;overflow:hidden;background:#1c1b19;color:#fff;height:100svh;min-height:560px;display:flex;flex-direction:column;justify-content:flex-end;padding:0;}
  .m-intro::before,.m-intro::after{display:none;}
  .m-intro__bg,.m-intro__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 70%;border-radius:0;box-shadow:none;transform:none;transition:none;}
  .m-intro__video{z-index:1;}
  .m-intro__shade{position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,rgba(20,20,16,0) 40%,rgba(20,20,16,.35) 70%,rgba(20,20,16,.82) 100%);pointer-events:none;}
  .m-intro__body{position:relative;z-index:3;margin:0;padding:0 24px 92px;background:none;border:0;box-shadow:none;border-radius:0;}
  .m-intro__shop{display:inline-block;font-size:11px;letter-spacing:.08em;color:#fff;border:1px solid rgba(255,255,255,.55);border-radius:999px;padding:5px 12px;margin-bottom:14px;background:rgba(0,0,0,.18);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);}
  .m-intro__eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.28em;color:#D7B85B;font-weight:700;margin-bottom:10px;}
  .m-intro__eyebrow::before{content:"";width:22px;height:1px;background:#D7B85B;}
  .m-intro__title{font-family:"Shippori Mincho",serif;font-size:27px;line-height:1.5;margin:0 0 12px;font-weight:600;letter-spacing:.02em;color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.35);}
  .m-intro__text{font-size:13.5px;line-height:1.9;color:rgba(255,255,255,.9);margin:0 0 22px;text-shadow:0 1px 8px rgba(0,0,0,.35);}
  .m-intro__facts{display:none!important;}
  .m-intro__more{display:inline-flex;align-items:center;gap:12px;color:#F4F1EA;text-decoration:none;font-size:13px;letter-spacing:.12em;padding-bottom:6px;border-bottom:1px solid rgba(244,241,234,.5);}
  .m-intro__more i{display:none;}
  .m-intro__more::after{content:"";width:28px;height:1px;background:#D7B85B;}
  .page > .m-intro.fade-section{opacity:1!important;transform:none!important;}
  .m-intro__body{transform:translateY(calc(var(--mip,0) * 60px));opacity:calc(1 - var(--mip,0) * 1.2);}
  .m-intro__video,.m-intro__bg{transform:scale(calc(1 + var(--mip,0) * .12))!important;}
  @keyframes mIntroArrow{0%,100%{transform:translateY(0)}50%{transform:translateY(4px)}}

  /* ---------- WORKS: keep hero pair, cards become a swipe row ---------- */
  .showcase{padding:0;}
  .showcase__stage{margin:0 0 30px;gap:22px;}
  .showcase__devices{padding:10px 0 20px;}
  .showcase__title{font-size:22px;}
  .showcase__text{font-size:13.5px;line-height:1.9;}
  .showcase__pts{display:none!important;}
  .works .section-heading__desc{display:none!important;}
  .showcase__text.pc-only{display:none!important;}
  .showcase__text.m-only{display:block;}
  .showcase__grid{display:flex!important;touch-action:pan-x;overscroll-behavior-x:contain;scroll-padding-left:20px;grid-template-columns:none!important;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:4px 20px 14px!important;margin:0 -20px!important;justify-content:flex-start!important;width:calc(100% + 40px);max-width:none!important;box-sizing:border-box;scrollbar-width:none;}
  .showcase__grid::-webkit-scrollbar{display:none;}
  .show-card{flex:0 0 74%;scroll-snap-align:start;}
  .m-swipe{display:block;font-size:10.5px;letter-spacing:.22em;color:#8A6E1E;text-align:right;margin:0 0 6px;}

  /* ---------- SERVICES: swipe row, text over photo ---------- */
  .services__grid{display:flex!important;touch-action:pan-x;overscroll-behavior-x:contain;scroll-padding-left:24px;grid-template-columns:none!important;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:4px 24px 14px!important;margin:0 -24px!important;justify-content:flex-start!important;width:calc(100% + 48px);max-width:none!important;box-sizing:border-box;scrollbar-width:none;}
  .services__grid::-webkit-scrollbar{display:none;}
  .svc-card{flex:0 0 72%;scroll-snap-align:start;position:relative;aspect-ratio:3/4;border-radius:14px;overflow:hidden;border:0!important;background:#1c1b19;display:block;}
  .svc-card__media{position:absolute!important;inset:0;aspect-ratio:auto!important;}
  .svc-card__media img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.02);}
  .svc-card__body{position:absolute;left:0;right:0;bottom:0;padding:70px 18px 18px!important;background:linear-gradient(180deg,rgba(20,20,16,0) 0%,rgba(20,20,16,.62) 45%,rgba(20,20,16,.9) 100%);color:#fff;}
  .svc-card__meta{margin-bottom:8px!important;}
  .svc-card__no{color:#D7B85B!important;}
  .svc-card__eyebrow{color:rgba(255,255,255,.8)!important;}
  .svc-card__rule{background:rgba(255,255,255,.45)!important;}
  .svc-card__title{color:#fff!important;font-size:18px!important;margin:0 0 4px!important;}
  .svc-card__desc{color:rgba(255,255,255,.85)!important;font-size:12.5px!important;line-height:1.7!important;margin:0!important;}
  .svc-card__arrow{color:#fff!important;position:absolute;right:18px;bottom:18px;}

  /* ---------- PRICING: photo banner + swipe cards ---------- */
  .price-brief{background:#F8F5EE!important;padding-top:0!important;}
  .price-brief > .section-heading{display:none!important;}
  .m-price-hero{position:relative;margin:0 -24px 22px;height:250px;overflow:hidden;}
  .m-price-hero img{width:100%;height:100%;object-fit:cover;object-position:60% 50%;display:block;}
  .m-price-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(251,248,241,.96) 0%,rgba(251,248,241,.9) 42%,rgba(251,248,241,.2) 75%,rgba(251,248,241,0) 100%);}
  .m-price-hero__txt{position:absolute;left:24px;right:24px;top:50%;transform:translateY(-50%);z-index:2;}
  .m-price-hero__txt .eyebrow{display:block;font-size:10.5px;letter-spacing:.28em;color:#8A6E1E;font-weight:700;margin-bottom:8px;}
  .m-price-hero__txt h2{font-family:"Shippori Mincho",serif;font-size:27px;line-height:1.3;color:#2B2A2E;margin:0 0 10px;}
  .m-price-hero__txt p{font-size:12.5px;line-height:1.8;color:#4A4548;margin:0;max-width:62%;}
  .price-brief__scope{margin-top:0!important;}
  .plan-tabs__desc{font-size:12.5px!important;line-height:1.8!important;}
  .price-brief__grid{display:flex!important;touch-action:pan-x;overscroll-behavior-x:contain;scroll-padding-left:24px;grid-template-columns:none!important;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:12px 24px 14px!important;margin:0 -24px!important;justify-content:flex-start!important;width:calc(100% + 48px);max-width:none!important;box-sizing:border-box;scrollbar-width:none;}
  .price-brief__grid::-webkit-scrollbar{display:none;}
  .price-brief__card{flex:0 0 64%;scroll-snap-align:start;box-sizing:border-box;margin:0!important;padding:22px 16px 20px!important;}
  .price-brief__price{font-size:26px!important;}
  .price-brief__for{font-size:11.5px!important;}
  .plan-tabs__note{font-size:11px!important;line-height:1.7!important;}
  .price-more{margin-top:26px!important;}
  .price-more__lead{font-size:12.5px!important;}
  .price-more__list{display:grid!important;grid-template-columns:1fr 1fr;gap:8px;}
  .price-more__item{display:flex!important;flex-direction:column;gap:2px;background:#fff;border:1px solid #EDE7DA;border-radius:10px;padding:10px 12px!important;margin:0!important;}
  .price-more__name{font-size:12px!important;}
  .price-more__price{font-size:11.5px!important;color:#8A6E1E!important;}

  /* ---------- STRENGTHS: 2x2 photo tiles, text over photo ---------- */
  .strengths__heading .section-heading__title{font-size:22px!important;}
  .strengths__list{display:grid!important;grid-template-columns:1fr 1fr;gap:10px;}
  .strength-item{position:relative;display:block!important;aspect-ratio:4/5;border-radius:12px;overflow:hidden;background:#1c1b19;box-shadow:none!important;transform:none!important;opacity:1!important;margin:0!important;padding:0!important;}
  .strength-item__photo{position:absolute!important;inset:0;flex:none!important;min-width:0!important;}
  .strength-item__photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:none!important;}
  .strength-item__content{position:absolute;left:0;right:0;bottom:0;padding:44px 12px 12px!important;background:linear-gradient(180deg,rgba(20,20,16,0),rgba(20,20,16,.55) 40%,rgba(20,20,16,.9));color:#fff;z-index:2;}
  .strength-item__num{color:#D7B85B!important;font-size:11px!important;letter-spacing:.2em;display:block;margin-bottom:4px;}
  .strength-item__icon-wrap{display:none!important;}
  .strength-item__row{display:block!important;}
  .strength-item__title{color:#fff!important;font-size:14.5px!important;line-height:1.4;margin-bottom:3px;}
  .strength-item__desc{color:rgba(255,255,255,.82)!important;font-size:11px!important;line-height:1.6!important;}

  /* ---------- FLOW: compact 2-col steps ---------- */
  .flow .flow__grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;}
  .flow-step{background:#fff;border:1px solid #EDE7DA!important;border-radius:12px;padding:14px 14px 14px!important;margin:0!important;}
  .flow-step__num{font-size:22px!important;line-height:1!important;margin-bottom:8px!important;display:block;}
  .flow-step__title{font-size:14px!important;margin-bottom:4px!important;}
  .flow-step__desc{font-size:11.5px!important;line-height:1.65!important;}

  /* ---------- CONTACT: photo on top, copy on a calm green panel ---------- */
  .cta-home{display:flex!important;flex-direction:column;min-height:0!important;padding:0!important;background:#163626;}
  .cta-home__bg{position:relative!important;inset:auto!important;width:100%!important;height:240px!important;object-fit:cover;object-position:center 32%!important;display:block;}
  .cta-home__overlay{display:none!important;}
  .cta-home__content{position:relative;z-index:1;padding:26px 22px 40px!important;max-width:none!important;}
  .cta-home__content::before{content:"";position:absolute;left:0;right:0;top:-60px;height:60px;background:linear-gradient(180deg,rgba(22,54,38,0),#163626);pointer-events:none;}
  .cta-home__eyebrow{font-size:10.5px!important;letter-spacing:.28em!important;color:#D7B85B!important;}
  .cta-home__title{font-size:22px!important;line-height:1.5!important;margin:8px 0 8px!important;color:#fff!important;}
  .cta-home__desc{font-size:13px!important;line-height:1.8!important;margin-bottom:20px!important;color:rgba(255,255,255,.85)!important;}
  .cta-home__actions{display:grid!important;grid-template-columns:1fr 1fr;gap:10px;}
  .cta-home__actions .btn-pill{width:100%;margin:0!important;justify-content:center;font-size:13.5px!important;padding:14px 10px!important;min-height:0!important;}
  .cta-home__actions .btn-pill:first-child{grid-column:1 / -1;}
}


/* =========================================================
   PC（769px〜）: ファーストビューを写真の全面背景に。
   「ともに、未来を、作ろう。」は外し、動画の紹介ブロック（m-intro）を左右2分割で見せる。
   ========================================================= */
@media (min-width:769px){
  /* ---------- FV ---------- */
  .stage-intro{height:calc(100vh - 84px)!important;min-height:640px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;
    background:#15171A!important;overflow:hidden;}
  /* 写真は右 58% に。左は暗い面にして文字を置く */
  .stage-intro::before{content:"";position:absolute;top:0;bottom:0;right:0;width:58%;z-index:0;pointer-events:none;
    background:url(images/m-hero-moon.webp) center 42%/cover no-repeat;}
  .stage-intro::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
    background:linear-gradient(90deg,#15171A 0%,#15171A 40%,rgba(21,23,26,.72) 50%,rgba(21,23,26,.15) 64%,rgba(21,23,26,0) 76%),
               linear-gradient(180deg,rgba(21,23,26,.25) 0%,rgba(21,23,26,0) 25%,rgba(21,23,26,0) 72%,rgba(21,23,26,.5) 100%);}
  .stage-intro .plum-branch{display:none!important;}
  .stage-intro .petal-layer{z-index:1!important;}
  .stage-intro__content{position:relative;z-index:2!important;align-items:flex-start!important;text-align:left!important;max-width:680px!important;margin-left:max(64px,7vw)!important;padding:0!important;gap:18px!important;}
  .stage-intro__title{color:#fff!important;text-shadow:0 2px 20px rgba(0,0,0,.45);}
  .stage-intro__title--ja{font-size:44px!important;line-height:1.55!important;}
  .stage-intro__title .c-ink{color:#fff!important;}
  .stage-intro__title .c-brand{color:#A8E0BE!important;}
  .sd-intro__en{color:rgba(255,255,255,.88)!important;letter-spacing:.16em!important;}
  .stage-intro__rule{background:rgba(255,255,255,.75)!important;margin-left:0!important;}
  .sd-intro__price{color:rgba(255,255,255,.92)!important;text-shadow:0 1px 10px rgba(0,0,0,.5);}
  .stage-intro__services{color:rgba(255,255,255,.85)!important;text-align:left!important;}
  .sd-intro__cta{justify-content:flex-start!important;}
  .sd-btn{min-width:250px;}
  .sd-btn--line{background:linear-gradient(180deg,#1E8A55 0%,#15673F 100%)!important;color:#fff!important;border:1px solid rgba(168,224,190,.55)!important;
    box-shadow:0 12px 30px -12px rgba(21,103,63,.9),inset 0 1px 0 rgba(255,255,255,.18)!important;}
  .sd-btn--line::after{content:"→";margin-left:14px;font-weight:400;}
  .sd-btn--ghost{background:rgba(255,255,255,.06)!important;color:#fff!important;border:1px solid rgba(255,255,255,.75)!important;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);}
  .sd-intro__note{color:rgba(255,255,255,.78)!important;}
  .stage-intro__scroll{position:absolute!important;left:50%;bottom:34px;transform:translateX(-50%);margin:0!important;z-index:2;color:rgba(255,255,255,.85)!important;}
  .stage-intro__scroll{opacity:1!important;animation:none!important;cursor:pointer;}
  .stage-intro__scroll-line{position:relative;width:1px!important;height:60px!important;background:rgba(255,255,255,.25)!important;overflow:hidden;}
  .stage-intro__scroll-line::after{content:"";position:absolute;left:0;top:-40%;width:1px;height:40%;background:#fff;animation:fvScrollLine 2s cubic-bezier(.6,0,.3,1) infinite;}
  @keyframes fvScrollLine{0%{top:-40%}100%{top:100%}}
  .page > .m-intro.fade-section{opacity:1!important;transform:none!important;}

  /* ---------- 旧ヒーロー → 動画ブロック（左右2分割） ---------- */
  .page > .hero{display:none!important;}
  .page > .m-intro{display:block!important;position:relative;min-height:78vh;background:#141612;color:#fff;overflow:hidden;}
  .m-intro .m-intro__bg,.m-intro .m-intro__video{position:absolute;top:0;bottom:0;left:0;width:54%;height:100%;object-fit:cover;object-position:50% 65%;}
  .m-intro .m-intro__video{z-index:1;}
  .m-intro .m-intro__shade{position:absolute;top:0;bottom:0;left:0;width:54%;z-index:2;background:linear-gradient(90deg,rgba(20,22,18,0) 70%,#141612 100%);}
  .m-intro .m-intro__body{position:relative;z-index:3;margin-left:54%;min-height:78vh;display:flex;flex-direction:column;justify-content:center;padding:80px max(64px,7vw) 80px 64px;}
  .m-intro__shop{display:inline-block;align-self:flex-start;font-size:13px;letter-spacing:.08em;color:#fff;border:1px solid rgba(255,255,255,.5);border-radius:999px;padding:6px 14px;margin-bottom:22px;}
  .m-intro__eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:12px;letter-spacing:.3em;color:#D7B85B;font-weight:700;margin-bottom:14px;}
  .m-intro__eyebrow::before{content:"";width:28px;height:1px;background:#D7B85B;}
  .m-intro__title{font-family:"Shippori Mincho",serif;font-size:40px;line-height:1.5;margin:0 0 18px;font-weight:600;color:#fff;}
  .m-intro__text{font-size:16px;line-height:2;color:rgba(255,255,255,.85);margin:0 0 30px;max-width:460px;}
  .m-intro__facts{display:none!important;}
  .m-intro__more{display:inline-flex;align-items:center;gap:14px;align-self:flex-start;color:#F4F1EA;text-decoration:none;font-size:14px;letter-spacing:.14em;padding-bottom:8px;border-bottom:1px solid rgba(244,241,234,.5);}
  .m-intro__more i{display:none;}
  .m-intro__more::after{content:"";width:36px;height:1px;background:#D7B85B;}
  .stage-intro__content{position:static!important;transform:none!important;}
  .stage-intro__title,.sd-intro__en,.stage-intro__rule,.sd-intro__price,.stage-intro__services,.sd-intro__cta,.sd-intro__note{position:relative;z-index:2;transform:translateY(calc(var(--fvp,0) * -50px));opacity:calc(1 - var(--fvp,0) * 1.1)!important;}
  .stage-intro__scroll{display:flex!important;flex-direction:column;align-items:center;gap:10px;opacity:calc(1 - var(--fvp,0) * 2)!important;font-size:12px;letter-spacing:.3em;}
  .m-intro .m-intro__video,.m-intro .m-intro__bg{transform:scale(calc(1 + var(--mip,0) * .08));}
  .m-intro .m-intro__body{transform:translateY(calc(var(--mip,0) * 40px));opacity:calc(1 - var(--mip,0) * .9);}
}

/* =========================================================
   文字のアニメーション（PC・スマホ共通）
   FV：見出しは行ごとに下から「立ち上がる」。英字・罫線・項目・ボタンは順に薄く浮かぶ。
   m-intro：スクロールで見えたら、店名タグ→見出し→本文→リンクの順に。
   ========================================================= */
@keyframes fvLineUp{0%{transform:translateY(110%);opacity:0}100%{transform:translateY(0);opacity:1}}
@keyframes fvSoftIn{0%{opacity:0;transform:translateY(14px);filter:blur(6px)}100%{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes fvRule{0%{transform:scaleX(0)}100%{transform:scaleX(1)}}
.stage-intro__title--ja{animation:none!important;opacity:1!important;}
.stage-intro__title--ja .c-ink,.stage-intro__title--ja .c-brand{display:inline-block;animation:fvLineUp 1.1s cubic-bezier(.16,1,.3,1) both;}
.stage-intro__title--ja .c-ink:first-child{animation-delay:.15s}
.stage-intro__title--ja br + .c-brand,.stage-intro__title--ja br + .c-brand ~ .c-ink,.stage-intro__title--ja br + .c-brand ~ .c-brand{animation-delay:.38s}
.sd-intro__en{animation:fvSoftIn 1.1s cubic-bezier(.16,1,.3,1) .75s both!important;}
.stage-intro__rule{transform-origin:center;animation:fvRule .9s cubic-bezier(.16,1,.3,1) .95s both!important;opacity:1!important;}
.stage-intro__services{animation:fvSoftIn 1.1s cubic-bezier(.16,1,.3,1) 1.05s both!important;}
.sd-intro__price{animation:fvSoftIn 1.1s cubic-bezier(.16,1,.3,1) 1.0s both!important;}
.sd-intro__cta{animation:fvSoftIn 1.1s cubic-bezier(.16,1,.3,1) 1.25s both!important;}
.sd-intro__note{animation:fvSoftIn 1.1s cubic-bezier(.16,1,.3,1) 1.45s both!important;}
.stage-intro__scroll{animation-delay:1.8s!important;}
@media (min-width:769px){.stage-intro__rule{transform-origin:left;}}

/* m-intro：.is-inview（showcase.js が付ける）で順に出す */
.m-intro .m-intro__shop,.m-intro .m-intro__eyebrow,.m-intro .m-intro__title,.m-intro .m-intro__text,.m-intro .m-intro__more{opacity:0;transform:translateY(18px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);}
.m-intro.is-inview .m-intro__shop{opacity:1;transform:none;transition-delay:.05s}
.m-intro.is-inview .m-intro__eyebrow{opacity:1;transform:none;transition-delay:.2s}
.m-intro.is-inview .m-intro__title{opacity:1;transform:none;transition-delay:.35s}
.m-intro.is-inview .m-intro__text{opacity:1;transform:none;transition-delay:.5s}
.m-intro.is-inview .m-intro__more{opacity:1;transform:none;transition-delay:.65s}
@media (prefers-reduced-motion:reduce){
  .stage-intro__title--ja .c-ink,.stage-intro__title--ja .c-brand,.sd-intro__en,.stage-intro__rule,.stage-intro__services,.sd-intro__price,.sd-intro__cta,.sd-intro__note{animation:none!important;opacity:1!important;transform:none!important}
  .m-intro .m-intro__shop,.m-intro .m-intro__eyebrow,.m-intro .m-intro__title,.m-intro .m-intro__text,.m-intro .m-intro__more{opacity:1;transform:none;transition:none}
}

/* 動画：再生ボタンを出さない。自動再生が止められた端末では写真だけ見せる */
.m-intro__video::-webkit-media-controls,.m-intro__video::-webkit-media-controls-start-playback-button,.m-intro__video::-webkit-media-controls-panel{display:none!important;-webkit-appearance:none;opacity:0;}
.m-intro__video{pointer-events:none;opacity:0;transition:opacity .8s;}
.m-intro__video.is-playing{opacity:1;}
.m-intro__video.is-blocked{display:none!important;}

/* 料金の目安：PCでも常に中央 */
.price-brief__grid{margin-left:auto!important;margin-right:auto!important;justify-content:center;}
.price-brief .plan-tabs__nav{max-width:340px;}
.price-brief__half{display:block;font-size:12px;color:#8A6E1E;margin:4px 0 2px;}
.price-brief__half b{font-size:15px;}
