@charset "UTF-8";
/* CSS Document */
/* FORM HEAD */
#form-head {
  margin: 60px auto 0;
  width: 375px;
  text-align: center;
}

#form-head h2 {
  margin-top: 80px;
  font-size: 28px;
}

#message {
  background: none;
}

/* PROCESS2 */
#process2 h3 {
  margin: 10px auto 26px;
  width: 300px;
  height: 26px;
  font-size: 16px;
  line-height: 26px;
  text-align: center;
}

#process2 ul {
  overflow: hidden;
  margin: 0 auto;
  width: 325px;
}

#process2 li {
  position: relative;
  margin: 0 auto 26px;
  width: 230px;
  height: 48px;
  color: #1E3A85;
  font-size: 14px;
  font-weight: bold;
  line-height: 48px;
  text-align: center;
  background: #fff;
  border: 2px solid #1E3A85;
  border-radius: 10px;
}

#process2 li:last-child {
  margin-bottom: 50px;
}

#process2 li span {
  display: block;
  margin-top: -15px;
  color: #444;
  font-size: 10px;
  font-weight: normal;
  line-height: 15px;
}

#process2 li img {
  position: absolute;
  top: 58px;
  left: 102px;
  width: 25px;
}

/* FORM */
#form {
  margin-top: -20px;
  padding: 0 0 10px;
  background: #fff;
  overflow: hidden;
}

.form-group {
  margin: 0 auto 35px !important;
  width: 347px !important;
  border-bottom: 1px solid #1E3A85 !important;
}

dl.form-contents dt {
  height: 38px !important;
  padding-left: 14px !important;
  border: 1px solid #1E3A85 !important;
  font-size: 14px !important;
  line-height: 38px !important;
  text-align: left !important;
  background: #EEF2FA !important;
}

dl.form-contents dd {
  padding: 22px 0 22px 14px !important;
  border-left: 1px solid #1E3A85 !important;
  border-right: 1px solid #1E3A85 !important;
  font-size: 14px !important;
  background: #fff !important;
}

div.form-data {
  padding-left: 44px;
}

div.form-required {
  background: url(../img/form-required.png) left center no-repeat;
  background-size: 32px;
}

button, input, select, textarea {
  font-family: inherit !important;
  font-size: 100% !important;
  margin: 4px 4px 4px 0 !important;
  box-sizing: border-box !important;
  box-shadow: none !important;
}

input {
  padding: 5px !important;
  font-size: 14px !important;
  line-height: 20px !important;
  background: none !important;
  border: 1px solid #C7C7C7 !important;
  border-radius: 4px !important;
}

.radio {
  border: none !important;
}

label {
  height: 32px !important;
  margin: 0 !important;
  border: none !important;
  background: none !important;
  box-shadow: none !important;
}

input[type="radio"] {
  position: relative !important;
  -webkit-appearance: button !important;
  -moz-appearance: button !important;
       appearance: button !important;
  box-sizing: border-box !important;
  width: 18px !important;
  height: 18px !important;
  content: "" !important;
  background-color: #FFFFFF !important;
  border: 1px solid #C7C7C7 !important;
  border-radius: 18px !important;
  box-shadow: inset 4px 4px 8px rgba(0, 0, 0, 0.1) !important;
  vertical-align: middle !important;
  cursor: pointer !important;
}

input[type="radio"]:checked:after {
  display: block !important;
  position: absolute !important;
  top: 3px !important;
  left: 3px !important;
  content: "" !important;
  width: 10px !important;
  height: 10px !important;
  background: #3864C6 !important;
  border-radius: 10px !important;
}

input.input-short {
  width: 85px !important;
}

input.input-mid {
  width: 134px !important;
}

input.input-long {
  width: 270px !important;
}

select {
  padding: 5px !important;
  font-size: 14px !important;
  line-height: 20px !important;
  outline: none !important;
  border: 1px solid #C7C7C7 !important;
  border-radius: 4px !important;
  -webkit-appearance: button !important;
  -moz-appearance: button !important;
  appearance: button !important;
}

select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #fff;
}

select.select-short {
  width: 85px !important;
  background-position: 93% 50% !important;
}

select.select-mid {
  width: 134px !important;
  background-position: 94% 50% !important;
}

select.select-long {
  width: 270px !important;
  background-position: 97% 50% !important;
}

.form-note {
  font-size: 12px;
  padding: 3px 0 6px 44px;
}

.form-note2 {
  display: inline-block;
  font-size: 12px;
  padding: 0 0 0 3px;
}

textarea {
  width: 316px !important;
  height: 100px !important;
  padding: 5px !important;
  font-size: 14px !important;
  line-height: 20px !important;
  background: none !important;
  border: 1px solid #C7C7C7 !important;
  border-radius: 4px !important;
}

#privacy {
  overflow: auto;
  width: 296px;
  height: 240px;
  padding: 10px;
  font-size: 12px;
  line-height: 18px;
  border: 1px solid #E1E1E1;
}

#privacy a:link {
  color: #333;
  text-decoration: none;
}

#privacy a:visited {
  color: #333;
  text-decoration: none;
}

#privacy a:hover {
  color: #333;
  text-decoration: none;
}

