@charset "UTF-8";
/* 共通 */
div.index_contact {
	margin: 0 auto;
	padding: 5% 4% 0;
	background: url(../images/top/contact_bg_sp.jpg) center / cover no-repeat;
	overflow: hidden;
}
	div.index_contact div.index_contact_in {
		margin: 0 auto;
		padding: 0;
	}
		div.index_contact div.index_contact_in div.txt {
			margin: 0 auto;
			padding: 0;
			font-size: 4.0vw;
			line-height: 160%;
			font-weight: 500;
			color: #fff;
		}
		div.index_contact div.index_contact_in div.tel_mail {
			margin: 5% auto 0;
			padding: 0;
			display: flex;
			flex-direction: column;
			justify-content: space-between;
			align-items: flex-end;
		}
			div.index_contact div.index_contact_in div.tel_mail div {
				opacity: 0;
				width: 70%;
				height: 15vw;
				margin: 0 5% 0 0;
				padding: 0;
				display: flex;
				justify-content: center;
				align-items: center;
				position: relative;
				z-index: 1;
			}
				div.index_contact div.index_contact_in div.tel_mail div:nth-of-type(2) {
					margin: 3% 16% 0 0 !important;
				}
				div.index_contact div.index_contact_in div.tel_mail div:after {
					position: absolute;
					content: '';
					display: block;
					width: 100%;
					height: 114%;
					margin: 0 auto;
					padding: 0;
					background: #fff;
					transform: rotate(15deg) skew(-15deg, -15deg);
					top: -7%;
					left: 0;
					z-index: -1;
				}
				div.index_contact div.index_contact_in div.tel_mail div.tel {
					font-size: 5.8vw;
					line-height: 120%;
					font-weight: 500;
					font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
				}
					div.index_contact div.index_contact_in div.tel_mail div.tel.scrollin {
						-webkit-animation: slideInTopLeft 0.8s ease-in-out 0s 1 forwards;
						animation: slideInTopLeft 0.8s ease-in-out 0s 1 forwards;
					}
					div.index_contact div.index_contact_in div.tel_mail div.tel a {
						display: inline-block;
						margin: 0;
						padding: 0 0 0 1.2em;
						color: #333;
						text-decoration: none;
						position: relative;
					}
					div.index_contact div.index_contact_in div.tel_mail div.tel a:before {
						position: absolute;
						content: '';
						display: block;
						width: 12%;
						height: 1.0em;
						margin: 0;
						padding: 0;
						background: url(../images/icon/cont_tel.png) center / contain no-repeat;
						top: 0.2em;
						left: 0;
					}
				div.index_contact div.index_contact_in div.tel_mail div.mail {
					font-size: 3.8vw;
					line-height: 120%;
					font-weight: 500;
				}
					div.index_contact div.index_contact_in div.tel_mail div.mail.scrollin {
						-webkit-animation: slideInBottomRight 0.8s ease-in-out 0s 1 forwards;
						animation: slideInBottomRight 0.8s ease-in-out 0s 1 forwards;
					}
					div.index_contact div.index_contact_in div.tel_mail div.mail a {
						display: inline-block;
						margin: 0;
						padding: 0 0 0 1.8em;
						color: #333;
						text-decoration: none;
						position: relative;
					}
					div.index_contact div.index_contact_in div.tel_mail div.mail a:before {
						position: absolute;
						content: '';
						display: block;
						width: 12%;
						height: 1.2em;
						margin: 0;
						padding: 0;
						background: url(../images/icon/cont_mail.png) center / contain no-repeat;
						top: 0;
						left: 0;
					}
				div.index_contact div.index_contact_in div.tel_mail div.mail:before {
					position: absolute;
					content: '';
					display: block;
					width: 0;
					height: 0;
					border-top: 1.5em solid transparent;
					border-right: 1.5em solid transparent;
					border-left: 1.5em solid transparent;
					border-bottom: 2.6em solid #C8000F;
					top: -1.5em;
					right: -2.9em;
					z-index: -2;
				}
