:root{

/* 개수 */
--fall-count:80;

/* 크기 */
--fall-size-min:50;
--fall-size-max:100;

/* 속도 */
--fall-speed-min:15;
--fall-speed-max:40;

/* 좌우 흔들림 */
--fall-sway:15;

/* 회전 */
--fall-rotate:0;    /* 1 on / 0 off */
--fall-rot-min:180;
--fall-rot-max:720;

/* 방향 */
--fall-direction:1; /* 1 down / -1 up */

}

#embedim--falling{
position:fixed;
left:0;
top:0;
width:100vw;
height:100vh;
overflow:hidden;
pointer-events:none;
z-index:-1;
opacity:0.8;
}

body.guest-visible div#embedim--falling {
	display: none;
}

.falling-item{

position:absolute;

width:var(--size);
height:var(--size);

background-image:url("https://otokonoyaki.mycafe24.com/wp-content/uploads/2026/03/home-saku-patt_falling.png");
background-size:contain;
background-repeat:no-repeat;
background-position:center;

transform:translate(var(--x),var(--startY)) rotate(0deg);

animation:fall var(--speed) linear infinite;
animation-delay:var(--delay);

will-change:transform;

}

@keyframes fall{

0%{
transform:translate(var(--x),var(--startY)) rotate(0deg);
}

50%{
transform:translate(calc(var(--x) + var(--sway)),var(--midY))
rotate(calc(var(--rot)/2));
}

100%{
transform:translate(calc(var(--x) + var(--sway)),var(--endY))
rotate(var(--rot));
}

}