@charset "UTF-8";
/* cf */
/*--HRSdesignCSS -- 2015,11,10 Rel-ish yuki--*/
@font-face {
  font-family: 'fontello';
  src: url("../font/fontello.eot");
  src: url("../font/fontello.eot?46355118#iefix") format("embedded-opentype"), url("../font/fontello.woff") format("woff"), url("../font/fontello.ttf") format("truetype"), url("../font/fontello.svg#fontello") format("svg");
}
/* httpLink */
a[href^="http://"]:after {
  font-family: 'fontello';
  content: 'i';
  color: #ff7600;
  margin: 0 3px;
}

/* c_company */
.c_company {
  max-width: 1000px;
  margin: 0 auto 10%;
  padding: 0 3%;
}
.c_company h1 {
  height: 0;
  padding: 20% 0 0;
  background: url(../img/company/visual.png) no-repeat left top;
  background-size: cover;
  text-indent: 110%;
  white-space: nowrap;
  overflow: hidden;
}
.c_company .company_data {
  padding: 5% 2%;
  background: #F2F6F9;
}
.c_company .company_data table {
  background: #fff;
  border: solid 1px #E7E7E8;
}
.c_company .company_data th {
  display: block;
  padding: 1% 2%;
  text-align: left;
  font-weight: normal;
  border: solid 1px #E7E7E8;
  background: #efefef;
}
.c_company .company_data td {
  display: block;
  padding: 1% 2%;
  border: solid 1px #E7E7E8;
  border-top: none;
}
.c_company .greeting {
  padding: 5% 2%;
  background: #E7E7E8;
}
.c_company .greeting h2 {
  margin: 0 0 .5em;
  font-size: 100%;
  font-weight: normal;
}
.c_company .greeting p {
  margin: 0 0 .5em;
  font-size: 87.5%;
}

