@charset "utf-8";

.staff_detail__wrap {
	margin-top: 40px;
	position: relative;
	overflow: hidden;
	padding: 0 30px;
}
.staff_detail__wrap::before {
    position: absolute;
    content: "";
    display: block;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    transform: skewX(
330deg) translateX(115%);
    width: 100px;
    transform-origin: top;
    background-color: #10104B;
    z-index: -1;
}
.staff_detail__info {
	margin-bottom: 30px;
}
.staff_detail__info_txt {
	margin-bottom: 15px;
	font-size: 14px;
	line-height: 2.5;
}
.staff_detail__info_txt > span {
	background-color: #ecf0f4;
}
.staff_detail__info_label {
	display: inline-block;
	background-color: #33bad6;
	color: #fff;
	padding: 2.5px;
	font-size: 10px;
}
.staff_detail__info_name {
	margin-top: 10px;
	font-size: 19px;
}
.staff_detail__info_sub_name {
	font-size: 12px;
	margin-left: 5px;
}
.staff_detail__info_career {
	margin-top: 5px;
	font-size: 12px;
}
.staff__faq_box {
	margin-bottom: 25px;
}
.staff__faq_txt_box {
	background-color: rgba(255,255,255,0.9);
	padding: 30px 20px;
	z-index: 2;
	position: relative;
}
.staff__faq_cnt {
	color: #33bad6;
	margin-bottom: 20px;
	font-size: 16px;
}
.staff__faq_cnt > span {
	font-size: 22px;
}
.staff__faq_txt_ttl {
	font-size: 20px;
	line-height: calc(28/20);
	margin-bottom: 20px;
}
.staff__faq_txt {
	font-size: 13px;
	line-height: calc(20/13);
}
.staff__faq_box03 .staff__faq_box01_img {
	margin-left: -30px;
}
.staff__faq_box03 .staff__faq_txt_box {
	margin-top: -30px;
}
.staff__faq_box04 .staff__faq_box01_img {
	margin-right: -30px;
}
.staff__faq_box04 .staff__faq_txt_box {
	margin-top: -30px;
}
.staff_detail__schedule {
	padding: 50px 30px;
	background-color: #ecf0f4;
}
.staff_detail__schedule_list_wrap {
	margin-top: 30px;
	position: relative;
}
.staff_detail__schedule_list_wrap::before {
	position: absolute;
	content: "";
	top: 0;
	left: 15%;
	bottom: 0;
	width: 5px;
	background-color: #33bad6;
	z-index: 1;
}
.staff_detail__schedule_list {
	display: flex;
	align-items: baseline;
	position: relative;
	margin-bottom: 25px;
}
.staff_detail__schedule_list:last-of-type {
	margin-bottom: 0;
}
.staff_detail__schedule_list:last-of-type::before {
	position: absolute;
	content: "";
	top: 0;
	left: 15%;
	bottom: 0;
	width: 5px;
	background-color: #ecf0f4;
	z-index: 2;
}
.staff_detail__schedule_list > dt {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-weight: bold;
	font-size: 16px;
	padding: 5px;
	min-width: 95px;
	width: 95px;
	margin-right: 10px;
	background-color: #10104b;
	z-index: 3;
}
.staff_detail__schedule_list > dd {
	width: calc(1005 - 105px);
}
.staff_detail__schedule_ttl {
	font-size: 18px;
	color: #10104b;
	font-weight: bold;
	margin-bottom: 10px;
}
.staff_detail__schedule_txt {
	font-size: 13px;
	line-height: calc(18/13);
}

