#main_container section:not(.sec01){padding-top: 10rem; padding-bottom: 10rem;}
#main_container section h3{
	margin-bottom:3rem;
	line-height: 1.1;
	font-size:5rem;
	font-weight:700;
}
#main_container section p.desc{
	font-size: 2rem;
	line-height: 1.7;
	font-weight:600;
}
#main_container section p.desc2{
	font-size: 1.8rem;
	line-height: 1.6;
	color: #444;
}
#main_container section .btns a{
	display:flex;
	align-items: center;
	justify-content: space-between;
	width:11.3rem;
	padding-bottom:1rem;
	color:#222;
	line-height: 1.8;
	font-size:1.6rem;
	font-weight:600;
	border-bottom: 2px solid #222;
}
#main_container section .btns a img{width: 2rem;}
@media (max-width:991.98px) {
	#main_container section:not(.sec01){padding-top: 8rem; padding-bottom: 8rem;}
	#main_container section h3{
		margin-bottom:2rem;
		font-size:4rem;
	}
}
@media (max-width:767.98px) {
	#main_container section h3{margin-bottom:1rem;}
}
@media (max-width:575.98px) {
	#main_container section:not(.sec01){padding-top: 6rem; padding-bottom: 6rem;}
	#main_container section h3{font-size:3.5rem;}
}



#main_container .sec01{
	position: relative;
	height:100vh;
	background:#fff;
	overflow:hidden;
}
#main_container .sec01 h2,
#main_container .sec01 .b_cont{
	position: absolute;
	left: 0;
	width: 100%;
	text-align: center;
	z-index: 2;
}
#main_container .sec01 h2{
	top: 12vh; 
	line-height: 1;
	font-size: 12rem;
	font-weight: bold;
	color: #ddd;
}
#main_container .sec01 .b_cont{
	bottom: 5rem;
}
#main_container .sec01 .b_cont > div{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-bottom: 2rem;
	border-bottom: 1px solid #222;
}
#main_container .sec01 .mask{
	position: relative;
	height:100%;
	mask: url(../_img/main/mv_mask.svg) center center / contain no-repeat;
	opacity: 1;
	mask-size: 24%;
	mask-position: 50% 50%;
}
#main_container .sec01 .bg{
	width: 100%; height: 100%;
	background: url(../_img/main/mv.jpg) no-repeat center center / cover;
	transform:scale(.4);
}
#main_container .sec01 .bg_bak{
	position: absolute;
	z-index: 1;
	top: 0;left: 0;
	width: 100%; height: 100%;
	background: #000;
	opacity: 0;
}
#main_container .sec01 .company{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 10;
	transform: translateY(100%);
	opacity: 0;
}
#main_container .sec01 .company .inner{
	color: #fff;
	padding: 0 20px;
}
#main_container .sec01 .company .inner small{
	display: block;
	line-height:1.5;
	font-size: 2rem;
	font-weight: 500;
	margin-bottom:7rem;
	opacity: 0;
	transform: translateY(30px);
}
#main_container .sec01 .company .inner h3{
	line-height:1.3;
	opacity: 0;
	transform: translateY(30px);
}
#main_container .sec01 .company .inner p.desc{
	font-weight:300;
	margin-bottom:3rem;
	opacity: 0;
	transform: translateY(30px);
}
#main_container .sec01 .company .inner p.btns{
	opacity: 0;
	transform: translateY(30px);
}
#main_container .sec01 .company .inner p.btns a{
	color:#fff;
	font-weight:500;
	border-color: #fff;
}
#main_container .sec01 .company .inner p.btns a img{
	filter: brightness(0) invert(1);
}
@media (max-width:1400px) {
	#main_container .sec01 h2{font-size: 10rem;}
}
@media (max-width:1199.98px) {
	#main_container .sec01 h2{font-size: 8rem;}
	#main_container .sec01 .mask{mask-size: 40%;}
}
@media (max-width:991.98px) {
	#main_container .sec01 h2{font-size: 7rem;}
	#main_container .sec01 .b_cont > div{
		flex-wrap: wrap;
		gap: 1rem;
		justify-content: center;
	}
	#main_container .sec01 .company .inner small{margin-bottom:5rem;}
	#main_container .sec01 .company .inner p.desc{margin-bottom: 2rem;}
}
@media (max-width:767.98px) {
	#main_container .sec01 h2{font-size: 5.5rem;}
	#main_container .sec01 .company .inner h3{margin-bottom: 1.5rem;}
}
@media (max-width:575.98px) {
	#main_container .sec01 h2{
		top: 20vh;
		padding: 0 15px;
		font-size: 4rem;
	}
	#main_container .sec01 .b_cont > div{max-width: calc(100% - 30px);}
	#main_container .sec01 .mask{mask-size: 60%;}
	#main_container .sec01 .bg{transform:scale(.6);}
	#main_container .sec01 .company .inner small{margin-bottom:4rem;}
}


#main_container > .sec02,
#main_container > .sec03{
	display: flex;
	border-bottom: 1px solid #222;
}
#main_container > .sec02 > div,
#main_container > .sec03 > div{
	width: 50%;
}
#main_container > .sec02 .lb,
#main_container > .sec03 .lb{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
#main_container > .sec02 .desc2,
#main_container > .sec03 .desc2{
	margin-bottom: 4rem;
}
@media (max-width:991.98px) {
	#main_container > .sec02,
	#main_container > .sec03{
		display: block;
	}
	#main_container > .sec02 > div,
	#main_container > .sec03 > div{
		width: 100%;
	}
	#main_container > .sec02 .lb,
	#main_container > .sec03 .lb{
		flex-direction: row;
		align-items: flex-end;
		margin-bottom: 3rem;
	}
	#main_container > .sec02 .desc2,
	#main_container > .sec03 .desc2{
		margin-bottom: 2rem;
	}
}
@media (max-width:575.98px) {
	#main_container > .sec02 .lb,
	#main_container > .sec03 .lb{
		display: block;
	}
	#main_container > .sec02 p.desc,
	#main_container > .sec03 p.desc{
		margin-bottom: 1rem;
	}
	#main_container > .sec02 p.desc br,
	#main_container > .sec03 p.desc br{
		display: none;
	}
}



#main_container > .sec04 ul{
	display: flex;
	flex-wrap: wrap;
	gap: 2rem;
}
#main_container > .sec04 ul li{width: calc(25% - 1.5rem);}
#main_container > .sec04 ul li .thum{
	width: 100%;
	padding-top: 100%;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	border-radius: 2rem;
}
#main_container > .sec04 .btns a{width: 9.6rem;}
@media (max-width:991.98px) {
	#main_container > .sec04 ul li{width: calc((100%/3) - 1.4rem);}
	#main_container > .sec04 p.desc2 br,
	#main_container > .sec04 ul li.listX{display: none;}
}
@media (max-width:767.98px) {
	#main_container > .sec04 ul li{width: calc(50% - 1rem);}
}





