.reymu-wa {
position: fixed;
z-index: 99999;
transition: transform 0.3s ease;
}
.reymu-wa:hover {
transform: scale(1.05);
}
.reymu-wa a {
display: flex;
align-items: center;
text-decoration: none;
font-size: 14px;
font-weight: 800;
gap: 10px;
transition: all 0.3s ease;
}
.reymu-wa img {
border-radius: 50%;
animation: pulse 2.4s infinite;
transition: transform 0.2s ease, box-shadow 0.3s ease;
}
.reymu-wa img:hover {
transform: scale(1.1);
}
@keyframes pulse {
0% { transform: scale(1); }
50% { transform: scale(1.10); }
100% { transform: scale(1); }
} .reymu-wa.bottom-right { bottom: 20px; right: 20px; }
.reymu-wa.bottom-left { bottom: 20px; left: 20px; }
.reymu-wa.bottom-center { 
bottom: 20px; 
left: 50%; 
transform: translateX(-50%);
} .reymu-wa.bottom-right:hover { transform: translate(-2px, -2px) scale(1.05); }
.reymu-wa.bottom-left:hover { transform: translate(2px, -2px) scale(1.05); }
.reymu-wa.bottom-center:hover { transform: translateX(-50%) translateY(-2px) scale(1.05); } .reymu-wa.style-1 a {
background: none !important;
padding: 0 !important;
box-shadow: none !important;
}
.reymu-wa.style-1 span {
display: none !important;
}
.reymu-wa.style-1 img {
width: 40px !important;
height: 40px !important;
padding: 6px !important;
border-radius: 50% !important;
box-shadow: 0 6px 18px rgba(0,0,0,0.3) !important;
}
.reymu-wa.style-1 .reymu-wa-icon:hover {
box-shadow: 0 8px 20px rgba(0,0,0,0.4);
} .reymu-wa.style-2 a {
padding: 6px 10px;
border-radius: 50px;
box-shadow: 0 6px 18px rgba(0,0,0,0.3);
}
.reymu-wa.style-2 .reymu-wa-link:hover {
transform: translateY(-2px);
box-shadow: 0 8px 20px rgba(0,0,0,0.3);
}
.reymu-wa.style-2 img {
width: 24px;
background: #fff;
padding: 4px;
} .reymu-wa.style-3 a {
border-radius: 60px;
padding: 10px 60px 10px 18px;
position: relative;
font-weight: 900;
box-shadow: 0 6px 18px rgba(0,0,0,0.3);
}
.reymu-wa.style-3 .reymu-wa-link:hover {
transform: translateY(-2px);
}
.reymu-wa.style-3 .reymu-wa-link:hover .reymu-wa-icon {
transform: scale(1.15);
}
.reymu-wa.style-3 img {
position: absolute;
right: -10px;
width: 50px;
height: 50px;
border-radius: 50%;
padding: 4px;
box-shadow: 0 5px 14px rgba(0,0,0,0.3);
animation: pulse 2s infinite;
} .reymu-gototop {
position: fixed;
z-index: 99998;
display: flex;
align-items: center;
justify-content: center;
text-decoration: none;
cursor: pointer;
background: none !important;
border: none;
outline: none;
user-select: none;
-webkit-tap-highlight-color: transparent;
opacity: 0;
visibility: hidden;
transition: opacity 0.3s ease, visibility 0.3s ease, color 0.3s ease, transform 0.3s ease;
}
.reymu-gototop:hover {
transform: scale(1.2);
}
.reymu-gototop .arrow {
will-change: transform;
filter: drop-shadow(0 2px 4px rgba(0,0,0,0.1));
animation: upDown 1.8s ease infinite;
display: flex;
align-items: center;
justify-content: center;
line-height: 1;
}
.reymu-gototop:hover .arrow {
animation: upDown 1s ease infinite;
} .reymu-gototop.bottom-right { 
bottom: 0px; 
right: 30px; 
}
.reymu-gototop.bottom-left { 
bottom: 0px; 
left: 30px; 
}
.reymu-gototop.bottom-center { 
bottom: 0px; 
left: 50%; 
transform: translateX(-50%);
}
.reymu-gototop.bottom-center:hover {
transform: translateX(-50%) scale(1.2);
} @keyframes upDown {
0% { transform: translateY(0); }
50% { transform: translateY(-8px); }
100% { transform: translateY(0); }
} .reymu-notice {
position: fixed;
bottom: 0;
left: 0;
right: 0;
z-index: 99997;
transform: translateY(100%);
transition: transform 0.5s ease;
will-change: transform;
}
.reymu-notice.show {
transform: translateY(0);
}
.reymu-notice-content {
position: relative;
padding: 15px 40px;
text-align: center;
box-shadow: 0 -2px 10px rgba(0,0,0,0.1);
backdrop-filter: blur(5px);
-webkit-backdrop-filter: blur(5px);
}
.reymu-notice-close {
position: absolute;
right: 15px;
top: 50%;
transform: translateY(-50%);
background: none;
border: none;
color: inherit;
font-size: 20px;
cursor: pointer;
opacity: 0.7;
padding: 5px 10px;
transition: opacity 0.3s;
z-index: 10;
}
.reymu-notice-close:hover {
opacity: 1;
} .reymu-notice.style-3 .reymu-notice-content {
position: relative;
overflow: hidden;
}
.reymu-notice.style-3 .reymu-notice-text,
.reymu-notice.style-3 .reymu-notice-close {
position: relative;
z-index: 2;
text-shadow: 0 0 5px rgba(0,0,0,0.3);
} #reymu-bottom-notices {
position: fixed;
bottom: 0;
left: 0;
right: 0;
z-index: 99996;
display: flex;
flex-direction: column;
align-items: stretch;
justify-content: flex-end;
gap: 5px;
pointer-events: none;
}
.reymu-bottom-notice {
width: 100%;
position: relative;
transform: translateY(100%);
transition: transform 0.5s ease;
pointer-events: auto;
box-shadow: 0 -2px 10px rgba(0,0,0,0.1);
}
.reymu-bottom-notice.show {
transform: translateY(0);
}
.reymu-bottom-notice .notice-content {
position: relative;
padding: 15px 50px;
text-align: center;
box-shadow: 0 -2px 10px rgba(0,0,0,0.1);
backdrop-filter: blur(5px);
-webkit-backdrop-filter: blur(5px);
display: flex;
align-items: center;
justify-content: center;
gap: 15px;
}
.reymu-bottom-notice .notice-text {
line-height: 1.5;
}
.reymu-bottom-notice .notice-close {
position: absolute;
right: 15px;
top: 50%;
transform: translateY(-50%);
background: none;
border: none;
color: inherit;
font-size: 20px;
cursor: pointer;
opacity: 0.7;
padding: 5px 10px;
transition: opacity 0.3s;
z-index: 10;
}
.reymu-bottom-notice .notice-close:hover {
opacity: 1;
}
.reymu-bottom-notice .notice-image {
max-height: 50px;
max-width: 50px;
border-radius: 5px;
object-fit: cover;
}  .reymu-bottom-notice.style-2 .notice-content {
background-size: 200% 100% !important;
animation: reymuShineWave 4s ease-in-out infinite !important;
} .reymu-bottom-notice.style-3 .notice-content {
position: relative;
overflow: hidden;
}
.reymu-bottom-notice.style-3 .notice-text,
.reymu-bottom-notice.style-3 .notice-close {
position: relative;
z-index: 2;
text-shadow: 0 0 5px rgba(0,0,0,0.3);
} .reymu-bottom-notice + .reymu-bottom-notice {
margin-top: 5px;
} .reymu-celebration {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 99999;
display: flex;
align-items: center;
justify-content: center;
pointer-events: none;
}
.reymu-celebration-content {
position: relative;
z-index: 10;
max-width: 500px;
padding: 40px;
background: rgba(255,255,255,0.1);
backdrop-filter: blur(10px);
border-radius: 20px;
text-align: center;
border: 1px solid rgba(255,255,255,0.2);
pointer-events: auto;
box-shadow: 0 10px 40px rgba(0,0,0,0.2);
}
.reymu-celebration-content h2 {
margin: 0 0 15px 0;
font-size: 28px;
}
.reymu-celebration-content p {
margin: 0 0 20px 0;
font-size: 18px;
opacity: 0.9;
}
.reymu-celebration-close {
padding: 10px 30px;
background: rgba(255,255,255,0.2);
border: 1px solid currentColor;
border-radius: 30px;
cursor: pointer;
font-size: 16px;
transition: all 0.3s;
}
.reymu-celebration-close:hover {
background: rgba(255,255,255,0.3);
transform: scale(1.05);
} .reymu-celebration-effect {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
z-index: 5;
overflow: hidden;
} .celebration-particle {
position: absolute;
user-select: none;
pointer-events: none;
white-space: nowrap;
filter: drop-shadow(0 0 5px rgba(255,255,255,0.5));
} @keyframes celebrationFall {
0% { transform: translateY(-100%) rotate(0deg); }
100% { transform: translateY(100vh) rotate(360deg); }
}
@keyframes celebrationRise {
0% { transform: translateY(100%) rotate(0deg); }
100% { transform: translateY(-100%) rotate(-360deg); }
}
@keyframes celebrationSpiral {
0% { transform: rotate(0deg) translate(0, -100%); }
100% { transform: rotate(360deg) translate(100px, 100vh); }
}
@keyframes celebrationExplode {
0% { transform: scale(0) rotate(0deg); opacity: 1; }
50% { transform: scale(1.5) rotate(180deg); opacity: 0.8; }
100% { transform: scale(0) rotate(360deg); opacity: 0; }
}
@keyframes celebrationFloat {
0% { transform: translate(0, 0) rotate(0deg); }
25% { transform: translate(10px, -20px) rotate(90deg); }
50% { transform: translate(-10px, -40px) rotate(180deg); }
75% { transform: translate(10px, -60px) rotate(270deg); }
100% { transform: translate(0, -80px) rotate(360deg); }
} @media (max-width: 768px) { .reymu-wa.style-1 img {
width: 35px !important;
height: 35px !important;
padding: 5px !important;
}
.reymu-wa.style-2 a {
padding: 4px 8px;
font-size: 12px;
}
.reymu-wa.style-2 img {
width: 20px;
}
.reymu-wa.style-3 a {
padding: 8px 50px 8px 15px;
font-size: 13px;
}
.reymu-wa.style-3 img {
width: 40px;
height: 40px;
right: -8px;
} .reymu-gototop .arrow {
font-size: 20px;
animation: upDown 1.8s ease infinite;
} .reymu-notice-content {
padding: 12px 35px;
font-size: 14px;
}
.reymu-notice-close {
right: 10px;
font-size: 18px;
}
.reymu-notice.style-3 .reymu-notice-content::before {
background-size: 80px 80px;
}
.reymu-notice.style-2 .reymu-notice-content {
animation: reymuShineWave 3s linear infinite !important;
} .reymu-bottom-notice .notice-content {
padding: 12px 45px;
font-size: 14px;
}
.reymu-bottom-notice .notice-close {
right: 10px;
font-size: 18px;
}
.reymu-bottom-notice .notice-image {
max-height: 30px;
max-width: 30px;
}
.reymu-bottom-notice.style-2 .notice-content {
animation: reymuShineWave 3s linear infinite !important;
} .reymu-celebration-content {
margin: 20px;
padding: 30px 20px;
}
.reymu-celebration-content h2 {
font-size: 24px;
}
.reymu-celebration-content p {
font-size: 16px;
}
} @keyframes reymuShineWave {
0% { background-position: 0% 0; }
50% { background-position: 100% 0; }
100% { background-position: 200% 0; }
}
@keyframes confettiFloat {
0% { background-position: 0 0; }
100% { background-position: 100px 100px; }
}