/* トップページ ウェルカムアニメーション（1セッション1回／クリック・キーでスキップ） */
html.sda-welcome-on{overflow:hidden}
html.sda-welcome-on::before{content:"";position:fixed;inset:0;z-index:99998;background:#F3FAFA}
.sda-welcome{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;background:#F3FAFA;cursor:pointer;overflow:hidden}
.sda-welcome.is-out{animation:sda-w-out .6s cubic-bezier(.6,0,.3,1) forwards}
.sda-welcome__stage{position:relative;width:min(260px,62vw);aspect-ratio:1}
.sda-welcome__layer{position:absolute;inset:0;background:url("assets/logo.png") center/contain no-repeat}
.sda-welcome__mark{clip-path:inset(12% 0 60% 0);transform-origin:50% 26%;opacity:0;will-change:transform,filter}
.sda-welcome__word{clip-path:inset(42% 100% 12% 0);opacity:0}
.sda-welcome__shadow{position:absolute;left:50%;top:41%;width:58%;height:5%;margin-left:-29%;border-radius:50%;background:radial-gradient(closest-side,rgba(6,51,65,.18),rgba(6,51,65,0));opacity:0;transform:scaleX(.4)}
.sda-welcome__trail{position:absolute;left:50%;top:26%;width:0;height:0}
.sda-welcome.is-play .sda-welcome__mark{animation:sda-w-fly 1.5s cubic-bezier(.45,0,.25,1) forwards,sda-w-hover 1.4s ease-in-out 1.5s infinite}
.sda-welcome.is-play .sda-welcome__shadow{animation:sda-w-shadow .6s ease-out .95s forwards}
.sda-welcome.is-play .sda-welcome__word{animation:sda-w-word .7s cubic-bezier(.3,.7,.2,1) 1.2s forwards}
@keyframes sda-w-fly{
0%{opacity:0;filter:blur(3px);transform:perspective(600px) translate(6vw,-22vh) rotateX(38deg) rotate(4deg) scale(.06)}
15%{opacity:.75}
45%{filter:blur(1.5px);transform:perspective(600px) translate(-3vw,-12vh) rotateX(28deg) rotate(-3deg) scale(.32)}
72%{opacity:1;filter:blur(0);transform:perspective(600px) translate(0,4px) rotateX(-8deg) rotate(1.5deg) scale(1.14)}
88%{transform:perspective(600px) translate(0,-3px) rotateX(3deg) rotate(-.5deg) scale(.98)}
100%{opacity:1;filter:none;transform:none}}
@keyframes sda-w-hover{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes sda-w-shadow{to{opacity:1;transform:scaleX(1)}}
@keyframes sda-w-word{0%{opacity:1;clip-path:inset(42% 100% 12% 0)}100%{opacity:1;clip-path:inset(42% 0 12% 0)}}
@keyframes sda-w-out{to{opacity:0;transform:translateY(-3%)}}
@media (prefers-reduced-motion:reduce){html.sda-welcome-on::before{display:none}.sda-welcome{display:none}}
