@charset "UTF-8";
/*-------------------------------------------------------------------

	form

-------------------------------------------------------------------*/
/*reset*/
.form-data {
  width: 100%; }
  .form-data input[type="submit"], .form-data input[type="button"] {
    border-radius: 0;
    -webkit-appearance: button;
    appearance: button;
    border: none;
    cursor: pointer; }
  .form-data input[type="submit"]::-webkit-search-decoration, .form-data input[type="button"]::-webkit-search-decoration {
    display: none; }
  .form-data input[type="submit"]::focus, .form-data input[type="button"]::focus {
    outline-offset: -2px; }

/*setting*/
.must-icon::after {
  content: "必須";
  display: inline-block;
  font-weight: 500;
  color: #FFF;
  border-radius: 4px;
  padding: .3em .4em;
  background: #e60b14;
  font-size: 1rem;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; }

.must-pos {
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%); }

.form-flow {
  margin-bottom: 1.5em; }

.form-flow::after {
  content: "";
  display: block;
  clear: both; }

.form-flow li {
  float: left;
  width: 31.0344%;
  margin-right: 3.4482%;
  padding: 1em 0;
  text-align: center;
  background-color: #efefef;
  border-radius: 4px;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1; }

.form-flow li:last-child {
  margin-right: 0; }

.form-flow li.current {
  background-color: #d5f8ed; }

/*form parts*/
.form-data {
  width: 100%; }

.cell-even tr:nth-child(even) th, .cell-even tr:nth-child(even) td {
  background: #ecfaf6; }

.cell-odd tr:nth-child(odd) th, .cell-odd tr:nth-child(odd) td {
  background: #ecfaf6; }

.form-data th, .form-data td {
  display: block;
  width: 100%;
  text-align: left;
  vertical-align: top;
  box-sizing: border-box; }

.form-data th {
  padding: 1em .6em .5em;
  line-height: 1.5;
  font-weight: 600;
  font-size: 1.5rem;
  border-top: 2px solid #a5ecd5; }

.form-data td {
  padding: 0 .6em 1.5em; }

.form-data .caption {
  margin: .5rem 0 0;
  font-size: .88em;
  line-height: 1.5;
  font-weight: 500; }

.form-data .hope > div {
  margin-bottom: .5em;
  padding-bottom: .5em;
  border-bottom: 1px solid #DDD; }

.form-data .hope > div > span {
  display: inline-block;
  margin: 0 1.5em .5em 0; }

.form-data .hope > div > span.hour {
  margin-right: 0; }

.form-data .hope > div:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none; }

.form-data .list li {
  margin-bottom: 1em; }

.form-data .list-inline li {
  display: inline-block;
  margin-bottom: .5em;
  margin-right: 2em; }

.form-data input[type="text"], .form-data input[type="number"], .form-data input[type="email"], .form-data input[type="tel"], .form-data textarea {
  padding: .6rem;
  font-size: 1.6rem;
  box-sizing: border-box; }

.form-data input[name="age"] {
  width: 5em; }

.form-data input[type="radio"], .form-data input[type="checkbox"] {
  margin: 0 .8rem 0 0;
  -webkit-transform: scale(1.5);
  transform: scale(1.5);
  -webkit-transform-origin: left 50%;
  transform-origin: left 50%; }

.form-data select {
  padding: .6rem;
  font-size: 1.6rem; }

.form-data .wide {
  width: 100%; }

.form-data .half {
  width: 50%; }

.form-data .form-button {
  padding-top: 1em; }

.form-data .form-button:after {
  content: "";
  display: block;
  clear: both; }

.form-data .form-button.is-2col form {
  width: 49%;
  float: right; }

.form-data .form-button.is-2col form:last-child {
  float: left; }

.form-data .form-button.is-2col > form > input.button {
  width: 100%; }

.form-data .form-button input.button {
  display: block;
  width: 100%;
  border-radius: 8px;
  padding: 1em 0 .9em;
  font-size: 2rem;
  line-height: 1;
  font-weight: bold;
  margin: 0 auto 1em;
  color: #FFF;
  text-shadow: 0px 2px 0px rgba(0, 0, 0, 0.2); }

.form-data .form-button input.button-send {
  background: #e5020c; }

.form-data .form-button input.button-mod {
  background: #999; }

/*error*/
label.error {
  display: block;
  padding: .7em;
  background: #ffff00;
  color: #e5020c;
  font-size: .88em;
  line-height: 1;
  font-weight: 600;
  margin-top: .3em;
  border-radius: 4px; }

label.success {
  padding: 0;
  background: none; }

label.success::before {
  content: "OK!";
  display: inline-block;
  padding: .7em;
  background: #00cc33;
  border-radius: 6px; }

/*-------------------------------------------------------------------
	form PC
-------------------------------------------------------------------*/
@media (min-width: 641px) {
  /*setting*/
  /*.must-icon::after {
    padding: .5em .7em;
    font-size:12px;
  }
  .form-flow {
  	margin:0 auto 7rem;
    width:830px;
  }
  .form-flow li {
  	font-size:2.4rem;
  }*/
  /*form parts*/
  /*.form-data {
    table {
      margin-bottom:2em;
      border-collapse: separate;
      border-spacing: 0;
      th, td {
        display: table-cell;
        vertical-align: middle;
      }
      th {
        width: 32%;
        padding: 3rem 2rem;
  			font-size:1.6rem;
      }
      td {
        width: 68%;
        padding: 3rem 3rem;
        border-top: 1px solid #DDD;
  			font-size:1.6rem;
      }
    }
    .caption {
      font-size: .78em;
    }
    .spot li {
      margin-bottom: .5em;
    }
  }*/
  /*button*/
  /*.form-data .form-button {
    input.button {
      font-size: 26px;
      width:40%;
    }
    &.is-2col {
      @include flex-direction(row);
      @include flex-justify-content(space-between);
      > div {
        width: 48%;
        text-align: center;
        input.button {
          width:100%;
        }
        &:first-child {
          order: 2;
        }
        &:last-child {
          order: 1;
        }
      }
    }
  }*/
  /*option*/
  /*.form-privacy {
    padding:4rem;
    font-size:1.3rem;
    &_title {
      text-align: center;
      font-size:1.8rem;
    }
    &_inner {
      height:24rem;
    }
  }*/ }