@media screen and (min-width:768px) {
	.staff_detail__info {
		margin-bottom: 30px;
	}
	.staff_detail__info_txt {
		margin-bottom: 50px;
		font-size: 30px;
		line-height: 2.5;
	}
	.staff_detail__info_label {
		padding: 5px;
		font-size: 14px;
	}
	.staff_detail__info_name {
		margin-top: 10px;
		font-size: 28px;
	}
	.staff_detail__info_career {
		margin-top: 10px;
	}
	.staff__faq_box {
		max-width: 1190px;
		margin: 0 auto 100px;
	}
	.staff__faq_box01 {
		display: flex;
		align-items: center;
		margin-top: 200px;
	}
	.staff__faq_box01 .staff__faq_box01_img {
		width: 65%;
		max-width: 730px;
	}
	.staff__faq_box01 .staff__faq_txt_box {
		width: 55%;
		max-width: 620px;
		margin-top: -200px;
		margin-left: -130px;
	}
	.staff__faq_txt_box {
		padding: 30px;
	}
	.staff__faq_cnt {
		font-size: 20px;
	}
	.staff__faq_cnt > span {
		font-size: 27px;
	}
	.staff__faq_txt_ttl {
		font-size: 27px;
		margin-bottom: 25px;
	}
	.staff__faq_txt {
		font-size: 18px;
		line-height: calc(30/18);
	}
	.staff__faq_box02 {
		max-width: 860px;
	}
	.staff__faq_box03 {
		max-width: 1080px;
		display: flex;
		flex-direction: row-reverse;
		margin-top: 100px;
	}
	.staff__faq_box03 .staff__faq_box01_img {
		max-width: 730px;
		width: 65%;
		margin-left: inherit;
		margin-right: -30px;
	}
	.staff__faq_box03 .staff__faq_txt_box {
		max-width: 624px;
		width: 65%;
		margin-top: 220px;
		z-index: 1;
		margin-right: -200px;
	}
	.staff__faq_box04 {
		max-width: 996px;
		margin: 120px auto;
	}
	.staff__faq_box04 .staff__faq_box01_img {
		max-width: 868px;
		margin-right: inherit;
		margin-left: -30px;
		z-index: 2;
	}
	.staff__faq_box04 .staff__faq_txt_box {
		margin-left: auto;
		max-width: 720px;
		margin-right: -30px;
		margin-top: -100px;
	}

	.staff_detail__schedule {
		padding: 80px 30px;
	}
	.staff_detail__schedule_list_wrap {
		max-width: 850px;
		margin: 40px auto 0;
	}
	.staff_detail__schedule_list_wrap::before {
		left: 10%;
	}
	.staff_detail__schedule_list {
		margin-bottom: 30px;
	}
	.staff_detail__schedule_list:last-of-type::before {
		left: 10%;
	}
	.staff_detail__schedule_list > dt {
		font-size: 20px;
		padding: 5px;
		min-width: 135px;
		width: 135px;
		margin-right: 20px;
	}
	.staff_detail__schedule_list > dd {
		width: calc(1005 - 145px);
	}
	.staff_detail__schedule_ttl {
		font-size: 22px;
	}
	.staff_detail__schedule_txt {
		font-size: 18px;
	}

	.staff_detail__wrap::before {
		transform: skewX(
			330deg) translateX(115%);
				width: 200px;
	}
}
@media screen and (max-width:1024px) {
	.cmn_mv__ttl {
		left: 20px;
	}
}
@media screen and (min-width:1025px) {
	.staff_detail__info {
		position: absolute;
		left: 60px;
		bottom: 1em;
	}
	.cmn_mv__ttl {
		position: relative;
		display: flex;
		align-items: flex-end;
		font-size: 54px;
	}
	.cmn_mv__ttl .cmn_mv__sub_ttl {
		margin-top: 0;
		font-size: 18px;
		margin-left: 20px;
		margin-bottom: 10px;
	}
	.staff_detail__info_txt > span {
		background-color: #fff;
	}
	.staff_detail__info_txt .staff_detail__info_txt02 {
		margin-left: 2em;
	}
	.staff_detail__info_txt .staff_detail__info_txt03 {
		margin-left: 1em;
	}
	.staff_detail__info_label {
		color: #000;
		background-color: #fff;
	}
	.staff_detail__info_name {
		color: #fff;
	}
	.staff_detail__info_career {
		color: #fff;
	}
	.staff_detail__wrap::before {
		transform: skewX(
			330deg) translateX(115%);
				width: 300px;
	}
	.staff__faq_box01 {
		margin-top: 100px;
	}
	.staff_detail__schedule_list_wrap::before ,
	.staff_detail__schedule_list:last-of-type::before {
		left: 8%;
	}
	.staff__faq_box01 .staff__faq_txt_box {
		margin-top: -400px;
		margin-left: -180px;
	}
}