@charset "UTF-8";
/*
Theme Name: ""
Description:""
Theme URI: www/
Author: MS
Author URI: www/
Version: 1
*/
@import "reset.css";
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;400;600;700&display=swap");
a {
  color: #1a0dab;
  text-decoration: none;
  -webkit-transition: all 0.1s ease-in;
  -moz-transition: all 0.1s ease-in;
  -ms-transition: all 0.1s ease-in;
  -o-transition: all 0.1s ease-in;
  transition: all 0.1s ease-in;
}
a:link, a:visited {
  color: #1a0dab;
  text-decoration: none;
}
a:hover, a:focus, a:active {
  text-decoration: underline;
  outline: none;
  -webkit-transition: all 0.1s ease-in;
  -moz-transition: all 0.1s ease-in;
  -ms-transition: all 0.1s ease-in;
  -o-transition: all 0.1s ease-in;
  transition: all 0.1s ease-in;
}

a:hover img {
  filter: alpha(opacity=60);
  -moz-opacity: 0.6;
  opacity: 0.6;
  -webkit-transition: all 0.1s ease-in;
  -moz-transition: all 0.1s ease-in;
  -ms-transition: all 0.1s ease-in;
  -o-transition: all 0.1s ease-in;
  transition: all 0.1s ease-in;
}

a.non-hover:hover img {
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  opacity: 1;
}

.cf:before,
.cf:after {
  content: "";
  display: block;
  overflow: hidden;
}

.cf:after {
  clear: both;
}

.cf {
  zoom: 1;
}

.sp_only {
  display: none;
}

.pc_only {
  display: block;
}

.sp_only_inline {
  display: none;
}

.pc_only_inline {
  display: inline-block;
}

html {
  overflow-y: scroll;
}

body {
  margin: 0;
  padding: 0px;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 100%;
  color: #000000;
  background-color: #ffffff;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
  position: relative;
  min-height: 100dvh;
}

/*  Loading
--------------------------------------- */
#page-wrap {
  position: relative;
  min-height: 100dvh;
}

#page-loader {
  display: block;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: #ffffff;
  z-index: 100000;
}
#page-loader .loader {
  width: 50px;
  height: 50px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -25px 0 0 -25px;
  font-size: 10px;
  text-indent: -12345px;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  border-right: 1px solid rgba(0, 0, 0, 0.2);
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  border-left: 1px solid rgb(0, 0, 0);
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  -webkit-animation: spinner 700ms infinite linear;
  -moz-animation: spinner 700ms infinite linear;
  -ms-animation: spinner 700ms infinite linear;
  -o-animation: spinner 700ms infinite linear;
  animation: spinner 700ms infinite linear;
  z-index: 100001;
}

