@charset "UTF-8";
/*******************************************************************
・ページ別レイアウト設定
・ページ数が多くなるとCSSが肥大化して読み込みが遅くなるためファイルを分割して記述する
・手分けする場合も分割して記述
*******************************************************************/
/*==================================================================
初期設定
===================================================================*/
/* フォント設定 */
/* カラーパレット */
/*==================================================================
Mixin Library
===================================================================*/
/*==================================================================
会社情報
===================================================================*/
/*==================================================================
会社概要
===================================================================*/
#wrapperContent #content.information main article .sec02 .table table {
  width: 100%;
}
#wrapperContent #content.information main article .sec02 .table table.company_information tr:nth-child(2) td {
  position: relative;
  padding-right: 80px;
}
#wrapperContent #content.information main article .sec02 .table table.company_information tr:nth-child(2) td .access_link {
  padding: 3px 20px;
  background: #133463;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  right: 20px;
  color: #fff;
  font-size: 1.2rem;
  text-decoration: none;
  white-space: nowrap;
}
#wrapperContent #content.information main article .sec02 .table table.company_information tr:nth-child(2) td .access_link::after {
  content: "\f061";
  margin-left: 1em;
  font-family: "Font Awesome 7 Free";
  font-weight: 600;
}
#wrapperContent #content.information main article .sec02 .table th {
  width: 20%;
}
#wrapperContent #content.information main article .sec02 .table td {
  width: 80%;
}
#wrapperContent #content.information main article .sec02 .fig_inner {
  margin: 60px auto 0;
  align-items: flex-start;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  gap: 40px 80px;
}
#wrapperContent #content.information main article .sec02 .fig_inner figure {
  width: calc(50% - 40px);
}
#wrapperContent #content.information main article .sec02 .fig_inner figure figcaption {
  font-size: 1.4rem;
}
@media only screen and (max-width: 640px) {
  #wrapperContent #content.information main article .sec02 .fig_inner {
    gap: 20px;
    margin: 40px auto 0;
  }
  #wrapperContent #content.information main article .sec02 .fig_inner figure {
    width: 100%;
  }
}

/*==================================================================
社長メッセージ
===================================================================*/
#wrapperContent #content.message main article section figure.main_fig {
  width: 36%;
  margin: 0 auto;
}
#wrapperContent #content.message main article section figure.main_fig figcaption {
  font-size: 1.6rem;
  line-height: 1.5;
  margin-top: 5px;
}
#wrapperContent #content.message main article section figure.main_fig figcaption strong {
  font-size: 2rem;
  font-weight: 500;
  margin-left: 10px;
}
@media only screen and (max-width: 640px) {
  #wrapperContent #content.message main article section figure.main_fig {
    width: 100%;
  }
  #wrapperContent #content.message main article section figure.main_fig img {
    width: 100%;
    height: auto;
  }
}
#wrapperContent #content.message main article .sec01 .inner {
  align-items: flex-start;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 30px 16%;
}
#wrapperContent #content.message main article .sec01 .inner .txt_bx {
  width: 48%;
}
/*==================================================================
企業理念・ビジョン
===================================================================*/
#wrapperContent #content.philosophy_vision main article .sec00 .h2_ttl {
  text-align: center;
}
#wrapperContent #content.philosophy_vision main article .sec00 .inner {
  max-width: 700px;
  margin: 0 auto;
}
#wrapperContent #content.philosophy_vision main article .sec01 .h2_ttl {
  text-align: center;
}
#wrapperContent #content.philosophy_vision main article .sec01 .inner {
  max-width: 700px;
  margin: 0 auto;
}
#wrapperContent #content.philosophy_vision main article .sec02 {
  max-width: 1000px;
  background-color: #F3F4F5;
  padding: 50px 0;
}
@media only screen and (min-width: 641px) and (max-width: 999px) {
  #wrapperContent #content.philosophy_vision main article .sec02 {
    padding: 50px 20px;
  }
}
@media only screen and (max-width: 640px) {
  #wrapperContent #content.philosophy_vision main article .sec02 {
    padding: 50px 20px;
  }
}
#wrapperContent #content.philosophy_vision main article .sec02 .h2_ttl {
  text-align: center;
}
#wrapperContent #content.philosophy_vision main article .sec02 .inner {
  max-width: 700px;
  margin: 0 auto;
}
#wrapperContent #content.philosophy_vision main article .sec02 .inner figure {
  margin: 0 auto;
  max-width: 340px;
}
#wrapperContent #content.philosophy_vision main article .sec03 .h2_ttl {
  text-align: center;
  margin-bottom: 40px;
}
#wrapperContent #content.philosophy_vision main article .sec03 .inner {
  max-width: 700px;
  margin: 0 auto;
}

/*==================================================================
沿革
===================================================================*/
#wrapperContent #content.history main article .sec01 .fig_inner {
  align-items: flex-start;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-end;
  margin-top: 50px;
  gap: 12%;
}
#wrapperContent #content.history main article .sec01 .fig_inner figure figcaption {
  font-size: 1.6rem;
  line-height: 1.5;
  margin-top: 5px;
}
#wrapperContent #content.history main article .sec01 .fig_inner figure figcaption strong {
  font-size: 2rem;
  font-weight: 500;
}
#wrapperContent #content.history main article .sec01 .fig_inner figure:nth-of-type(1) {
  max-width: 272px;
  width: 31%;
}
#wrapperContent #content.history main article .sec01 .fig_inner figure:nth-of-type(2) {
  max-width: 496px;
}
#wrapperContent #content.history main article .sec01 .fig_inner figure:nth-of-type(2) img {
  border: 1px solid #EDEDED;
}
#wrapperContent #content.history main article .sec01 .fig_inner figure:nth-of-type(2) {
  width: 57%;
}
@media only screen and (max-width: 640px) {
  #wrapperContent #content.history main article .sec01 .fig_inner {
    gap: 30px;
  }
  #wrapperContent #content.history main article .sec01 .fig_inner figure {
    width: 100%;
  }
  #wrapperContent #content.history main article .sec01 .fig_inner figure:nth-of-type(1) {
    width: 272px;
    margin: 0 auto;
  }
  #wrapperContent #content.history main article .sec01 .fig_inner figure:nth-of-type(2) {
    width: 100%;
  }
  #wrapperContent #content.history main article .sec01 .fig_inner figure:nth-of-type(2) img {
    width: 100%;
    height: auto;
  }
}
#wrapperContent #content.history main article .sec04 table th {
  width: 19%;
}/*# sourceMappingURL=layout_company.css.map */