@charset "utf-8";

/*---------------------------------------------
---------------------------------------------
 企業情報CSS
---------------------------------------------
---------------------------------------------*/

/* タイトル関連 */

.ttlBlue {
  color: #003e87;
  font-size: 1.167em;
  font-weight: bold;
  margin-bottom: 0.5em;
}

.ttlBlue small {
  margin-left: 1em;
  font-size: smaller;
}

.ttlBlue small em {
  font-style: normal;
  text-emphasis-style: filled sesame;
  -webkit-text-emphasis-style: filled sesame;
  text-emphasis-color: #d80000;
  -webkit-text-emphasis-color: #d80000;
}


/*---------------------------------------------
 会社概要・沿革
---------------------------------------------*/


/* 会社概要
---------------------------------------------*/

#outline h4 {
  margin-top: 28px;
}

#outline dl {
  width: 700px;
  overflow: hidden;
  font-size: 1.167em;
  line-height: 1.8em;
  margin-top: 30px;
}

#outline dl dt {
  width: 102px;
  float: left;
  clear: both;
  font-weight: bold;
  padding-top: 18px;
  padding-bottom: 9px;
  padding-left: 3px;
}

#outline dl dd {
  padding: 18px 10px 9px 105px;
  border-bottom: 1px solid #ccc;
}


/* dl in dl */

#outline dl dd dl#dlin {
  width: auto;
  font-size: 1em;
  margin-top: 0;
}

#outline dl dd dl#dlin dt {
  width: 90px;
  font-weight: normal;
  padding-top: 0;
  padding-bottom: 10px;
  padding-left: 0;
}

#outline dl dd dl#dlin dd {
  padding: 0 0 10px 90px;
  border-bottom: none;
}


#outline ul {}

#outline ul li {
  margin-bottom: 3px;
}


/* 沿革
---------------------------------------------*/

#history {
  padding-bottom: 100px;
}

#history h4 {
  margin-top: 60px;
}

#history dl {
  width: 700px;
  overflow: hidden;
  font-size: 1.167em;
  line-height: 1.8em;
  margin-top: 27px;
}

#history dl dt {
  width: 122px;
  float: left;
  clear: both;
  font-weight: bold;
  padding-top: 16px;
  padding-bottom: 14px;
  padding-left: 3px;
}

#history dl dd {
  padding: 16px 0 14px 125px;
  border-bottom: 1px solid #ccc;
}


/*---------------------------------------------
 お問い合わせ窓口・事務所一覧
---------------------------------------------*/


.inquiry {
  font-size: 1.167em;
  line-height: 1.8em;
}

.inquiry p {
  line-height: 1.8em;
  margin-bottom: 0.5em;
}


.inqtbl {
  width: 100%;
  margin-top: 20px;
  margin-bottom: 30px;
  border-collapse: collapse;
}

.inqtbl th,
.inqtbl td {
  text-align: left;
  vertical-align: top;
  padding: 3px 0 1.5em 3px;
}

.inqtbl th {
  width: 6em;
}

.inqtbl td {
  color: #003168;
}

.inqtbl td a.mail {
  display: block;
  padding-left: 22px;
  background: url(/company/img/inquiry/icn_mail.gif) left center no-repeat;
}

.inqtbl td span img {
  vertical-align: middle;
  margin-left: 5px;
}

.att {
  color: #ff8000;
}


/* Generic Utility */
.hide {
  position: absolute;
  top: -9999px;
  left: -9999px;
}

.tabwrap {
  margin-top: 1em;
}

.tabbox .nav {
  position: relative;
  margin-top: 20px;
  margin-bottom: 15px;
  margin-left: -7px;
  letter-spacing: -.4em;
}

.tabbox .nav li {
  display: inline-block;
  width: 16.65%;
  vertical-align: middle;
  letter-spacing: 0;
}

.tabbox .nav li a {
  display: block;
  position: relative;
  height: 28px;
  margin-left: 7px;
  padding-top: 2px;
  border: 1px solid #e5e5e5;
  background: #f5f5f5;
  color: #989898;
  font-size: 11.5px;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
}

.tabbox .nav li a:hover,
.tabbox .nav li a.current {
  border-color: #002f6a;
  background-color: #002f6a;
  color: #fff;
}

.tabbox .nav li a.current:before {
  position: absolute;
  left: 50%;
  bottom: -20px;
  width: 0;
  height: 0;
  margin-left: -9px;
  border-width: 11px 10px;
  border-color: #002a56 transparent transparent transparent;
  border-style: solid;
  content: "";
}

.list-wrap {}

.mapbox {
  font-size: 14px;
  text-align: left;
  padding: 24px;
  border: 1px solid #ccc;
}

.mapbox table {
  width: 100%;
  margin-top: 20px;
  margin-bottom: 30px;
  border-collapse: collapse;
}