/* c_access */
.c_access {
  max-width: 1000px;
  margin: 0 auto 10%;
  padding: 0 3%;
}
.c_access h1 {
  height: 0;
  padding: 20% 0 0;
  background: url(../img/access/visual.png) no-repeat left top;
  background-size: cover;
  text-indent: 110%;
  white-space: nowrap;
  overflow: hidden;
}
.c_access .accessmap {
  padding: 5% 2%;
  background: #F2F6F9;
}
.c_access .accessmap hr {
  border-top: 1px solid #bbb;
  text-align: center;
}
.c_access .accessmap hr:after {
  content: '';
  display: inline-block;
  position: relative;
  width: 160px;
  height: 40px;
  margin: -40px 0 0;
  background: url("../img/access/re_access.png");
  background-size: contain;
}
.c_access .accessmap .map_wrapper {
  max-width: 960px;
  min-width: 280px;
  margin: 4% auto 0;
}
.c_access .accessmap .googlemap {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.c_access .accessmap .googlemap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.c_access .contactBox {
  padding: 3%;
  background: #E7E7E8;
}
.c_access .contactBox p {
  margin: 0 0 .5em;
  font-size: 87.5%;
}
.c_access .contactBox p.mot:before {
  content: '●';
}
.c_access .contactBox p.contactButton {
  text-align: center;
  color: #fff;
  background: #ff7600;
}
.c_access .contactBox p.contactButton a {
  display: block;
  width: 100%;
  padding: 3% 0;
  color: #fff;
  text-decoration: none;
}

/* c_contact */
.c_contact {
  max-width: 1000px;
  margin: 0 auto 10%;
  padding: 0 3%;
}
.c_contact h1 {
  height: 0;
  padding: 20% 0 0;
  background: url(../img/contact/visual.png) no-repeat left top;
  background-size: cover;
  text-indent: 110%;
  white-space: nowrap;
  overflow: hidden;
}
.c_contact .contactForm {
  padding: 5% 2%;
  background: #F2F6F9;
}
.c_contact .contactForm p {
  font-size: 87.5%;
}
.c_contact .contactForm dl {
  margin: 3% 0;
}
.c_contact .contactForm dt {
  padding: 2%;
}
.c_contact .contactForm dd {
  padding: 2% 2% 3%;
}
.c_contact .contactForm input, .c_contact .contactForm textarea {
  width: 90%;
  padding: 2%;
  border: 1px solid #e2e2e3;
  background: #fff;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  -moz-box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.2);
  box-shadow: inner 0 0 4px rgba(0, 0, 0, 0.2);
  box-shadow: rgba(226, 226, 227, 0.92157) 0px 0px 3px 1px;
  -webkit-box-shadow: rgba(226, 226, 227, 0.92157) 0px 0px 3px 1px;
  -moz-box-shadow: rgba(226, 226, 227, 0.92157) 0px 0px 3px 1px;
}
.c_contact .contactForm input:focus, .c_contact .contactForm textarea:focus {
  border: solid 1px #FF7600;
}
.c_contact .contactForm button {
  width: 55%;
  margin: 0 2%;
  padding: 5%;
  background: #FF7600;
  color: #fff;
  font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', メイリオ, Meiryo, sans-serif;
}

/* c_topics */
.c_topics {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 3%;
}
.c_topics h1 {
  height: 0;
  padding: 20% 0 0;
  background: url(../img/topics/visual.png) no-repeat left top;
  background-size: cover;
  text-indent: 110%;
  white-space: nowrap;
  overflow: hidden;
}
.c_topics .topicsArchive {
  padding: 5% 2%;
  background: #f8fafc;
}
.c_topics .topicsArchive h2 {
  margin: 0 0 .5em;
  font-weight: normal;
  font-size: 125%;
}
.c_topics .topicsArchive p {
  margin: 0 0 1em;
}
.c_topics .topicsArchive hr {
  border: none;
  border-bottom: solid 1px #BCBDC0;
}

/* c_cr */
.c_cr {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 3%;
}
.c_cr h1 {
  height: 0;
  padding: 20% 0 0;
  background: url(../img/construction_results/visual.png) no-repeat left top;
  background-size: cover;
  text-indent: 110%;
  white-space: nowrap;
  overflow: hidden;
}
.c_cr .crBox {
  padding: 5% 2%;
  background: #f8fafc;
}
.c_cr .crBox h2 {
  margin: 0 0 .5em;
  font-weight: normal;
  font-size: 125%;
}
.c_cr .crBox p {
  margin: 0 0 1em;
}
.c_cr .crBox hr {
  border: none;
  border-bottom: solid 1px #BCBDC0;
}
.c_cr .crBox img {
  display: block;
  margin: 3% auto;
}
.c_cr .crBox .photos {
  width: 98%;
  margin: 0 auto;
  padding: 10px;
  background: #d8fafc;
}

/* = MEDIA = */
@media only screen and (min-width: 769px) {
  /* c_company */
  .c_company {
    margin: 0 auto -70px;
    padding: 0;
  }
  .c_company .company_data {
    padding: 30px 20px 60px;
  }
  .c_company .company_data table {
    width: 100%;
  }
  .c_company .company_data th {
    display: table-cell;
    width: 210px;
    padding: 8px 15px;
    background: none;
  }
  .c_company .company_data td {
    display: table-cell;
    width: auto;
    padding: 8px 15px;
  }
  .c_company .greeting {
    min-height: 320px;
    padding: 20px 25px;
    background: url(../img/company/photo.png) no-repeat left 80px #E7E7E8;
  }
  .c_company .greeting h2 {
    margin: 0;
    font-size: 125%;
  }
  .c_company .greeting p {
    width: 450px;
    margin: 30px 0 .5em 500px;
    line-height: 150%;
  }

  /* c_access */
  .c_access {
    margin: 0 auto -70px;
    padding: 0;
  }
  .c_access .accessmap {
    padding: 40px 20px;
  }
  .c_access .accessmap hr {
    padding: 0 0 20px;
  }
  .c_access .accessmap hr:after {
    width: 319px;
    height: 80px;
    margin: -40px 0 0;
    background: url("../img/access/re_access.png");
  }
  .c_access .contactBox {
    position: relative;
    padding: 30px 40px;
  }
  .c_access .contactBox p {
    margin: 0 0 1em;
  }
  .c_access .contactBox p.mot:before {
    content: '●';
  }
  .c_access .contactBox p.contactButton {
    width: 320px;
    position: absolute;
    top: 30px;
    right: 40px;
    font-size: 125%;
  }

  .c_contact {
    margin: 0 auto -70px;
    padding: 0;
  }
  .c_contact .contactForm {
    padding: 15px 20px;
  }
  .c_contact .contactForm p {
    font-size: 100%;
  }
  .c_contact .contactForm dl {
    margin: 18px 0;
  }
  .c_contact .contactForm dt {
    float: left;
    width: 200px;
    margin: 0 0 15px;
    padding: 0 0 0 20px;
    clear: both;
  }
  .c_contact .contactForm dd {
    margin: 0 0 15px 200px;
    padding: 0;
  }
  .c_contact .contactForm input, .c_contact .contactForm textarea {
    width: 300px;
    padding: 10px;
  }
  .c_contact .contactForm textarea {
    width: 580px;
    height: 10em;
  }
  .c_contact .contactForm button {
    width: 300px;
    margin: 10px 0 0 220px;
    padding: 15px 0;
  }

  /* c_topics */
  .c_topics {
    margin: 0 auto -180px;
    padding: 0;
  }
  .c_topics .topicsArchive {
    min-height: 100vh;
    padding: 25px 20px;
  }
  .c_topics .topicsArchive h2 {
    margin: 0 0 1em;
    font-weight: normal;
    font-size: 200%;
  }
  .c_topics .topicsArchive p {
    margin: 0;
  }

  /* c_cr */
  .c_cr {
    margin: 0 auto -180px;
    padding: 0;
  }
  .c_cr .crBox {
    min-height: 100vh;
    padding: 25px 20px;
  }
  .c_cr .crBox h2 {
    margin: 0 0 .5em;
    font-weight: normal;
    font-size: 200%;
  }
  .c_cr .crBox th {
    text-align: left;
  }
  .c_cr .crBox img {
    margin: 20px 0;
  }
}