@-webkit-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-moz-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-o-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
/*-------------------------------------------------
	++ HEADER
-------------------------------------------------*/
header.site_header {
  width: 100%;
  height: 70px;
  background-color: #238C00;
  position: relative;
}
header.site_header #site_name {
  margin: 0 auto;
  text-align: center;
  display: block;
  clear: both;
  background: url("../img/logo_hc_wh.svg") no-repeat 50% 50%;
  background-size: contain;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  width: 400px;
  height: 30px;
  position: absolute;
  top: 20px;
  left: 30px;
  z-index: 999;
}
header.site_header .box_menu {
  position: absolute;
  right: 10px;
  top: 20px;
  z-index: 10;
}
header.site_header .box_menu nav.box_main_menu {
  float: left;
  letter-spacing: 0.2em;
  margin-top: -4px;
}
header.site_header .box_menu nav.box_main_menu ul.main-menu li {
  width: auto;
  float: left;
  position: relative;
}
header.site_header .box_menu nav.box_main_menu ul.main-menu li a, header.site_header .box_menu nav.box_main_menu ul.main-menu li a:link,
header.site_header .box_menu nav.box_main_menu ul.main-menu li a:visited {
  display: block;
  margin: 0 20px;
  font-size: 15px;
  line-height: 120%;
  font-weight: 600;
  letter-spacing: 0.2em;
  padding: 8px 0.4em 8px 0.6em;
  color: #fff;
  border-bottom: solid 1px rgba(255, 255, 255, 0);
  transition: all 0.3s;
}
header.site_header .box_menu nav.box_main_menu ul.main-menu li a:hover, header.site_header .box_menu nav.box_main_menu ul.main-menu li a:focus, header.site_header .box_menu nav.box_main_menu ul.main-menu li a:active, header.site_header .box_menu nav.box_main_menu ul.main-menu li a.current, header.site_header .box_menu nav.box_main_menu ul.main-menu li a:link:hover, header.site_header .box_menu nav.box_main_menu ul.main-menu li a:link:focus, header.site_header .box_menu nav.box_main_menu ul.main-menu li a:link:active, header.site_header .box_menu nav.box_main_menu ul.main-menu li a:link.current,
header.site_header .box_menu nav.box_main_menu ul.main-menu li a:visited:hover,
header.site_header .box_menu nav.box_main_menu ul.main-menu li a:visited:focus,
header.site_header .box_menu nav.box_main_menu ul.main-menu li a:visited:active,
header.site_header .box_menu nav.box_main_menu ul.main-menu li a:visited.current {
  text-decoration: none;
  border-bottom: solid 1px #fff;
}
header.site_header .box_menu nav.box_main_menu ul.main-menu li:hover > ul, header.site_header .box_menu nav.box_main_menu ul.main-menu li:active > ul,
header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li:hover > ul,
header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li:active > ul {
  visibility: visible;
  opacity: 1;
}
header.site_header .box_menu nav.box_main_menu ul.main-menu li ul {
  display: block;
  position: absolute;
  left: 20px;
  top: 34px;
  z-index: 1000;
  /*形状を指定*/
  width: auto;
  max-width: 220px;
  white-space: nowrap;
  background-color: #fff;
  padding: 20px;
  box-shadow: 0 12px 54px rgba(0, 0, 0, 0.12);
  /*はじめは非表示*/
  visibility: hidden;
  opacity: 0;
  /*アニメーション設定*/
  transition: all 0.2s;
}
header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li {
  display: block;
  width: 100%;
}
header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a, header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:link,
header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:visited {
  margin: 0;
  padding: 16px 12px 14px 12px;
  display: block;
  width: 100%;
  font-size: 14px;
  line-height: 140%;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: #000;
  border-bottom: solid 1px rgba(0, 0, 0, 0.5);
}
header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:hover, header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:focus, header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:active, header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:link:hover, header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:link:focus, header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:link:active,
header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:visited:hover,
header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:visited:focus,
header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:visited:active {
  border-bottom: solid 1px #000;
}
header.site_header .box_menu .box_lang {
  float: left;
  margin-left: 20px;
  letter-spacing: 0.1em;
}
header.site_header .box_menu .box_lang a, header.site_header .box_menu .box_lang span {
  color: #fff;
  font-size: 12px;
  line-height: 100%;
  padding: 8px 10px 8px 14px;
  float: left;
}
header.site_header .box_menu .box_lang a.current, header.site_header .box_menu .box_lang span.current {
  background-color: #fff;
  border-bottom: solid 1px #fff;
  color: #000;
}
header.site_header .box_menu .box_lang a:hover, header.site_header .box_menu .box_lang a:focus, header.site_header .box_menu .box_lang a:active {
  text-decoration: none;
  border-bottom: solid 1px #fff;
}

.home header {
  height: 100dvh;
  background: url("../img/bg_header.png") no-repeat 50% 50%;
  background-size: cover;
  display: flex;
  justify-content: center;
  align-items: center;
}
.home header #site_name {
  margin: 0 auto;
  text-align: center;
  display: block;
  clear: both;
  background: url("../img/logo_wh_shadow.png") no-repeat 50% 50%;
  background-size: contain;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  width: 70dvw;
  height: 70dvw;
  min-width: 700px;
  margin-top: 140px;
  max-width: 1200px;
  position: relative;
  top: 0;
  left: 0;
  z-index: 9;
}

