/*////////////////////////////////////
flow_area
////////////////////////////////////*/

@media screen and (min-width: 768px){
#flow_area{
	position: relative;
	width: 100%;
	margin-bottom: 100px;
}

#flow_place{
	position: relative;
	width: 90%;
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}

}

@media screen and (min-width: 0px) and (max-width: 767px){
#flow_area{
	position: relative;
	width: 100%;
	margin-bottom: 100px;
}

#flow_place{
	position: relative;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}
}


/*////////////////////////////////////

////////////////////////////////////*/

@media screen and (min-width: 768px){
.flow {
	position: relative;
	width: 100%;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin-bottom: 10px;
}
.flow_num {
	position: relative;
	width: 16%;
	margin-right: 4%;
}
.flow_item_place {
	position: relative;
	width: 80%;
	background: #F4E8C7;
	border-radius: 30px;
	padding: 30px 120px 30px 30px;
}
.flow_item_place h3 {
	font-size: 1.8rem;
	margin-bottom: 12px;
}
.flow_item_place p {
	font-size: 1.4rem;
	line-height: 1.6;
}
.step1 {
	position: relative;
	width: 1px;
	height: 80px;
	margin-left: 8%;
	margin-bottom: 10px;
	background-image: repeating-linear-gradient(180deg, #000000, #000000 12px, transparent 12px, transparent 16px);
	background-position: left top;
	background-repeat: repeat-y;
	background-size: 2px 100%;
}
#flow_item1::after,
#flow_item2::after,
#flow_item3::after,
#flow_item4::after,
#flow_item5::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	width: 10%;
	aspect-ratio:604/461;
}
#flow_item1::after {
	background: url("../flow/img/flow_icon1.png");
	background-size: cover;
}
#flow_item2::after {
	background: url("../flow/img/flow_icon2.png");
	background-size: cover;
}
#flow_item3::after {
	background: url("../flow/img/flow_icon3.png");
	background-size: cover;
}
#flow_item4::after {
	background: url("../flow/img/flow_icon4.png");
	background-size: cover;
}
#flow_item5::after {
	background: url("../flow/img/flow_icon5.png");
	background-size: cover;
}
}

@media screen and (min-width: 0px) and (max-width: 767px){
.flow {
	position: relative;
	width: 100%;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin-bottom: 10px;
}
.flow_num {
	position: relative;
	width: 25%;
	margin-right: 4%;
}
.flow_item_place {
	position: relative;
	width: 79%;
	background: #F4E8C7;
	border-radius: 30px;
	padding: 80px 20px 20px 20px;
}
.flow_item_place h3 {
	font-size: 1.8rem;
	margin-bottom: 12px;
	text-align: center;
}
.flow_item_place p {
	font-size: 1.4rem;
	line-height: 1.6;
}
.step1 {
	position: relative;
	width: 1px;
	height: 80px;
	margin-left: 60%;
	margin-bottom: 10px;
	background-image: repeating-linear-gradient(180deg, #000000, #000000 12px, transparent 12px, transparent 16px);
	background-position: left top;
	background-repeat: repeat-y;
	background-size: 2px 100%;
}
#flow_item1::after,
#flow_item2::after,
#flow_item3::after,
#flow_item4::after,
#flow_item5::after {
	content: "";
	position: absolute;
	top: 15px;
	left: 50%;
	transform: translateX(-50%);
	width: 50px;
	aspect-ratio:604/461;
}
#flow_item1::after {
	background: url("../flow/img/flow_icon1.png");
	background-size: cover;
}
#flow_item2::after {
	background: url("../flow/img/flow_icon2.png");
	background-size: cover;
}
#flow_item3::after {
	background: url("../flow/img/flow_icon3.png");
	background-size: cover;
}
#flow_item4::after {
	background: url("../flow/img/flow_icon4.png");
	background-size: cover;
}
#flow_item5::after {
	background: url("../flow/img/flow_icon5.png");
	background-size: cover;
}
}