@media screen and (min-width: 768px) {
  #container {
    margin-top: -96px;
  }
}

.kv {
  width: 100%;
  height: 300px;
}
.kv img {
  width: 100%;
  height: auto;
}
.kv video {
  width: 100%;
  height: 300px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 768px) {
  .kv {
    width: 100%;
    height: auto;
  }
  .kv video {
    width: 100%;
    height: auto;
  }
}

#aboutus > div {
  position: relative;
  z-index: 2;
}
#aboutus .hd1 {
  margin: 0 0 32px 0;
  text-align: left;
}
#aboutus p {
  font-size: 1em;
  line-height: 175%;
  letter-spacing: 0.04em;
}
#aboutus .more a {
  margin-top: 32px;
  margin-left: 0;
}
@media screen and (min-width: 768px) {
  #aboutus {
    margin-top: 103px;
    padding: 0 30px;
  }
  #aboutus:before {
    position: absolute;
    top: -2px;
    left: 50%;
    content: "";
    width: 2543px;
    height: 4351px;
    background-image: url(../img/top/body_line.svg);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-transform: translateX(-24.7%);
        -ms-transform: translateX(-24.7%);
            transform: translateX(-24.7%);
  }
  #aboutus .hd1 {
    margin: 0 0 40px 0;
  }
  #aboutus p {
    font-size: 1.125em;
    line-height: 175%;
    letter-spacing: 0.04em;
  }
  #aboutus .more a {
    margin-top: 40px;
    margin-left: 0;
  }
}

@media screen and (min-width: 768px) {
  #service {
    margin-top: 370px;
  }
}

@media screen and (min-width: 768px) {
  #works {
    margin-top: 155px;
  }
}

#recruit {
  position: relative;
}
#recruit .hd {
  width: 100%;
}
#recruit .hd p {
  text-align: center;
  margin: 32px auto 12px;
  font-size: 1em;
  line-height: 175%;
  letter-spacing: 0.04em;
}
#recruit .photo {
  width: 100%;
  height: auto;
  border-radius: 6px;
  margin-bottom: 32px;
  overflow: hidden;
  aspect-ratio: 1.9/1;
}
#recruit .photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 768px) {
  #recruit {
    margin: 340px auto 160px;
  }
  #recruit .hd {
    position: absolute;
    width: 337px;
    top: 8px;
    right: 0;
  }
  #recruit .hd p {
    text-align: center;
    margin: 32px auto 12px;
    font-size: 1.125em;
    line-height: 175%;
    font-weight: 500;
    letter-spacing: 0.03em;
  }
  #recruit .photo {
    width: 600px;
    height: 316px;
    border-radius: 12px;
  }
  #recruit .more {
    position: absolute;
    bottom: 9px;
    right: 10px;
    width: 316px;
  }
}

#recruit2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; /*align-items: center;*/
}
@media screen and (min-width: 768px) {
  #recruit2 .photo {
    width: 600px;
    height: 316px;
    border-radius: 12px;
    overflow: hidden;
  }
  #recruit2 .photo img {
    display: block;
    width: 100%;
    height: auto;
  }
  #recruit2 .photo + div {
    width: 316px;
    text-align: center;
  }
  #recruit2 .photo + div .hd1 + p {
    margin: 32px 0;
  }
  #recruit2 .photo + div .more {
    text-align: left;
  }
}
/*# sourceMappingURL=home.css.map */