@charset "UTF-8";

body {
	position: relative;
	background-color: rgba(202, 232, 242, 0.2);
}


/* contents */

#contents {
	width: 100%;
	position: relative;
}

#lower_title_block .title_box{
	width: 350px;
}

#contact_block{
}

@media screen and (max-width: 840px) {
}
@media screen and (max-width: 640px) {
}

/*-----------------------------------
	flow_block
-----------------------------------*/
#flow_block{
	padding: 100px 0;
	margin-bottom: 86px;
	background-color: #fff;
	position: relative;
}

/*side_box*/
#flow_block .side_box{
	width: 270px;
	z-index: 10;
}

#flow_block .side_box .anchor_link{
	gap: 15px;
	flex-direction: column;
}
#flow_block .side_box .anchor_link li{
	position: relative;
}
#flow_block .side_box .anchor_link li a{
	display: block;
	padding: 16px 18px;
	background: #F9FDFF;
	border: 1px solid #D3DEE2;
	border-radius: 4px;
	font-size: 15px;
	transition: 0.3s;
}
#flow_block .side_box .anchor_link li a.active,
#flow_block .side_box .anchor_link li a:hover{
	background: #D6F3FF;
	border: 1px solid #D6F3FF;
}
.num{
	position: absolute;
	left: 18px;
	top: 0;
	bottom: 0;
	margin: auto;
	color: #fff;
	font-weight: 600;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: #52BDE4;
	text-align: center;
	line-height: 31px;
}
#flow_block .side_box .anchor_link li .link_ttl{
	font-weight: 700;
	padding-left: 40px;
	line-height: 2;
}

