@charset 'utf-8';

.main-visual-box{position:relative;min-height:min(114rem, 59.375vw);background: linear-gradient(180deg, var(--color79) 0%, var(--white100) 63.27%, var(--white100) 100%);overflow:hidden;}
.main-visual-box .main-vi-bg01{position:absolute;top:0;right:0;z-index:20;width:min(47.1rem, 24.531vw);height:min(56.4rem, 29.375vw);}
.main-visual-box .main-vi-bg02{position:absolute;top:min(20.8rem, 12.271vw);left:min(17.1rem, 8.906vw);z-index:20;width:min(34.1rem,17.76vw);height:min(36.1rem, 18.802vw);}
.main-visual-box .main-vi-bg03{position:absolute;top:min(45.7rem, 25.24vw);right:min(30rem, 15.625vw);z-index:30;width:min(25.3rem, 13.177vw);height:min(24rem, 12.5vw);}
.main-visual-box .main-vi-bg04{position:absolute;bottom:0;left:50%;z-index:10;width:100%;transform:translateX(-50%);text-align:center;}
.main-visual-box .main-vi-bg04 img{margin:0 auto;}
.main-visual-box .vi-txt-box{position:absolute;top:min(26.1rem, 15.031vw);left:0;width:100%;}
.main-visual-box .vi-txt-box .txt01{font-size:min(16rem, 8.333vw);line-height:1;color:var(--white100);font-weight:var(--font-weight-extrabold);letter-spacing:-0.02em;text-align:center;transform:translateX(-100%);transition:transform 1.2s cubic-bezier(0.7, 0, 0.2, 1);}
.main-visual-box .vi-txt-box .txt02{position:relative;z-index:20;font-size:min(11.6rem, 6.042vw);line-height:1;color:var(--white100);font-weight:var(--font-weight-bold);letter-spacing:-0.02em;text-align:center;transform:translateX(100%);transition:transform 1.2s cubic-bezier(0.7, 0, 0.2, 1);}
.main-visual-box .vi-txt-box.active .txt01,
.main-visual-box .vi-txt-box.active .txt02{transform:translateX(0);}{transform:translateX(0);}
.main-visual-box .empty-txt{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);}

@media screen and (max-width: 1024.98px){
	.main-visual-box{min-height:56rem;}
	.main-visual-box .main-vi-bg01,
	.main-visual-box .main-vi-bg02,
	.main-visual-box .main-vi-bg03{display:none;}
	
	.main-visual-box .vi-txt-box{top:11rem;}
	.main-visual-box .vi-txt-box .txt01{font-size:min(6.4rem,17.067vw);}
	.main-visual-box .vi-txt-box .txt02{font-size:min(4.8rem,12.8vw);}
}
@media screen and (max-width: 480px){
	.main-visual-box .main-vi-bg04{bottom:50%;transform:translate(-50%,50%);}
	.main-visual-box .main-vi-bg04 img{transform:scale(2);}
}