*,
*::before,
*::after {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  padding: 0;
  background: #ffffff;
  color: #111111;
}

.lp {
  width: 100%;
  max-width: 840px;
  margin: 0 auto;
}

.lp img {
  display: block;
  width: 100%;
  height: auto;
}

.cta {
  display: block;
}

.request-form {
  scroll-margin-top: 24px;
}

.form-wrap {
  position: relative;
}

.form-wrap .form {
  font-family: "Lato", "Noto Sans JP", "Hiragino Kaku Gothic ProN",
    "Hiragino Kaku Gothic Pro", Meiryo, "MS PGothic", sans-serif;
  letter-spacing: 0em;
}

.form-inner {
  background: rgba(0, 150, 223, 0.1);
  margin: 70px auto;
  padding: 50px 5%;
  max-width: 840px;
  box-sizing: border-box;
  text-align: left;
}

.form-wrap label {
  display: block;
  font-size: 18px;
}

.form-wrap .label-item {
  margin: 30px 0 0;
}

.form-wrap input {
  margin: 6px 0 0;
  padding: 0 1%;
  width: 100%;
  height: 30px;
  border-radius: 5px;
  box-sizing: border-box;
  border: 1px solid #b3b3b3;
  box-shadow: inset 1px 4px 6px -6px rgba(0, 0, 0, 0.5);
}

.form-wrap .form-postal {
  width: 30%;
}

.form-wrap textarea {
  margin: 6px 0 30px;
  padding: 6px 1%;
  width: 100%;
  height: 120px;
  border-radius: 5px;
  box-sizing: border-box;
  border: 1px solid #b3b3b3;
  box-shadow: inset 1px 4px 6px -6px rgba(0, 0, 0, 0.5);
}

.form-wrap ::-webkit-input-placeholder {
  color: #ccc;
  font-size: 14px;
}

.form-wrap :-ms-input-placeholder {
  color: #ccc;
  font-size: 14px;
}

.form-wrap ::placeholder {
  color: #ccc;
  font-size: 14px;
}

.form-wrap .required {
  margin: 0 0 0 20px;
  background: #f22222;
  color: #fff;
  padding: 6px;
  border-radius: 5px;
  font-size: 14px;
}

.form .button-submit {
  width: 540px;
  border: none;
  background-color: #fff;
  display: block;
  margin: 0 auto;
  padding: 0;
}

.form .button-submit:hover {
  opacity: 0.6;
}

.form .button-submit img {
  width: 100%;
  height: auto;
  display: block;
}

@media screen and (min-width: 751px) {
  .sp {
    display: none;
  }
}

@media screen and (max-width: 750px) {
  .pc {
    display: none;
  }

  .form-inner {
    margin: 30px auto;
    padding: 20px 5%;
    box-sizing: border-box;
    text-align: left;
  }

  .form-wrap label {
    font-size: 14px;
  }

  .form-wrap .required {
    margin: 0 0 0 10px;
    background: #f22222;
    color: #fff;
    padding: 6px;
    border-radius: 5px;
    font-size: 12px;
  }

  .form .button-submit {
    width: 90%;
    border: none;
  }
}
