@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
#container {
	background: url(../img/common/bg02.jpg) repeat left top / 1.2rem;
}
#main {
	margin: 0 auto;
	padding: 8rem 0 4.9rem;
	width: 126.2rem;
	min-height: calc(100dvh - 2.3rem);
	position: relative;
	background: url(../img/index/bg01.png) no-repeat center top / 100%;
}
#main::before {
	width: 100%;
	height: calc(100% - 14rem);
	position: absolute;
	left: 0;
	top: 14rem;
	background: url(../img/index/bg02.png) repeat-y left top / 100%;
	content: '';
}
#main .content {
	width: 109rem;
	position: relative;
	z-index: 1;
}
#main .mainImg {
	margin-bottom: 2.7rem;
	position: relative;
}
#main .mainImg .img {
	position: absolute;
	z-index: 1;
	opacity: 0;
	transition: opacity 0.5s;
}
@keyframes scale {
	0% {
		transform: scale(1);
	}
	50% {
		transform: scale(1.1);
	}
	100% {
		transform: scale(1);
	}
}
#main .mainImg .img img {
	width: 100%;
}
#main .mainImg .img.on {
	opacity: 1;
}
#main .mainImg .img01 {
	position: relative;
}
#main .mainImg .img01.on {
	animation: 0.8s scale;
}
#main .mainImg .img02 {
	width: 18.6rem;
	left: 1.57%;
	top: 24%;
	z-index: 2;
}
#main .mainImg .img02.on {
	transition-delay: 0.8s;
}
#main .mainImg .img04 {
	width: 12.1rem;
	max-width: 11.56%;
	left: 31.8%;
	top: 3%;
	z-index: 1;
}
#main .mainImg .img04.on {
	transition-delay: 1.2s;
}
#main .mainImg .img05 {
	width: 10.1rem;
	left: 28.35%;
	bottom: -4.4%;
	z-index: 2;
}
#main .mainImg .img05.on {
	transition-delay: 1.6s;
}
#main .mainImg .img06 {
	width: 10.6rem;
	left: 76.35%;
	top: 19.6%;
	z-index: 2;
}
#main .mainImg .img06.on {
	transition-delay: 2s;
}
#main .mainImg .img07 {
	width: 10.9rem;
	left: 85.1%;
	bottom: -4.71%;
}
#main .mainImg .img07.on {
	transition-delay: 2.4s;
}
#main .mainImg .img08 {
	width: 100%;
	left: 0;
	top: 0;
	z-index: 1;
	transition-delay: 2.8s;
}
#main h1 {
	margin-bottom: 1rem;
	text-align: center;
}
#main h1 img {
	width: 43.2rem;
}
#main p {
	margin-bottom: 1.9rem;
	text-align: center;
	font-size: 2rem;
	line-height: 1.85;
}
#main .btn {
	text-align: center;
}
#main .btn a {
	display: inline-block;
}
#main .btn img {
	width: 36.1rem;
}
@media all and (max-width: 896px) {
	#main {
		margin: 0 1.2rem 0 1.3rem;
		padding: 5.4rem 0.3rem 4.8rem 0.2rem;
		width: auto;
		min-height: calc(100dvh - 1.5rem);
		background-image: url(../img/index/bg01_sp.png);
		background-size: 100% 21.333vw;
	}
	#main::before {
		height: calc(100% - 21vw);
		top: 21vw;
		background-image: url(../img/index/bg02_sp.png);
	}
	#main .mainImg {
		margin-bottom: 5.5vw;
	}
	#main .mainImg .img {
		max-width: initial !important;
	}
	#main .mainImg .img02 {
		width: 26.7%;
		left: 7.2%;
		top: 36.2%;
	}
	#main .mainImg .img04 {
		width: 17.3%;
		left: 16.5%;
		top: 2.4%;
	}
	#main .mainImg .img05 {
		width: 14.3%;
		left: 46.8%;
		bottom: 22.4%;
	}
	#main .mainImg .img06 {
		width: 15.385%;
		left: 80.7%;
		top: 27.7%;
	}
	#main .mainImg .img07 {
		width: 15.8%;
		left: 67%;
		bottom: -0.2%;
	}
	#main h1 {
		margin-bottom: 2rem;
	}
	#main h1 img {
		width: 27.5rem;
	}
	#main p {
		margin-bottom: 2.2rem;
		font-size: 1.4rem;
		line-height: 1.5;
	}
	#main .btn img {
		width: 24.2rem;
	}
}