@charset "UTF-8";

/*--------------------------------------------------------------------
=== [TOP] ====================================
 -------------------------------------------------------------------*/

#seo_top_ceo {
	display: flex;
	margin: 0 auto 50px;
	max-width: 1200px;
}

#seo_top_ceo figure {
	width: 50%;
	flex-shrink: 0;
}

#seo_top_ceo figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#seo_top_ceo .txtArea {
	display: flex;
	flex-direction: column;
	width: 50%;
	padding: 40px 50px;
	color: #fff;
	line-height: 1.5;
	flex-shrink: 0;
	background: linear-gradient(to right, #00AFDD, rgba(0, 175, 221, 0.6));
}

#seo_top_ceo .secTitle {
	font-size: 40px;
	font-weight: bold;
	margin-bottom: 10px;
}

#seo_top_ceo .leadTxt {
	font-size: 30px;
	font-weight: 600;
	margin-bottom: 20px;
}

#seo_top_ceo .txtArea .wrap {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}

#seo_top_ceo .txtArea .name {
	margin-bottom: 20px;
	font-size: 22px;
	font-weight: 600;
}

#seo_top_ceo .txtArea .name span {
	font-size: 14px;
	font-weight: 500;
	display: block;
	margin-top: 5px;
}

#seo_top_ceo .txtArea .moreBtn {
	margin-top: auto;
}

#seo_top_ceo .txtArea .moreBtn a {
	font-size: 16px;
	font-weight: bold;
	border: 2px solid #fff;
	display: block;
	width: 210px;
	margin: 0 auto;
	line-height: 42px;
	text-align: center;
}

#sec_top_cfo {
	display: flex;
	margin: 0 auto 50px;
	max-width: 1200px;
}

#sec_top_cfo figure {
	width: 50%;
	flex-shrink: 0;
}

#sec_top_cfo figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#sec_top_cfo .txtArea {
	display: flex;
	flex-direction: column;
	width: 50%;
	padding: 40px 50px;
	color: #005BAC;
	line-height: 1.5;
	flex-shrink: 0;
	background: linear-gradient(to right, #ECF0F3, rgba(236, 240, 243, 0.6));
}

#sec_top_cfo .secTitle {
	font-size: 40px;
	font-weight: bold;
	margin-bottom: 10px;
}

#sec_top_cfo .leadTxt {
	font-size: 30px;
	font-weight: 600;
	margin-bottom: 20px;
}

#sec_top_cfo .txtArea .wrap {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}

#sec_top_cfo .txtArea .name {
	margin-bottom: 20px;
	font-size: 22px;
	font-weight: 600;
}

#sec_top_cfo .txtArea .name span {
	font-size: 14px;
	font-weight: 500;
	display: block;
	margin-top: 5px;
}

#sec_top_cfo .txtArea .moreBtn {
	margin-top: auto;
}

#sec_top_cfo .txtArea .moreBtn a {
	font-size: 16px;
	font-weight: bold;
	border: 2px solid #005BAC;
	display: block;
	width: 210px;
	margin: 0 auto;
	line-height: 42px;
	text-align: center;
}

#sec_top_outside {
	margin: 0 auto 50px;
	max-width: 1200px;
	background-color: #ECF0F3;
	text-align: center;
	color: #005bac;
	padding: 50px 0;
}

#sec_top_outside ul {
	display: flex;
}

#sec_top_outside ul li {
	width: 33.333%;
	flex-shrink: 0;
}

#sec_top_outside ul li figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 18 / 13;
}

#sec_top_outside .inner .secTitle {
	font-size: 36px;
	font-weight: bold;
	margin-bottom: 20px;
}

#sec_top_outside .inner .leadTxt {
	font-size: 28px;
	font-weight: 600;
	line-height: 1.5;
	margin-bottom: 40px;
}

#sec_top_outside .inner .name {
	font-size: 22px;
	font-weight: 600;
	margin-top: 15px;
}

#sec_top_outside .inner .name span {
	font-size: 14px;
	font-weight: 500;
	display: block;
	margin-top: 10px;
}