.mapbox th,
.mapbox td {
  text-align: left;
  vertical-align: top;
  padding: 3px 0 1.5em 3px;
}

.mapbox th {
  width: 10em;
  color: #003168;
}

.mapbox td {
  color: #003168;
}

.mapbox td dt {
  font-weight: bold;
}

.mapbox td dd {
  font-size: smaller;
  margin-bottom: 1.5em;
}

.mapbox td dd img {
  vertical-align: middle;
  margin-left: 5px;
}

.mapbox h6 {
  font-size: 16px;
  padding: 10px 3px;
  border-top: 1px solid #ff7f00;
  border-bottom: 1px solid #ff7f00;
}


/*---------------------------------------------
 反社会的勢力に対する基本方針
---------------------------------------------*/

p.antisocialforces_text {
  font-size: 1.167em;
  padding: 32px 0 23px 5px;
}

#antisocialforces_box {
  width: 646px;
  font-size: 1.167em;
  line-height: 1.5em;
  padding: 27px 27px 17px 27px;
  background-color: #F5F5F5;
}

#antisocialforces_box ol li {
  list-style: decimal;
  margin: 0 0 10px 22px;
}



/*---------------------------------------------
 内部統制システムに関する基本方針
---------------------------------------------*/

#internalcontrol_box {
  width: 700px;
  margin-top: 27px;
  margin-bottom: 40px;
}


/* dl */

#internalcontrol_box dl {
  width: 700px;
  overflow: hidden;
}

#internalcontrol_box dl dt {
  min-height: 18px;
  font-size: 1.167em;
  line-height: 1.5em;
  font-weight: bold;
  text-indent: -1.4em;
  padding-top: 13px;
  padding-right: 20px;
  padding-bottom: 11px;
  padding-left: 2.5em;
  background-color: #F8F7F2;
}

#internalcontrol_box dl dd {
  font-size: 1.083em;
  line-height: 1.8em;
  padding: 19px 13px 35px 13px;
}


/* 中のul */
#internalcontrol_box ul li {
  text-indent: -1.4em;
  padding-left: 1.4em;
  margin-bottom: 15px;
}

#internalcontrol_box ul li:last-child {
  margin-bottom: 0;
}


/*---------------------------------------------
 サステナビリティについての取組み
---------------------------------------------*/

#box_sustainability {
  font-size: 1.167em;
  line-height: 1.8em;
}

#box_sustainability h4 {
  margin-top: 42px;
  margin-bottom: 30px;
}

#box_sustainability h4:first-child {
  margin-top: 28px;
}

#box_sustainability .basicpolicy {
  margin-top: 24px;
  padding: 34px 34px 10px 34px;
  background-color: #F5F5F5;
}

#box_sustainability .basicpolicy dt {
  font-weight: bold;
  width: 5em;
}

#box_sustainability .basicpolicy dd {
  margin-top: -1.8em;
  margin-bottom: 1.5em;
  padding-left: 6.5em;
}

#box_sustainability .box_sdgs {
  margin-top: 24px;
  padding: 34px 34px 10px 34px;
  background-color: #F5F5F5;
}


#box_sustainability .box_sdgs dt {
  font-weight: bold;
}

#box_sustainability .box_sdgs dd {
  margin-bottom: 1.8em;
  padding-top: 1.5em;
  padding-bottom: 0.5em;
  border-bottom: 1px solid #ccc;
}

#box_sustainability .box_sdgs dd:last-child {
  margin-bottom: 0.5em;
  border-bottom: none;
}

#box_sustainability .box_sdgs dd ul li {
  min-height: 32px;
  margin-bottom: 0.4em;
  padding-left: 0.85em;
  background: url(../company/img/arw_sdgs.png) left 0.6em no-repeat;
}

#box_sustainability .box_sdgs dd ul li .box_txt {
  float: left;
  width: 45%;
}

#box_sustainability .box_sdgs dd ul li .box_mark {
  float: right;
  width: 55%;
}

#box_sustainability .box_sdgs dd ul li a.blank {
  display: inline-block;
  padding-right: 1em;
  background: url(../company/img/icn_window.png) right 0.4em no-repeat;
}

#box_sustainability .box_sdgs img {
  width: 32px;
  height: 32px;
  margin-right: 8px;
}

/*---------------------------------------------
 健康経営への取組み
---------------------------------------------*/

#box_health {
  font-size: 1.167em;
  line-height: 1.8em;
}

#box_health h4 {
  margin-top: 42px;
  margin-bottom: 30px;
}

#box_health h5 {
  font-size: 1.1em;
  margin-top: 1.5em;
  margin-bottom: 0.3em;
}

#box_health p.sign {
  margin-top: 1em;
}

#box_health ul li {
  text-indent: -1em;
  margin-left: 1em;
}

