@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
#main {
	position: relative;
}
#main:before,
#main:after {
	position: absolute;
	left: 0;
	top: 0;
	width: 17.5rem;
	height: 100%;
	z-index: 1;
	background: url(../img/index/main_bg01.png) repeat left top/1.8rem;
	content: "";
}
#main:after {
	left: auto;
	right: 0;
}
#main .mainVisual {
	margin-bottom: -11.3vw;
	padding-top: 8rem;
	position: relative;
	z-index: 2;
	background: url(../img/index/main_visual_bg.png) no-repeat center top/100%;
}
#main .mainVisual .imgBox {
	width: 101.4rem;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}
#main .mainVisual .photo {
	width: 40rem;
	margin-left: 6.7rem;
}
#main .mainVisual .textBox {
	/* margin: 17rem 0 0; */
	margin: 11.5rem 0 0;
	width: 50.8rem;
}
#main .mainVisual .textImg {
	width: 41.6rem;
	margin: 0 auto 4rem;
}
#main .textInfo {
	margin-bottom: -20vw;
	position: relative;
	padding: 24vw 2rem 20.2vw 4rem;
	z-index: 2;
	text-align: center;
	color: #fff;
	font-size: 2.44vw;
	font-weight: 700;
	line-height: 1.7;
	background: url(../img/index/main_bg02.png) no-repeat center top/100%;
}
#main .textInfo p {
	position: relative;
	z-index: 1;
}
#main .bgBox {
	padding: 9.5vw 0 8.1rem;
	position: relative;
	background: #F2F2F2;
}
#main .textBox {
	margin: 0 auto 7.3rem;
	max-width: 90rem;
	position: relative;
	z-index: 2;
}
#main .textBox p {
	margin-bottom: 3.5rem;
	text-align: center;
	line-height: 2.18;
}
#main .snsBox {
	width: 60.4rem;
	margin: 0 auto;
	position: relative;
	z-index: 3;
}
#main .snsBox h3 {
	margin: 0 -1.7rem 0 1.7rem;
}
#main .snsBox .title {
	margin: 3.4rem 0 1.6rem;
	text-align: center;
	color: #BB496D;
	font-weight: 600;
}
#main .snsBox li {
	margin: 0 1.2rem;
	width: 4.1rem;
}
#main .snsBox a:hover {
	opacity: 0.7;
}
#main .enTtl {
	position: absolute;
	left: 50%;
	bottom: -0.3rem;
	width: 100%;
	transform: translateX(-50%);
	height: 20.1rem;
	z-index: 2;
}
@media all and (max-width: 767px) {
	#main:before,
	#main:after {
		width: 5.3rem;
	}
	#main .mainVisual {
		margin-bottom: 0.6rem;
		padding-top: 13.5rem;
		background-image: url(../img/index/main_visual_bg_sp.png);
	}
	#main .mainVisual::before {
		height: 7rem;
	}
	#main .mainVisual .imgBox {
		width: auto;
		display: block;
	}
	#main .mainVisual .photo {
		width: auto;
		margin: 0;
		text-align: center;
	}
	#main .mainVisual .photo img {
		width: 31.7rem;
	}
	#main .mainVisual .textBox {
		/* margin: -30rem auto 0; */
		margin: -20rem auto 0;
		width: 33.1rem;
	}
	#main .mainVisual .textImg {
		width: auto;
		margin: 0 0.9rem 1.7rem 0.7rem;
	}
	#main {
		margin-top: 0;
	}
	#main .textInfo {
		/*padding: 27.6vw 2rem 22vw 4rem;*/
		padding: 21.6vw 2rem 22vw 4rem;
		font-size: 7.52vw;
		line-height: 1.6;
		background-image: url(../img/index/main_bg02_sp.png);
	}
	#main .bgBox {
		padding: 24.7vw 0 7.9rem;
	}
	#main .textBox {
		margin-bottom: 7.2rem;
	}
	#main .textBox p {
		margin-bottom: 3.6rem;
	}
	#main .snsBox {
		width: 33.1rem;
	}
	#main .snsBox h3 {
		margin: 0 0 0 0;
	}
	#main .enTtl {
		position: absolute;
		left: 0.1rem;
		bottom: 1rem;
		width: 15rem;
		transform: translateX(0);
		height: auto;
	}
}