@charset "utf-8";

.flow_list{padding:0;}
.flow_list li{
	position:relative;
	list-style:none;
	padding:30px 40px 5px;
	margin-bottom:45px;
	background:url(/recruit/img/common/bg_gray.jpg) no-repeat center/cover;
}
.flow_list li::after{
	content:'';
	position:absolute;
	right:0;
	bottom:-26px;
	left:0;
	width:20px;
	height:20px;
	margin:auto;
	border-right:1px solid #E41F1F;
	border-bottom:1px solid #E41F1F;
	transform:rotate(45deg);
}
.flow_list li:last-child::after{display:none;}
.flow_list h3{
	padding:0;
	margin-top:0;
	text-align:center;
}
.flow_list h3::before{display:none;}
.flow_list p{
	margin-bottom:25px;
	text-align:center;
}
.flow_list a.non{max-width:250px;}

.faq_list{padding:0;}
.faq_list div{
	list-style:none;
	margin-bottom:10px;
	border:1px solid #ccc;
	border-radius:5px;
}
.faq_list dt{
	display:flex;
	align-items:flex-start;
	padding:23px 25px;
	margin:0;
	font-family:var(--font_serif);
	font-size:2rem;
	font-weight:500;
	letter-spacing:2px;
	line-height:2.9rem;
	cursor:pointer;
	transition:color 0.3s;
}
.faq_list dt:hover{color:#E41F1F;}
.faq_list dt::before{
	content:'Q.';
	flex-shrink:0;
	margin-right:8px;
	color:#E41F1F;
}
.faq_list dt span{
	position:relative;
	width:100%;
	padding-right:40px;
}
.faq_list dt span::before, .faq_list dt span::after{
	content:'';
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	width:19px;
	height:1px;
	margin:auto;
	background:#E41F1F;
}
.faq_list dt span::after{
	transform:rotate(90deg);
	transition:opacity 0.3s;
}
.faq_list dt.open span::after{opacity:0;}
.faq_list dd{
	display:none;
	position:relative;
	padding:16px 0 21px 32px;
	margin:0 25px;
	border-top:1px dotted #ccc;
	line-height:2.9rem;
}
.faq_list dd::before{
	content:'A.';
	position:absolute;
	top:16px;
	left:0;
	color:#E41F1F;
	font-family:var(--font_serif);
	font-size:2rem;
	letter-spacing:2px;
}

.bg_box{
	padding:40px 20px 30px;
	background:url(/recruit/img/common/bg_gray.jpg) no-repeat center/cover;
	border-radius:5px;
}
.bg_white{
	padding:25px 20px 15px;
	margin-bottom:15px;
	background:#fff;
	border-radius:5px;
}
.bg_white + .bg_white{margin-bottom:25px;}
.bg_box p{
	margin-bottom:10px;
	text-align:center;
}
.bg_white h4{
	margin:0 0 20px;
	font-size:2rem;
	letter-spacing:2px;
	line-height:2.9rem;
	text-align:center;
}
.bg_white p{margin-bottom:10px;}
.bg_box p br, .bg_white p br{display:none;}
.bg_box .tel, .bg_white .tel{
	display:block;
	margin-top:-5px;
	color:#E41F1F;
	font-family:var(--font_serif);
	font-size:2.2rem;
	letter-spacing:2.2px;
}
.bg_white .tel{margin-bottom:-5px;}
.bg_box [href^="tel:"], .bg_white [href^="tel:"]{
	margin-left:8px;
	color:#E41F1F !important;
	font-size:3.4rem;
	letter-spacing:3.4px;
	line-height:4.9rem;
}
.bg_box a.non{max-width:250px;}
.bg_box .link_btn, .bg_white .link_btn{
	width:200px;
	margin:auto;
}


@media screen and (max-width:1024px){

.faq_list dt{
	font-size:1.7rem;
	letter-spacing:1.7px;
	line-height:2.7rem;
}
.faq_list dd{
	font-size:1.4rem;
	letter-spacing:1.4px;
	line-height:2.5rem;
}
.faq_list dd::before{
	font-size:1.7rem;
	letter-spacing:1.7px;
}
.bg_box{padding:30px 20px 20px;}
.bg_box .tel, .bg_white .tel{
	font-size:1.7rem;
	letter-spacing:1.7px;
}
.bg_box [href^="tel:"], .bg_white [href^="tel:"]{
	margin-left:5px;
	font-size:2.7rem;
	letter-spacing:2.7px;
	line-height:4rem;
}
.bg_white h4{
	font-size:1.8rem;
	letter-spacing:1.8px;
	line-height:2.6rem;
}

}


@media screen and (min-width:768px) and (max-width:1024px){

.flow_list li{padding:30px 20px 10px;}
.flow_list p{margin-bottom:20px;}
.faq_list dt{padding:20px;}
.faq_list dd{margin:0 20px;}
.faq_list dd::before{top:15px;}
.bg_white{padding:20px 20px 5px;}

}


@media screen and (max-width:767px){

.flow_list li{
	padding:25px 15px 15px;
	margin-bottom:40px;
}
.flow_list li::after{
	bottom:-23px;
	width:15px;
	height:15px;
}
.flow_list h3{margin-bottom:20px;}
.flow_list p{margin-bottom:15px;}

.faq_list dt{padding:15px;}
.faq_list dt::before{margin-right:5px;}
.faq_list dt span{padding-right:30px;}
.faq_list dt span::before, .faq_list dt span::after{width:15px;}
.faq_list dd{
	padding:11px 0 16px 25px;
	margin:0 15px;
}
.faq_list dd::before{top:11px;}

.bg_white{
	padding:20px 20px 10px;
	margin:0 5px 10px;
}
.bg_white + .bg_white{margin-bottom:10px;}
.bg_white h4{margin-bottom:15px;}

}


@media screen and (max-width:600px){

.flow_list p{text-align:left;}
.flow_list a.non{
	display:block;
	margin:auto;
}
.bg_white p{text-align:center;}
.bg_white h4 + p{text-align:left;}

}


@media screen and (max-width:550px){

.bg_box p br, .bg_white p br{display:block;}

}


@media screen and (max-width:374px){

.bg_white [href^="tel:"]{
	font-size:2.5rem;
	letter-spacing:2.5px;
	line-height:3.6rem;
}

}