@charset "UTF-8";
/*----------------------------------------------------------------*/
form {
  display: inline; }
  form input, form select, form textarea {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    vertical-align: middle; }
  form label {
    white-space: nowrap; }
    form label:before {
      content: '・';
      font-size: 1px;
      visibility: hidden; }
    form label.ws-normal {
      white-space: normal; }

form button {
  display: inline-block;
  overflow: hidden;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  border-radius: 30px;
  padding: 0 20px 0 52px;
  background-color: #b3d465;
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 60px;
  white-space: nowrap;
  position: relative;
  min-width: 240px;
  margin: 0;
  padding: 0 48px 0 64px;
  border: 0;
  font-size: 2.4rem;
  color: #4d4d4d;
  -webkit-appearance: none; }
  form button:before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 14px;
    left: 14px;
    width: 24px;
    height: 24px;
    background-color: white;
    border: 4px solid #b3d465;
    margin-right: 1rem;
    -webkit-border-radius: 16px;
    -moz-border-radius: 16px;
    border-radius: 16px;
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-align: center;
    line-height: 24px;
    color: #8ec500; }
  form button.prev {
    background-color: #ccc; }
    form button.prev:before {
      content: ""; }
  form button.search:before {
    content: "";
    font-size: 1.2rem; }

.pc form button:hover {
  background-color: #8ec500;
  color: white;
  cursor: pointer; }

form input[type=text],
form input[type=password] {
  font-size: 1.8rem; }
  form input[type=text].short,
  form input[type=password].short {
    width: 8rem; }
  form input[type=text].middle,
  form input[type=password].middle {
    width: 24rem; }
  form input[type=text].long,
  form input[type=password].long {
    width: 48rem; }
  form input[type=text].full,
  form input[type=password].full {
    width: 100%; }

form select {
  margin: 0 4px;
  font-size: 1.8rem; }

form textarea {
  width: 100%;
  height: 24rem;
  font-size: 1.8rem;
  line-height: 1.6; }

form input[type=file] {
  font-size: 1.6rem; }

@media all and (max-width: 768px) {
  form input[type=text].short,
  form input[type=password].short {
    width: 8rem; }
  form input[type=text].middle,
  form input[type=password].middle {
    width: 24rem; }
  form input[type=text].long,
  form input[type=password].long {
    width: 24rem; }
  form input[type=text].full,
  form input[type=password].full {
    width: 24rem; }
  form select {
    max-width: 24rem; } }

/*----------------------------------------------------------------*/
main span.must {
  display: inline-block;
  margin: 0 4px;
  padding: 6px 8px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background-color: #00655a;
  font-size: 1.2rem;
  line-height: 1.2rem;
  color: white; }

main table.basic th.must {
  padding-right: 64px; }
  main table.basic th.must:after {
    display: inline-block;
    margin: 0 4px;
    padding: 6px 8px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    background-color: #00655a;
    font-size: 1.2rem;
    line-height: 1.2rem;
    color: white;
    content: "必須";
    position: absolute;
    top: 0.7rem;
    right: 8px; }

main table.basic th.any:after {
  content: "いずれか必須"; }

/*----------------------------------------------------------------*/
main table.basic td p + p, main table.basic td p + ul, main table.basic td p + ol, main table.basic td p + dl, main table.basic td p + table,
main table.basic td ul + p, main table.basic td ul + ul, main table.basic td ul + ol, main table.basic td ul + dl, main table.basic td ul + table,
main table.basic td ol + p, main table.basic td ol + ul, main table.basic td ol + ol, main table.basic td ol + dl, main table.basic td ol + table,
main table.basic td dl + p, main table.basic td dl + ul, main table.basic td dl + ol, main table.basic td dl + dl, main table.basic td dl + table,
main table.basic td table + p, main table.basic td table + ul, main table.basic td table + ol, main table.basic td table + dl, main table.basic td table + table {
  margin-top: 0.7rem; }

/*----------------------------------------------------------------*/
main .process {
  overflow: hidden;
  margin: 30px 0;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  zoom: 1; }
  main .process:after {
    display: block;
    clear: both;
    content: ""; }
  main .process li {
    position: relative;
    width: 33.333%;
    float: left;
    padding: 16px 16px 16px 64px;
    background-color: #f2f2f2;
    font-weight: bold;
    font-size: 1.4rem;
    line-height: 3.2rem;
    color: #999; }
    main .process li + li {
      border-left: 2px solid white;
      margin: 0; }
    main .process li:before {
      display: block;
      position: absolute;
      top: 16px;
      left: 16px;
      width: 32px;
      height: 32px;
      -webkit-border-radius: 16px;
      -moz-border-radius: 16px;
      border-radius: 16px;
      background-color: #ccc;
      text-align: center;
      color: white; }
    main .process li.p1:before {
      content: "1"; }
    main .process li.p2:before {
      content: "2"; }
    main .process li.p3:before {
      content: "3"; }
    main .process li.p4:before {
      content: "4"; }
    main .process li.active {
      background-color: #f2f279;
      color: #4d4d4d; }
      main .process li.active:before {
        background-color: white;
        color: #8ec500; }
  main .process.entry li {
    width: 25%;
    padding: 16px 16px 16px 48px; }
    main .process.entry li:before {
      left: 8px; }

@media all and (max-width: 768px) {
  main .process li {
    width: 100%;
    float: none;
    font-size: 1.6rem;
    line-height: 1.6rem; }
    main .process li + li {
      margin-top: 2px;
      border: none; }
    main .process li:before {
      top: 8px;
      left: 8px;
      line-height: 3.2rem; }
  main .process.entry li {
    width: 100%; } }

/*----------------------------------------------------------------*/
main .attention {
  text-align: center;
  color: #cc5b49; }

main .example {
  padding-left: 2em;
  text-indent: -2em;
  font-size: 1.2rem;
  color: #999; }

main .submit {
  margin-top: 4.2rem;
  text-align: center; }
  main .submit a, main .submit input {
    display: inline-block;
    overflow: hidden;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    padding: 0 20px 0 52px;
    background-color: #b3d465;
    font-weight: bold;
    font-size: 1.6rem;
    line-height: 60px;
    white-space: nowrap;
    position: relative;
    min-width: 240px;
    margin: 0;
    border: 0;
    text-decoration: none;
    font-size: 2.4rem;
    color: #4d4d4d; }
    main .submit a:before, main .submit input:before {
      content: "";
      display: inline-block;
      position: absolute;
      top: 14px;
      left: 14px;
      width: 24px;
      height: 24px;
      background-color: white;
      border: 4px solid #b3d465;
      margin-right: 1rem;
      -webkit-border-radius: 16px;
      -moz-border-radius: 16px;
      border-radius: 16px;
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      speak: none;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      text-align: center;
      line-height: 24px;
      color: #8ec500; }
  main .submit a {
    height: 60px;
    padding: 0 16px 0 48px; }
  main .submit input {
    padding: 0 48px 0 64px;
    -webkit-box-sizing: content-box;
    -webkit-appearance: button;
    appearance: button;
    box-sizing: border-box; }
    main .submit input::-webkit-search-decoration {
      display: none; }
    main .submit input::focus {
      outline-offset: -2px; }

@media all and (max-width: 768px) {
  main .submit a {
    width: 100%; }
    main .submit a + a {
      margin-top: 1.4rem; } }

.pc main .submit a:hover {
  background-color: #8ec500;
  color: white;
  cursor: pointer; }
