@charset "UTF-8";

/* common */
/* ----------------------------------- */
html {
  background-color: #f3f3f3;
}

/* section_title */
.section_title {
  background-size: cover;
  background-position: center;
  padding: 70px 20px;
  color: #878787;
}
.section_title h1.category_title {
  font-size: 71px;
  font-weight: 500;
  text-align: center;
  margin-bottom: 30px;
  line-height: 1;
  letter-spacing: 0.2em;
}
.section_title h1.category_title:after {
  content: "";
  display: block;
  width: 56px;
  margin: 30px auto;
  border-top: 2px solid #878787;
}
.section_title h1.category_title.no-border:after {
  border: 0;
  margin: 0;
}
.section_title .category_text {
  font-size: 17px;
  text-align: center;
}
@media (max-width: 870px) {
  .section_title {
    padding: 50px 20px;
  }
  .section_title h1.category_title,
  .section_title h1.category_title.guide {
    font-size: 27px;
  }
}

/* section_content */
.section_content {
  max-width: 1000px;
  margin: 0 auto;
}

/* btn_readmor btns */
.btn_readmore.btn_middle a {
  width: 260px;
}
.section_content .btn_readmore {
  margin: 30px 0 80px;
  text-align: center;
}
.section_content .btn_readmore a {
  font-size: 15px;
}
.section_content .btn_readmore a {
  width: 260px;
}
@media (max-width: 870px) {
  .btn_readmore.btn_middle a,
  .btn_readmore.btn_large a {
    width: 100%;
  }
}

/* company */
/* ----------------------------------- *
/* profile */
.section_head.company {
  height: 480px;
  margin: 0 auto;
  padding: 80px 140px 0;
  background-color: #ddd;
  color: #fff;
  text-align: center;
}
.section_head.company .section_read__text {
  padding-bottom: 2em;
  line-height: 2;
}
.section_list {
  max-width: 900px;
  margin: 30px auto 100px;
}
.list_wrap {
  display: flex;
  justify-content: flex-start;
  padding: 30px 0;
  border-top: 1px solid #878787;
}
.list_wrap:last-child {
  border-bottom: 1px solid #878787;
}
.list_title {
  width: 290px;
  text-align: center;
}
.list_detail {
  width: 610px;
}
.list_title_item {
  width: 215px;
  padding: 6px;
  background-color: #a6a6a6;
  color: #fff;
}
.list_detail_item {
  padding: 6px;
}
.item_col .list_detail_item {
  display: flex;
  justify-content: space-between;
}
.list_detail_item_btn a.btn {
  position: relative;
  display: inline-block;
  margin-top: 10px;
  border: 1px solid #505050;
  text-align: center;
}
.list_detail_item_btn a.btn:after {
  position: absolute;
  right: 10px;
  content: "";
  width: 6px;
  height: 6px;
  border-right: 1px solid #505050;
  border-top: 1px solid #505050;
  transform: rotate(45deg);
}
.list_detail_item_btn a.btn_small {
  width: 120px;
  height: 22px;
  line-height: 22px;
}
.list_detail_item_btn a.btn_middle {
  width: 170px;
  height: 30px;
  line-height: 30px;
}
.item_col .list_detail_item_btn a.btn {
  margin-top: 20px;
}
.list_detail_item_btn a.btn_small:after {
  top: 7px;
}
.list_detail_item_btn a.btn_middle:after {
  top: 11px;
}
.list_detail_item_dl{
  display:block;
  position:relative;
  padding-bottom:0.25rem;
}
.list_detail_item_dt{
  display:block;
  position:absolute;
  top:0;
  left:0;
}
.list_detail_item_dd{
  display:block;
  padding-left:16em;
  text-align:left;
}
.list_detail_item_dd.board-members{
  padding-left:12em;
}
.list_detail_item_dd > span{
  display:inline-block;
}
@media (max-width: 870px) {
  .section_list {
    width: auto;
    margin-top: 0;
    margin-bottom: 50px;
    padding: 0 20px;
  }
  .list_wrap {
    display: flex;
    flex-direction: column;
  }
  .list_wrap:first-child {
    border-top: 0;
    padding-top: 0;
  }

  .list_title,
  .list_detail,
  .list_title_item {
    width: auto;
  }
  .list_title_item {
    margin-bottom: 20px;
  }
  .list_detail_item {
    text-align: center;
  }

  .item_col .list_detail_item {
    display: block;
  }
  .item_col .list_detail_item_btn a.btn {
    margin-top: 10px;
  }
 }

/* access */
.address_text,
.tel_num,
.to_access {
  text-align: center;
}
.address_text {
  padding-bottom: 30px;
  font-size: 20px;
}
.tel_num {
  margin: 0 auto;
  padding-bottom: 50px;
}
.tel_num .number {
  position: relative;
  display: inline-block;
  padding-left: 60px;
  font-size: 30px;
  text-align: center;
}
.tel_num .number:before {
  position: absolute;
  left: 0;
  content: "";
  display: inline-block;
  width: 52px;
  height: 52px;
  border-radius: 100%;
  border: 1px solid #878787;
}
.tel_num .number:after {
  position: absolute;
  top: 15px;
  left: 14px;
  content: "";
  display: block;
  width: 22px;
  height: 21px;
  background: url(/assets/img/company/icon_tel.png) no-repeat;
  background-size: 22px 21px;
  color: #000;
}
.to_access {
  position: relative;
  padding: 40px 0 100px;
  font-size: 20px;
}
.to_access:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "\30A2\30AF\30BB\30B9";
  width: 100%;
  text-align: center;
}
.map {
  margin-bottom: 50px;
}
.map iframe,
.map object,
.map embed {
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
}