div.cont_btn a {
	display: inline-block;
	width: 83%;
	font-size: 3.8vw;
	line-height: 3.8em;
	color: #fff;
	background: #333333;
	border-radius: 1.9em;
	text-decoration: none;
	text-align: center;
}


/* KV */
#kv {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
	position: relative;
}
	#kv:after {
		position: absolute;
		content: '';
		display: block;
		width: 0;
		height: 0;
		margin: 0;
		padding: 0;
		border-top: 0px solid transparent;
		border-right: 0px solid transparent;
		border-left: 12em solid rgba(230,0,18,0.5);
		border-bottom: 18em solid transparent;
		top: 0;
		left: 0;
	}
	#kv ul.slick_box {
		width: 100%;
		height: 36em;
		margin: 0 auto;
		padding: 0;
		overflow: hidden;
		list-style: none;
	}
		#kv ul.slick_box li {
			width: 100%;
			height: 36em;
			margin: 0 auto;
			padding: 0;
			color: #fff;
			text-align: left;
			position: relative;
		}
			#kv ul.slick_box li:before {
				position: absolute;
				content: '';
				display: block;
				width: 100%;
				height: 100%;
				margin: 0;
				padding: 0;
				top: 0;
				left: 0;
			}
			#kv ul.slick_box li.kv01:before {
				background: url(../images/top/kv_04_sp.jpg) center / cover no-repeat;
			}
			#kv ul.slick_box li.kv02:before {
				background: url(../images/top/kv_02_sp.jpg) center / cover no-repeat;
			}
			#kv ul.slick_box li.kv03:before {
				background: url(../images/top/kv_03_sp.jpg) center / cover no-repeat;
			}
			#kv ul.slick_box li.slick-current:before {
				-webkit-animation: KV_Zoom_sp 2s cubic-bezier(0, 0, 0, 1) 0s 1 forwards;
				animation: KV_Zoom_sp 2s cubic-bezier(0, 0, 0, 1) 0s 1 forwards;
			}
	#kv div.txt {
		position: absolute;
		width: 90%;
		margin: 0 auto;
		padding: 0;
		display: flex;
		flex-direction: column;
		align-items: flex-end;
		top: 40%;
		left: 4%;
		z-index: 1;
	}
		#kv div.txt img {
			display: inline-block;
		}
			#kv div.txt img:nth-of-type(1) {
				width: 100%;
				height: auto;
				margin: 0;
			}
			#kv div.txt img:nth-of-type(2) {
				width: 90%;
				height: auto;
				margin: 5% 0 0 0;
			}


