@charset "UTF-8";
ol {
  list-style: decimal;
  margin-bottom: 30px;
  margin-left: 45px;
}
@media screen and (max-width: 820px) {
  ol {
    margin-bottom: 15px;
    margin-left: 30px;
  }
}
ol li {
  font-weight: 600;
  margin-bottom: 10px;
}
ol li p {
  margin-top: 5px;
  font-weight: normal;
}

/*導入部分*/
.introduction {
  padding-bottom: 50px;
  margin-bottom: 50px;
  border-bottom: 1px solid rgba(72, 202, 127, 0.2);
}
@media screen and (max-width: 820px) {
  .introduction {
    padding-bottom: 30px;
    margin-bottom: 30px;
  }
}
.introduction__about {
  font-weight: 600;
  margin-left: 25px;
  margin-bottom: 5px;
}

/*送信完了*/
.completion {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 50px;
  text-align: center;
}
@media screen and (max-width: 820px) {
  .completion {
    margin: 0 auto 30px;
  }
}

/*フォーム*/
.form__first {
  padding-bottom: 50px;
  margin-bottom: 70px;
  border-bottom: 1px solid rgba(72, 202, 127, 0.2);
}
@media screen and (max-width: 820px) {
  .form__first {
    padding-bottom: 30px;
    margin-bottom: 60px;
  }
}
.form__second {
  margin-bottom: 50px;
}
@media screen and (max-width: 820px) {
  .form__second {
    margin-bottom: 30px;
  }
}
.form__third {
  margin-bottom: 30px;
}
@media screen and (max-width: 820px) {
  .form__third {
    margin-bottom: 20px;
  }
}
.form__content > li {
  display: flex;
  margin-bottom: 30px;
  align-items: start;
}
@media screen and (max-width: 820px) {
  .form__content > li {
    display: block;
  }
}
.form__content > li > label {
  width: 300px;
  display: flex;
  align-items: center;
  padding-top: 8px;
}
.form__content > li input:not([type=radio]),
.form__content > li textarea {
  width: 100%;
  font-size: 1rem;
  border: 1px solid #F1F1F1;
  padding: 10px 20px;
}
@media screen and (max-width: 820px) {
  .form__content > li input:not([type=radio]),
  .form__content > li textarea {
    font-size: 0.875rem;
    padding: 8px 12px;
  }
}
.form__content > li ::-moz-placeholder {
  font-weight: normal;
  color: #666666;
}
.form__content > li ::placeholder {
  font-weight: normal;
  color: #666666;
}
@media screen and (max-width: 1075px) {
  .form__content > li ::-moz-placeholder {
    font-size: 0.75rem;
  }
  .form__content > li ::placeholder {
    font-size: 0.75rem;
  }
}
.form__icon--required {
  color: #fff;
  background: #CC0000;
}
.form__icon--optional {
  color: #000;
  background: #F1F1F1;
}
.form__reply {
  width: calc(100% - 300px);
  font-size: 1rem;
  &.form__confirm {
    padding-top: 8px;
    min-height: 37px;
  }
}
@media screen and (max-width: 820px) {
  .form__reply {
    margin-top: 10px;
    width: 100%;
    font-size: 0.875rem;
    &.form__confirm {
      padding-top: 0;
      min-height: auto;
    }
  }
}
.form__heading {
  font-size: 1rem;
  font-weight: 600;
}
@media screen and (max-width: 820px) {
  .form__heading {
    font-size: 0.875rem;
  }
}
.form__notice {
  display: block;
  font-size: 0.75rem;
  font-weight: normal;
  margin-top: 5px;
}
@media screen and (max-width: 820px) {
  .form__notice {
    font-size: 0.6875rem;
    margin-top: 0;
  }
}
.form__privacy {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 50px;
  text-align: center;
}
@media screen and (max-width: 820px) {
  .form__privacy {
    margin: 0 auto 30px;
  }
}
.form .select_complaint__wrap {
  font-size: 1rem;
}
@media screen and (max-width: 820px) {
  .form .select_complaint__wrap {
    font-size: 0.875rem;
  }
}
.form .select_complaint--txt {
  display: block;
  margin-bottom: 5px;
}
.form__button-area {
  display: flex;
  align-items: center;
}
.form__input {
  font-size: 1rem;
  background: #008639;
  border-radius: 50px;
  color: #fff;
  font-weight: 600;
  text-align: center;
  padding: 20px 80px;
  margin: 0 auto;
  width: -moz-fit-content;
  width: fit-content;
  display: block;
  transition: 0.3s;
}
@media screen and (max-width: 820px) {
  .form__input {
    font-size: 0.875rem;
    padding: 10px 40px;
  }
}
.form__input:hover {
  background: #48CA7F;
}
.form__back {
  font-size: 1rem;
  color: #008639;
  font-weight: 600;
  text-align: center;
  margin: 0 auto;
  width: -moz-fit-content;
  width: fit-content;
  display: block;
  transition: 0.3s;
}
@media screen and (max-width: 820px) {
  .form__back {
    font-size: 0.875rem;
  }
}
.form__back:hover {
  color: #48CA7F;
}
.form .radio__wrap {
  display: flex;
  align-items: start;
}
.form .radio__wrap input {
  margin-top: 5px;
}
.form input[name=zip] {
  width: 15em !important;
}
.form input[name=select_complaint] {
  margin-right: 3px;
}
.form textarea[name=content] {
  height: 12em;
  margin-bottom: 10px;
}
.form .form-error {
  display: block;
  margin-top: 5px;
  color: #CC0000;
}

/*任意・必須共通*/
[class^=form__icon] {
  border-radius: 20px;
  text-align: center;
  font-size: 0.75rem;
  padding: 5px 10px;
  margin-right: 20px;
  height: -moz-fit-content;
  height: fit-content;
}
@media screen and (max-width: 820px) {
  [class^=form__icon] {
    font-size: 0.6875rem;
    padding: 3px 8px;
    margin-right: 10px;
  }
}/*# sourceMappingURL=complaint.css.map */