#company main {
  padding: 0 0 100px;
}
@media screen and (max-width: 768px) {
  #company main {
    padding: 0 0 20vw;
  }
}

.area_lead {
  margin-top: 50px;
}
.area_lead .txt_lead {
  margin-top: 28px;
  line-height: 2.3;
}
@media screen and (max-width: 768px) {
  .area_lead {
    margin-top: 2.3em;
  }
  .area_lead .txt_lead {
    margin-top: 1.6em;
    font-size: min(3.7333333333vw, 14px);
    line-height: 2.3;
  }
}

.box_about {
  margin-top: 90px;
}
.box_about .logo {
  width: 225px;
  margin: 30px auto 0;
}
@media screen and (max-width: 768px) {
  .box_about {
    margin-top: 4.4em;
  }
  .box_about .logo {
    width: min(60vw, 225px);
    margin: 1.6em auto 0;
  }
}

.box_section {
  margin-top: 100px;
}
@media screen and (max-width: 768px) {
  .box_section {
    margin-top: 5em;
  }
}

.tb_gray {
  margin: 46px auto 0;
}
@media screen and (min-width: 769px) {
  .tb_gray th {
    width: 170px;
  }
}
.tb_gray td .map {
  margin-left: 10px;
  padding: 0 10px 1px;
  background: #0F864C;
  font-family: "NotoSansJP", serif;
  border-radius: 3px;
  line-height: 1;
  font-size: 14px;
  color: #fff;
}
.tb_gray td.tel {
  font-family: "NotoSansJP", serif;
}
@media screen and (min-width: 769px) {
  .tb_gray td.tel {
    width: 190px;
    padding-left: 20px;
    padding-right: 10px;
    border-left: 1px solid #ddd;
  }
}
@media screen and (max-width: 768px) {
  .tb_gray {
    margin: 2em auto 0;
  }
  .tb_gray tr {
    position: relative;
  }
  .tb_gray td .map {
    margin-left: 0;
    padding: 0.3em 1em;
    font-size: min(3.7333333333vw, 14px);
    position: absolute;
    top: 0.7em;
    right: 1.1em;
  }
  .tb_gray td.tel span {
    margin-right: 1em;
  }
}

@media screen and (max-width: 768px) {
  .logo + .tb_gray {
    margin: 3.4em auto 0;
  }
}