#sec_top_outside .moreBtn {
	padding: 40px 0 0;
}

#sec_top_outside .moreBtn a {
	font-size: 16px;
	font-weight: bold;
	border: 2px solid #005BAC;
	display: block;
	width: 210px;
	margin: 0 auto;
	line-height: 42px;
	text-align: center;
}



/*--------------------------------------------------------------------
=== [TOP] ====================================
 -------------------------------------------------------------------*/

#sec_ceo,
#sec_cfo {
	display: flex;
	align-items: center;
	margin: 0 auto 5.2vw auto;
	max-width: 1200px;
}

#sec_ceo .txtArea,
#sec_cfo .txtArea {
	position: absolute;
	width: 57%;
	max-width: 680px;
	padding: 3.125vw 0 3.125vw 60px;
	color: #005bac;
}

@media (max-width: 1440px) {

	#sec_ceo .txtArea,
	#sec_cfo .txtArea {
		width: auto;
	}
}

#sec_ceo .txtArea {
	background: linear-gradient(90deg, rgba(0, 175, 221, 1) 0%, rgba(0, 175, 221, 0) 100%);
	color: #fff;
}

#sec_ceo .txtArea .pageTitle,
#sec_cfo .txtArea .pageTitle {
	font-size: 36px;
	margin-bottom: 50px;
	font-weight: bold;
}

#sec_ceo .txtArea .leadTxt,
#sec_cfo .txtArea .leadTxt {
	font-size: 30px;
	font-weight: 600;
	line-height: 1.5;
	margin-bottom: 40px;
}

#sec_ceo .txtArea .name,
#sec_cfo .txtArea .name {
	font-size: 22px;
	font-weight: 600;
}

#sec_ceo .txtArea .name span,
#sec_cfo .txtArea .name span {
	font-size: 14px;
	font-weight: 500;
	display: block;
	margin-top: 10px;
	line-height: 1.4;
}

#sec_ceo .txtArea .wrap,
#sec_cfo .txtArea .wrap {
	display: flex;
	align-items: center;
}

#sec_ceo .txtArea .moreBtn a,
#sec_cfo .txtArea .moreBtn a {
	font-size: 14px;
	font-weight: bold;
	border: 3px solid #fff;
	display: block;
	width: 210px;
	line-height: 40px;
	text-align: center;
	margin-left: 160px;
}

#sec_cfo .txtArea .moreBtn a {
	border: 3px solid #005bac;
	color: #005bac;
}


#sec_outside {
	margin: 0 auto 5.2vw auto;
	max-width: 1200px;
	background-color: #ecf0f3;
	text-align: center;
	color: #005bac;
	padding: 3.64vw 0 2.08vw 0;
}

#sec_outside ul {
	display: flex;
}
#sec_outside ul li {
	width: 33.333%;
	flex-shrink: 0;
}
#sec_outside ul li figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 18 / 13;
}

#sec_outside .inner .pageTitle {
	font-size: 36px;
	margin-bottom: 50px;
	font-weight: bold;
}

#sec_outside .inner .leadTxt {
	font-size: 30px;
	font-weight: 600;
	line-height: 1.5;
	margin-bottom: 40px;
}

#sec_outside .inner .name {
	font-size: 22px;
	font-weight: 600;
	margin-top: 10px;
}

#sec_outside .inner .name span {
	font-size: 14px;
	font-weight: 500;
	display: block;
	margin-top: 10px;
}

#sec_outside .moreBtn a {
	font-size: 14px;
	font-weight: bold;
	border: 3px solid #005bac;
	color: #005bac;
	display: block;
	width: 210px;
	line-height: 40px;
	text-align: center;
	margin: 50px auto 0;
}

#sec_index {
	margin-bottom: 5.2vw;
}

#sec_index .inner {
	max-width: 1200px;
	padding: 3.64vw;
	margin: 0 auto;
	background-color: #ecf0f3;
}

#sec_index .inner .upr {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 30px;
}

#sec_index .inner .upr h2 {
	margin-bottom: 25px;
}