#box_health img {
  max-width: 100%;
  height: auto;
}

/*---------------------------------------------
 サイドバー
---------------------------------------------*/


/* サイドメニュー
---------------------------------------------*/

#side_nav ul li#sidenav_01 a {
  height: 32px;
  background-image: url(/company/img/btn_sidenav_01.gif);
}

#side_nav ul li#sidenav_02 a {
  height: 56px;
  background-image: url(/company/img/btn_sidenav_02.gif);
}

#side_nav ul li#sidenav_03 a {
  height: 56px;
  background-image: url(/company/img/btn_sidenav_03.gif);
}

#side_nav ul li#sidenav_04 a {
  height: 56px;
  background-image: url(/company/img/btn_sidenav_04.gif);
}


#side_nav ul li#sidenav_01,
#side_nav ul li#sidenav_01 a:hover {
  height: 32px;
  background-image: url(/company/img/btn_sidenav_01_o.gif);
}

#side_nav ul li#sidenav_02,
#side_nav ul li#sidenav_02 a:hover {
  height: 56px;
  background-image: url(/company/img/btn_sidenav_02_o.gif);
}

#side_nav ul li#sidenav_03,
#side_nav ul li#sidenav_03 a:hover {
  height: 56px;
  background-image: url(/company/img/btn_sidenav_03_o.gif);
}

#side_nav ul li#sidenav_04,
#side_nav ul li#sidenav_04 a:hover {
  height: 56px;
  background-image: url(/company/img/btn_sidenav_04_o.gif);
}


@media screen and (max-width: 768px) {

  /* =============================================================

    Mobile - Setting

  ============================================================= */

  .tabbox .nav {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 0;
  }

  .tabbox .nav li {
    width: 33.33%;
    margin-bottom: 8px;
  }

  @media screen and (max-width: 320px) {
    .tabbox .nav li {
      width: 50%;
      margin-bottom: 8px;
    }

  }

  .mapbox {
    padding: 10px;
  }

  .mapbox table,
  .mapbox table tbody,
  .mapbox table tr,
  .mapbox table th,
  .mapbox table td {
    display: block;
  }

  .mapbox th {
    width: 100%;
    margin-bottom: 10px;
    padding: 10px 0;
    border-bottom: 1px solid #003168;
  }

  .mapbox th br {
    display: none;
  }

  .tabbox .nav li a.current:before {
    display: none;
  }

  .tabbox .nav li a {
    height: 100%;
    padding: 5px;
    line-height: 1.5em;
  }

  /*---------------------------------------------
  会社概要・沿革
  ---------------------------------------------*/


  /* 会社概要
  ---------------------------------------------*/

  #outline dl {
    width: auto;
    margin-top: 20px;
  }

  #outline dl dt {
    width: 80px;
    padding-top: 10px;
  }

  #outline dl dd {
    padding-top: 11px;
    padding-left: 80px;
  }


  /* 沿革
  ---------------------------------------------*/

  #history {
    padding-bottom: 20px;
  }

  #history dl {
    width: auto;
    margin-top: 20px;
  }

  #history dl dt {
    width: 90px;
    padding-top: 10px;
  }

  #history dl dd {
    padding-top: 11px;
    padding-left: 90px;
  }

  /*---------------------------------------------
  反社会的勢力に対する基本方針
  ---------------------------------------------*/

  #antisocialforces_box {
    width: auto;
  }

  /*---------------------------------------------
  内部統制システムに関する基本方針
  ---------------------------------------------*/

  #internalcontrol_box {
    width: auto;
    margin-bottom: 0;
  }


/*---------------------------------------------
 サステナビリティについての取組み
---------------------------------------------*/

#box_sustainability {
  font-size: 1.3em;
}

#box_sustainability h4 {
  font-size: 1.2em;
}


#box_sustainability .basicpolicy dt {
  width: 100%;
}

#box_sustainability .basicpolicy dd {
  margin-top: 0;
  margin-bottom: 1.5em;
  padding-left: 0;
}


#box_sustainability .box_sdgs dd ul li .box_txt {
  float: left;
  width: 60%;
}

#box_sustainability .box_sdgs dd ul li .box_mark {
  float: right;
  width: 30%;
}

#box_sustainability .box_sdgs dd ul li a.blank {
  display: inline-block;
  padding-right: 1em;
  background: url(../company/img/icn_window.png) right 0.4em no-repeat;
}

#box_sustainability .box_sdgs img {
  width: 32px;
  height: 32px;
  margin-right: 8px;
}

/*---------------------------------------------
 健康経営への取組み
---------------------------------------------*/

#box_health {
  font-size: 1.3em;
}

#box_health h4 {
  font-size: 1.2em;
}
  /* dl */

  #internalcontrol_box dl {
    width: auto;
  }

  .ttl_001 {
    padding-right: 15px;
  }

}