/*-------------------------------------------------
	++ NAV
-------------------------------------------------*/
/*-------------------------------------------------
	++ HOME
-------------------------------------------------*/
/*-------------------------------------------------
	++ CONTENT BASE
-------------------------------------------------*/
#contener #contents {
  margin: 0 auto;
  text-align: center;
  padding: 40px 0 160px 0;
  width: 1200px;
  position: relative;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-size: 15px;
  line-height: 180%;
}
#contener #contents #sec_message {
  text-align: left;
  margin-top: 100px;
}
#contener #contents #sec_message h2 {
  font-size: 28px;
  line-height: 140%;
  font-weight: 600;
  margin-bottom: 80px;
}
#contener #contents #sec_message p {
  font-size: 15px;
  line-height: 240%;
  font-weight: 400;
  margin-bottom: 28px;
}
#contener #contents #sec_message p.txt_sign {
  margin-top: 80px;
  line-height: 160%;
}
#contener #contents #sec_message p.txt_sign .txt_sign_name {
  display: block;
  font-size: 18px;
}
#contener #contents #sec_message p.txt_sign .txt_sign_post {
  display: block;
  font-size: 14px;
  margin-top: 8px;
}
#contener #contents #sec_message .logo {
  width: 280px;
  margin-top: 60px;
}
#contener #contents #sec_vision {
  margin-top: 200px;
}
#contener #contents #sec_vision h2 {
  font-size: 28px;
  font-weight: 600;
}
#contener #contents #sec_vision .box_vision {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 20px;
}
#contener #contents #sec_vision .box_vision .block_vision {
  width: 48%;
  display: flex;
  justify-content: space-between;
  margin-top: 80px;
}
#contener #contents #sec_vision .box_vision .block_vision .vision_pic {
  padding-top: 4px;
  font-size: 20px;
  width: 45%;
}
#contener #contents #sec_vision .box_vision .block_vision .vision_pic img {
  max-width: 100%;
}
#contener #contents #sec_vision .box_vision .block_vision .vision_pic h3 {
  margin-top: 12px;
  color: #dd0000;
  font-weight: 600;
}
#contener #contents #sec_vision .box_vision .block_vision .vision_text {
  text-align: left;
  width: calc(55% - 20px);
}
#contener #contents #sec_vision .box_vision .block_vision .vision_text p {
  margin-top: 0;
  font-size: 14px;
  line-height: 180%;
}
#contener #contents #sec_vision .box_vision .block_vision .vision_text ul {
  margin-top: 16px;
}
#contener #contents #sec_vision .box_vision .block_vision .vision_text ul li {
  font-size: 13px;
  line-height: 180%;
}
#contener #contents main .page_header {
  margin-top: 120px;
  margin-bottom: 100px;
}
#contener #contents main .page_header .lbl_category {
  display: block;
  font-size: 20px;
  text-align: center;
  color: #000;
}
#contener #contents main .page_header h1 {
  font-size: 42px;
  line-height: 140%;
  letter-spacing: 0.2em;
  padding-left: 0.2em;
  font-weight: 800;
  margin-top: 20px;
  margin-bottom: 20px;
  text-align: center;
}
#contener #contents main .page_header h1.post_title {
  font-size: 36px;
  letter-spacing: 0.1em;
  padding-left: 0.1em;
}
#contener #contents main .page_header .post_date {
  display: block;
  font-size: 12px;
  text-align: center;
  letter-spacing: 0.4em;
  padding-left: 0.4em;
}
#contener #contents main .page_content {
  text-align: left;
  margin-top: 120px;
}
#contener #contents main h2 {
  font-size: 28px;
  line-height: 140%;
  letter-spacing: 0.2em;
  padding-left: 0.2em;
  font-weight: 800;
  margin-top: 100px;
  margin-bottom: 60px;
  text-align: center;
}
#contener #contents main h3 {
  font-size: 22px;
  line-height: 140%;
  letter-spacing: 0.2em;
  padding-left: 0.2em;
  font-weight: 800;
  margin-top: 90px;
  margin-bottom: 40px;
  text-align: center;
}
#contener #contents main .box_services {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  letter-spacing: 0em;
  margin-bottom: 80px;
}
#contener #contents main .box_services .block_services {
  width: calc((100% - 80px) / 6);
  text-align: left;
}
#contener #contents main .box_services .block_services.logo {
  width: 100%;
  border: solid 4px #014679;
  text-align: center;
  padding: 40px 20px;
}
#contener #contents main .box_services .block_services.logo img.logo_hc_bk {
  width: 50%;
  min-width: 360px;
  vertical-align: bottom;
  margin-top: 4px;
}
#contener #contents main .box_services .block_services h2 {
  border: solid 4px #014679;
  font-size: 15px;
  line-height: 140%;
  font-weight: 800;
  padding: 8px 12px;
  min-height: 120px;
  margin-top: 20px;
  margin-bottom: 8px;
  text-align: left;
  letter-spacing: 0;
}
#contener #contents main .box_services .block_services ul li {
  font-size: 13px;
  line-height: 140%;
}
#contener #contents main .box_member {
  display: flex;
  justify-content: space-between;
}
#contener #contents main .box_member .member_pic {
  width: 300px;
}
#contener #contents main .box_member .member_text {
  width: calc(100% - 300px - 50px);
}
#contener #contents main .box_member .member_text .txt_member_name {
  font-size: 22px;
  line-height: 140%;
  margin-top: -4px;
  margin-bottom: 8px;
}
#contener #contents main .box_member .member_text .txt_member_post {
  font-size: 13px;
  line-height: 140%;
  margin-top: 8px;
  margin-bottom: 8px;
}
#contener #contents main .box_member .member_text .txt_member_content {
  margin-top: 40px;
  margin-bottom: 40px;
}
#contener #contents main .box_member .member_text .txt_member_content p {
  font-size: 14px;
  line-height: 220%;
}
#contener #contents main .box_member .box_logo {
  margin-top: 60px;
}
#contener #contents main .box_member .box_logo .block_logo {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
}
#contener #contents main .box_member .box_logo img {
  width: 110px;
  height: auto;
  margin-right: 20px;
  margin-bottom: 20px;
}
#contener #contents main .box_member .box_logo img.size_s {
  width: 65px;
}
#contener #contents main .box_member .box_logo img.size_s2 {
  width: 80px;
}
#contener #contents main .box_member .box_logo img.size_l {
  width: 140px;
}
#contener #contents main .box_member .box_logo img.size_ll {
  width: 200px;
}
#contener #contents main table.tbl_network {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
}
#contener #contents main table.tbl_network tr th, #contener #contents main table.tbl_network tr td {
  margin: 2px;
  padding: 10px;
  vertical-align: middle;
  border-top: 2px solid #fff;
}
#contener #contents main table.tbl_network tr th {
  background-color: #eeeeee;
}
#contener #contents main table.tbl_network tr td.td_network_yrs {
  width: 220px;
  padding: 20px 10px;
  text-align: center;
  background-color: #eeeeee;
  font-size: 15px;
  line-height: 140%;
  font-weight: 600;
}
#contener #contents main table.tbl_network tr td.td_network_logo {
  width: 180px;
  text-align: center;
}
#contener #contents main table.tbl_network tr td.td_network_logo img {
  width: 90px;
  height: auto;
  margin: 8px;
}
#contener #contents main table.tbl_network tr td.td_network_logo img.size_s {
  width: 40px;
}
#contener #contents main table.tbl_network tr td.td_network_logo img.size_s2 {
  width: 60px;
}
#contener #contents main table.tbl_network tr td.td_network_logo img.size_l {
  width: 110px;
}
#contener #contents main table.tbl_network tr td.td_network_logo img.size_ll {
  width: 140px;
}
#contener #contents main table.tbl_network tr td.td_network_list {
  vertical-align: top;
  width: calc(100% - 220px - 180px);
}
#contener #contents main table.tbl_network tr td.td_network_list ul li {
  font-size: 14px;
}
#contener #contents main table.tbl_network tr.tr_last td.td_network_yrs {
  padding-bottom: 0;
}
#contener #contents main table.tbl_network tr.tr_arrow td.td_network_yrs {
  height: 60px;
  background: url("../img/bg_arrow_down.svg") no-repeat 50% 0%;
  background-size: 100%;
  border-top: 0px solid #fff;
}
#contener #contents main .box_press_room_list a.block_press_room_list {
  width: 100%;
  display: flex;
  justify-content: space-between;
  border-bottom: solid 1px #999;
  padding: 40px 0;
  color: #000;
  -webkit-transition: all 0.1s ease-in;
  -moz-transition: all 0.1s ease-in;
  -ms-transition: all 0.1s ease-in;
  -o-transition: all 0.1s ease-in;
  transition: all 0.1s ease-in;
}
#contener #contents main .box_press_room_list a.block_press_room_list:hover, #contener #contents main .box_press_room_list a.block_press_room_list:focus, #contener #contents main .box_press_room_list a.block_press_room_list:active {
  text-decoration: none;
  color: #666;
  -webkit-transition: all 0.1s ease-in;
  -moz-transition: all 0.1s ease-in;
  -ms-transition: all 0.1s ease-in;
  -o-transition: all 0.1s ease-in;
  transition: all 0.1s ease-in;
}
#contener #contents main .box_press_room_list a.block_press_room_list:hover img, #contener #contents main .box_press_room_list a.block_press_room_list:focus img, #contener #contents main .box_press_room_list a.block_press_room_list:active img {
  -webkit-transition: all 0.1s ease-in;
  -moz-transition: all 0.1s ease-in;
  -ms-transition: all 0.1s ease-in;
  -o-transition: all 0.1s ease-in;
  transition: all 0.1s ease-in;
}
#contener #contents main .box_press_room_list a.block_press_room_list:first-of-type {
  border-top: solid 1px #999;
}
#contener #contents main .box_press_room_list a.block_press_room_list .press_room_pic {
  width: 300px;
}
#contener #contents main .box_press_room_list a.block_press_room_list .press_room_pic img {
  max-width: 100%;
  -webkit-transition: all 0.1s ease-in;
  -moz-transition: all 0.1s ease-in;
  -ms-transition: all 0.1s ease-in;
  -o-transition: all 0.1s ease-in;
  transition: all 0.1s ease-in;
}
#contener #contents main .box_press_room_list a.block_press_room_list .press_room_text {
  width: calc(100% - 300px - 40px);
  text-align: left;
  font-size: 20px;
  line-height: 160%;
}
#contener #contents main .box_press_room_list a.block_press_room_list .press_room_text .txt_date {
  font-size: 14px;
  margin-bottom: 8px;
  margin-top: -8px;
}
#contener #contents main .box_press_room_list a.block_press_room_list .press_room_text .ttl_sub {
  font-size: 80%;
  margin-top: 12px;
}
#contener #contents main .box_press_room_list a.block_press_room_list .press_room_text .box_tag {
  margin-top: 12px;
  font-size: 12px;
  line-height: 100%;
}
#contener #contents main .box_press_room_list a.block_press_room_list .press_room_text .box_tag .tag_icon {
  background-color: #014679;
  color: #fff;
  padding: 0 4px 2px 4px;
}
#contener #contents main dl.dl_company,
#contener #contents main dl.dl_press_room {
  margin: 0 auto;
}
#contener #contents main dl.dl_company dt,
#contener #contents main dl.dl_press_room dt {
  width: 18em;
  float: left;
  clear: left;
  text-align: left;
  padding-top: 20px;
  padding-bottom: 20px;
  padding-left: 1em;
}
#contener #contents main dl.dl_company dd,
#contener #contents main dl.dl_press_room dd {
  width: 100%;
  padding-left: 18em;
  text-align: left;
  padding-top: 20px;
  padding-bottom: 20px;
}
#contener #contents main dl.dl_press_room dt {
  width: 10em;
  font-size: 14px;
  line-height: 140%;
  font-weight: 400;
  letter-spacing: 0.2em;
  padding-top: 42px;
  padding-bottom: 40px;
  padding-left: 1em;
}
#contener #contents main dl.dl_press_room dd {
  padding-left: 10em;
  font-size: 16px;
  line-height: 140%;
  font-weight: 400;
  padding-top: 40px;
  padding-bottom: 40px;
  border-bottom: solid 1px #999;
}
#contener #contents main dl.dl_press_room dd:first-of-type {
  border-top: solid 1px #999;
}
#contener #contents main .page_navi {
  margin: 40px auto 0;
  font-size: 18px;
}
#contener #contents main .page_navi .pages {
  background-color: transparent;
  padding: 4px 8px 6px;
  line-height: 100%;
  border-radius: 4px;
  color: #000;
  border: none;
}
#contener #contents main .page_navi a, #contener #contents main .page_navi span {
  background-color: #000;
  border: solid 1px #000;
  padding: 4px 8px 6px;
  border-radius: 4px;
  margin: 2px;
  color: #fff;
  line-height: 100%;
  display: inline-block;
}
#contener #contents main .page_navi span.current {
  color: #014679;
  background-color: transparent;
  border: solid 1px #000;
}
#contener #contents main .page_navi a {
  -webkit-transition: all 0.05s ease-in;
  -moz-transition: all 0.05s ease-in;
  -ms-transition: all 0.05s ease-in;
  -o-transition: all 0.05s ease-in;
  transition: all 0.05s ease-in;
}
#contener #contents main .page_navi a:hover, #contener #contents main .page_navi a:focus, #contener #contents main .page_navi a:active {
  text-decoration: none;
  color: #000;
  background-color: transparent;
  border: solid 1px #000;
}
#contener .width720 {
  width: 720px !important;
  margin: 0 auto;
}
#contener .width1000 {
  width: 980px !important;
  margin: 0 auto;
}
#contener h1, #contener h2, #contener h3, #contener h4, #contener h5, #contener h6 {
  margin-top: 50px;
  line-height: 140%;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
