@charset "utf-8";
#charm .page_inner {
	padding: 0 0 100px;
}
.recruit_lead_wrap {
	position: relative;
	padding: 300px 0 0;
}
.recruit_lead_img {
	position: absolute;
	right: 0;
	top: 0;
	width: 354px;
}
.recruit_lead_ttl {
	font-size: 24px;
}
.recruit_lead_txt {
	margin: 30px 0 0;
	font-weight: 400;
	line-height: 1.7;
}
.recruit_lead_txt p + p {
	margin: 12px 0 0;
}
@media screen and (min-width: 768px) {
	.recruit_lead_wrap {
		padding: 0 40% 0 0;
	}
	.recruit_lead_img {
		width: 40%;
	}
	.recruit_lead_ttl {
		font-size: clamp(24px, 3.12vw, 40px);
	}
	.recruit_lead_txt {
		max-width: 670px;
	}
}
@media screen and (min-width: 1280px) {
	#charm .page_inner {
		padding: 0 0 160px;
	}
	.recruit_lead_wrap {
		padding: 0;
	}
	.recruit_lead_img {
		width: 44.3%;
	}
	.recruit_lead_ttl {
		font-size: 40px;
	}
	.recruit_lead_txt {
		margin: 40px 0 0;
	}
	.recruit_lead_txt p + p {
		margin: 20px 0 0;
	}
}
/* 当院で働く魅力 */
.charm_wrap {
	margin: 80px 0 0;
}
.charm_list {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 30px 0;
}
.charm_item {
	max-width: 400px;
}
.charm_item_ttl {
	font-size: 17px;
	margin: 10px 0 0;
}
.charm_item_txt {
	margin: 10px 0 0;
	font-weight: 400;
	line-height: 1.7;
}
@media screen and (min-width: 768px) {
	.charm_list {
		flex-direction: row;
		flex-wrap: wrap;
		align-items: flex-start;
		gap: 30px 18px;
	}
	.charm_item {
		width: calc((100% - 18px) /2);
	}
	.charm_item_ttl {
		font-size: clamp(17px, 1.56vw, 20px);
	}
}
@media screen and (min-width: 1024px) {
	.charm_list {
		gap: 30px;
	}
	.charm_item {
		width: calc((100% - 60px) /3);
	}
}
@media screen and (min-width: 1280px) {
	.charm_wrap {
		margin: 120px 0 0;
	}
	.charm_list {
		gap: 50px 45px;
	}
	.charm_item {
		width: calc((100% - 90px) /3);
	}
	.charm_item_ttl {
		font-size: 20px;
		margin: 19px 0 0;
	}
	.charm_item_txt {
		margin: 20px 0 0;
		font-size: 18px;
	}
}
@media screen and (min-width: 1350px) {
	.recruit_lead_img {
		width: 35%;
		max-width: 830px;
	}
}
@media screen and (min-width: 1600px) {
	.recruit_lead_img {
		width: 44.3%;
	}
	.charm_list {
		gap: 60px 45px;
	}
	.charm_item_ttl {
		font-size: 26px;
	}
	.charm_item_txt {
		font-size: 20px;
	}
}
@media screen and (min-width: 1700px) {
	.charm_wrap {
		margin: 240px 0 0;
	}
}
/* 募集職種 */
.page_link_btn_txt_01 {
	line-height: 1.45;
}
.page_link_btn_txt_02 {
	font-size: 12px;
	font-weight: 400;
	line-height: 1.4;
	margin: 3px 0 0;
}
.page_link_entry_btn {
	background: #50B6BB;
	border: 3px solid #50B6BB;
	padding: 15px 13px 18px 18px;
	color: #FFF;
}
.page_link_entry_btn::after {
	background: url(../images/common/entry_btn.svg) center / contain no-repeat;
}
.page_link_entry_btn:hover {
	border: 3px solid #FFF;
}
.job_type_box_wrap {
	margin: 40px 0 0;
}
.job_type_box + .job_type_box {
	margin: 40px 0 0;
}
.job_type_box {
	background: #FFF;
	border-radius: 10px;
	padding: 17px 20px 40px;
}
.job_type_box_ttl {
	display: flex;
	align-items: center;
	gap: 0 11px;
	border-bottom: 1px solid #50B6BB;
	padding: 0 0 8px;
}
.job_type_box_ttl_img {
	border: 2px solid #EEEEEC;
	border-radius: 50%;
	width: 48px;
}
.job_type_name {
	font-size: 20px;
	line-height: 1.45;
}
.job_type_item {
	padding: 9px 0;
	display: flex;
	flex-direction: column;
	gap: 1px 0;
	position: relative;
}
.job_type_item::after {
	content: "";
	display: block;
	background: url(../images/common/dots.svg) repeat-x left / contain;
	width: 100%;
	height: 3px;
	position: absolute;
	bottom: 0;
}
.job_type_item dd {
	line-height: 1.7;
	font-weight: 400;
}
.entry_btn_wrap {
	margin: 19px 0 0;
}
.entry_btn {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 252px;
	height: 42px;
	padding: 0 18px 0 12px;
	border: solid 2px #50B6BB;
	border-radius: 40px;
	background: #50b6bb;
	color: #fff;
	margin: auto;
	transition: all 0.5s ease-out;
}
.entry_btn_icon {
	background: #FFF;
	width: 14px;
	height: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
}
.entry_btn_icon svg {
	fill: #50b6bb;
	width: 6px;
	transition: all 0.5s ease-out;
}
@media screen and (min-width: 768px) {
	.page_link_btn_txt_02 {
		font-size: clamp(12px, 1.4vw, 18px);
	}
	.page_link_entry_btn {
		padding: 17px 13px 17px 18px;
	}
	.job_type_box_wrap {
		margin: 80px 0 0;
	}
	.job_type_box + .job_type_box {
		margin: 60px 0 0;
	}
	.job_type_box {
		padding: 30px 40px 60px;
	}
	.job_type_box_ttl {
		gap: 0 30px;
		padding: 0 0 18px;
	}
	.job_type_box_ttl_img {
		width: 80px;
	}
	.job_type_name {
		font-size: clamp(24px, 3.12vw, 40px);
	}
	.job_type_item {
		padding: 15px 0;
		flex-direction: row;
		align-items: center;
		gap: 0;
	}
	.job_type_item dt {
		width: 21.7%;
	}
	.job_type_item dd {
		width: 78.3%;
	}
	.entry_btn_wrap {
		margin: 30px 0 0;
	}
	.entry_btn {
		width: 300px;
		height: 50px;
		padding: 0 18px 0 20px;
	}
	.entry_btn_icon {
		width: 20px;
		height: 20px;
	}
	.entry_btn_icon svg {
		width: unset;
	}
	.entry_btn:hover {
		background: #FFF;
		color: #50B6BB;
	}
	.entry_btn:hover .entry_btn_icon {
		background: #50b6bb;
	}
	.entry_btn:hover .entry_btn_icon svg {
		fill: #FFF;
	}
}
@media screen and (min-width: 1280px) {
	.page_link_btn_txt_02 {
		font-size: 18px;
	}
	.page_link_entry_btn {
		padding: 22px 17px;
	}
	.job_type_box_wrap {
		margin: 120px 0 0;
	}
	.job_type_box + .job_type_box {
		margin: 80px 0 0;
	}
	.job_type_box {
		padding: 47px 90px 80px;
	}
	.job_type_box_ttl {
		gap: 0 51px;
		padding: 0 0 31px;
	}
	.job_type_box_ttl_img {
		width: 120px;
		border: 5px solid #EEEEEC;
	}
	.job_type_name {
		font-size: 40px;
	}
	.job_type_item {
		padding: 27px 0;
	}
	.entry_btn_wrap {
		margin: 40px 0 0;
	}
	.entry_btn {
		width: 360px;
		height: 60px;
		padding: 0 18px 0 27px;
	}
}
@media screen and (min-width: 1500px) {
	.page_link_btn_item {
		width: calc((100% - 30px) / 4);
	}
	.page_link_btn_txt {
		padding: 0 38px 0 0;
	}
}