/* なぜＴＭＲは選ばれ続けているのか？ */
div.index_chose {
	margin: 15% auto 0;
	padding: 0;
}
	div.index_chose h3 {
		display: inline-block;
		margin: 0 auto;
		padding: 2% 0;
		font-size: 5.8vw;
		line-height: 150%;
		font-weight: 500;
		color: #E50012;
		font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
		position: relative;
	}
		div.index_chose h3:before {
			position: absolute;
			content: '';
			display: block;
			width: 120%;
			height: 1px;
			margin: 0;
			padding: 0;
			background: #E60012;
			top: 0;
			right: -20%;
		}
			div.index_chose h3.scrollin:before {
				-webkit-animation: slideInRight2 0.8s ease-in-out 0s 1 forwards;
				animation: slideInRight2 0.8s ease-in-out 0s 1 forwards;
			}
		div.index_chose h3:after {
			position: absolute;
			content: '';
			display: block;
			width: 120%;
			height: 1px;
			margin: 0;
			padding: 0;
			background: #E60012;
			bottom: 0;
			left: -20%;
		}
			div.index_chose h3.scrollin:after {
				-webkit-animation: slideInLeft2 0.8s ease-in-out 0s 1 forwards;
				animation: slideInLeft2 0.8s ease-in-out 0s 1 forwards;
			}
	div.index_chose div.chose_point_top {
		margin: 0 auto;
		padding: 0 0 0 3%;
	}
		div.index_chose div.chose_point_top:first-of-type {
			padding: 5% 0 0 3%;
		}
		div.index_chose div.chose_point_top div.point_top_box {
			opacity: 0;
			width: 80%;
			height: 10em;
			margin: 4% auto 0;
			padding: 0;
			color: #fff;
			position: relative;
		}
			div.index_chose div.chose_point_top div.point_top_box.scrollin {
				-webkit-animation: bottomIn 0.8s ease-in-out 0s 1 forwards;
				animation: bottomIn 0.8s ease-in-out 0s 1 forwards;
			}
			div.index_chose div.chose_point_top div.point_top_box.box3 {
				color: #333333 !important;
			}
			div.index_chose div.chose_point_top div.point_top_box:before {
				position: absolute;
				content: '';
				display: block;
				width: 100%;
				height: 116%;
				transform: rotate(17deg) skew(-17deg, -17deg);
				top: -8%;
				left: 0;
				z-index: -1;
			}
				div.index_chose div.chose_point_top div.point_top_box.box1:before {
					background: linear-gradient(to bottom, #E60012 0%, #E60012 50%, #DA0011 50%, #DA0011 100%);
				}
				div.index_chose div.chose_point_top div.point_top_box.box2:before {
					background: linear-gradient(to bottom, #B0000D 0%, #B0000D 50%, #A7000C 50%, #A7000C 100%);
				}
				div.index_chose div.chose_point_top div.point_top_box.box3:before {
					background: linear-gradient(to bottom, #DEA5A6 0%, #DEA5A6 50%, #D39D9E 50%, #D39D9E 100%);
				}
			div.index_chose div.chose_point_top div.point_top_box span {
				position: absolute;
				display: block;
				margin: 0;
				padding: 0;
				font-size: 14.0vw;
				line-height: 100%;
				font-weight: 300;
				font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
				font-style: italic;
				color: rgba(255,255,255,0.3);
				top: -0.2em;
				right: -0.1em;
			}
				div.index_chose div.chose_point_top div.point_top_box span small {
					display: inline-block;
					margin-right: 0.2em;
					font-size: 6.4vw;
					line-height: 100%;
					font-weight: 300;
					vertical-align: 0.8em;
				}
			div.index_chose div.chose_point_top div.point_top_box h4 {
				height: 3.6em;
				margin: 0 auto;
				padding: 0 0 0 0.5em;
				font-size: 5.0vw;
				line-height: 130%;
				font-weight: 500;
				display: flex;
				justify-content: center;
				align-items: center;
				
			}
			div.index_chose div.chose_point_top div.point_top_box p {
				height: 5em;
				margin: 0 auto;
				padding: 0 2em 0 0;
				font-size: 3.4vw;
				line-height: 160%;
				font-weight: 400;
				display: flex;
				justify-content: center;
				align-items: center;
			}
	div.index_chose div.chose_point_cont {
		margin: 0 auto;
		padding: 10% 4% 0;
	}
		div.index_chose div.chose_point_cont div.point_box {
			margin: 40% auto 0;
			padding: 5% 4% 30%;
			text-align: left;
			background: #EFF0F1;
			position: relative;
		}
			div.index_chose div.chose_point_cont div.point_box:first-of-type {
				margin: 8% auto 0;
			}
			div.index_chose div.chose_point_cont div.point_box span {
				position: absolute;
				width: 20%;
				height: 3em;
				margin: 0 auto;
				padding: 0;
				font-size: 6.4vw;
				line-height: 110%;
				font-weight: 300;
				font-style: italic;
				font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
				color: #fff;
				display: flex;
				flex-direction: column;
				justify-content: center;
				align-items: center;
				z-index: 1;
			}
				div.index_chose div.chose_point_cont div.point_box.scrollin span {
					-webkit-animation: slideInTopLeft 0.8s ease-in-out 0s 1 forwards;
					animation: slideInTopLeft 0.8s ease-in-out 0s 1 forwards;
				}
				div.index_chose div.chose_point_cont div.point_box:nth-of-type(odd) span {
					top: -0.5em;
					left: -5%;
				}
				div.index_chose div.chose_point_cont div.point_box:nth-of-type(even) span {
					top: -0.5em;
					right: -5%;
				}
				div.index_chose div.chose_point_cont div.point_box span:before {
					position: absolute;
					content: '';
					display: block;
					width: 100%;
					height: 3em;
					margin: 0 auto;
					padding: 0;
					transform: rotate(17deg) skew(-17deg, -17deg);
					top: 0;
					left: 0;
					z-index: -1;
				}
					div.index_chose div.chose_point_cont div.point_box:nth-of-type(1) span:before {
						background: #E60012;
					}
					div.index_chose div.chose_point_cont div.point_box:nth-of-type(2) span:before {
						background: #B0000D;
					}
					div.index_chose div.chose_point_cont div.point_box:nth-of-type(3) span:before {
						background: #DEA5A6;
					}
				div.index_chose div.chose_point_cont div.point_box span small {
					display: block;
					margin: 0 0 0 0.5em;
					padding: 0;
					font-size: 3.2vw;
					line-height: 110%;
				}
			div.index_chose div.chose_point_cont div.point_box h4 {
				padding: 0;
				font-size: 4.8vw;
				line-height: 160%;
				font-weight: 500;
			}
				div.index_chose div.chose_point_cont div.point_box:nth-of-type(odd) h4 {
					margin: 0 0 0 15%;
				}
				div.index_chose div.chose_point_cont div.point_box:nth-of-type(even) h4 {
					margin: 0;
				}
			div.index_chose div.chose_point_cont div.point_box p {
				margin: 5% 0 0;
				padding: 0;
				font-size: 3.8vw;
				line-height: 180%;
			}
			div.index_chose div.chose_point_cont div.point_box div.img {
				position: absolute;
				width: 95%;
				margin: 0;
				padding: 0;
			}
				div.index_chose div.chose_point_cont div.point_box:nth-of-type(odd) div.img {
					bottom: -8em;
					right: -4.5%;
				}
				div.index_chose div.chose_point_cont div.point_box:nth-of-type(even) div.img {
					bottom: -8em;
					left: -4.5%;
				}
				div.index_chose div.chose_point_cont div.point_box div.img img {
					width: 100%;
					height: auto;
				}

/* シームレスにお受けしています */
div.index_seamless {
	margin: 50% auto 0;
	padding: 18% 4% 15%;
	background: #C8000F;
	position: relative;
	z-index: 1;
}
	div.index_seamless:before {
		opacity: 0;
		position: absolute;
		content: '';
		display: block;
		width: 78%;
		height: 32em;
		margin: 0;
		padding: 0;
		background: url(../images/top/seamless_bg.png) top center / contain no-repeat;
		top: 0;
		left: -18%;
		z-index: -1;
	}
		div.index_seamless.scrollin:before {
			-webkit-animation: slideInRight2 0.8s ease-in-out 0s 1 forwards;
			animation: slideInRight2 0.8s ease-in-out 0s 1 forwards;
		}
	div.index_seamless h3 {
		margin: 0 auto;
		padding: 0;
		font-size: 5.2vw;
		line-height: 150%;
		font-weight: 500;
		color: #fff;
		font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
	}
	div.index_seamless div.seamless_cont {
		margin: 0 auto;
		padding: 3% 0 0;
	}
		div.index_seamless div.seamless_cont div.seamless_box {
			margin: 12% auto 0;
			padding: 0;
		}
			div.index_seamless div.seamless_cont div.seamless_box div.img {
				width: 100%;
				margin: 0;
				padding: 0;
				position: relative;
			}
				div.index_seamless div.seamless_cont div.seamless_box:nth-of-type(odd) div.img {
					text-align: left;
				}
				div.index_seamless div.seamless_cont div.seamless_box:nth-of-type(even) div.img {
					text-align: right;
				}
				div.index_seamless div.seamless_cont div.seamless_box div.img img {
					width: 70%;
					height: auto;
				}
				div.index_seamless div.seamless_cont div.seamless_box div.img h4 {
					opacity: 0;
					position: absolute;
					width: 60%;
					height: 3em;
					margin: 0;
					padding: 0;
					font-size: 4.0vw;
					line-height: 180%;
					font-weight: 500;
					display: flex;
					justify-content: center;
					align-items: center;
					bottom: -1em;
					z-index: 1;
				}
					div.index_seamless div.seamless_cont div.seamless_box:nth-of-type(odd) div.img h4 {
						right: 0;
					}
					div.index_seamless div.seamless_cont div.seamless_box:nth-of-type(even) div.img h4 {
						left: 0;
					}
					div.index_seamless div.seamless_cont div.seamless_box div.img h4:after {
						position: absolute;
						content: '';
						display: block;
						width: 90%;
						height: 3.2em;
						margin: 0 auto;
						padding: 0;
						background: #fff;
						transform: rotate(15deg) skew(-15deg, -15deg);
						top: -5%;
						left: 5%;
						z-index: -1;
					}
					div.index_seamless div.seamless_cont div.seamless_box div.img h4.scrollin {
						-webkit-animation: slideInTopLeft 0.8s ease-in-out 0s 1 forwards;
						animation: slideInTopLeft 0.8s ease-in-out 0s 1 forwards;
					}
			div.index_seamless div.seamless_cont div.seamless_box p {
				margin: 8% 0 0;
				padding: 0;
				font-size: 3.7vw;
				line-height: 160%;
				color: #fff;
				text-align: left;
			}

/* 工事費用 */
div.index_price {
	margin: 0 auto;
	padding: 20% 4% 20%;
}
	div.index_price p.price_top {
		margin: 8% auto 0;
		padding: 0;
		font-size: 3.6vw;
		line-height: 180%;
	}
	div.index_price div.price_cont {
		width: 100%;
		margin: 15% auto 0;
		padding: 15% 6% 5%;
		background: #EFF0F1;
		position: relative;
	}
		div.index_price div.price_cont h5 {
			opacity: 0;
			position: absolute;
			width: 92%;
			height: 3.5em;
			margin: 0;
			padding: 0;
			font-size: 4.2vw;
			line-height: 180%;
			font-weight: 400;
			color: #fff;
			display: flex;
			justify-content: center;
			align-items: center;
			top: -1.7em;
			left: 0;
			z-index: 1;
		}
			div.index_price div.price_cont h5:after {
				position: absolute;
				content: '';
				display: block;
				width: 100%;
				height: 3.6em;
				margin: 0 auto;
				padding: 0;
				background: #E60012;
				transform: rotate(15deg) skew(-15deg, -15deg);
				top: 0;
				left: 0;
				z-index: -1;
			}
			div.index_price div.price_cont h5.scrollin {
				-webkit-animation: slideInTopLeft 0.8s ease-in-out 0s 1 forwards;
				animation: slideInTopLeft 0.8s ease-in-out 0s 1 forwards;
			}
		div.index_price div.price_cont h4 {
			margin: 0 auto;
			padding: 0;
			font-size: 4.6vw;
			line-height: 160%;
			font-weight: 500;
		}
		div.index_price div.price_cont p {
			margin: 5% auto 0;
			padding: 0;
			font-size: 3.4vw;
			line-height: 180%;
		}

/* 処理までの流れ */
div.index_flow {
	margin: 0 auto;
	padding: 20% 4%;
}
	div.index_flow div.flow_top {
		margin: 8% auto 0;
		padding: 0;
		font-size: 3.6vw;
		line-height: 180%;
	}
		div.index_flow div.flow_top p {
			margin: 20px auto 0;
			padding: 0;
			font-size: 16px;
			line-height: 180%;
		}
			div.index_flow div.flow_top p:first-of-type {
				margin: 0 auto;
			}
	div.index_flow ul {
		margin: 8% auto 0;
		padding: 0;
		list-style: none;
	}
		div.index_flow ul li {
			width: 100%;
			height: 4em;
			margin: 0;
			padding: 0 5%;
			position: relative;
			display: flex;
			align-items: center;
		}
			div.index_flow ul li.scrollin {
				opacity: 0;
				-webkit-animation: bottomIn 0.8s ease-in-out 0s 1 forwards;
				animation: bottomIn 0.8s ease-in-out 0s 1 forwards;
			}
			div.index_flow ul li:nth-of-type(1).scrollin {
				z-index: 10;
			}
			div.index_flow ul li:nth-of-type(2).scrollin {
				z-index: 9;
			}
			div.index_flow ul li:nth-of-type(3).scrollin {
				z-index: 8;
			}
			div.index_flow ul li:nth-of-type(4).scrollin {
				z-index: 7;
			}
			div.index_flow ul li:nth-of-type(5).scrollin {
				z-index: 6;
			}
			div.index_flow ul li:nth-of-type(6).scrollin {
				z-index: 5;
			}
			div.index_flow ul li:nth-of-type(7).scrollin {
				z-index: 4;
			}
			div.index_flow ul li:nth-of-type(8).scrollin {
				z-index: 3;
			}
			div.index_flow ul li:after {
				opacity: 0;
				position: absolute;
				content: '';
				display: block;
				width: 0.8em;
				height: 1.4em;
				margin: 0;
				background: url(../images/icon/flow_02.png) center / contain no-repeat;
				bottom: -0.7em;
				left: 7%;
				z-index: 1;
			}
				div.index_flow ul li.scrollin:after {
					-webkit-animation: slideInLeft2 0.8s ease-in-out 0s 1 forwards;
					animation: slideInLeft2 0.8s ease-in-out 0s 1 forwards;
				}
				div.index_flow ul li:last-of-type:after {
					display: none;
				}
			div.index_flow ul li:nth-of-type(odd) {
				background: #F2DDDE;
			}
			div.index_flow ul li:nth-of-type(even) {
				background: #F8EBEB;
			}
			div.index_flow ul li span {
				margin: 0 1em 0 0;
				padding: 0;
				font-size: 5.4vw;
				line-height: 100%;
				font-weight: 400;
				font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
				font-style: italic;
				color: #E60012;
			}
			div.index_flow ul li p {
				margin: 0;
				padding: 0;
				font-size: 4.2vw;
				line-height: 150%;
				text-align: left;
			}
			div.index_flow ul li a {
				position: absolute;
				display: block;
				width: 28%;
				margin: auto;
				padding: 0;
				font-size: 3.4vw;
				line-height: 2.4em;
				text-decoration: none;
				color: #333;
				background: #fff;
				border-radius: 1.2em;
				top: 50%;
				right: 5%;
				transform: translateY(-50%);
				-webkit- transform: translateY(-50%);
			}

/* 内装工事 */
div.index_renewal {
	margin: 0 auto;
	padding: 15% 4% 15%;
	background: #EFF0F1;
	position: relative;
	z-index: 1;
}
	div.index_renewal:before,
	div.index_renewal:after {
		opacity: 0;
		position: absolute;
		content: '';
		display: block;
		width: 62.5%;
		height: 26em;
		margin: 0;
		padding: 0;
		z-index: -1;
	}
	div.index_renewal:before {
		background: url(../images/top/renewal_bg_l_sp.png) top center / contain no-repeat;
		top: 0;
		left: 0;
	}
		div.index_renewal.scrollin:before {
			-webkit-animation: slideInRight2 0.8s ease-in-out 0s 1 forwards;
			animation: slideInRight2 0.8s ease-in-out 0s 1 forwards;
		}
	div.index_renewal:after {
		background: url(../images/top/renewal_bg_r_sp.png) bottom center / contain no-repeat;
		bottom: 0;
		right: 0;
	}
		div.index_renewal.scrollin:after {
			-webkit-animation: slideInLeft2 0.8s ease-in-out 0s 1 forwards;
			animation: slideInLeft2 0.8s ease-in-out 0s 1 forwards;
		}
	div.index_renewal h4 {
		margin: 5% auto 0;
		padding: 0;
		font-size: 5.4vw;
		line-height: 160%;
		font-weight: 500;
		font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
		color: #C0000E;
	}
	div.index_renewal h5 {
		margin: 8% auto 0;
		padding: 0;
		font-size: 3.8vw;
		line-height: 180%;
		font-weight: 500;
	}
	div.index_renewal p {
		margin: 3% auto 0;
		padding: 0;
		font-size: 3.8vw;
		line-height: 180%;
	}

/* お客さまの声 */
div.index_voice {
	margin: 0 auto 5%;
	padding: 20% 4% 15%;
	background: url(../images/top/voice_bg_sp.jpg) center bottom / cover no-repeat;
	overflow: hidden;
	position: relative;
}
	div.index_voice div.index_voice_in {
		margin: 0 auto;
		padding: 0;
	}
		div.index_voice div.index_voice_in h3.cont_ttl {
			color: #fff;
		}
			div.index_voice div.index_voice_in h3.cont_ttl span:after {
				background: #fff;
			}
			div.index_voice div.index_voice_in h3.cont_ttl small {
				color: #fff;
			}
		div.index_voice:after {
			position: absolute;
			content: '';
			display: block;
			width: 7%;
			height: 7em;
			margin: 0;
			padding: 0;
			background: #fff;
			transform: rotate(15deg) skew(-15deg, -15deg);
			top: -10px;
			right: 5%;
		}
		div.index_voice div.index_voice_in div.voice_cont {
			margin: 0 auto;
		}
			div.index_voice div.index_voice_in div.voice_cont.cont1 {
				padding: 2% 0 0;
			}
			div.index_voice div.index_voice_in div.voice_cont.cont2 {
			}
			div.index_voice div.index_voice_in div.voice_cont div.voice_box {
				width: 100%;
				margin: 8% auto 0;
				padding: 0;
				background: linear-gradient(to bottom, transparent 0px, transparent 3em, rgba(255,255,255,0.9) 3em, rgba(255,255,255,0.9) 100%);
			}
				div.index_voice div.index_voice_in div.voice_cont div.voice_box h4 {
					width: 100%;
					height: 3em;
					margin: 0;
					padding: 0;
					font-size: 4.8vw;
					line-height: 160%;
					font-weight: 500;
					font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
					background: linear-gradient(to bottom, transparent 0px, transparent 1.45em, #fff 1.45em, #fff 100%);
					display: flex;
					justify-content: center;
					align-items: center;
					position: relative;
					z-index: 1;
				}
					div.index_voice div.index_voice_in div.voice_cont div.voice_box h4:before {
						position: absolute;
						content: '';
						display: block;
						width: 100%;
						border-bottom: solid 1.5em #fff;
						border-left: solid 1em transparent;
						height: 0;
						top: 0;
						left: 0;
						z-index: -1;
					}
				div.index_voice div.index_voice_in div.voice_cont div.voice_box div.txt {
					width: 100%;
					margin: 0;
					padding: 5%;
					font-size: 3.8vw;
					line-height: 180%;
					text-align: left;
				}
					div.index_voice div.index_voice_in div.voice_cont div.voice_box div.txt p {
						margin: 0;
						padding: 0;
						font-size: 3.8vw;
						line-height: 180%;
					}
					div.index_voice div.index_voice_in div.voice_cont div.voice_box div.txt p.right {
						margin: 3% 0 0;
						padding: 0;
						text-align: right;
					}

/* よくある質問 */
div.index_faq {
	margin: 0 auto;
	padding: 20% 4% 15% 1%;
}
	div.index_faq p.faq_top {
		margin: 8% auto 0;
		padding: 0 0 0 2.5%;
		font-size: 3.6vw;
		line-height: 180%;
	}
		div.index_faq dl {
			margin: 0 auto;
			padding: 3% 0 0;
			display: flex;
			flex-wrap: wrap;
			align-items: flex-start;
		}
			div.index_faq dl dt {
				opacity: 0;
				width: 12%;
				height: 2em;
				font-size: 5.2vw;
				line-height: 120%;
				font-weight: 300;
				font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
				font-style: italic;
				display: flex;
				justify-content: center;
				position: relative;
			}
				div.index_faq dl dt.question {
					margin: 9% 0 0;
					padding: 0.2em 0 0;
					color: #fff;
					z-index: 1;
				}
					div.index_faq dl dt.question.scrollin {
						-webkit-animation: slideInTopLeft 0.8s ease-in-out 0s 1 forwards;
						animation: slideInTopLeft 0.8s ease-in-out 0s 1 forwards;
					}
				div.index_faq dl dt.answer {
					margin: 6% 0 0;
					padding: 0.3em 0 0;
				}
					div.index_faq dl dt.answer.scrollin {
						-webkit-animation: slideInBottomRight 0.8s ease-in-out 0s 1 forwards;
						animation: slideInBottomRight 0.8s ease-in-out 0s 1 forwards;
					}
				div.index_faq dl dt:before {
					position: absolute;
					content: '';
					display: block;
					width: 100%;
					height: 2.2em;
					margin: 0;
					padding: 0;
					transform: rotate(17deg) skew(-17deg, -17deg);
					top: -0.1em;
					left: 0;
					z-index: -1;
				}
					div.index_faq dl dt.question:before  {
						background: #E60012;
					}
					div.index_faq dl dt.answer:before  {
						background: #EFF0F1;
					}
			div.index_faq dl dd {
				width: 88%;
				padding: 0 0 0 7%;
				text-align: left;
			}
				div.index_faq dl dd.question {
					margin: 8% 0 0;
					font-size: 4.0vw;
					line-height: 150%;
				}
					div.index_faq dl dd:nth-of-type(3),
					div.index_faq dl dd:nth-of-type(5),
					div.index_faq dl dd:nth-of-type(19) {
						padding: 0.8em 0 0 7%;
					}
				div.index_faq dl dd.answer {
					margin: 5% 0 0;
					font-size: 3.6vw;
					line-height: 180%;
				}
					div.index_faq dl dd.answer h4 {
						margin: 5% 0 0.2em;
						padding: 0;
					}
						div.index_faq dl dd.answer h4 span {
							display: inline-block;
							margin: 0;
							padding: 0 1em;
							font-size: 3.6vw;
							line-height: 2em;
							font-weight: 400;
							background: #F2DDDE;
						}
					div.index_faq dl dd.answer ul {
						margin: 0;
						padding: 0;
						list-style: none;
					}
						div.index_faq dl dd.answer ul li:before {
							content: '●';
							display: inline-block;
							margin: 0 0.4em 0 0;
							padding: 0;
							font-size: 0.6em;
							color: #E60012;
							vertical-align: 0.2em;
						}
						div.index_faq dl dd.answer ul li {
							margin: 0;
							padding: 0 0 0 0.8em;
							text-indent: -0.4em;
						}
					div.index_faq dl dd.answer p {
						margin: 5% 0 0;
						padding: 0;
					}
						div.index_faq dl dd.answer p:first-of-type,
						div.index_faq dl dd.answer h4 + p {
							margin: 0;
						}

/* 採用情報 */
div.index_recruit {
	margin: 0 auto;
	padding: 12% 0 12%;
	background: url(../images/top/recruit_bg_sp.png) right bottom / cover no-repeat ,#EFF0F1;
	position: relative;
	overflow: hidden;
	z-index: 1;
}
	div.index_recruit span.trapezoid {
		position: absolute;
		content: '';
		display: block;
		width: 1%;
		height: 14em;
		margin: 0;
		padding: 0;
		background: #E60012;
		transform: rotate(16.5deg) skew(-16.5deg, -16.5deg);
		bottom: -1em;
		right: 17%;
		z-index: -1;
	}
	div.index_recruit div.index_recruit_in {
		width: 90%;
		margin: 0;
		padding: 5% 6% 5% 5%;
		background: #eff0f2;
		text-align: left;
	}
		div.index_recruit div.index_recruit_in h3 {
			margin: 0;
			padding: 0;
		}
			div.index_recruit div.index_recruit_in h3 span {
				margin: 0 auto;
				padding: 0;
				font-size: 6.4vw;
				line-height: 160%;
				font-weight: 500;
				font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
			}
			div.index_recruit div.index_recruit_in h3 small {
				display: block;
				margin: 1.5% auto 0;
				padding: 0;
				font-size: 3.4vw;
				line-height: 120%;
				font-weight: 500;
				color: #E50012;
				font-family: 'Kiwi Maru', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
			}
		div.index_recruit div.index_recruit_in p {
			margin: 8% auto 0;
			padding: 0;
			font-size: 3.6vw;
			line-height: 180%;
		}
		div.index_recruit div.index_recruit_in div.cont_btn a {
			width: 100%;
		}

#foot_contact div.foot_contact_in div.contact_btn div {
	opacity: 0;
}