#contener h1 {
  font-size: 30px;
}
#contener h1.page_title {
  margin-top: 0px;
  margin-bottom: 30px;
  padding-bottom: 4px;
  border-bottom: solid 1px #eeeeee;
}
#contener h2 {
  font-size: 24px;
}
#contener h3 {
  font-size: 22px;
}
#contener h4 {
  font-size: 20px;
}
#contener h5 {
  font-size: 18px;
}
#contener h6 {
  font-size: 16px;
}
#contener p {
  margin-top: 20px;
  line-height: 200%;
  text-align: justify;
  text-justify: inter-ideograph;
}
.en #contener p {
  text-align: unset;
  text-justify: unset;
}

#contener ul {
  list-style: disc;
  margin-top: 8px;
  margin-left: 1.3em;
}
#contener ul li {
  font-size: 15px;
  line-height: 140%;
  font-weight: 400;
  margin-bottom: 4px;
}
#contener ul li::marker {
  font-size: 0.5em;
}

/*-------------------------------------------------
	++ COMMON
-------------------------------------------------*/
/*  Forms
--------------------------------------- */
input,
textarea,
select {
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 16px;
  background-color: #ffffff;
}

input::-moz-focus-inner,
button::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input[type=text],
input[type=email],
input[type=tel],
input[type=number],
input[type=password],
textarea,
select {
  padding: 8px;
  border: 1px solid #999;
}

