

/* frame */
.frame{position: fixed;width: 100%;height: 100dvh;top: 0;left: 0;z-index: 9996;pointer-events: none;border: 12px solid #fff;
    &:after{position: absolute;content: "";width: 100%;height: 100%;top: 0;left: 0;border: 3px solid #000;}
    .deco{position: absolute;width: 80px;
        &.top_l{top: 0;left: 0;transform: scale(-1, 1);}
        &.top_r{top: 0;right: 0;transform: scale(1, 1);}
        &.bottom_l{bottom: 0;left: 0;transform: scale(-1, -1);}
        &.bottom_r{bottom: 0;right: 0;transform: scale(1, -1);}
    }
}
@media only screen and (max-width: 835px){
    .frame{border: 6px solid #fff;
        &:after{border: 2px solid #000;}
        .deco{position: absolute;width: 40px;}
    }
}



.anime_txt{display: flex;width: 100%;overflow: hidden;background-color: #fff;pointer-events: none;border-top: 4px solid #000;margin-top: calc(var(--base_distance)*1);
    p{flex: 0 0 auto;width: auto;white-space: nowrap;font-family: var(--f_01);color: #000;font-size: min(140px, 20vw);font-weight: 800;line-height: 0.95;margin: 0;padding-right: .5em;animation: hor_move_l 36s linear infinite;}
}



/*----------------------------------------
    top page
------------------------------------------*/

/* fv */
.fv{position: relative;margin-bottom: calc(var(--base_distance)*1);padding-top: calc(var(--base_distance)*1.4);
    .main_tit, .catch, .date, .place {opacity: 0; filter: blur(14px); transform: translateY(-18px) scale(1.08); transform-origin: center top;}
    .main_tit img, .catch img, .date img, .place img {display: block; width: 100%;}
    .main_tit{margin-bottom: calc(var(--base_distance)*0.4);}
    .catch{margin-bottom: calc(var(--base_distance)*0.4);}
    .date{margin-bottom: calc(var(--base_distance)*0.4);}
}
.fv.load_open {
    .main_tit, .catch, .date, .place {animation: fv_item_reveal 1.6s var(--easeOutQuint) 1.8s forwards;}
    .catch {animation-delay: 2.0s;}
    .date {animation-delay: 2.1s;}
    .place {animation-delay: 2.2s;}
}
@keyframes fv_item_reveal {
    0% {opacity: 0; filter: blur(14px); transform: translateY(-18px) scale(1.2);}
    100% {opacity: 1; filter: blur(0); transform: translateY(0) scale(1);}
}
@media only screen and (max-width: 835px){
    .fv{margin-bottom: calc(var(--base_distance)*1.4);padding-top: calc(var(--base_distance)*2);}
}


.sns_area{
    .sns_tit{font-family: var(--f_01);color: #000;font-size: min(80px,12vw);font-weight: 800;line-height: 1.5em;margin-bottom: 0.3em;}
    ul{display: flex;justify-content: center;gap: min(20px,4vw);
        li{width: min(120px,14vw);
            a{display: block;
                &:hover{
                    img{transform: scale(1.08);}
                }
                img{width: 100%; height: auto;transition: transform 0.3s var(--easeInOutCubic);}
            }
        }
    }
}