ul { list-style: none; }
form > p { margin: 30px auto; }
button { margin: 10px auto; }
select { color: #000; }
.form-h1 {
  margin: 30px auto;
  font-size: 24px;
}
select#contactus_select.subject-option > option:nth-of-type(1) { color: #fd0909; }
.form-h2 {
  margin: 30px auto;
  font-size: 22px;
  border: 0;
}
.txt-thanks {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  padding: 50px 0px;
}
.area-btn {
  padding: 52px 0 0;
}
.area-btn, .wrap-checkbox {
  margin: 0 auto;
  text-align: center;
}
.wrap-checkbox label {
  cursor: pointer;
}
.area-btn a:hover { border: 0; }
.important { color: #fd0909; }
.area-input {
  margin: 32px auto 64px;
  text-align: center;
  width: 90%;
}
.area-input div { margin-bottom: 30px; }
.area-input div > label {
  display: block;
  text-align: left;
  font-size: 14px;
  margin-bottom: 8px;
}
.area-input div > input {
  width: 100%;
  display: block;
  height: 30px;
}
.area-input div > select {
  width: 100%;
  display: block;
  height: 38px;
  font-size: 12px;
}
.area-input div > textarea {
  width: 100%;
  display: block;
  height: 150px;
}
#contactus_checkbox {
  margin-bottom: 24px;
}
div.error {
  text-align: left;
  color: #fd0909;
  padding-left: 250px;
  position: absolute;
  font-size: 14px;
}
h3 {
  text-align: left;
  font-size: 18px;
}
.txt-privacy {
  border: 1px solid #ccc;
  padding: 20px;
  text-align: left;
  margin: 20px auto;
}
section div > div.error {
  padding: 0;
  font-size: 14px;
}
div.blockMsg {
  width: 20%;
  top: 30%;
  left: 40%;
  text-align: center;
  background-color: #f00;
  border: 1px solid #ddd;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50);
  -moz-opacity:.70;
  opacity:.70;
  padding: 15px;
  color: #fff;
}
#sendMassage { display: none; }
#send-message {
  display: none;
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  z-index: 500;
  background-color: #fff;
  opacity: 0.9;
}
.wait-message {
  width: 300px;
  height: 120px;
  margin: 0px auto;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform : translate(-50%, -50%);
  background: #a0a0a0;
  border-radius: 10px;
}
.wait-message p {
  color: #fff;
  padding: 15px 0;
}
.loader {
  font-size: 10px;
  margin: 0px auto;
  text-indent: -9999em;
  width: 5em;
  height: 5em;
  border-radius: 50%;
  background: #ffffff;
  background: -moz-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
  background: -webkit-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
  background: -o-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
  background: -ms-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
  background: linear-gradient(to right, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
  position: relative;
  -webkit-animation: load3 1.4s infinite linear;
  animation: load3 1.4s infinite linear;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
}
.loader:before {
  width: 50%;
  height: 50%;
  background: #ffffff;
  border-radius: 100% 0 0 0;
  position: absolute;
  top: 0;
  left: 0;
  content: '';
}
.loader:after {
  background: #a0a0a0;
  width: 60%;
  height: 60%;
  border-radius: 50%;
  content: '';
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}
@-webkit-keyframes load3 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes load3 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
/*=============================== ここからタブレット===============================*/
@media all and (min-width: 415px) and (max-width: 1023px) {
  .area-input { width: 100%; }
  .area-input div > label {
    width: 100%;
    display: block;
    font-size: 14px;
  }
  .important { display: inline-block; }
  .area-input div > select {
    width: 100%;
    display: block;
  }
  .area-input div > input {
    width: 98.8%;
    display: block;
  }
  .area-input div > textarea {
    width: 99%;
    display: block;
  }
  div.error { padding: 0; }
  .privacy-check > div.error {
    width: 100%;
    text-align: center;
  }
  .form-h1 { font-size: 20px; }
  form > p { font-size: 14px; }
}
/*=============================== ここまでタブレット===============================*/
/*=============================== ここからスマホ===============================*/
@media all and (max-width: 414px) {
  .area-input { width: 100%; }
  .area-input div > label {
    width: 100%;
    display: block;
    text-align: center;
    font-size: 14px;
  }
  .important { display: inline-block; }
  .area-input div > select {
    width: 100%;
    display: block;
  }
  .area-input div > input {
    width: 97.7%;
    display: block;
  }
  .area-input div > textarea {
    width: 98%;
    display: block;
  }
  div.error { padding: 0; }
  section div > div.error {
    width: 90%;
    text-align: center;
    position: absolute;
  }
  .privacy-check > div.error {
    width: 100%;
    text-align: center;
  }
  .form-h1 { font-size: 20px; }
  form > p { font-size: 14px; }
}
/*=============================== ここまでスマホ===============================*/