@import url(reset.css);
@import url(font.css);
@import url(column.css);
@import url(common.css);
@import url(pc.css);
@import url(mobile.css);
.home {
  padding-bottom: 0;
}
.home .banner .subject {
  top: 17vw;
  left: 0;
  right: 0;
  text-align: center;
}
.home .banner .subject h5 {
  font-size: 2.19vw;
  color: #ffffff;
  margin-bottom: 2vw;
}
.home .banner .subject h1 {
  font-family: sabon;
  line-height: 100%;
  font-size: 12.32vw;
  color: #ffffff;
}
.home .first h2 {
  width: 28.02vw;
  margin: 0 auto;
  margin-top: 6.3vw;
  font-size: 1.88vw;
  line-height: 3.13vw;
  color: #253457;
  text-align: center;
}
.home .first .link {
  margin-top: 3vw;
  margin-bottom: 7.5vw;
  text-align: center;
}
.home .first .link a {
  font-size: 1.1vw;
  line-height: 1.13vw;
  color: #3bb183;
  text-align: center;
}
.home .first .tech {
  align-items: center;
}
.home .first .tech dl {
  margin-bottom: 3vw;
  margin-left: 10vw;
}
.home .first .tech dl dt {
  margin-bottom: 1.5vw;
  font-size: 0.94vw;
  color: #141414;
}
.home .first .tech dl dd {
  position: relative;
  font-size: 0.94vw;
  line-height: 1.88vw;
  color: #141414;
  font-weight: 300;
  text-indent: 1vw;
}
.home .first .tech dl dd::before {
  position: absolute;
  content: " ";
  left: 0.1vw;
  top: 0.8vw;
  width: 0.31vw;
  height: 0.31vw;
  background-color: #3ab082;
  border-radius: 50%;
}
.home .first .tech p {
  font-size: 0.94vw;
  color: #141414;
}
.home .first .tech a {
  margin-top: 2vw;
  margin-left: 0vw;
}
.home .first .intro {
  padding-top: 8vw;
  padding-bottom: 8vw;
  padding-left: 16vw;
  padding-right: 8vw;
}
.home .first .intro h3 {
  margin-top: 2vw;
  font-size: 2.19vw;
  line-height: 3.13vw;
  color: #141414;
}
.home .first .intro h3 em {
  background-color: #abcce1;
  font-weight: 500;
}
.home .first .intro h5 {
  font-size: 0.94vw;
  line-height: 2.5vw;
  color: #141414;
}
.home .table {
  display: flex;
  flex-direction: row;
}
.home .table .cell {
  width: 50%;
  position: relative;
}
.home .table .cell:last-of-type a,
.home .table .cell:last-of-type h3,
.home .table .cell:last-of-type p {
  color: #fff;
}
.home .table .cell a {
  position: absolute;
  top: 24.35vw;
  left: 0;
  right: 0;
  text-align: center;
  color: #141414;
}
.home .table .cell h3 {
  position: absolute;
  top: 26.35vw;
  left: 0;
  right: 0;
  text-align: center;
  font-size: 2.19vw;
  line-height: 2.34vw;
  color: #141414;
}
.home .table .cell p {
  position: absolute;
  left: 2.24vw;
  top: 3.39vw;
  font-size: 1.25vw;
  line-height: 2.34vw;
  color: #ffffff;
}
.home .products {
  padding: 9vw 0;
}
.home .products h3 {
  font-size: 2.19vw;
  line-height: 2.5vw;
  color: #141414;
  margin-bottom: 3vw;
}
.home .products .list {
  display: flex;
  flex-direction: row;
  justify-content: space-evenly;
  text-align: center;
}
.home .products dl dt {
  width: 7.6vw;
  height: 7.6vw;
  background-color: #ffffff;
  border: solid 0.1vw #231815;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  cursor: pointer;
}
.home .products dl dt:hover {
  border-color: transparent;
  background-color: #3bb183;
  color: #fff;
}
.home .products dl dt:hover img {
  filter: drop-shadow(2000px 0 0 #ffffff);
  transform: translate(-2000px);
}
.home .products dl dd {
  margin-top: 1.72vw;
  font-size: 1.25vw;
  line-height: 2.5vw;
  color: #141414;
}
.home .products img {
  width: 3.33vw;
  height: 3.75vw;
}
.home .map {
  position: relative;
  background-color: rgba(250, 250, 250, 0.8);
}
.home .map p {
  right: 9vw;
  bottom: 4.6vw;
  position: absolute;
  font-size: 1.88vw;
  line-height: 2.81vw;
  color: #243456;
  width: 33.54vw;
}
.home .map h5 {
  margin-bottom: 1.8vw;
  font-size: 0.94vw;
  line-height: 2.5vw;
  color: #141414;
  z-index: 11;
  left: 18vw;
  top: 5vw;
  position: absolute;
}
.home .map h2 {
  font-size: 3.75vw;
  line-height: 4.69vw;
  color: #141414;
  z-index: 11;
  left: 18vw;
  top: 8vw;
  position: absolute;
}
.home .about {
  padding: 6.7vw 0;
}
.home .about dl {
  width: 40%;
  display: inline-block;
  margin-bottom: 7vw;
  vertical-align: text-top;
}
.home .about dl dt {
  font-size: 3.13vw;
  line-height: 3.13vw;
  color: #141414;
  font-family: 'futura-boo', sans-serif;
}
.home .about dl dd {
  margin-top: 0.73vw;
  font-size: 0.94vw;
  line-height: 1.25vw;
  color: #141414;
}
.home .about .img {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
}
.home .about .img img {
  width: 60.21vw;
}
.home .about .joinus {
  margin-top: 5.8vw;
}
.home .about .joinus h2 {
  font-size: 1.25vw;
  line-height: 2.5vw;
  letter-spacing: 0vw;
  color: #141414;
}
.home .about .joinus h5 {
  font-size: 0.94vw;
  color: #141414;
}
.home .about .joinus .more-link {
  margin-top: 1.77vw;
}
@media screen and (max-width: 960px) {
  .home .banner .subject {
    top: 65vw;
  }
  .home .banner .subject h1 {
    font-size: 18.01vw;
  }
  .home .banner .subject h5 {
    margin-bottom: 5.7vw;
    font-size: 4vw;
  }
  .home .first {
    padding: 20vw 0;
  }
  .home .first h2 {
    font-size: 6.4vw;
    line-height: 150%;
    width: 68.93vw;
  }
  .home .first .link {
    margin: 12vw 0;
  }
  .home .first .link a {
    font-size: 3.2vw;
    line-height: 150%;
  }
  .home .first .tech {
    padding: 0 4vw;
  }
  .home .first .tech dl {
    margin-left: 0;
    margin-bottom: 10vw;
  }
  .home .first .tech dl:first-of-type {
    margin-top: 13.6vw;
  }
  .home .first .tech dl dt {
    font-size: 3.73vw;
    line-height: 150%;
    margin-bottom: 6vw;
  }
  .home .first .tech dl dd {
    margin-left: 22.9vw;
    font-size: 3.47vw;
    line-height: 150%;
    text-indent: 3vw;
    margin-bottom: 6vw;
    font-weight: 400;
  }
  .home .first .tech dl dd::before {
    top: 1.8vw;
    width: 1.33vw;
    height: 1.33vw;
  }
  .home .first .tech p {
    font-size: 3.47vw;
    line-height: 150%;
    margin-left: 23vw;
  }
  .home .first .tech a {
    margin-top: 6.8vw;
    font-size: 3.2vw;
    margin-left: 23vw;
  }
  .home .first .intro {
    padding: 8vw 4vw;
  }
  .home .first .intro h5 {
    font-size: 3.2vw;
    line-height: 150%;
  }
  .home .first .intro h3 {
    width: auto;
    font-size: 7.73vw;
    line-height: 150%;
  }
  .home .table {
    flex-direction: column;
  }
  .home .table .cell {
    width: 100%;
    height: 50vh;
  }
  .home .table .cell a {
    top: 45vw;
    font-size: 3.2vw;
  }
  .home .table .cell h3 {
    font-size: 8vw;
    line-height: 150%;
    top: 52vw;
  }
  .home .table .cell p {
    top: 7.2vw;
    left: 4vw;
    font-size: 3.2vw;
  }
  .home .products {
    padding: 20vw 4vw;
  }
  .home .products h3 {
    font-size: 8vw;
    line-height: 150%;
    margin-bottom: 6.5vw;
    text-align: center;
  }
  .home .products .list {
    flex-direction: column;
  }
  .home .products dl {
    display: flex;
    flex-direction: row;
    align-items: center;
    width: 92vw;
    height: 20vw;
    line-height: 20vw;
    border-bottom: 1px solid #E1E1E1;
  }
  /* .products dl:nth-of-type(2n+1) {
    background-color: #3bb183;
  }
  .home .products dl:nth-of-type(2n+1) dt {
    background-color: #fff;
  }
  .home .products dl:nth-of-type(2n+1) dt img {
    filter: drop-shadow(2000px 0 0 #3bb183);
  }
  .home .products dl:nth-of-type(2n+1) dd {
    color: #fff;
  }*/
  .home .products dl dt {
    width: 10.67vw;
    height: 10.67vw;
    margin: 0 5.4vw;
    border-color: transparent;
    background-color: #3bb183;
  }
  .home .products dl dt img {
    filter: drop-shadow(2000px 0 0 #ffffff);
    transform: translate(-2000px);
    width: 5.07vw;
    height: 5.07vw;
  }
  .home .products dl dd {
    font-size: 4.8vw;
  }
  .home .map {
    padding: 16vw 4vw;
  }
  .home .map h5 {
    font-size: 3.2vw;
    line-height: 150%;
    position: relative;
    left: 0;
  }
  .home .map h2 {
    font-size: 8.8vw;
    line-height: 150%;
    position: relative;
    left: 0;
  }
  .home .map p {
    margin-top: 8vw;
    padding-left: 24vw;
    width: auto;
    right: 0;
    bottom: 0;
    position: relative;
    font-size: 4.8vw;
    line-height: 7.2vw;
  }
  .home .about {
    padding: 14vw 4vw 18vw 4vw;
  }
  .home .about dl {
    width: 40%;
    padding-left: 5%;
    margin-bottom: 19vw;
  }
  .home .about dl dt {
    font-size: 5.33vw;
    line-height: 150%;
  }
  .home .about dl dd {
    font-size: 3.2vw;
    line-height: 150%;
  }
  .home .about .img {
    position: relative;
    left: -4vw;
    right: -4vw;
    width: 100vw;
  }
  .home .about .img img {
    width: 100%;
  }
  .home .about .joinus {
    margin-top: 11.73vw;
  }
  .home .about .joinus h2 {
    font-size: 5.33vw;
    line-height: 150%;
    font-weight: 600;
  }
  .home .about .joinus h5 {
    font-size: 3.2vw;
    line-height: 150%;
    width: auto;
  }
  .home .about .joinus .col-m-block:nth-of-type(2) {
    padding-left: 0;
  }
  .home .about .joinus .col-m-block:nth-of-type(3) {
    padding-left: 22.8vw;
    margin-top: 9.73vw;
  }
  .home .about .joinus .col-m-block:nth-of-type(3) p {
    width: 62.13vw;
    font-size: 3.73vw;
    line-height: 150%;
  }
  .home .about .joinus .col-m-block:nth-of-type(3) a {
    margin-top: 10vw;
  }
}
/*# sourceMappingURL=./index.css.map */