.fontF00 {
  color: #ff0000;
  line-height: 1.6;
  display: inline-block;
}

#btnBox {
  text-align: center;
}
#btnBox input,
#btnBox .back {
  background: #5eb584;
  color: #fff;
  width: 260px;
  font-size: 1.8rem;
  font-weight: bold;
  padding: 20px 10px;
  border-radius: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: auto;
  letter-spacing: 0.05em;
}
#btnBox input:hover,
#btnBox .back:hover {
  cursor: pointer;
  opacity: 0.8;
}
#btnBox .back {
  line-height: normal;
}
#btnBox.twoBlock ul {
  width: 600px;
  margin: auto;
}

.required {
  color: #fff;
  background: #ff3300;
  border-radius: 30px;
  padding: 0 10px 1px;
  font-size: 1.4rem;
}

.infoTable tr:first-child {
  border-top: 1px solid #cccccc;
}
.infoTable th, .infoTable td {
  border-bottom: 1px solid #cccccc;
}
.infoTable th {
  border-right: 1px solid #cccccc;
  background: #f2f2f2;
  padding-top: 30px;
  padding-bottom: 30px;
  padding-left: 20px;
  vertical-align: top;
  width: 250px;
  position: relative;
  z-index: -1;
}
.infoTable th .required {
  position: absolute;
  right: 14px;
  padding: 3px 10px 4px;
}
.infoTable td {
  padding: 20px 25px 20px 35px;
  vertical-align: middle;
}
.infoTable td input {
  min-height: 36px;
  background: #f2f2f2;
  padding: 0 10px;
  width: 100%;
}
.infoTable td input.w200 {
  width: 200px;
}
.infoTable td input.w115 {
  width: 115px;
}
.infoTable td span:nth-last-child(3) {
  margin-bottom: 10px;
}
.infoTable td .fontF00:last-child {
  margin-bottom: 15px;
}
.infoTable td.float p {
  float: left;
}

.textarea {
  width: 100%;
  height: 195px;
  background: #f2f2f2;
}

@media only screen and (max-width: 750px) {
  #btnBox input {
    width: 225px;
    font-size: 1.6rem;
    max-width: 225px;
    padding: 13px 10px;
  }
  #btnBox .back {
    font-size: 1.6rem;
    padding: 13px 10px;
  }
  #btnBox.twoBlock ul {
    width: 270px;
  }
  #btnBox.twoBlock .back {
    width: 120px;
  }
  #btnBox.twoBlock input {
    width: 120px;
  }

  .infoTable th, .infoTable td {
    /*border-bottom: 1px solid #cccccc;*/
    border-left: 1px solid #cccccc;
  }
  .infoTable th {
    display: block;
    border-right: 1px solid #cccccc;
    padding-top: 20px;
    padding-bottom: 20px;
    width: 100%;
  }
  .infoTable th .required {
    top: 18px;
  }
  .infoTable td {
    display: block;
    border-right: 1px solid #cccccc;
    padding: 15px;
  }
  .infoTable td input {
    padding: 0 10px;
  }
  .infoTable td input + .label {
    margin-top: 10px;
  }
  .infoTable td input.w27per {
    width: 27% !important;
  }
  .infoTable td input.w40per {
    width: 40% !important;
  }
  .infoTable td input.w100per {
    width: 100% !important;
  }
  .infoTable td .label {
    display: block;
    margin-bottom: 4px;
  }

  input,
  textarea {
    font-size: 16px;
  }
}