/* guide */
.section_title h1.category_title.guide {
  margin-bottom: 0;
  padding-top: 30px;
  padding-bottom: 30px;
  font-size: 38px;
}
.section_title h1.category_title.guide:after {
  display: none;
}
.list_container.num_title_reset {
  counter-increment: item;
}
h2.no_border {
  font-size: 22px;
  text-align: center;
}
h2.no_border.num_title {
  position: relative;
  margin-bottom: 30px;
  padding-left: 3em;
  font-size: 22px;
  line-height: 1.4;
  text-align: left;
  letter-spacing: 0.2em;
}
h2.no_border.num_title:before {
  position: absolute;
  left: 0;
  content: counter(item);
}
h2.no_border.num_title:after {
  content: "";
  position: absolute;
  top:0;
  left: 1.8em;
  width: 1px;
  height: 30px;
  background-color: #505050;
}
h2.no_border.multi_line {
  line-height: 2;
}
.section_content.content_guide {
  width: 900px;
  padding-bottom: 100px;
}
.section_content.content_guide h2 {
  margin-bottom: 0;
  padding-bottom: 30px;
}
.section_content.content_guide h3 {
  padding-bottom: 15px;
  font-size: 20px;
}
.section_content.content_guide .table_wrap {
  padding-bottom: 20px;
}
.section_content.content_guide table td,
.section_content.content_guide table th {
  padding: 15px;
}
@media (max-width: 870px) {
  .section_content {
    max-width: none;
    padding: 0 20px;
  }
  .section_content,
  .section_content.content_guide {
    width: auto;
  }
  .border_list_wrap,
  .section_other {
    width: auto;
  }
}

/* tables */
.table_wrap {
  padding-bottom: 80px;
}
.table_wrap table {
  width: 100%;
  border-collapse: collapse;
}
.table_wrap th {
  padding: 15px 3px;
  background-color: #a6a6a6;
  border-right: 1px solid #fff;
  color: #fff;
  font-weight: normal;
  text-align: center;
}
.table_wrap td {
  padding: 10px;
  border-right: 1px solid #878787;
  border-bottom: 1px solid #878787;
  text-align: center;
}
.table_wrap th:last-child,
.table_wrap tr td:last-child {
  border-right: 0;
}
.table_wrap tbody {
  border-top: 1px solid #878787;
}
.table_wrap thead + tbody {
  border-top: 0;
}
.table_wrap .table_align_left th,
.table_wrap .table_align_left td {
  text-align: left;
}
.table_wrap .table_side_border {
  border-left: 1px solid #a6a6a6;
  border-right: 1px solid #a6a6a6;
}
.table_wrap .table_no_border tbody {
  border-top: 0;
}
.table_wrap .table_no_border tr:last-child th,
.table_wrap .table_no_border tr:last-child td {
  border-bottom: 0;
}
.table_wrap .td_white td {
  background-color: #fff;
}
.table_wrap .th_white_border th {
  border-bottom: 1px solid #fff;
}

/* kessan */
.section_content.bgcolor-white{
	background-color: #fff;
}
.section_content.kessan-list{
	max-width: none;
	padding:80px 0 50px;
}
.section_content.kessan-list.no-result{
  min-height: 300px;
}
.section_content.kessan-list.no-result .no-result-text{
  padding-bottom: 20px;
  border-bottom: 1px solid #878787;
  font-size: 1.07rem;
}

/* other */
.pb20 {
  padding-bottom: 20px;
}
.pb30 {
  padding-bottom: 30px;
}
.pb50 {
  padding-bottom: 50px;
}
.pb80 {
  padding-bottom: 80px;
}
.pt20 {
  padding-top: 20px;
}
.pt10 {
  padding-top: 10px;
}
.text_link {
  color: #0071b6;
  text-decoration: underline;
}
.read_text {
  font-size: 18px;
}
.center {
  text-align: center !important;
}
.text_right {
  text-align: right !important;
}
.text_left {
  text-align: left !important;
}

.list_group.mark_list .mark_list_item {
  position: relative;
  padding-left: 3em;
  padding-bottom: 15px;
}
.list_group.mark_list .mark_list_item .mark {
  position: absolute;
  left: 0;
}
.list_group.mark_list .marklist_item:last-child {
  padding-bottom: 0;
}

/* header */
.groupheader__title{
  min-width: 200px;
}
.header__title{
  min-width: 180px;
}
.header__wrap{
  position: relative;
  padding-right:80px;
}
.header__list{
  max-width: 620px;
}
.groupheader__language{
  position: absolute;
  top:13px;
  right:0;
}
.groupheader__language a{
  /* width: 2em; */
  padding: 3px 10px;
  border: 1px solid #595757;
  font-size: 12px;
  text-align: center;
}
@media (max-width: 870px){
  .header__wrap{
    padding-right:1px;
  }
  .groupheader__language{
      display: none;
  }
}