.form-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 3rem; }
  .form-box > * {
    width: 100%; }
  .form-box input[type='text'], .form-box input[type='tel'], .form-box input[type='email'], .form-box textarea {
    background: #f8f8f8;
    font-size: 1.06rem;
    line-height: 1.25;
    padding: 1.5rem;
    width: 100%;
    border: 1px solid #ddd; }
  .form-box input[type='button'] {
    color: #fff;
    font-size: 1rem;
    line-height: 1.25;
    padding: 1.5rem;
    background: #808080;
    font-weight: bold;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    transition: all 0.5s ease;
    cursor: pointer;
    margin: 0 auto;
    border-radius: 50px;
    background: #333;
    display: inline-block;
    min-width: 300px; }
    .form-box input[type='button']:hover {
      opacity: 0.5; }
  .form-box dl {
    width: 100%; }
    .form-box dl.-h50 {
      width: 47.5%; }
    .form-box dl.-h25 {
      width: 22.5%; }
    .form-box dl.-h75 {
      width: 72.5%; }
  .form-box dt {
    margin: 0 0 0.5rem 0;
    font-size: 0.9rem;
    line-height: 1.25;
    color: #444; }
    .form-box dt .-req {
      color: #EF909E;
      margin-left: 1rem; }
  .form-box dd {
    margin-bottom: 3rem; }
    .form-box dd ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      margin: 0 -1%; }
      .form-box dd ul li {
        width: 30%;
        margin: 0 1% 0.75rem; }
  .form-box dl.-pp dt {
    opacity: 0; }
  .form-box dl.-pp dd {
    text-align: center;
    padding: 0 0 2rem 0; }
    .form-box dl.-pp dd ul {
      justify-content: center; }
    .form-box dl.-pp dd a {
      border-bottom-style: solid;
      border-bottom-width: 1px;
      cursor: pointer; }
  .form-box label {
    border: 1px solid #eee;
    line-height: 20px;
    display: block;
    width: 100%;
    padding: 20px;
    border-radius: 10px; }
  .form-box input:checked + label {
    border: 1px solid #875506; }
    .form-box input:checked + label span {
      color: #875506; }
      .form-box input:checked + label span::before {
        color: #875506; }
  .form-box .error_blank,
  .form-box .error_format {
    color: #FE5F55;
    font-size: 0.8rem;
    font-weight: bold; }
  @media screen and (max-width: 960px) {
    .form-box input[type='text'], .form-box input[type='tel'], .form-box input[type='email'], .form-box textarea {
      font-size: 16px; }
    .form-box dl.-h50 {
      width: 100%; }
    .form-box dd ul li {
      width: 100%; } }
  @media screen and (max-width: 560px) {
    .form-box dl.-h25 {
      width: 33%; }
    .form-box dl.-h75 {
      width: 100%; } }

#form_submit {
  text-align: center; }

#confirm_window {
  margin-top: 2rem; }

#confirm_field {
  display: none;
  margin-top: -3rem;
  padding-top: 3rem; }
  #confirm_field dl {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd; }
    #confirm_field dl dt, #confirm_field dl dd {
      padding: 1.5rem 0;
      font-size: 1.06rem; }
    #confirm_field dl dt {
      float: left;
      width: 11rem; }
    #confirm_field dl dd {
      margin-left: 11rem; }
    #confirm_field dl + dl {
      border-top: 0px; }
  @media screen and (max-width: 560px) {
    #confirm_field dl dt, #confirm_field dl dd {
      line-height: 1.25; }
    #confirm_field dl dt {
      float: none;
      width: auto;
      font-weight: bold;
      font-size: 0.8rem;
      color: #808080;
      padding: 1rem 0 0.5rem 0; }
    #confirm_field dl dd {
      margin-left: 0px;
      padding: 0 0 1rem 0; } }

#confirm_submit {
  text-align: center;
  letter-spacing: -.40em;
  margin: 0 -2%;
  margin-top: 3rem; }
  #confirm_submit input {
    display: inline-block;
    letter-spacing: normal;
    margin: 0 5px;
    color: #fff;
    font-size: 1rem;
    line-height: 20px;
    padding: 20px 0;
    cursor: pointer;
    width: 150px;
    max-width: 46%;
    margin: 0 2%;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    transition: all 0.5s ease;
    border-radius: 50px; }
    #confirm_submit input:hover {
      opacity: 0.5; }
  #confirm_submit input#confirm_submit_button {
    background: #875506; }
  #confirm_submit input#confirm_cancel_button {
    background: #808080; }

.pp-box {
  width: 100%;
  margin: 0 auto 2rem;
  text-align: left;
  border: 1px solid #eee;
  padding: 1rem 3%;
  overflow-y: scroll;
  height: 300px;
  display: none; }
  .pp-box h3 {
    margin: 2rem 0 1rem 0;
    font-size: 1rem; }
  .pp-box p {
    font-size: 0.9rem;
    line-height: 2;
    margin: 0.9rem 0; }
  .pp-box ol {
    margin: 1rem 0; }
    .pp-box ol li {
      list-style: decimal;
      font-size: 0.8rem;
      line-height: 1.5;
      margin: 0.5rem 0 0.5rem 1.5rem; }