#privacy a:active {
  color: #333;
  text-decoration: none;
}

#privacy h3 {
  margin: 15px 0 25px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
}

#privacy h4 {
  margin: 20px 0 5px;
  font-weight: bold;
}

div.consent {
  margin: 40px 0 25px;
  padding: 0;
  text-align: center;
}

div.consent input {
  -ms-transform: scale(1.25) !important;
      transform: scale(1.25) !important;
  margin-right: 0.25em !important;
}

button {
  display: block !important;
  margin: 30px auto !important;
  padding: 0 !important;
  width: 220px !important;
  height: 52px !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: bold !important;
  line-height: 50px !important;
  text-align: center !important;
  outline: none !important;
  background: #000 !important;
  border: 0 !important;
  border-radius: 0 !important;
  -webkit-appearance: button !important;
  -moz-appearance: button !important;
  appearance: button !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

#copyright {
  display: block;
  margin: 0 auto;
  width: 315px;
  height: 10px;
  color: #fff;
  font-family: "Open Sans",sans-serif;
  font-weight: 400;
  font-size: 10px;
  line-height: 10px;
  text-align: center;
}

/* THANKSページ用 */
#thanks {
  padding: 160px 0 50px;
  text-align: center;
  line-height: 30px;
}

#thanks a {
  display: inline-block;
  margin: 80px auto 0;
  padding: 20px 20px;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  background: #000;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

#thanks a:link {
  color: #fff;
  text-decoration: none;
}

#thanks a:visited {
  color: #fff;
  text-decoration: none;
}

#thanks a:hover {
  color: #fff;
  text-decoration: none;
}

#thanks a:active {
  color: #fff;
  text-decoration: none;
}

@media screen and (min-width: 481px) {
  /* FORM HEAD */
  #form-head {
    display: block;
    margin: 0 auto;
    width: auto;
    height: auto;
  }
  #form-head h2 {
    margin-top: 30px;
    font-size: 36px;
  }
  /* PROCESS2 */
  #process2 h3 {
    margin: 25px auto 26px;
    width: 590px;
    height: 32px;
    font-size: 18px;
    line-height: 32px;
  }
  #process2 ul {
    width: 586px;
  }
  #process2 li {
    float: left;
    margin: 0 30px 0 0;
    width: 120px;
    height: 120px;
    font-size: 16px;
    line-height: 120px;
    border-radius: 20px;
  }
  #process2 li:last-child {
    margin: 0;
  }
  #process2 li span.ps-entry {
    margin-top: -35px;
    font-size: 12px;
    line-height: 35px;
  }
  #process2 li span.ps-naitei {
    margin-top: -32px;
    font-size: 12px;
    line-height: 15px;
  }
  #process2 li img {
    top: 48px;
    left: 133px;
    width: 9px;
  }
  /* FORM */
  #form {
    margin-top: -45px;
    padding: 30px 0 15px;
  }
  .form-group {
    margin: 0 auto 46px !important;
    width: 940px !important;
  }
  dl.form-contents {
    overflow: hidden !important;
    margin: 0 auto !important;
    width: 938px !important;
    clear: both !important;
    border: 1px solid #1E3A85 !important;
    border-bottom: none !important;
    background: #EEF2FA !important;
  }
  dl.form-contents dt {
    float: left !important;
    width: 184px !important;
    height: auto !important;
    padding-top: 32px !important;
    padding-left: 36px !important;
    border: none !important;
    font-size: 16px !important;
    line-height: 24px !important;
  }
  dl.form-contents dd {
    float: right !important;
    width: 654px !important;
    padding: 22px 0 22px 20px !important;
    border: none !important;
    font-size: 14px !important;
  }
  dl.form-contents dd.form-required {
    background: url(../img/form-required.png) 16px 32px no-repeat #fff;
    background-size: 32px;
  }
  input {
    padding: 5px !important;
    font-size: 14px !important;
    line-height: 20px !important;
  }
  input.input-short {
    width: 85px !important;
  }
  input.input-mid {
    width: 168px !important;
  }
  input.input-long {
    width: 340px !important;
  }
  select.select-short {
    width: 108px !important;
  }
  select.select-mid {
    width: 168px !important;
  }
  select.select-long {
    width: 340px !important;
  }
  textarea {
    width: 634px !important;
  }
  #privacy {
    width: 604px;
    height: 280px;
    padding: 15px;
    font-size: 14px;
    line-height: 22px;
  }
  #privacy h3 {
    margin: 15px 0 25px;
    font-size: 16px;
  }
  #privacy h4 {
    margin: 20px 0 5px;
  }
  div.consent {
    background-position: 225px 0 !important;
  }
  div.consent input {
    -ms-transform: scale(1.2) !important;
        transform: scale(1.2) !important;
    margin-right: 0.2em !important;
  }
  button {
    margin: 50px auto !important;
  }
  #copyright {
    width: 315px;
    height: 12px;
    font-size: 12px;
    line-height: 12px;
  }
  /* THANKSページ用 */
  #thanks a {
    margin: 120px auto 0;
    padding: 25px 20px;
    font-size: 16px;
  }
}
