@charset "UTF-8";

#key-visual{
	text-align: center;
	margin-top: 60px;
	margin-bottom: 100px;
}
#key-visual p{
	font-size: 2.6rem;
	font-weight: 900;
	margin-bottom: 1em;
}
#key-visual h1{
	font-size: 5.4rem;
	font-weight: 900;
	max-width: 804px;
	margin-left: auto;
	margin-right: auto;
}
#key-visual h1 img{
	display: block;
	width: 100%;
}
.flow{
	max-width: 1020px;
	margin: 0 auto;
}
.flow li{
	position: relative;
}
.flow li:not(:last-of-type):after{
	width: 0;
	height: 0;
	content: "";
	display: block;
	margin: 25px auto;
	border-top: 34px solid #e2e2e2;
	border-left: 34px solid transparent;
	border-right: 34px solid transparent;
}
.wrap{
	padding: 20px 25px 20px 50px;
	border: 1px solid #808080;
	display: flex;
	align-items: center;
	width: 100%;
	justify-content: space-between;
}
.txt01{
	width: 24.893%;
	text-align: center;
}
.txt01 p{
	font-size: 2.3rem;
	font-weight: 500;
	margin-bottom: 25px;
}
.txt01 p span{
	color: #da0012
}
.txt01 h2:nth-of-type(1),
.txt01 h2:nth-of-type(2){
	margin-bottom: 35px;
}
.txt01 h2{
	color: #da0012;
	font-size: 2.8rem;
	font-weight: 900;
}
.txt01 a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 40px;
	border-radius: 6px;
	color: #fff;
	font-size: 1.7rem;
	background: #ff9617;
	margin-top: 8px;
	font-weight: 700;
}
.desc{
	width: 30.212%;
	line-height: 2;
}
.flow .pic{
	width: 35.106%;
}
.caution{
	max-width: 1020px;
	margin: 60px auto 210px;
	line-height: 2;
}

@media screen and (max-width: 1020px) and (min-width: 770px){

	.wrap{
		padding: 20px;
	}
	.txt01{
		width: 30%;
	}
	.txt01 p{
		font-size: 1.8rem;
		font-weight: 500;
		margin-bottom: 25px;
	}
}

@media screen and (max-width: 769px){
	#key-visual{
		margin-top: 10rem;
		margin-bottom: 1.5rem;
		padding-left: 4rem;
		padding-right: 4rem;
	}
	#key-visual p{
		font-size: 3.2rem;
		margin-bottom: .5em;
		letter-spacing: -.075em;
	}
	#key-visual h1{
		font-size: 5.4rem;
		line-height: 1.203;
		max-width: 45rem;
		margin-top: 2.5rem;
	}
	.flow{
		max-width: 100%;
	}
	.flow li:not(:last-of-type):after{
		margin: 3.2rem auto;
		border-top: 3.4rem solid #e2e2e2;
		border-left: 3.4rem solid transparent;
		border-right: 3.4rem solid transparent;
	}
	.wrap{
		padding: 4rem;
		border: .1rem solid #808080;
		display: block;
		width: 100%;
	}
	.desc{
		display: none;
	}
	.txt01{
		width: 100%;
	}
	.txt01 p{
		font-size: 3.2rem;
		margin-bottom: 2rem;
	}
	.txt01 p.pc-none{
		font-size: 3.2rem;
		line-height: 1.5625;
		margin-bottom: 1em;
		text-align: left;
	}
	.txt01 h2{
		font-size: 4.2rem;
		font-weight: 600;
		font-family: 'RoGSanSrfStd-Bd';
		margin-bottom: .5em !important;
		height: 3.9rem;
	}
	.txt01 h2 img{
		display: block;
		height: 100%;
		width: auto;
		margin-left: auto;
		margin-right: auto;
	}
	.txt01 a{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 44.8rem;
		height: 7.8rem;
		margin: 2.3rem auto 0;
		border-radius: 1rem;
		font-size: 3.3rem;
	}
	.flow .pic{
		width: 100%;
		margin-top: 3rem;
	}
	.caution{
		max-width: 100%;
		margin: 7.8rem auto 6.8rem;
		line-height: 1.714;
		font-size: 2.8rem;
	}

}