
/* 公式サイトの背景切替・写真ズームをLP向けに調整。移動量は4px以下。 */
:root{--motion-ease:cubic-bezier(.2,.7,.25,1);--motion-paper:#f5f7fa;--motion-shadow:0 12px 32px rgba(12,39,72,.08)}
.service-choices>.service-choice{transition:background-color .35s ease,box-shadow .35s ease,transform .45s var(--motion-ease)}
.needs-grid article{transition:border-color .35s ease,transform .45s var(--motion-ease)}
.demo-showcase figure>a{display:block;transition:box-shadow .4s ease,outline-color .4s ease;outline:1px solid transparent;outline-offset:3px}
.demo-showcase figure>a img{transition:transform .65s var(--motion-ease)}
/* 左ナビを隠した画面の切り抜き位置を保つため、拡大量は小さくする。 */
.demo-showcase figure>a img.demo-main-screen{transform-origin:60% 50%}
.button{transition:background-color .3s ease,box-shadow .3s ease}
.button>.curve-plane,.text-link>.curve-plane{transition:transform .4s var(--motion-ease)}
.needs-grid a,.demo-showcase figcaption a{transition:color .25s ease,border-color .25s ease}
.service-choice:focus-within{box-shadow:var(--motion-shadow)}
.demo-showcase figure>a:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
@media(hover:hover) and (pointer:fine){
 .service-choices>.service-choice:hover{background:var(--motion-paper);box-shadow:var(--motion-shadow);transform:translateY(-4px)}
 .needs-grid article:hover{border-color:var(--ink);transform:translateY(-3px)}
 .demo-showcase figure>a:hover{box-shadow:var(--motion-shadow);outline-color:var(--line)}
 .demo-showcase figure>a:hover img{transform:scale(1.015)}
 .button:hover{box-shadow:0 6px 16px rgba(12,39,72,.13)}
 .button:hover>.curve-plane,.text-link:hover>.curve-plane{transform:translateX(4px)}
 .needs-grid a:hover,.demo-showcase figcaption a:hover{color:var(--ink);border-color:var(--ink)}
}
/* 対応ブラウザだけ、画面下から入るときに一度立ち上げる。非対応でも全文表示。 */
@supports(animation-timeline:view()){
 @media(prefers-reduced-motion:no-preference){
  .guide-heading,.needs-heading,.demo-showcase,.advisory-conversation,.lesson-list article{
   animation:lp-content-enter linear both;animation-timeline:view();animation-range:entry 0% entry 22%;
  }
 }
}
@keyframes lp-content-enter{from{opacity:.65;translate:0 16px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:reduce){
 .service-choices>.service-choice,.needs-grid article,.demo-showcase figure>a,.demo-showcase figure>a img,.button,.curve-plane{transition:none!important;transform:none!important}
 .guide-heading,.needs-heading,.demo-showcase,.advisory-conversation,.lesson-list article{animation:none!important;translate:none!important;opacity:1!important}
}
@media print{.guide-heading,.needs-heading,.demo-showcase,.advisory-conversation,.lesson-list article{animation:none!important;translate:none!important;opacity:1!important}}
