/* 本文の進行に応じて、関係・調査・実務・制作をそれぞれの構図で描く。 */
.cinema-opening{position:relative}
.services-hero{background:#fff;display:flex;flex-direction:column;padding:48px 0 64px;min-height:0}
.services-hero:after,.service-watermark{display:none}
.services-hero__inner{order:0;width:100%!important}
.services-hero__content{width:min(740px,100%);padding-inline:24px;margin:auto;text-align:center}
.services-hero__overline{margin-bottom:18px}
.services-hero__title{font-size:clamp(30px,3.5vw,48px);line-height:1.6;margin-bottom:24px}
.services-hero__title .hl{font-size:clamp(84px,12vw,164px);line-height:1.12;letter-spacing:.08em;color:var(--ink);padding-left:.08em}
.services-hero__title .hl:after{display:none}
.services-hero__lead{margin:0 auto;text-align:left;font-size:16px!important;max-width:630px}
.services-hero__visual{position:relative;order:1;width:144px;max-width:none;top:auto;right:auto;transform:none;margin:32px auto;align-self:center}
.services-hero__visual svg,.services-hero__needle{animation:none!important}
.services-hero .services-nav{order:2;padding:24px;width:100%;background:none}
.services-hero .services-nav>.container{width:min(1180px,100%)}
.hero-destination-art{display:none}
.hero-route-lines{display:none}
.cinema-opening.cinema-enabled .services-hero{position:sticky;top:var(--scene-top);height:var(--hero-height);padding:0;overflow:clip;isolation:isolate;background:radial-gradient(ellipse at 50% 55%,#EAF3FB 0,white 68%)}
.cinema-enabled .services-hero__inner{position:absolute;inset:22px 0 0;z-index:3;pointer-events:none}
.cinema-enabled .services-hero__content{height:100%;width:100%;max-width:none;padding:0}
.cinema-enabled .services-hero__overline{font-size:14px!important;margin:0 0 20px}
.cinema-enabled .services-hero__title{margin:0;transform:none}
.cinema-enabled .services-hero__title-line{display:inline-block}
.cinema-enabled .services-hero__title-line:not(:last-child){translate:calc(var(--text-depart,0)*-60vw) 0;opacity:calc(1 - var(--text-depart,0))}
.cinema-enabled .services-hero__title-line:last-child{translate:calc(var(--text-depart,0)*60vw) 0;opacity:calc(1 - var(--text-depart,0))}
.cinema-enabled .services-hero__title .letter{animation:none!important;opacity:1;transform:none;filter:none}
.cinema-enabled .services-hero__lead{position:absolute;bottom:44px;left:50%;width:min(630px,calc(100% - 48px));transform:translateX(-50%);opacity:calc(1 - var(--text-depart,0));font-size:16px!important}
.cinema-enabled .services-hero__visual{position:absolute;z-index:2;width:160px;left:50%;top:calc(52% - var(--core-travel,0)*.8%);right:auto;margin:0;transform:translate(-50%,-50%);order:unset}
.cinema-enabled .services-hero__needle{rotate:calc(-32deg + var(--opening-progress,0)*270deg)}
.cinema-enabled .hero-route-lines{display:block;position:absolute;inset:12% 0 4%;width:100%;height:84%;fill:none;stroke:var(--blue-dark);stroke-width:1.5;opacity:.6;z-index:0}
.hero-route-lines path{stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--route-enter,0))}
.cinema-enabled .services-hero .services-nav{position:absolute;inset:12% 0 4%;height:84%;padding:0;z-index:4;order:unset}
.cinema-enabled .services-nav>.container,.cinema-enabled .services-nav__list{display:block;position:static;width:100%;height:100%}
.cinema-enabled .services-nav__list li{position:absolute;width:270px;left:17%;top:22.5%;translate:-50% -50%;transform:translateX(calc((1 - var(--destination-enter,0))*-90vw));opacity:var(--destination-enter,0)}
.cinema-enabled .services-nav__list li:nth-child(2){left:83%;transform:translateX(calc((1 - var(--destination-enter,0))*90vw))}
.cinema-enabled .services-nav__list li:nth-child(3){top:67.5%}
.cinema-enabled .services-nav__list li:nth-child(4){left:83%;top:67.5%;transform:translateX(calc((1 - var(--destination-enter,0))*90vw))}
.cinema-enabled .services-nav__list li:nth-child(5){left:50%;top:90%;transform:translateY(calc((1 - var(--destination-enter,0))* var(--service-vh,1svh) * 60))}
.cinema-enabled .services-nav__link{border:0;display:flex;flex-direction:column;justify-content:center;gap:6px;white-space:nowrap;font-size:16px;background:#ffffffeb;padding:12px 14px;border-radius:10px;text-decoration:underline;text-decoration-color:#2396ad50;text-underline-offset:6px}
.cinema-enabled .services-nav__link:after{display:none}
.cinema-enabled .hero-destination-art{display:block;height:92px;width:160px}
.hero-destination-art svg{height:100%;width:100%;animation:none!important}
.cinema-enabled .services-nav__list li:nth-child(5) .hero-destination-art{height:65px}
/* Webとリアルは画面外から入る。合流後に往復線がつながり、読む時間を残す。 */
.bridge-motion .approach-bridge{height:calc(var(--service-vh,1svh) * 230)}
.bridge-motion .bridge-stage{top:var(--scene-top);height:calc(calc(var(--service-vh,1svh) * 100) - var(--scene-top));padding-block:36px}
.bridge-motion .bridge-web{transform:translateX(calc(-1 * var(--scene-width) * (1 - var(--bridge-enter,1))))}
.bridge-motion .bridge-field{transform:translateX(calc(var(--scene-width) * (1 - var(--bridge-enter,1))))}
.bridge-motion .route-progress{stroke-dashoffset:calc(1 - var(--bridge-connect,1))}
.bridge-motion .bridge-note{opacity:var(--bridge-connect,1)}
/* 5段階は同じ紙面の上。図全体と本文を切り離さず、現在地だけが進む。 */
.cinema-deck{position:relative;margin:56px 0 80px}
.cinema-pin{position:relative;isolation:isolate}
.cinema-pane{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding:64px 0;border-top:1px solid var(--line)}
.cinema-copy{position:relative;min-width:0}
.cinema-copy p{font-size:17px;line-height:1.95}
.cinema-copy p+p{margin-top:24px}
.cinema-art{display:flex;align-items:center;justify-content:center;position:relative}
.cinema-art svg{display:block;width:100%;height:auto;max-height:420px;animation:none!important}
.cinema-art .services-stage__icon,.cinema-art .services-course__icon{display:block;width:100%;margin:0}
.cinema-art .services-stage__icon svg,.cinema-art .services-course__icon svg{height:220px;margin:0}
.cinema-copy .services-stage__name{font-size:58px;gap:18px;margin:0 0 20px}
.cinema-copy .services-stage__num{font-size:14px}
.cinema-copy .services-stage__list{font-size:19px;margin:0 0 24px}
.cinema-copy .services-stage__metric{font-size:16px!important}
.web-process{display:none}
.cinema-deck--web.cinema-enabled{width:var(--scene-width);margin-left:calc((100% - var(--scene-width))/2);background:#EAF3FB}
.cinema-enabled .cinema-pin{position:sticky;top:var(--scene-top);overflow:clip}
.cinema-enabled .cinema-web-pane{position:absolute;inset:0;display:block;border:0;padding:0;opacity:var(--visible,0);pointer-events:none}
.cinema-enabled .cinema-web-pane>.cinema-art{display:none}
.cinema-enabled .cinema-web-pane .cinema-copy{position:absolute;top:45%;left:50%;width:min(620px,calc(100% - 64px));transform:translateX(-50%);display:grid;grid-template-columns:190px 1fr;gap:0 28px}
.cinema-enabled .services-stage__name{grid-row:1/3;display:block;font-size:64px}
.cinema-enabled .services-stage__num{display:block;font-size:13px;margin-bottom:12px}
.cinema-enabled .services-stage__metric{margin:0}
.cinema-enabled .web-process{position:absolute;display:grid;grid-template-columns:repeat(5,1fr);width:min(1040px,calc(100% - 112px));left:50%;top:8%;height:29%;transform:translateX(-50%);gap:40px}
.web-process:before,.web-process:after{content:"";position:absolute;top:45%;left:9%;width:82%;height:2px;background:#2396ad25}
.web-process:after{background:var(--blue-dark);transform:scaleX(var(--scene-progress,0));transform-origin:left}
.web-process-node{position:relative;z-index:1;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;font-weight:700;color:var(--blue-dark)}
.web-process-node .cinema-art{width:110px;height:110px;border-radius:50%;background:#EAF3FB;border:1px solid #2396ad30;transition:background .25s,border-color .25s}
.web-process-node .cinema-art svg{height:72px;width:72px}
.web-process-node.is-read .cinema-art{border-color:var(--blue-dark)}
.web-process-node.is-current .cinema-art{background:#FBE3EA;border:2px solid var(--brand-text)}
.web-process-node.is-current>span{color:var(--brand-text)}
.cinema-rail{display:none}
/* 調査とPR。文章は縦に読み、図の窓が開いて新しい場面が現れる。 */
.reading-story{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}
.story-visual{position:relative;min-width:0}
.story-writing{min-width:0}
.story-beat{padding:48px 0 72px}
.story-beat+.story-beat{border-top:1px solid #1f2c3a25}
.story-visual>.cinema-art{padding:40px 0}
.story-beat .services-detail__sub-title,.story-beat .services-course__title{font-size:clamp(26px,2.8vw,40px);line-height:1.5;margin:0 0 28px}
.story-beat .services-course__title small{display:block;font-size:16px;margin-top:16px}
.story-beat .services-course__text,.story-beat .services-course__list{font-size:18px!important;line-height:1.9}
.story-enabled .story-visual{position:sticky;top:calc(var(--scene-top) + 40px);height:min(560px,calc(var(--service-vh,1svh) * 65));overflow:clip}
.story-enabled .story-beat{min-height:calc(var(--service-vh,1svh) * 72);display:flex;align-items:center;padding:64px 0}
.story-enabled .story-beat:last-child{min-height:calc(var(--service-vh,1svh) * 65)}
.story-enabled .story-visual>.cinema-art{position:absolute;inset:0;padding:0}
.cinema-deck--field.story-enabled .story-visual{border-radius:50% 50% 10px 10px;background:#fff6}
.cinema-deck--field.story-enabled .cinema-art:first-child{opacity:calc(1 - var(--field-change,0));transform:rotate(calc(var(--field-change,0)*-7deg))}
.cinema-deck--field.story-enabled .cinema-art:nth-child(2){background:#FCF4D8;clip-path:circle(calc(var(--field-change,0)*145%) at 50% 100%)}
.cinema-deck--field.story-enabled .cinema-art svg{width:90%}
/* 研修。面談から実務の循環へ、8回の進行が点で積み上がり、最後に成果確認へつながる。 */
.cinema-deck--training.reading-story{grid-template-columns:1.1fr 1fr}
.story-beat .services-course__chip{display:block;padding:0;background:none;font-size:30px;line-height:1.6;margin-bottom:16px}
.story-beat .services-course__count{margin-top:36px}
.story-beat .services-course__count-num{font-size:42px}
.story-visual .services-course__art{width:85%;margin:0;transform:none}
.story-visual .services-course__art svg{width:100%}
.story-visual .services-course__ring{position:absolute;inset:0;width:100%;height:100%;z-index:-1;animation:none!important}
.cinema-deck--training.story-enabled .story-visual{isolation:isolate}
.cinema-deck--training.story-enabled .cinema-art:nth-child(1){opacity:calc(1 - var(--training-start,0));clip-path:inset(0 calc(var(--training-start,0)*100%) 0 0)}
.cinema-deck--training.story-enabled .cinema-art:nth-child(2){opacity:calc(var(--training-start,0) * (1 - var(--training-finish,0)))}
.cinema-deck--training.story-enabled .cinema-art:nth-child(3){opacity:var(--training-finish,0);clip-path:inset(0 0 calc((1 - var(--training-finish,0))*100%) 0)}
.cinema-deck--training.story-enabled .services-course__ring{rotate:calc(var(--cycle-progress,0)*300deg)}
.training-cycles{display:none}
.story-enabled .training-cycles{position:absolute;inset:auto 12% 5%;display:flex;gap:12px;justify-content:center;opacity:var(--training-start,0)}
.training-cycles i{width:12px;height:12px;border-radius:50%;background:var(--brand-text);opacity:clamp(.16,calc(var(--cycle-progress,0)*8 - var(--cycle)),1)}
/* AI導入は工程を読む間、図に資料・処理・確認が順にそろう。 */
.ax-reading.ax-enabled{align-items:start}
.ax-enabled .services-block__art{position:sticky;top:calc(var(--scene-top) + 50px);animation:none!important}
.ax-enabled .services-block__body{min-width:0}
.ax-enabled .services-timeline__row{min-height:calc(var(--service-vh,1svh) * 34);align-content:center;margin:0}
.ax-enabled .services-timeline__bar{transform:scaleX(var(--row-progress,1));animation:none!important}
.ax-enabled .ax-source{opacity:clamp(.2,calc(var(--ax-progress,0)*4),1)}
.ax-enabled .ax-processing{opacity:clamp(.12,calc(var(--ax-progress,0)*4 - .9),1);transform:translateY(calc((1 - clamp(0,var(--ax-progress,0)*4 - .9,1))*-24px))}
.ax-enabled .ax-result{opacity:clamp(.12,calc(var(--ax-progress,0)*4 - 1.9),1)}
/* 制作の場面はカーテンが開き、舞台から設備へ組み上げる。 */
.cinema-event{position:relative}
.cinema-event-stage{display:grid;grid-template-columns:1fr 1.15fr;gap:7%;align-items:center;padding:32px 0 64px}
.cinema-event-stage .services-detail__header{margin:0}
.cinema-event-stage .services-detail__title{font-size:clamp(32px,4vw,58px)}
.cinema-event-stage .services-block__art{position:relative;width:100%;max-width:none;animation:none!important;overflow:clip}
.cinema-event-stage .services-block__art svg{width:100%;animation:none!important}
.cinema-event.cinema-enabled .cinema-event-stage{position:sticky;top:var(--scene-top)}
.cinema-event.cinema-enabled .services-block__art:before,.cinema-event.cinema-enabled .services-block__art:after{content:"";position:absolute;z-index:2;inset:0 50% 0 0;background:#DE6484;transform:translateX(calc(var(--event-progress,0)*-105%))}
.cinema-event.cinema-enabled .services-block__art:after{inset:0 0 0 50%;transform:translateX(calc(var(--event-progress,0)*105%));background:#C24765}
.cinema-enabled .event-piece{opacity:clamp(0,calc(var(--event-progress,0)*3 - var(--piece)*.22),1);transform:translateY(calc((1 - clamp(0,var(--event-progress,0)*3 - var(--piece)*.22,1))*24px))}
.services-block--event{display:block}
.service-cinema .services-detail__header.entered h2{animation:none;clip-path:inset(0 calc((1 - var(--title-enter,1))*100%) 0 0)}
.service-cinema .services-detail__header.entered .services-detail__lead{animation:none}
.service-cinema .services-scope{clip-path:inset(0 calc((1 - var(--scope-enter,1))*100%) 0 0)}
.service-cinema .il-drift>svg,.service-cinema .il-pulse{animation:none!important;translate:none}
@media(max-width:1023px) and (min-width:768px){
 .cinema-enabled .services-nav__list li{width:220px}
 .cinema-enabled .services-nav__link{font-size:13px}
 .cinema-enabled .web-process{gap:20px;width:calc(100% - 64px)}
 .web-process-node .cinema-art{width:90px;height:90px}
 .reading-story{gap:5%}
 .story-beat .services-detail__sub-title{font-size:26px}
}
@media(max-width:767px){
 .services-hero{padding:28px 0 44px}
 .services-hero__content{padding-inline:20px}
 .services-hero__title{font-size:28px;line-height:1.7;margin-bottom:28px}
 .services-hero__title .hl{font-size:88px}
 .services-hero__lead{font-size:15px!important;line-height:1.95}
 .services-hero .services-nav__list{display:grid;grid-template-columns:1fr;gap:0}
 .services-hero .services-nav__link{font-size:14px}
 .services-hero__visual{width:124px;margin:28px auto}
 .cinema-enabled .services-hero__inner{inset:16px 0 0}
 .cinema-enabled .services-hero__overline{margin-bottom:12px}
 .cinema-enabled .services-hero__lead{bottom:34px;font-size:15px!important;width:calc(100% - 48px)}
 .cinema-enabled .services-hero__visual{width:120px;top:calc(48% + var(--core-travel,0)*3.2%);margin:0}
 .cinema-enabled .services-nav__list li{width:46%;left:24%;top:17%}
 .cinema-enabled .services-nav__list li:nth-child(2){left:76%}
 .cinema-enabled .services-nav__list li:nth-child(3){top:69%}
 .cinema-enabled .services-nav__list li:nth-child(4){left:76%;top:69%}
 .cinema-enabled .services-nav__list li:nth-child(5){left:50%;top:92%}
 .cinema-enabled .services-hero .services-nav__link{font-size:12px;white-space:normal;text-align:center;line-height:1.7;word-break:keep-all;overflow-wrap:normal;padding:10px 4px;gap:4px}
 .cinema-enabled .hero-destination-art{width:110px;height:75px}
 .cinema-enabled .services-nav__list li:nth-child(5) .hero-destination-art{height:50px}
 .cinema-enabled .hero-route-lines{opacity:.45}
 .bridge-motion .approach-bridge{height:calc(var(--service-vh,1svh) * 230)}
 .bridge-motion .bridge-stage{top:var(--scene-top);height:calc(calc(var(--service-vh,1svh) * 100) - var(--scene-top));padding-block:26px}
 .bridge-heading h2{font-size:32px}
 .bridge-world{margin-top:36px}
 .cinema-deck{margin-block:36px 56px}
 .cinema-pane{grid-template-columns:1fr;gap:30px;padding:40px 0}
 .cinema-copy p{font-size:16px;line-height:1.9}
 .cinema-art .services-stage__icon svg,.cinema-art .services-course__icon svg{height:150px}
 .cinema-copy .services-stage__name{font-size:36px}
 .cinema-copy .services-stage__list{font-size:16px}
 .cinema-copy .services-stage__metric{font-size:14px!important}
 .cinema-enabled .cinema-web-pane .cinema-copy{display:block;top:36%;width:calc(100% - 48px)}
 .cinema-enabled .services-stage__name{display:flex;align-items:baseline;font-size:38px;margin-bottom:20px;gap:12px}
 .cinema-enabled .services-stage__num{display:inline;margin:0}
 .cinema-enabled .web-process{top:5%;height:24%;width:calc(100% - 24px);gap:6px}
 .web-process-node{font-size:13px;gap:10px}
 .web-process-node .cinema-art{width:48px;height:48px}
 .web-process-node .cinema-art svg{height:34px;width:34px}
 .web-process:before,.web-process:after{top:38%;left:10%;width:80%}
 .reading-story,.cinema-deck--training.reading-story{display:block}
 .story-visual>.cinema-art{padding:20px 0}
 .story-visual .cinema-art svg{max-height:210px}
 .story-beat{padding:36px 0 56px}
 .story-beat .services-detail__sub-title,.story-beat .services-course__title{font-size:26px;margin-bottom:24px}
 .story-beat .services-course__text,.story-beat .services-course__list{font-size:16px!important}
 .story-beat .services-course__chip{font-size:25px}
 .story-enabled .story-visual{top:var(--scene-top);height:210px;width:100%;z-index:3;margin:0 0 24px;background:#FBE3EA;overflow:visible}
 .story-enabled .story-visual>.cinema-art{padding:16px 0;overflow:clip}
 .cinema-deck--field.story-enabled .story-visual{border-radius:0;background:#FBE3EA}
 .cinema-deck--field.story-enabled .cinema-art svg{width:80%;height:180px}
 .story-enabled .story-beat{min-height:calc(var(--service-vh,1svh) * 65);padding:36px 0 80px;align-items:flex-start}
 .story-enabled .story-beat:last-child{min-height:calc(var(--service-vh,1svh) * 75);padding-bottom:40px}
 .cinema-deck--training.story-enabled .story-visual{background:white}
 .story-visual .services-course__ring{width:220px;left:calc(50% - 110px)}
 .story-visual .services-course__art{height:100%;width:75%}
 .story-visual .services-course__art svg{height:100%}
 .story-enabled .training-cycles{bottom:6px;gap:10px}
 .training-cycles i{height:8px;width:8px}
 .ax-reading.ax-enabled{display:flex;flex-direction:column}
 .ax-enabled .services-block__art{order:-1;top:var(--scene-top);height:190px;width:100%;max-width:none;background:var(--blue-dark);z-index:2;margin:0}
 .ax-enabled .services-block__art svg{height:190px}
 .ax-enabled .services-block__body{width:100%}
 .ax-enabled .services-timeline__row{min-height:calc(var(--service-vh,1svh) * 30)}
 .cinema-event-stage{grid-template-columns:1fr;gap:32px;padding:24px 0 40px}
 .cinema-event-stage .services-detail__title{font-size:32px}
 .cinema-event-stage .services-block__art{max-width:360px;margin:auto}
 .service-cinema .services-scope{clip-path:none}
}
@media(prefers-reduced-motion:reduce){
 .cinema-copy,.cinema-art,.event-piece,.ax-source,.ax-processing,.ax-result{transform:none!important;opacity:1!important;clip-path:none!important}
 .services-detail__header h2,.services-scope{clip-path:none!important}
}

/* キーボードでも各事業の入口を確認できる。 */
.cinema-enabled .services-nav:focus-within li{transform:none!important;opacity:1!important}
.cinema-enabled .services-hero:has(.services-nav:focus-within) .services-hero__inner{opacity:0}
.cinema-enabled .services-hero:has(.services-nav:focus-within) .hero-route-lines path{stroke-dashoffset:0}
.reading-story:not(.story-enabled) .story-visual{display:none}
.story-beat>.cinema-art{margin:0 0 32px}
@media(max-width:767px){.story-beat .reading-phrase{display:block}.story-enabled .story-visual:before{content:"";position:absolute;inset:calc(-1 * var(--scene-top)) 0 0;background:inherit}.story-beat>.cinema-art{height:180px}.story-beat>.cinema-art svg{height:180px}}

/* 高さが低い端末でも、冒頭の文字からスクロールに連動させる。 */
.services-hero__title .letter{animation:none!important;opacity:1;filter:none;transform:none}
@media(max-height:800px) and (min-width:768px){
 .cinema-enabled .services-hero__title{font-size:36px}
 .cinema-enabled .services-hero__title .hl{font-size:112px}
 .cinema-enabled .services-hero__visual{width:126px;top:calc(55% - var(--core-travel,0)*3.8%)}
 .cinema-enabled .services-hero__lead{font-size:15px!important;bottom:28px}
 .cinema-enabled .hero-destination-art{height:65px}
 .cinema-enabled .services-nav__list li:nth-child(5) .hero-destination-art{height:45px}
}
@media(max-width:767px) and (max-height:740px){:where(html:not([data-motion-short])) .cinema-enabled .services-hero__title{font-size:25px}:where(html:not([data-motion-short])) .cinema-enabled .services-hero__title .hl{font-size:72px}:where(html:not([data-motion-short])) .cinema-enabled .services-hero__visual{width:96px;top:51.2%}:where(html:not([data-motion-short])) .cinema-enabled .services-hero__lead{font-size:14px!important;bottom:20px;line-height:1.85}:where(html:not([data-motion-short])) .cinema-enabled .hero-destination-art{height:52px;width:90px}:where(html:not([data-motion-short])) .cinema-enabled .services-nav__list li:nth-child(5) .hero-destination-art{height:40px}
}
@media(max-width:767px){:where(html[data-motion-short~="740"]) .cinema-enabled .services-hero__title{font-size:25px}:where(html[data-motion-short~="740"]) .cinema-enabled .services-hero__title .hl{font-size:72px}:where(html[data-motion-short~="740"]) .cinema-enabled .services-hero__visual{width:96px;top:51.2%}:where(html[data-motion-short~="740"]) .cinema-enabled .services-hero__lead{font-size:14px!important;bottom:20px;line-height:1.85}:where(html[data-motion-short~="740"]) .cinema-enabled .hero-destination-art{height:52px;width:90px}:where(html[data-motion-short~="740"]) .cinema-enabled .services-nav__list li:nth-child(5) .hero-destination-art{height:40px}
}
@media(max-width:767px){
 .cinema-deck--training.story-enabled .story-beat{min-height:calc(var(--service-vh,1svh) * 48)}
 .cinema-deck--training.story-enabled .story-beat:nth-child(2){min-height:calc(var(--service-vh,1svh) * 60)}
 .cinema-deck--training.story-enabled .story-beat:last-child{min-height:calc(var(--service-vh,1svh) * 55)}
}

@media(max-width:374px){.cinema-enabled .hero-link-label .reading-phrase{display:block}}
@media(max-width:767px){.services-hero__lead,.cinema-enabled .services-hero__lead{font-size:16px!important}}
@media(max-width:767px) and (max-height:740px){:where(html:not([data-motion-short])) .cinema-enabled .services-hero__visual{width:80px;top:calc(43% + var(--core-travel,0)*8.2%)}:where(html:not([data-motion-short])) .cinema-enabled .services-hero__lead{line-height:1.85}
}
@media(max-width:767px){:where(html[data-motion-short~="740"]) .cinema-enabled .services-hero__visual{width:80px;top:calc(43% + var(--core-travel,0)*8.2%)}:where(html[data-motion-short~="740"]) .cinema-enabled .services-hero__lead{line-height:1.85}
}

/* 初期表示。各行の内側だけをフェードし、外側のスクロール変形を保つ。 */
.service-arrival-ink{display:block}
/* アイコンの画像枠も、円の中央へ揃える。 */
.web-process-node .cinema-art .services-stage__icon{display:flex;align-items:center;justify-content:center;width:100%;height:100%;line-height:0}
.web-process-node .cinema-art .services-stage__icon svg{flex:none;margin:0}
/* 料金はトップのコラムと同じ、角度と奥行きのある入場。 */
.services-lp-list__grid{overflow:clip}
.service-price-reveal{min-width:0;perspective:1200px}
.service-price-reveal .services-lp-list__card{height:100%;transform-origin:50% 100%}
.service-cinema .service-price-reveal .services-lp-list__card{opacity:clamp(.1,var(--price-enter,1),1);transform:translate3d(calc((1 - var(--price-enter,1))*var(--price-side)*22%),calc((1 - var(--price-enter,1))*80px),0) rotateX(calc((1 - var(--price-enter,1))*22deg)) rotateZ(calc((1 - var(--price-enter,1))*var(--price-side)*4deg)) scale(calc(.86 + var(--price-enter,1)*.14))}
.service-price-reveal:focus-within .services-lp-list__card{opacity:1!important;transform:none!important}
/* FAQの白い面が左へ抜けて、ピンクのCTAを見せる。 */
.services-closing{position:relative;background:var(--rose)}
.services-closing-stage{position:relative}
.closing-enabled .services-closing-stage{position:sticky;top:var(--scene-top);isolation:isolate;overflow:clip}
.closing-enabled .services-faq,.closing-enabled .final-cta{position:absolute;inset:0;display:flex;align-items:center;width:100%;height:100%;padding-block:36px}
.closing-enabled .services-faq{z-index:2;background:#fff;transform-origin:0 50%;transform:translateX(calc(var(--closing-leave,0)*-105%)) rotate(calc(var(--closing-leave,0)*-3deg))}
.closing-enabled .final-cta{z-index:1;background:var(--rose)}
.closing-enabled .final-cta__inner{transform:translateX(calc((1 - var(--closing-leave,0))*18%));opacity:var(--closing-leave,0)}
@media(max-width:767px){
 .service-cinema .service-price-reveal .services-lp-list__card{transform:translate3d(calc((1 - var(--price-enter,1))*var(--price-side)*12%),calc((1 - var(--price-enter,1))*64px),0) rotateX(calc((1 - var(--price-enter,1))*18deg)) rotateZ(calc((1 - var(--price-enter,1))*var(--price-side)*3deg)) scale(calc(.90 + var(--price-enter,1)*.10))}
 .closing-enabled .services-faq,.closing-enabled .final-cta{padding-block:30px}
}
@media(prefers-reduced-motion:reduce){
 .service-price-reveal .services-lp-list__card,.service-arrival-ink{transform:none!important;opacity:1!important;translate:none!important}
}

@media(max-width:767px){.final-cta__title .reading-phrase{display:block}}

/* 最後に抜ける面の輪郭と回転軸を、採用済みトップへそろえる。 */
.closing-enabled .services-faq{
 border-radius:0 0 64px 0;transform-origin:0 50%;
 transform:translate3d(calc(var(--closing-leave,0)*-105%),0,0) rotate(calc(var(--closing-leave,0)*-4deg));
 background-image:repeating-linear-gradient(-30deg,transparent 0 80px,#2396ad0a 81px 82px,transparent 83px 120px);
}
.closing-enabled .final-cta,.service-cinema .final-cta{
 background-image:repeating-radial-gradient(ellipse at 115% 110%,transparent 0 48px,#b2416315 49px 50px,transparent 51px 84px);
}
@media(max-width:767px){.closing-enabled .services-faq{border-bottom-right-radius:36px}}

/* 2026-09-18 5つの視点の長い名称も、本文幅で読めるようにする。 */
.cinema-copy .services-stage__name{font-size:clamp(30px,3.1vw,48px);line-height:1.4;overflow-wrap:anywhere}
@media(max-width:699px){
 .cinema-copy .services-stage__name{font-size:clamp(25px,7vw,30px);display:block}
 .cinema-copy .services-stage__num{display:block;margin-bottom:6px}
 .web-process-node{font-size:12px;line-height:1.5}
}

/* 名称の幅を確保するPC配置 */
@media(min-width:900px){
 .cinema-enabled .cinema-web-pane .cinema-copy{width:min(940px,calc(100% - 112px));grid-template-columns:minmax(320px,380px) minmax(0,1fr);gap:0 44px}
 .cinema-enabled .cinema-web-pane .services-stage__name{font-size:40px}
}

/* 集客・接客・追客を同じ図の上で切り替える。 */
.cinema-enabled .web-process{grid-template-columns:repeat(3,minmax(0,1fr));width:min(860px,calc(100% - 112px))}
.web-process:before,.web-process:after{left:16.66%;width:66.66%}
@media(min-width:900px){.cinema-enabled .cinema-web-pane .cinema-copy{grid-template-columns:190px minmax(0,1fr)}}
@media(max-width:699px){.cinema-enabled .web-process{width:calc(100% - 48px)}.web-process-node{font-size:16px}}

/* DX・AX。2つの支援と、試作・検証の4工程を同じ順番で読める配置。 */
.services-ax-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;margin:48px 0 64px}
.services-ax-paths article{border-top:1px solid #ffffff55;padding-top:24px}
.services-ax-paths h3{font-size:26px;margin:0 0 18px;color:var(--lemon)}
.services-ax-paths p,.services-block--ax .services-block__body>p,.services-ax-process__text,.services-ax-prices>div>p:not(.services-scope__price):not(.services-ax-quote){font-size:16px;line-height:2;margin:0}
.services-ax-process .services-timeline__row{grid-template-columns:25px minmax(0,1fr);gap:14px 16px;padding:28px 0}
.services-ax-process .services-timeline__name{margin:0;font-size:24px}
.services-ax-process__text{grid-column:2}
.services-ax-process .services-timeline__lane{grid-column:2;height:3px}
.services-block--ax .services-block__art svg{width:100%;height:auto;overflow:visible}
.services-ax-prices>div{padding:28px 0;border-top:1px solid #ffffff55}
.services-ax-prices h4{font-size:22px;margin:0 0 12px}
.services-ax-prices .services-scope__price{margin:12px 0 20px}
.services-ax-quote{font-size:26px;font-weight:700;margin:12px 0 20px}
@media(max-width:767px){
 .services-ax-paths{grid-template-columns:1fr;gap:36px;margin:36px 0 48px}
 .services-ax-paths h3{font-size:24px}
 .services-ax-process .services-timeline__name{font-size:22px}
 .ax-enabled .services-block__art:has(.il-art--services-ax){height:210px}
 .ax-enabled .services-block__art svg.il-art--services-ax{height:210px;width:auto;max-width:100%;margin:auto}
 .ax-enabled .services-ax-process .services-timeline__row{min-height:calc(var(--service-vh,1svh) * 42)}
 .services-ax-prices h4{font-size:20px}
}
