.index-header {
  position: relative;
  background: url(../img/index/head_back.png) no-repeat center/cover;
  padding-top: 50vw;
  padding-bottom: 30vw;
}

@media (min-width: 900px) {
  .index-header {
    padding-top: 390px;
    padding-bottom: 165px;
  }
}

#index h2 {
  margin-bottom: 5vw;
  text-align: center;
}

@media (min-width: 900px) {
  #index h2 {
    margin-bottom: 25px;
  }
}

#index h2 img {
  width: 50vw;
}

@media (min-width: 900px) {
  #index h2 img {
    width: auto;
  }
}

#index .round-block {
  text-align: center;
  padding: 5vw 0;
  width: 80vw;
  margin: 0 auto 10vw;
}

@media (min-width: 900px) {
  #index .round-block {
    width: 490px;
    padding: 15px 0;
    margin: 0 auto;
  }
}

#index-title {
  background-color: rgba(221, 235, 244, 0.6);
  margin-bottom: 10vw;
  padding: 5vw 0;
}

@media (min-width: 900px) {
  #index-title {
    padding: 45px 0;
    margin-bottom: 30px;
  }
}

#index-title .inner-box {
  text-align: center;
}

@media (min-width: 900px) {
  #index-title .inner-box {
    width: 550px;
    margin-left: 15%;
  }
}

#index-title h1 {
  margin-bottom: 5vw;
}

@media (min-width: 900px) {
  #index-title h1 {
    margin-bottom: 15px;
  }
}

#index-title img {
  width: 60vw;
}

@media (min-width: 900px) {
  #index-title img {
    width: auto;
  }
}

#index-text {
  text-align: center;
}

#index-text p {
  margin-bottom: 5vw;
}

@media (min-width: 900px) {
  #index-text p {
    margin-bottom: 45px;
  }
}

.bubble01 {
  position: absolute;
  width: 20vw;
  top: 35vw;
  left: 5vw;
}

@media (min-width: 900px) {
  .bubble01 {
    width: 210px;
    top: 210px;
    left: 15%;
  }
}

.bubble02 {
  position: absolute;
  width: 30vw;
  top: 20vw;
  left: 60vw;
}

@media (min-width: 900px) {
  .bubble02 {
    width: 287px;
    top: 65px;
    left: 32%;
  }
}

.bubble03 {
  position: absolute;
  display: none;
}

@media (min-width: 900px) {
  .bubble03 {
    display: block;
    width: 444px;
    top: 125px;
    left: calc(15% + 550px);
  }
}

#service {
  background: url(../img/index/service_back.png) no-repeat center/cover;
  padding-top: 10vw;
  padding-bottom: 10vw;
}

@media (min-width: 900px) {
  #service {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}

@media (min-width: 900px) {
  #service .inner-box {
    width: 490px;
    margin-right: 15%;
    margin-left: auto;
  }
  #service .inner-box .round-block {
    margin-bottom: 45px;
  }
}

#recruit {
  background: url(../img/index/recruit_back.png) no-repeat center/cover, -webkit-gradient(linear, left bottom, left top, color-stop(30vw, #c0e2f8), color-stop(30vw, rgba(255, 255, 255, 0)));
  background: url(../img/index/recruit_back.png) no-repeat center/cover, linear-gradient(0deg, #c0e2f8 30vw, rgba(255, 255, 255, 0) 30vw);
  padding-top: 10vw;
  padding-bottom: 10vw;
}

@media (min-width: 900px) {
  #recruit {
    background: url(../img/index/recruit_back.png) no-repeat center/cover, linear-gradient(0deg, #c0e2f8 115px, rgba(255, 255, 255, 0) 115px);
    padding-top: 70px;
    padding-bottom: 30px;
  }
  #recruit .round-block {
    margin-bottom: 20px;
  }
}

#recruit .link-btn {
  margin-bottom: 10vw;
}

@media (min-width: 900px) {
  #recruit .link-btn {
    margin-bottom: 40px;
  }
}

#infomation {
  padding-top: 10vw;
  padding-bottom: 10vw;
}

@media (min-width: 900px) {
  #infomation {
    padding-top: 80px;
    padding-bottom: 120px;
  }
}

#infomation h2 img {
  width: 35vw;
}

@media (min-width: 900px) {
  #infomation h2 img {
    width: auto;
  }
}
/*# sourceMappingURL=index.css.map */