#sec_index .inner .upr h2 em {
	font-style: normal;
	font-size: 30px;
	font-weight: bold;
}

#sec_index .inner .upr ul a {
	font-size: 20px;
	font-weight: bold;
	color: #005bac;
	position: relative;
}

#sec_index .inner .upr ul li:first-child {
	margin-bottom: 20px;
}
#sec_index .inner .upr ul a.ico-blank:after {
	background-image: url("../img/ico_blank.png");
	background-size: contain;
	content: "";
	display: inline-block;
	width: 21px;
	height: 20px;
	margin-left: 10px;
	vertical-align: bottom;
}
#sec_index .inner .upr ul a.ico-dl:after {
	background-image: url("../img/ico_download.svg");
	background-size: contain;
	content: "";
	display: inline-block;
	width: 25px;
	height: 25px;
	margin-left: 10px;
	vertical-align: middle;
}

#sec_index .inner .upr figure {
	width: 600px;
}

#sec_index .inner .btm h3 {
	font-size: 22px;
	font-weight: bold;
	position: relative;
	margin-bottom: 30px;
	color: #005bac;
}

#sec_index .inner .btm h3:after {
	content: "";
	background-color: #000;
	height: 1px;
	width: 90%;
	display: inline-block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 10%;
	margin: auto;
}

#sec_index .inner .btm ul {
	display: flex;
	justify-content: space-between;
}

#sec_index .inner .btm ul li {
	width: 25%;
	padding-right: 20px;
}
#sec_index .inner .btm ul li:nth-child(3) {
	width: 26%;
}
#sec_index .inner .btm ul li:last-child {
	width: 24%;
	padding-right: 0;
}

#sec_index .inner .btm ul dl {
	margin-bottom: 30px;
}

#sec_index .inner .btm ul dl dt,
#sec_index .inner .btm ul dl dd div {
	margin-bottom: 10px;
	line-height: 1.2;
}

#sec_index .inner .btm ul dl dt,
#sec_index .inner .btm ul dl dd div {
	display: flex;
}

#sec_index .inner .btm ul dl dt {
	font-size: 16px;
	color: #005bac;
}


#sec_index .inner .btm ul dl dd {
	font-size: 14px;
	color: #000;
}

#sec_index .inner .btm ul dl dt span,
#sec_index .inner .btm ul dl dd span {
	color: #005bac;
	font-weight: bold;
	width: 2.1em;
	display: block;
	flex-shrink: 0;
}

#sec_index .inner .btm ul dl dd span {
	width: 2.4em;
	flex-shrink: 0;
}

/*--------------------------------------------------------------------
=== [outside] ====================================
 -------------------------------------------------------------------*/

.interviewer {
	display: flex;
	background-color: #ecf0f3;
	margin-bottom: 70px;
}

.interviewer figcaption {
	display: none;
}
.interviewer img {
	max-width: 400px;
}

.interviewer .txt {
	padding: 30px 50px;
}

.interviewer .txt p {
	line-height: 1.8;
	margin-bottom: 30px;
}

.interviewer .txt .name {
	font-size: 22px;
	font-weight: 600;
}
.interviewer .txt .name span {
	font-size: 14px;
	font-weight: 500;
	display: block;
	margin-top: 10px;
}

.interviewTxt {
	margin-bottom: 40px;
}

.interviewTxt dt {
	float: left;
	flex-shrink: 0;
	font-weight: 600;
	white-space: nowrap;
}

.interviewTxt dt:after {
	content: "｜";
}

.interviewColumnR {
	display: flex;
	justify-content: space-between;
	margin-bottom: 40px;
}

.interviewColumnR figure {
	width: 410px;
	flex-shrink: 0;
	margin: 0 0 0 70px !important;
}
.interviewColumnR .interviewTxt {
	margin-bottom: 0;
}

.interviewColumnL {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	margin-bottom: 40px;
}
.interviewColumnL figure {
	width: 410px;
	flex-shrink: 0;
	margin: 0 70px 0 0 !important;
}
.interviewColumnL .interviewTxt {
	margin-bottom: 0;
}