
@charset "UTF-8";

/*----------------------------------------
  base
----------------------------------------*/
/* stylelint-disable selector-max-type */
body {
	min-width: 0;
	}

.pc_appear {
	display: none;
	}

.sp_appear {
	display: block;
	}

/*----------------------------------------
  layouts main_visual

  position: relative;
  width: 700px;
  margin: 0 auto;
----------------------------------------*/
.mv_area {
	background-color: #fafafb;
	margin: 0 auto;
	}

.mv_section {
	position: relative;
	}

.mainImg img {
	position: absolute;
	width: 100%;
	}

/** .mv_section .section_img_sp {
	max-width: 50%;
	}
**/

.mv_section .catch {
	position: absolute;
	width: 50%;
	top: 30%;
	left: 10%;
	}

.mv_section .catch-1 {
	position: absolute;
	width: 10px;
	top: 80%;
	left: 70%;
	}

.mv_section .catch-2 {
	position: absolute;
	width: 100px;
	top: 25%;
	left: 60%;
	}


/*----------------------------------------
  components notice
----------------------------------------*/
.preface {
	margin: 0 auto;
	width: 80%;
	}

.notice {
	text-align: left;
	padding-top: 10px;
	font-size: 0.8rem;
	}


/*----------------------------------------
  components about_section
----------------------------------------*/

.about_section {
  display: block;
}

.about_section .about_main_block,
.about_section .about_member_block {
	width: 100%;
	}

.about_section .about_main_block {
	padding: 20px;
	}

.about_section .about_main_block_inner {
	width: auto;
	margin: 0 0 -50px;
	padding: 10px;
	}

.about_section .about_main_block .block_catch {
	margin-bottom: 2px;
	font-size: 2.0rem;
	font-weight: bold;
	}

.about_section .about_main_block .block_text {
	font-size: 1.0rem;
	}

.about_section .about_member_block {
	padding: 40px 20px;
	}

.about_section .member_list {
	width: 100%;
	}

.about_section .member_item:not(:first-of-type) {
	margin-top: 50px;
	}

.about_section .member_photo {
	width: 20.2667vw;
	}

.about_section .member_detail {
	width: 63.4667vw;
	}

.about_section .member_comment {
  font-size: 1.0rem;
  padding-left: 2px;
  line-height: 1.6;
}

/*----------------------------------------
  components feature_section
----------------------------------------*/

.feature_section {
	padding: 0 10px 0;
	}

.feature_section .section_inner {
	width: auto;
	padding: 0 12px;
	}

.feature_section .section_header {
	height: 140px;
	margin-bottom: 20px;
	padding-left: 12px;
	}

.feature_section .section_header::before {
	width: 140px;
	height: 140px;
	}

.feature_section .section_title {
	font-size: 1.8rem;
	}

.feature_section .section_title.en {
	font-size: 1.2rem;
	}

.feature_section .section_body {
	width: 90%;
	padding: 0 0 20px;
	}

.section_body .block_text {
	font-size: 1.0rem;
	}



/*----------------------------------------
  components news_section
----------------------------------------*/

.news_section {
  padding: 0 10px 0;
  background-color: #ffffff;
}

.news_section .section_inner {
  width: auto;
  padding: 0 20px;
}

.news_section .section_header {
  display: flex;  /*要素のブロックをフレキシブルにする*/
  align-items: center;
  height: 140px;
  margin-bottom: 0;
  padding-left: 12px;
  position: relative;
  z-index: 1;
}

