.h1_bg {
  background: url("../img/mv.jpg") center no-repeat #ebf5fa;
  background-size: cover;
}
@media only screen and (max-width: 768px) {
  .h1_bg {
    background: url("../img/mv.jpg") center no-repeat #ebf5fa;
    background-size: cover;
  }
}

article {
  padding-top: 80px;
}

.breadcrumb {
  margin-bottom: -25px;
}
@media screen and (max-width: 768px) {
  .breadcrumb {
    margin-bottom: -55px;
  }
}

.contents_innner {
  padding-top: 80px;
  margin-top: -80px;
}

#about01 {
  padding-bottom: 140px;
}
#about01 .flex .box {
  width: 42%;
  position: relative;
}
#about01 .flex .box figure {
  position: absolute;
  right: 0;
  max-width: 750px;
  width: 44vw;
}
#about01 .flex .box figure img {
  vertical-align: bottom;
  max-width: 100%;
}
#about01 .flex .box.text_area {
  width: 58%;
  padding-left: 40px;
  text-align: left;
}
#about01 .flex .box.text_area h3 {
  margin-top: 30px;
  margin-bottom: 32px;
}
#about01 .flex .box.text_area p {
  line-height: 1.8;
  margin-bottom: 20px;
}
#about01 .flex .box.text_area:before {
  content: "";
  background: #ebf5fa;
  height: 100%;
  width: 100vw;
  position: absolute;
  top: 100px;
  margin: auto;
  left: -26vw;
  z-index: -1;
}

#about02 {
  background: linear-gradient(#fff 20%, #ebf5fa 20%);
  padding-bottom: 100px;
  margin-bottom: 100px;
}
#about02 .sdgsimg {
  min-width: 680px;
  width: 80%;
  margin: 30px auto 50px auto;
  text-align: center;
}
#about02 .sdgsimg img {
  width: 100%;
  height: auto;
}
#about02 .disc {
  text-align: left;
}
#about02 li {
  border: 2px solid #1b8fc8;
  background: #fff;
  padding: 46px;
  margin-top: 30px;
}
#about02 li figure {
  width: 19%;
}
#about02 li figure img {
  width: 100%;
  height: auto;
}
#about02 li .maru {
  width: 77%;
  text-align: left;
}
#about02 li .maru dt {
  font-size: 2rem;
  font-weight: bold;
  width: 320px;
  border-bottom: 2px solid #1b8fc8;
  padding-bottom: 10px;
  margin-bottom: 15px;
}
#about02 li .maru dd {
  margin-bottom: 10px;
}

.tbl01 ol {
  padding-left: 20px;
}
.tbl01 th {
  font-size: 1.8rem;
}
@media only screen and (max-width: 768px) {
  .tbl01 th {
    font-size: 1.6rem;
  }
}
.tbl01 td {
  font-size: 1.8rem;
}
@media only screen and (max-width: 768px) {
  .tbl01 td {
    font-size: 1.6rem;
  }
}
.tbl01 td p, .tbl01 td li {
  font-size: 1.8rem;
}
@media only screen and (max-width: 768px) {
  .tbl01 td p, .tbl01 td li {
    font-size: 1.6rem;
  }
}

.ad dt {
  display: table-cell;
  white-space: nowrap;
}
.ad dd {
  display: table-cell;
}

.map {
  margin-bottom: 35px;
}
.map p {
  text-align: left;
  margin-bottom: 10px;
}

.map.warehouse {
  margin-bottom: 0;
}

@media screen and (max-width: 1080px) and (min-width: 769px) {
  #about01 {
    padding-bottom: 100px;
  }
  #about01 .flex .box figure {
    width: 43vw;
  }

  #about02 {
    padding-bottom: 20px;
    margin-bottom: 60px;
  }

  .map {
    margin-bottom: 35px;
  }

  .map.warehouse {
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 768px) {
  #about01 {
    padding-bottom: 60px;
    background: linear-gradient(#fff 24%, #ebf5fa 24%);
  }
  #about01 .flex .box {
    position: static;
    width: 90%;
    margin: 0 0 0 4%;
  }
  #about01 .flex .box figure {
    width: 100%;
    height: auto;
    position: static;
  }
  #about01 .flex .box figure img {
    vertical-align: bottom;
    max-width: 100%;
  }
  #about01 .flex .box.text_area {
    width: 90%;
    margin: 0 0 0 4%;
    padding-left: 0;
    text-align: left;
  }
  #about01 .flex .box.text_area h3 {
    margin-top: 30px;
    margin-bottom: 25px;
  }
  #about01 .flex .box.text_area:before {
    display: none;
  }

  #about02 {
    background: linear-gradient(#fff 19%, #ebf5fa 19%);
    padding-bottom: 10px;
    margin-bottom: 60px;
  }
  #about02 .sdgsimg {
    min-width: 100px;
    width: 90%;
    margin-left: 4%;
  }
  #about02 p {
    width: 90%;
    margin-left: 4%;
  }
  #about02 h3 {
    width: 90%;
    margin-left: 4%;
  }
  #about02 li {
    border: 2px solid #1b8fc8;
    background: #fff;
    padding: 30px;
    margin-top: 30px;
    width: 96%;
    margin-left: 2%;
  }
  #about02 li figure {
    width: 55%;
    text-align: center;
    margin: 10px auto 30px auto;
  }
  #about02 li .maru {
    width: 100%;
  }
  #about02 li .maru dt {
    font-size: 1.8rem;
    width: 100%;
  }

  .map {
    margin-bottom: 35px;
  }

  .map.warehouse {
    margin-bottom: 0;
  }
}
