.btn:hover, .btn:focus-within, input[type="submit"]:hover { opacity: .7; }
.big_cat > ul > li:hover > ul, .big_cat > ul > li:focus-within > ul { display: block; }
[hidden] { display: none !important; }
#top_img img.kajikinran-slide { position: absolute; left: 0; opacity: 0; transition: opacity 1.5s ease; }
#top_img img.kajikinran-slide-visible { opacity: 1; }
#top_img_wrap { position: relative; }
.kajikinran-slide-toggle { position: absolute; right: 12px; bottom: 12px; z-index: 3; padding: .5em .8em; color: #222; background: rgba(255,255,255,.95); border: 1px solid #777; border-radius: 3px; cursor: pointer; }
.kajikinran-lightbox { max-width: 95vw; max-height: 95vh; padding: 16px; border: none; border-radius: 5px; background: white; color: #222; text-align: center; }
.kajikinran-lightbox::backdrop { background: rgba(0,0,0,.9); }
.kajikinran-lightbox > img { display: block; max-width: 85vw; max-height: 75vh; width: auto; height: auto; margin: auto; }
.kajikinran-lightbox-controls { display: flex; justify-content: center; gap: 12px; }
.kajikinran-lightbox-controls button { padding: .5em .8em; cursor: pointer; }
.kajikinran-lightbox button:focus-visible, .kajikinran-slide-toggle:focus-visible, .to_top:focus-visible { outline: 3px solid #265ea8; outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { #top_img img.kajikinran-slide { transition: none; } }