/*contents_box*/
#flow_block .contents_box{
	width: calc(100% - 332px);
	margin-left: auto;
}
#flow_block .contents_box .period_wrap{
	padding-left: 68px;
	position: relative;
}
#flow_block .contents_box .period_wrap.wrap_02{
	margin: 30px 0 0;
}
#flow_block .contents_box .period_wrap .period{
	width: 48px;
	height: 100%;
	text-align: center;
	align-content: center;
	line-height: 1.2;
	padding: 15px;
	border-radius: 10px;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	box-sizing: border-box;
	background: #667277;
	color: #fff;
}
#flow_block .contents_box .period_wrap .period .route{
	transform: rotate(90deg);
    display: block;
}
#flow_block .contents_box .period_wrap .flow_wrap{
	gap: 30px;
	flex-direction: column;
}
#flow_block .contents_box .period_wrap .flow_wrap .flow_box{
	padding: 30px 40px;
	background: #F9FDFF;
	border: 1px solid #E8F0F3;
	border-radius: 10px;
	position: relative;
}
#flow_block .contents_box .period_wrap .flow_wrap .flow_box::before{
	content: "";
	position: absolute;
	bottom: -24px;
	left: 0;
	right: 0;
	margin: auto;
	width: 57px;
	height: 24px;
	background: #E8F0F3;
	clip-path: polygon(0 0, 50% 100%, 100% 0);
}
#flow_block .contents_box .period_wrap.wrap_02 .flow_wrap .flow_box:last-child::before{
	content: none;
}
#flow_block .contents_box .period_wrap .flow_wrap .flow_box .lower_h4{
	position: relative;
	padding-left: 45px;
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 10px;
	line-height: 1.5;
}
#flow_block .contents_box .period_wrap .flow_wrap .flow_box .lower_h4 .num{
	left: 0;
	font-size: 15px;
	font-weight: 600;
}
#flow_block .contents_box .period_wrap .flow_wrap .flow_box .box_txt{
	font-size: 15px;
	font-weight: 500;
}
#flow_block .contents_box .period_wrap .flow_wrap .flow_box .contact_wrap{
	margin: 10px auto 0;
	padding: 14px 0 0;
	border-top: 1px solid #E8F0F3;
	gap: 54px;
	align-items: center;
}
#flow_block .contents_box .period_wrap .flow_wrap .flow_box .contact_wrap .contact_btn{
	width: 200px;
	color: #fff;
}
#flow_block .contents_box .period_wrap .flow_wrap .flow_box .contact_wrap .tel_box{
	width: calc(100% - 254px);
}
#flow_block .contents_box .period_wrap .flow_wrap .flow_box .contact_wrap .tel_box .tel_txt{
	font-size: 18px;
	font-weight: 700;
	position: relative;
	padding-left: 30px;
	align-content: center;
}
#flow_block .contents_box .period_wrap .flow_wrap .flow_box .contact_wrap .tel_box .tel_txt::before{
	content: "";
	position: absolute;
	top: 4px;
	left: 0;
	width: 20px;
	height: 20px;
	background: url("../img/flow/tel_txt_line.svg")no-repeat center/contain;
}
#flow_block .contents_box .period_wrap .flow_wrap .flow_box .contact_wrap .tel_box .tel_txt span{
	font-size: 15px;
	font-weight: 500;
	padding: 0 0 0 9px;
}
#flow_block .contents_box .period_wrap .flow_wrap .flow_box .contact_wrap .tel_box .tel_num{
	font-size: 18px;
	font-weight: 700;
	font-family: "Poppins", sans-serif;
	margin: 10px 0 0;
}
#flow_block .contents_box .period_wrap .flow_wrap .flow_box .contact_wrap .tel_box .tel_num a{
	font-size: 30px;
}
@media screen and (max-width: 1100px) {
	#flow_block .contents_box .period_wrap .flow_wrap .flow_box .contact_wrap{
		gap: 20px;
	}
	#flow_block .contents_box .period_wrap .flow_wrap .flow_box .contact_wrap .tel_box{
		width: 100%;
	}
}
@media screen and (max-width: 840px) {
	#flow_block .contents_inner{
		gap: 30px;
	}
	#flow_block .side_box,
	#flow_block .contents_box{
		width: 100%;
	}
	#flow_block .contents_box .period_wrap .flow_wrap .flow_box .contact_wrap .contact_btn{
		margin: auto;
	}
	#flow_block .contents_box .period_wrap .flow_wrap .flow_box .contact_wrap .tel_box{
		width: 260px;
		margin: auto;
	}
	#flow_block .contents_box .period_wrap .flow_wrap .flow_box .contact_wrap .tel_box .tel_txt span{
		display: block;
	}
}
@media screen and (max-width: 640px) {
	#flow_block{
		padding: 50px 0;
		margin-bottom: 70px;
	}
	#flow_block .contents_box .period_wrap{
		padding-left: 50px;
	}
	#flow_block .contents_box .period_wrap .period{
		padding: 10px;
		width: 35px;
	}
	#flow_block .contents_box .period_wrap .flow_wrap .flow_box{
		padding: 20px;
		box-sizing: border-box;
	}
	#flow_block .contents_box .period_wrap .flow_wrap .flow_box .lower_h4{
		font-size: 18px;
		padding-left: 40px;
	}
	#flow_block .contents_box .period_wrap .flow_wrap .flow_box .contact_wrap .tel_box{
		width: 240px;
	}
	#flow_block .contents_box .period_wrap .flow_wrap .flow_box .contact_wrap .tel_box .tel_txt,
	#flow_block .contents_box .period_wrap .flow_wrap .flow_box .contact_wrap .tel_box .tel_num{
		font-size: 16px;
	}
	#flow_block .contents_box .period_wrap .flow_wrap .flow_box .box_txt,
	#flow_block .contents_box .period_wrap .flow_wrap .flow_box .contact_wrap .tel_box .tel_txt span{
		font-size: 14px;
	}
	#flow_block .contents_box .period_wrap .flow_wrap .flow_box .contact_wrap .tel_box .tel_num a{
		font-size: 25px;
	}
}