input[type=date],
input[type=time],
input[type=datetime-local],
input[type=week],
input[type=month],
input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=tel],
input[type=number],
input[type=image],
textarea {
  border-radius: 0px;
  webkit-border-radius: 0px;
  -webkit-appearance: none;
}

input[type=search] {
  -webkit-appearance: textfield;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

input[type=search]:focus {
  outline-offset: -2px;
}

input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

input[type=checkbox],
input[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

input[type=submit],
input[type=reset],
input[type=button],
button {
  cursor: pointer;
  -webkit-appearance: button;
  *overflow: visible;
}

textarea {
  vertical-align: top;
  font-size: 100%;
  resize: none;
}

fieldset {
  border: 0 none;
}

legend {
  display: none;
}

label {
  cursor: pointer;
}

select {
  line-height: normal;
}

.ipt_size_full {
  width: 100%;
}

.ipt_size_harf {
  width: 45%;
  width: calc(50% - 10px);
}

.ipt_size_l {
  width: 400px;
}

.ipt_size_m {
  width: 200px;
}

.ipt_size_s {
  width: 100px;
}

.ipt_size_ss {
  width: 50px;
}

.ipt_row_l {
  height: 300px;
}

.ipt_row_m {
  height: 200px;
}

.ipt_row_s {
  height: 80px;
}

/*-------------------------------------------------
	++ CONTENTS
-------------------------------------------------*/
/*-------------------------------------------------
	++ FOOTER
-------------------------------------------------*/
footer {
  width: 100%;
  background-color: #eeeeee;
  color: #000;
  font-size: 13px;
  position: absolute;
  bottom: 0;
}
footer .footer_inner {
  margin: 0 auto;
  text-align: center;
  margin-top: 1px;
  width: 1200px;
  padding: 10px;
  position: relative;
}

#page_top {
  position: fixed;
  bottom: 20px;
  right: 20px;
}

@media (max-width: 767px) {
  .sp_only {
    display: block;
  }
  .pc_only {
    display: none;
  }
  .sp_only_inline {
    display: inline-block;
  }
  .pc_only_inline {
    display: none;
  }
  body {
    letter-spacing: 0;
  }
  header.site_header #site_name {
    width: 240px;
  }
  .home header #site_name {
    min-width: auto;
    width: 96%;
  }
  #nav-toggle {
    -webkit-transition: all 0.3s ease-in;
    -moz-transition: all 0.3s ease-in;
    -ms-transition: all 0.3s ease-in;
    -o-transition: all 0.3s ease-in;
    transition: all 0.3s ease-in;
    z-index: 100;
    display: block;
    position: absolute;
    cursor: pointer;
    width: 64px;
    top: 14px;
    right: 0;
  }
  #nav-toggle > div.menu_bar {
    position: relative;
    display: block;
    width: 40px;
    height: 40px;
    margin: 0 auto;
    padding: 10px;
  }
  #nav-toggle span {
    width: 24px;
    height: 1px;
    display: block;
    background: #fff;
    position: absolute;
    transition: transform 0.6s ease-in-out, top 0.5s ease;
  }
  #nav-toggle span:nth-child(1) {
    top: 10px;
  }
  #nav-toggle span:nth-child(2) {
    top: 18px;
    width: 18px;
  }
  #nav-toggle span:nth-child(3) {
    top: 26px;
    width: 12px;
  }
  .open header.site_header #nav-toggle span:nth-child(1) {
    top: 20px;
    width: 24px;
    transform: rotate(45deg);
  }
  .open header.site_header #nav-toggle span:nth-child(2) {
    top: 20px;
    width: 0;
    left: 50%;
  }
  .open header.site_header #nav-toggle span:nth-child(3) {
    top: 20px;
    width: 24px;
    transform: rotate(-45deg);
  }
  header.site_header .box_menu {
    opacity: 0;
    z-index: -1;
    right: 0;
    top: 0px;
    background-color: #238C00;
    width: 100%;
    transition: 600ms;
  }
  header.site_header .box_menu nav.box_main_menu {
    border-top: solid 1px rgba(255, 255, 255, 0.2);
    border-bottom: solid 1px rgba(255, 255, 255, 0.2);
    margin-top: 70px;
    margin-bottom: 70px;
    float: none;
  }
  header.site_header .box_menu nav.box_main_menu ul.main-menu {
    margin: 20px 0;
  }
  header.site_header .box_menu nav.box_main_menu ul.main-menu li {
    float: none;
    color: #fff;
    margin: 20px 0;
  }
  header.site_header .box_menu nav.box_main_menu ul.main-menu li ul {
    position: relative;
    visibility: unset;
    opacity: 1;
    max-width: unset;
    width: 100%;
    top: 0;
    left: 0;
    background-color: transparent;
    padding-left: 40px;
    box-shadow: none;
    padding-top: 16px;
  }
  header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li {
    margin: 0px 0;
  }
  header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a, header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:link,
  header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:visited {
    color: #fff;
  }
  header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:hover, header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:focus, header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:active, header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a.current, header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:link:hover, header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:link:focus, header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:link:active, header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:link.current,
  header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:visited:hover,
  header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:visited:focus,
  header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:visited:active,
  header.site_header .box_menu nav.box_main_menu ul.main-menu li ul li a:visited.current {
    border-bottom: none;
  }
  header.site_header .box_menu .box_lang {
    margin-top: 0px;
    margin-left: 0;
    float: none;
    text-align: center;
  }
  header.site_header .box_menu .box_lang a, header.site_header .box_menu .box_lang span {
    float: none;
  }
  .open {
    height: 100%;
    overflow: hidden;
  }
  .open header.site_header .box_menu {
    z-index: 10;
    height: 100vh;
    overflow: scroll;
    display: block;
    transition: 600ms;
    opacity: 1;
  }
  #contener #contents {
    width: 92%;
  }
  #contener #contents #sec_message p {
    font-size: 14px;
  }
  #contener #contents #sec_vision h2 {
    font-size: 18px;
    text-align: left;
  }
  #contener #contents #sec_vision .box_vision {
    flex-direction: column;
  }
  #contener #contents #sec_vision .box_vision .block_vision {
    width: 100%;
    display: block;
  }
  #contener #contents #sec_vision .box_vision .block_vision .vision_pic {
    width: 100%;
    margin-bottom: 12px;
  }
  #contener #contents #sec_vision .box_vision .block_vision .vision_text {
    width: 100%;
  }
  #contener #contents main .page_header {
    margin-top: 40px;
    margin-bottom: 30px;
  }
  #contener #contents main .page_header h1 {
    font-size: 28px;
  }
  #contener #contents main .page_content {
    margin-top: 70px;
  }
  #contener #contents main h2 {
    font-size: 20px;
    letter-spacing: 0.05em;
  }
  #contener #contents main h3 {
    font-size: 18px;
    letter-spacing: 0.05em;
  }
  #contener #contents main h4 {
    font-size: 16px;
    letter-spacing: 0.05em;
  }
  #contener #contents main h5 {
    font-size: 16px;
    letter-spacing: 0.05em;
  }
  #contener #contents main h6 {
    font-size: 16px;
    letter-spacing: 0.05em;
  }
  #contener #contents main .box_member {
    display: block;
  }
  #contener #contents main .box_member .member_pic {
    width: 100%;
    text-align: center;
  }
  #contener #contents main .box_member .member_pic img {
    width: 200px;
  }
  #contener #contents main .box_member .member_text {
    width: 100%;
    margin-top: 20px;
  }
  #contener #contents main .box_member .member_text .txt_member_name, #contener #contents main .box_member .member_text .txt_member_post {
    text-align: center;
  }
  #contener #contents main .table_wrap {
    overflow-x: scroll;
  }
  #contener #contents main table.tbl_network {
    width: 100%;
    min-width: 850px;
    border-collapse: collapse;
  }
  #contener #contents main table.tbl_network tr td.td_network_yrs {
    font-size: 13px;
    width: 150px;
  }
  #contener #contents main table.tbl_network tr td.td_network_logo {
    width: 200px;
  }
  #contener #contents main table.tbl_network tr td.td_network_list {
    width: 500px;
  }
  #contener #contents main .box_press_room_list {
    margin-top: 80px;
  }
  #contener #contents main .box_press_room_list a.block_press_room_list {
    flex-direction: column;
  }
  #contener #contents main .box_press_room_list a.block_press_room_list .press_room_pic {
    width: 100%;
  }
  #contener #contents main .box_press_room_list a.block_press_room_list .press_room_text {
    width: 100%;
    font-size: 16px;
    line-height: 160%;
    margin-top: 12px;
  }
  #contener #contents main .box_press_room_list a.block_press_room_list .press_room_text .txt_date {
    margin-bottom: 4px;
  }
  #contener #contents main .box_press_room_list a.block_press_room_list .press_room_text .ttl_sub {
    font-size: 90%;
    margin-top: 4px;
  }
  #contener #contents main dl.dl_company dt,
  #contener #contents main dl.dl_press_room dt {
    float: none;
    width: 100%;
    padding-top: 8px;
    padding-left: 0;
    padding-bottom: 0;
    font-weight: 800;
  }
  #contener #contents main dl.dl_company dd,
  #contener #contents main dl.dl_press_room dd {
    padding-left: 0;
    padding-top: 0;
    padding-bottom: 8px;
  }
  #contener #contents main .box_services .block_services.logo {
    line-height: 100%;
    margin-left: 0;
    margin-bottom: 0;
  }
  #contener #contents main .box_services .block_services.logo img.logo_hc_bk {
    width: 80%;
    min-width: auto;
  }
  #contener #contents main .box_services .block_services {
    width: 100%;
    margin-left: 20px;
  }
  #contener #contents main .box_services .block_services h2 {
    min-height: auto;
    padding: 12px 10px;
    font-size: 15px;
  }
  #contener #contents main .box_services .block_services h2 br {
    display: none;
  }
  #contener .width1000 {
    width: 100% !important;
  }
  footer {
    font-size: 11px;
  }
  footer .footer_inner {
    width: 100%;
  }
}
@media print {
  #pageTop {
    display: none !important;
  }
}
/*# sourceMappingURL=style.css.map */
