/* -------------------------------------------------
  * Q and A
------------------------------------------------- */
.contents--q-a {
  margin: 80px 0 170px;
}

.contents__deco--qa01 {
  width: 154px;
  top: 280px;
  left: 0;
}

.contents__deco--qa02 {
  width: 141px;
  top: 430px;
  right: 0;
}

.contents__deco--qa03 {
  width: 141px;
  top: 890px;
  left: 0;
}

.contents__deco--qa04 {
  width: 154px;
  top: 1100px;
  right: 0;
}

.contents__deco--qa05 {
  width: 154px;
  top: 1740px;
  left: 0;
}

.contents__deco--qa06 {
  width: 354px;
  top: 1350px;
  right: 0;
}

/* -------------------------------------------------
  * WHOLE SALE
------------------------------------------------- */
.contents--whole-sale {
  margin: 140px 0 150px;
}

.contents__head--whole-sale:before {
  left: auto;
  right: calc(100% - 20px);
}

.whole-sale-contact {
  display: block;
  font-size: 1.3rem;
  line-height: 2.1em;
  letter-spacing: 0.05em;
  text-align: center;
}

.whole-sale-contact--head {
  margin-top: 2em;
  font-weight: bold;
}

.contents__photo--whole-sale {
  position: relative;
}

.whole-sale-copy {
  width: 100%;
  position: absolute;
  top: 45%;
  left: 0;
  text-align: center;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  color: #2a5338;
  font-size: 4.2rem;
  font-family: 'Hammersmith One', sans-serif;
  font-weight: bold;
  letter-spacing: 0.025em;
}

.contents__deco--whole-sale01 {
  width: 141px;
  z-index: auto;
  pointer-events: none;
  position: absolute;
  top: -70px;
  right: 0;
}

.contents__deco--whole-sale02 {
  width: 154px;
  z-index: auto;
  pointer-events: none;
  position: absolute;
  bottom: -110px;
  left: 0;
}

/* -------------------------------------------------
  * CONTACT
------------------------------------------------- */
.contents--contact {
  margin: 100px 0 150px;
}

.contents__head--contact {
  margin-bottom: 50px;
}

.contents__title--contact {
  margin: 0 auto;
}

.contact-form {
  max-width: 540px;
  width: 90%;
  margin: 0 auto;
}

.contact-form label {
  font-size: 1.5rem;
}

.contact-form p + p {
  margin-top: 30px;
}

.contact-form .form-common {
  margin-top: 10px;
  padding: 10px;
  font-size: 1.4rem;
  border: 1px solid #b0b0b0;
}

.contact-form .form-small {
  width: 50%;
}

.contact-form .form-middle {
  width: 70%;
}

.contact-form .form-large {
  width: 100%;
}

.contact-form .form-btn-wrap {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 50px;
}

.contents__deco--contact01 {
  width: 154px;
  z-index: auto;
  pointer-events: none;
  position: absolute;
  top: -50px;
  left: 0;
}

.contents__deco--contact02 {
  width: 141px;
  z-index: auto;
  pointer-events: none;
  position: absolute;
  bottom: -110px;
  right: 0;
}

/* -------------------------------------------------
  * error(404)
------------------------------------------------- */
.contents--error {
  margin: 80px 0 80px;
  text-align: center;
}

.error p {
  font-size: 1.5rem;
  margin-bottom: 20px;
}

/* -------------------------------------------------
  * coming soon
------------------------------------------------- */
.contents--coming-soon {
  margin: 180px 0 150px;
  text-align: center;
}

.coming-soon__title {
  margin-bottom: 30px;
  color: #2a5338;
  font-size: 2rem;
  text-align: center;
  line-height: 1.7em;
  letter-spacing: 0.07em;
}

.contents__deco--coming-soon01 {
  width: 154px;
  z-index: auto;
  pointer-events: none;
  position: absolute;
  top: -50px;
  left: 0;
}

.contents__deco--coming-soon02 {
  width: 141px;
  z-index: auto;
  pointer-events: none;
  position: absolute;
  bottom: -110px;
  right: 0;
}

/* -------------------------------------------------
  * privacy_policy & disclaimer
------------------------------------------------- */
.contents--other {
  margin: 140px 0 150px;
}

.contents__head--other:before {
  left: auto;
  right: calc(100% - 20px);
}

.contents__deco--other01 {
  width: 141px;
  z-index: auto;
  pointer-events: none;
  position: absolute;
  top: -70px;
  right: 0;
}

.contents__deco--other02 {
  width: 154px;
  z-index: auto;
  pointer-events: none;
  position: absolute;
  bottom: -110px;
  left: 0;
}

/* ============================================================

   * SP

============================================================ */
@media screen and (max-width: 768px) {
  /* -------------------------------------------------
    * Q and A
  ------------------------------------------------- */
  .contents--q-a {
    margin: 30px 0 50px;
  }
  /* -------------------------------------------------
    * WHOLE SALE
  ------------------------------------------------- */
  .contents--whole-sale {
    margin: 30px 0 50px;
  }
  .contents__head--whole-sale {
    margin: 0 auto 45px;
  }
  .whole-sale-copy {
    font-size: 1.5rem;
  }
  .contents__deco--whole-sale01 {
    width: 60px;
    top: 330px;
    z-index: 3;
  }
  .contents__deco--whole-sale02 {
    width: 80px;
    bottom: 10px;
    z-index: 3;
  }
  /* -------------------------------------------------
    * CONTACT
  ------------------------------------------------- */
  .contents--contact {
    margin: 40px 0 50px;
  }
  .contents__head--contact {
    margin-bottom: 30px;
  }
  .contact-form {
    width: 90%;
    margin: 0 auto;
  }
  .contact-form label {
    font-size: 1.3rem;
  }
  .contact-form p + p {
    margin-top: 20px;
  }
  .contact-form .form-common {
    font-size: 1.3rem;
  }
  .contact-form .form-btn-wrap {
    -webkit-flex-flow: column;
    -ms-flex-flow: column;
    flex-flow: column;
    margin-top: 30px;
  }
  .contact-form .form-btn-wrap input {
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center;
  }
  .contents__deco--contact01 {
    width: 80px;
    top: auto;
    bottom: -40px;
  }
  .contents__deco--contact02 {
    width: 60px;
    top: -30px;
    bottom: auto;
  }
  /* -------------------------------------------------
    * error(404)
  ------------------------------------------------- */
  .contents--error {
    margin: 50px 0 30px;
  }
  .error p {
    font-size: 1.3rem;
    margin-bottom: 30px;
  }
  /* -------------------------------------------------
    * coming soon
  ------------------------------------------------- */
  .contents--coming-soon {
    margin: 70px 0 70px;
  }
  .coming-soon__title {
    margin-bottom: 30px;
    font-size: 2rem;
  }
  .contents__deco--coming-soon01 {
    width: 80px;
    top: -30px;
    left: 0;
  }
  .contents__deco--coming-soon02 {
    width: 60px;
    bottom: -20px;
    right: 0;
  }
  /* -------------------------------------------------
    * privacy_policy & disclaimer
  ------------------------------------------------- */
  .contents--other {
    margin: 30px 0 50px;
  }
  .contents__deco--other01 {
    width: 60px;
    top: 60px;
    z-index: 3;
  }
  .contents__deco--other02 {
    width: 80px;
    bottom: -50px;
    z-index: 3;
  }
}
