body.no-scroll {overflow: hidden;}
.fv-wrapper {height: 232svh;position: relative;}
.fvBOX {position: relative;top: 0;width: 100vw;height: 100%;overflow: hidden;background-color: #fff;will-change: opacity;pointer-events: none;}
.fvBOX .txt {position: absolute;top: 57svh;left:4%;z-index: 100;pointer-events: auto;}
.fvBOX .txt h1 {margin: 0;font-size: 1vw;}
.fvBOX .txt h1 span {display: block;}
.fvBOX .txt h1 span + span {margin-top: .8em;}
.fvBOX .txt img {width:5.5vw;height:auto;vertical-align: middle; margin:0 .15em;}
.fvBOX .txt h1 span img {opacity: 0;transform: translateY(20px);transition: all 0.5s ease;display: inline-block;}
.fvBOX .txt h1 span img.is-active {opacity: 1;transform: translateY(0);}
.fvBOX .visual,
.fvBOX .moviebox,
.fvBOX .fvbgimg {position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
.fvBOX .visual {position: fixed;top: 0;left: 0;width: 100%;height: 100svh;z-index: 10;overflow: hidden;will-change: opacity;}

.fvBOX .fvbgimg img {width: 100%;height: 100%;object-fit: cover;}
.fvBOX .moviebox {z-index: 20;opacity: 0;transition: opacity 2.0s ease;max-width: initial;app-region: initial;}
.fvBOX .moviebox video {width: 100%;height: 100%;object-fit: cover;}
.fvBOX .moviebox.is-visible {opacity: 1;}

.fvBOX .loading-overlay {position: fixed;top: 0;left: 0;width: 100%;height: 100%;background-color: #fff;z-index: 50; transition: opacity 1.0s ease; pointer-events: none;}
.fvBOX .loading-overlay.is-hidden {opacity: 0;}

@media screen and (max-width: 849px){
.fvBOX .txt {position: absolute;left:4%;top: 70svh;}
.fvBOX .txt h1 {margin: 0;font-size:1vw;}
.fvBOX .txt img {width:11vw; margin:0 .2em;}
.fvBOX .txt h1 span + span {margin-top: 1.8em;}
}


/*top en------------------------*/
.p-about {padding-top:0;position: relative;overflow: hidden;margin-top: -100svh;z-index: 10;}
.p-about::before {content: "";position: absolute;top: 0;left: 0;width: 100%;height: 350rem;/* background: white; */-webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);z-index: 11;opacity: 0.8;-webkit-filter: blur(10px);filter: blur(10px);}
.p-about__text {/* background: white; */overflow: hidden;height: 350rem;position: relative;z-index: 13;}
.p-about__text img {width: 2491rem;max-width: none;position: absolute;top: 0;left: 50%;-webkit-transform: translateX(-50%);transform: translateX(-50%);animation: rotate 120s linear infinite reverse;}
.p-about__img {padding: 0 80rem;position: relative;z-index: 2;overflow: hidden;height: 586rem;}
.p-about__img img {width: 100%;height: 100%;-o-object-fit: cover;object-fit: cover;border-radius: 60rem;}

@media screen and (max-width: 849px){
.p-about::before {height: 180rem;}
.p-about__text {height: 180rem;}
.p-about__img img {border-radius: 40rem;}
.p-about__img {padding: 0 30rem;height: 751rem;}
}
@-webkit-keyframes rotate {from {-webkit-transform: translateX(-50%) rotate(0deg);transform: translateX(-50%) rotate(0deg);}
to {-webkit-transform: translateX(-50%) rotate(360deg);transform: translateX(-50%) rotate(360deg);}
}
@keyframes rotate {from {-webkit-transform: translateX(-50%) rotate(0deg);transform: translateX(-50%) rotate(0deg);}
to {-webkit-transform: translateX(-50%) rotate(360deg);transform: translateX(-50%) rotate(360deg);}
}

.scroll-guide { font-family: "Montserrat", sans-serif; z-index: 100; display: flex; align-items: center; gap: .5em; transform: rotate(90deg); transform-origin: left bottom; text-decoration: none; color: #1c57dc; position: absolute; right: -5em; font-weight: 900; top: 75svh; }
.scroll-guide__text { font-size: 12px; letter-spacing: 0.2em; font-weight: 500; }
.scroll-guide__line { width: 60px; height: 1px; background: #1c57dc; position: relative; overflow: hidden; }
.scroll-guide__line::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: currentColor; animation: scroll-line-anim 2s cubic-bezier(0.25, 0.1, 0.25, 1) infinite; }
@keyframes scroll-line-anim {
  0% {transform: translateX(-100%); }
100% {transform: translateX(100%);}
}