.news_section .section_header::before {
  display: block;  /*要素をブロックボックスとして表示にする*/
  width: 120px;
  height: 120px;
  border: 4px solid #eceef1;
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.news_section .section_title {
  font-size: 1.8rem;
  font-weight: bold;
  color: #005d90;
}

.news_section .section_title_en {
  display: block;
  font-size: 1.2rem;
  font-weight: bold;
  color: #005d90;
  letter-spacing: .05em;
}

/***
.news_section .section_title.en {
  font-family: "Oswald", sans-serif;
  font-size: 2.5rem;
  color: #005d90;
}
***/

.news_section .section_body {
  padding: 0 0 20px;
}

.news_section a:after	{content: "";
	display: block;
	clear: both}

.news_section .section_body dl {
	margin: 0 0 10px 0;
	width: 100%;
	line-height: 1.6;
	font-size: 1.0rem;
	float: left;
	padding: 6px;
	border-bottom: dotted 2px #dddddd;
	}

.news_section .section_body dt {
	float: left;
	width: 10%;
	text-align: left;
	font-size: 1.0rem;
	color: #888888;
	font-weight: bold;
	margin-right: 1.0%;
	}

.news_section .section_body dd {
	float: auto;
	width: 98%;
	text-align: left;
	}

.news_section .section_body dd a:hover {
	color: #0000ff;
	}


/*----------------------------------------
  components org_section
----------------------------------------*/

.org_section {
  padding: 0 10px 0;
  background-color: #ffffff;
}

.org_section .section_inner {
  width: auto;
  padding: 0 20px;
}

.org_section .section_header {
  height: 140px;
  margin-bottom: 0;
  padding-left: 12px;
  }

.org_section .section_header::before {
  width: 140px;
  height: 140px;
}

.org_section .section_title {
  font-size: 1.8rem;
}

/***
.org_section .section_title.en {
  font-size: 3rem;
}
***/

.org_section .section_body {
  padding: 0 0 40px;
}

.org_section .org_text {
	font-size: 1.0rem;
	}

.org_section .org_infographic {
  padding: 0 20px;
}

.org_section .org_infographic_img {
  width: 100%;
  margin-bottom: 20px;
}



/*----------------------------------------
  components member_section
----------------------------------------*/

.member_section {
  padding: 20px 0;
  background-color: #fafafb;
}

.member_section .section_header {
  display: flex;
  align-items: center;
  height: 80px;
  margin-bottom: 0px;
  padding-left: 30px;
  position: relative;
  z-index: 1;
}

.member_section .section_title {
  font-size: 1.4rem;
  font-weight: bold;
  color: #005d90;
}

.member_section .section_title_en {
  display: block;
  font-size: 1.2rem;
  font-weight: bold;
  color: #005d90;
  letter-spacing: .05em;
}

/***
.member_section .section_title.en {
  font-family: "Oswald", sans-serif;
  font-size: 3.0rem;
}
***/

.member_section .member_list {
  margin-left: 40px;
  margin-bottom: 20px;
  line-height: 1.9;
  font-size: 1.0rem;
}



/*----------------------------------------
  components company_section
----------------------------------------*/

.company_section {
  padding: 20px 0;
  background-color: #ffffff;
}

.company_section .section_inner {
  width: 1000px;
  margin: 0 auto;
}

.company_section .section_header {
  display: flex;
  align-items: center;
  height: 80px;
  margin-bottom: 0px;
  padding-left: 30px;
  position: relative;
  z-index: 1;
}

.company_section .section_title {
  font-size: 1.8rem;
  font-weight: bold;
  color: #005d90;
}

.company_section .section_title_en {
  display: block;
  font-size: 1.2rem;
  font-weight: bold;
  color: #005d90;
  letter-spacing: .05em;
}

/***
.company_section .section_title.en {
  font-size: 3.0rem;
}
***/

.company_section .section_body {
  margin-left: 40px;
  margin-bottom: 10px;
  line-height: 1.9;
  font-size: 1.0rem;
}



/*----------------------------------------
  components inv_section
----------------------------------------*/


.inv_section {
  padding: 0 10px 0;
  background-color: #ffffff;
}

.inv_section .section_inner {
  width: auto;
  padding: 0 20px;
}

.inv_section .section_header {
  height: 140px;
  margin-bottom: 0;
  padding-left: 12px;
 }

.inv_section .section_header::before {
  width: 140px;
  height: 140px;
}

.inv_section .section_title {
  font-size: 1.8rem;
}

/***
.inv_section .section_title.en {
  font-size: 3rem;
}
***/

.inv_section .section_body {
  padding: 0 0 40px;
}





/*----------------------------------------
  layouts footer
----------------------------------------*/

.footer_entry {
  display: block;
}

.footer_entry_block {
  width: auto;
}

.footer_entry .block_inner {
  width: auto;
  padding: 40px 20px 50px;
}

.footer_entry .block_title {
  margin-bottom: 2px;
  font-size: 1.8rem;
  font-weight: bold;
}



.footer_entry .block_text {
  font-size: 1.0rem;
}

/***
.footer_entry .block_text.en {
  font-size: 1.4rem;
}
***/

.footer_entry .block_file_list {
  display: block;
  font-size: 1.0rem;
}

.footer_entry .file_item:not(:first-of-type) {
  margin-top: 25px;
}

.footer_entry .block_left {
  padding-right: inherit;
}

.footer_entry .block_right {
  padding-left: inherit;
}

.footer_entry .block_right .block_file_list {
  margin-top: 20px;
}


