.mainHero {
  background-image: url(/company/img/hero_bg.jpg);
  background-position: left center;
  background-size: cover;
}

.topLead .rTtl {
  margin-bottom: 35px;
}
.topLead .predImg {
  width: 22.8%;
  float: left;
  margin-right: 2.2%;
}
@media screen and (max-width: 500px) {
  .topLead .predImg {
    float: none;
    width: 60%;
    margin: 0 auto 10px;
  }
}
.topLead .predTxt {
  float: left;
  width: 50%;
}
.topLead .predTxt .prName {
  margin: 20px auto 0;
  text-align: center;
  max-width: 200px;
}
@media screen and (max-width: 750px) {
  .topLead .predTxt {
    width: 75%;
  }
}
@media screen and (max-width: 500px) {
  .topLead .predTxt {
    width: 100%;
  }
}

.olList {
  /*width: 57.1%;*/
  width: 48%;
  float: left;
  margin-bottom: 50px;
}
.olList dl {
  display: table;
  width: 100%;
  border-bottom: #f6dddd 1px solid;
}
.olList dl:first-child {
  border-top: #f6dddd 1px solid;
}
.olList dl dt {
  padding: 10px 3%;
  display: table-cell;
  width: 24%;
}
.olList dl dd {
  padding: 10px 3%;
  display: table-cell;
}
@media screen and (max-width: 750px) {
  .olList {
    width: 100%;
    float: none;
  }
}

.olImg {
  /*width: 31.4%;*/
  width: 48%;
  float: right;
}
@media screen and (max-width: 750px) {
  .olImg {
    width: 100%;
    float: none;
    margin-bottom: 50px;
  }
}

.mapArea .mapBox {
  position: relative;
  height: 430px;
  padding-top: 430px;
}
.mapArea .mapBox iframe {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 750px) {
  .mapArea .mapBox {
    margin-bottom: 30px;
    height: 320px;
    padding-top: 320px;
  }
  .mapArea .mapBox iframe {
    height: 320px;
  }
}

.pylArea {
  width: 44.2%;
  float: left;
}
.pylArea h2 {
  margin-bottom: 20px;
}
.pylArea .msg {
  width: 100%;
  position: relative;
  text-align: center;
  font-size: 20px;
  line-height: 2;
}
.pylArea .msg:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: inline-block;
  width: 14px;
  height: 184px;
  background-image: url(/company/img/pyl_kakko_l.png);
  background-repeat: no-repeat;
  background-position: top left;
}
.pylArea .msg:after {
  position: absolute;
  top: 0;
  right: 0;
  content: "";
  display: inline-block;
  width: 14px;
  height: 184px;
  background-image: url(/company/img/pyl_kakko_r.png);
  background-repeat: no-repeat;
  background-position: top right;
}
@media screen and (max-width: 750px) {
  .pylArea {
    float: none;
    width: 96%;
    margin: 0 auto 30px;
  }
  .pylArea .msg {
    font-size: 16px;
  }
}

.hstArea {
  width: 44.2%;
  float: right;
  margin-bottom: 50px;
}
.hstArea dl {
  display: table;
  width: 100%;
  border-bottom: #f6dddd 1px solid;
}
.hstArea dl:first-child {
  border-top: #f6dddd 1px solid;
}
.hstArea dl dt {
  padding: 10px 2%;
  display: table-cell;
  width: 30%;
}
.hstArea dl dd {
  padding: 10px 2%;
  display: table-cell;
}
@media screen and (max-width: 750px) {
  .hstArea {
    float: none;
    width: 100%;
    margin: 0 auto;
  }
}
