@charset "UTF-8";
/* =====
 * /company レイアウト
============================================================================= */
/* -----
 * ConceptBlock
----------------------------------------------------------------------------- */
#ConceptBlock {
  display: table;
  width: 100%;
  margin-top: 70px;
  table-layout: fixed;
}
#ConceptBlock .content {
  display: table-cell;
  vertical-align: top;
  box-sizing: border-box;
  padding: 0 40px;
  background: transparent url(../images/company/concept_line.png) 100% 100px no-repeat;
}
#ConceptBlock .content:first-child {
  width: 33%;
  padding-left: 0;
}
#ConceptBlock .content:last-child {
  width: 33%;
  padding-right: 0;
  background: none;
}
#ConceptBlock .content .top {
  height: 100px;
}
#ConceptBlock .content .top .ja-serif {
  text-align: center;
  line-height: 1;
  margin-bottom: 15px;
  font-size: 358%;
}
#ConceptBlock .content .top .en-sans {
  text-align: center;
  line-height: 1;
  margin: 0;
  letter-spacing: 0.1em;
  font-size: 86%;
}
#ConceptBlock .content .bottom {
  padding-top: 5px;
}
#ConceptBlock .content .bottom h4 {
  text-align: center;
  font-size: 143%;
}
#ConceptBlock .content .bottom p {
  font-size: 93%;
}

/* -----
 * ServiceBlock
----------------------------------------------------------------------------- */
#ServiceBlock {
  margin-top: 60px;
  padding: 50px 0;
  background-color: #F8F8F8;
}
#ServiceBlock .service-head {
  text-align: center;
}
#ServiceBlock .service-contents {
  display: table;
  width: 100%;
  margin-top: 60px;
  table-layout: fixed;
}
#ServiceBlock .service-contents .service {
  display: table-cell;
  width: 306px;
  vertical-align: top;
  padding: 0 40px;
  border-right: 1px solid #ddd;
}
#ServiceBlock .service-contents .service:first-child {
  padding-left: 0;
}
#ServiceBlock .service-contents .service:last-child {
  padding-right: 0;
  border: none;
}
#ServiceBlock .service-contents .service h4 {
  text-align: center;
  font-size: 143%;
}
#ServiceBlock .service-contents .service p {
  font-size: 93%;
  margin-bottom: 1.5em;
}
#ServiceBlock .service-contents .service p.more {
  font-size: 93%;
  margin-bottom: 1em;
}
#ServiceBlock .service-contents .service p.more:last-child {
  margin-bottom: 0;
}
#ServiceBlock .service-contents .service p.more a {
  display: block;
  line-height: inherit;
  padding: 5px;
  text-align: center;
}

/* -----
 * CompanyBlock
----------------------------------------------------------------------------- */
#CompanyBlock {
  margin-top: 70px;
}
#CompanyBlock table {
  width: 100%;
  margin-top: 50px;
  border-bottom: 1px solid #ddd;
}
#CompanyBlock table th, #CompanyBlock table td {
  padding: 12px 0;
  border-top: 1px solid #ddd;
  font-size: 93%;
}
#CompanyBlock table th {
  text-align: left;
  font-weight: normal;
  white-space: nowrap;
  width: 1%;
  padding-right: 100px;
}

/* -----
 * ShowroomBlock
----------------------------------------------------------------------------- */
#ShowroomBlock {
  display: table;
  width: 100%;
  border: 1px solid #00174B;
  margin-top: 50px;
  table-layout: fixed;
}
#ShowroomBlock .image {
  display: table-cell;
  vertical-align: top;
  width: 230px;
  padding: 30px;
}
#ShowroomBlock .text {
  padding: 30px 30px 30px 0;
  font-size: 93%;
}

/* -----
 * MapBlock
----------------------------------------------------------------------------- */
#MapBlock {
  margin-top: 60px;
}
#MapBlock #map {
  width: 100%;
  height: 450px;
}

/* -----
 * responsive
----------------------------------------------------------------------------- */
@media screen and (min-width: 944px) {
  /* PC */
}
@media screen and (min-width: 768px) and (max-width: 943px) {
  /* tablet */
}
@media screen and (max-width: 767px) {
  /* smart phone */
  /* -----
   * ConceptBlock
  ----------------------------------------------------------------------------- */
  #ConceptBlock {
    display: block;
    width: auto;
    margin-top: 30px;
  }
  #ConceptBlock .content {
    display: block;
    width: auto !important;
    padding: 0;
    background: none;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #ddd;
  }
  #ConceptBlock .content:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
  }
  #ConceptBlock .content .top {
    height: auto;
  }
  #ConceptBlock .content .top .en-sans {
    font-size: 10px;
  }
  #ConceptBlock .content .bottom {
    text-align: center;
  }
  #ConceptBlock .content .bottom h4 {
    font-size: 15px;
  }
  #ConceptBlock .content .bottom p {
    font-size: inherit;
  }

  /* -----
   * ServiceBlock
  ----------------------------------------------------------------------------- */
  #ServiceBlock {
    margin-top: 30px;
    padding: 20px 0;
  }
  #ServiceBlock .service-contents {
    display: block;
    width: auto;
    margin-top: 30px;
  }
  #ServiceBlock .service-contents .service {
    display: block;
    width: auto;
    padding: 0;
    border-right: none;
    margin-bottom: 40px;
  }
  #ServiceBlock .service-contents .service:last-child {
    margin-bottom: 0;
  }
  #ServiceBlock .service-contents .service h4 {
    font-size: 15px;
  }
  #ServiceBlock .service-contents .service p {
    font-size: inherit;
  }
  #ServiceBlock .service-contents .service p.comment {
    height: auto !important;
  }
  #ServiceBlock .service-contents .service p.more {
    font-size: inherit;
  }

  /* -----
   * CompanyBlock
  ----------------------------------------------------------------------------- */
  #CompanyBlock {
    margin-top: 30px;
  }
  #CompanyBlock table {
    margin-top: 20px;
  }
  #CompanyBlock table th, #CompanyBlock table td {
    padding: 10px 0;
    font-size: inherit;
  }
  #CompanyBlock table th {
    width: 1%;
    padding-right: 2em;
  }

  /* -----
   * ShowroomBlock
  ----------------------------------------------------------------------------- */
  #ShowroomBlock .image {
    width: 115px;
    padding: 10px;
  }
  #ShowroomBlock .text {
    padding: 10px 10px 10px 0;
    font-size: inherit;
  }

  /* -----
   * MapBlock
  ----------------------------------------------------------------------------- */
  #MapBlock {
    margin-top: 30px;
  }
  #MapBlock #map {
    width: 100%;
    height: 300px;
  }
}
