.form-block {
  margin: 20px 0 0;
  font-size: 16px; }
  .form-block * {
    box-sizing: border-box; }
  .form-block .reservation {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 10px; }
    .form-block .reservation th {
      vertical-align: middle; }
    .form-block .reservation td {
      vertical-align: middle; }

.required-text {
  margin-bottom: 20px; }

.icoharu_attention {
  margin-bottom: 20px;
    padding: 10px 13px;
    border: 1px solid #0073bc; }

.icoharu_attention .attention_txt {
  color: #0073bc;
  line-height: 1.43;
}

.required-red {
  color: #ff0000;
  margin-right: 5px; }

form .required-red {
  margin: 0 0 0 5px; }

form .form-heading {
  width: 165px;
  padding: 25px 10px;
  background: #f4f4f4;
  border: 1px solid #dcdcdc;
  text-align: left; }

form .form-content {
  padding: 10px;
  border: 1px solid #dcdcdc; }
  form .form-content .summary-text {
    width: 70px;
    float: left;
    vertical-align: middle;
    margin: 10px 20px 0 0; }
form .form-content .type-of-icoca label:first-child{
  margin-right: 18px;}
form .form-select {
  display: inline-block;
  position: relative; }
  form .form-select:after {
    content: "";
    display: inline-block;
    width: 35px;
    height: 100%;
    border-left: 1px solid #dcdcdc;
    background: url("../img/icon_triangle_bottom.png") no-repeat center;
    position: absolute;
    right: 0;
    top: 0; }
  form .form-select select {
    width: 100%;
    font-size: 16px;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    padding: 0;
    margin: 0;
    background: transparent;
    position: relative;
    z-index: 1;
    padding: 12px 35px 12px 15px;
    border-radius: 5px;
    border: 1px solid #dcdcdc; }
    form .form-select select:focus {
      outline-color: #3b99fc;
      outline-offset: -1px;
      outline-style: solid;
      outline-width: 2px; }
  form .form-select select::-ms-expand {
    display: none; }

form .form-select + .form-select {
  margin-left: 10px; }

form .form-content__l {
  width: 450px;
  float: left; }

form .form-content__m {
  width: 280px; }

form .form-content__s {
  width: 170px;
  float: left; }

form .form-content__s.date-block {
    display: block;
}

form .card-pic {
  width: 100%;
  margin: 20px 0 0; }

form .card-pic__discription {
  margin-top: 15px; }

form .submit-area {
  width: 427px;
  margin: 40px auto 80px; }
  form .submit-area .submit-area__btn {
    width: 100%;
    background: #67afdf;
    border: 10px solid #f2f3f5;
    padding: 20px 0;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    cursor: pointer; }
    form .submit-area .submit-area__btn span {
      position: relative;
      padding-left: 20px; }
      form .submit-area .submit-area__btn span:after {
        content: '';
        display: inline-block;
        width: 6px;
        height: 8px;
        border-style: solid;
        border-width: 4px 0 4px 6px;
        border-color: transparent transparent transparent #fff;
        position: absolute;
        left: 0;
        top: 50%;
        margin-top: -4px; }
    form .submit-area .submit-area__btn:focus {
      outline-color: #3b99fc;
      outline-offset: -1px;
      outline-style: solid;
      outline-width: 2px; }
    form .submit-area .submit-area__btn:hover {
      opacity: 0.7; }
    form .submit-area .submit-area__btn:disabled {
      background: #999;
      cursor: auto; }
      form .submit-area .submit-area__btn:disabled:hover {
        opacity: 1; }

form .submit-description {
  text-align: center;
}

span.caution{
  color:#ff217a;
}
/*送信ボタン活性時*/
form .submit-area .active{
  background: #67afdf;
}
.mt20{
  margin-top:20px;
}
.mb20{
  margin-bottom:20px;
}
.mb30{
  margin-bottom:30px;
}
.icoca-logo-img{
  margin-right:40px;
  margin-bottom:30px;
  float: left;
}
.f_bold{
  font-weight: bold;
}

/*route_search日付部分--------------------------------------------*/

  .route-search-block .route-search-block__form1 {
    display: table;
    width: 100%; }
    .route-search-block .route-search-block__form1 .route-search-block__form1-heading {
      width: 115px;
      padding: 15px 10px;
      background: #f4f4f4;
      border: 1px solid #dcdcdc;
      display: table-cell;
      vertical-align: middle; }
    .route-search-block .route-search-block__form1 .route-search-block__form1-content {
      padding: 15px 10px;
      border: 1px solid #dcdcdc;
      border-left: none;
      display: table-cell;
      vertical-align: middle; }
    .route-search-block .route-search-block__form1 :nth-child(2) {
      border-right: none; }
  .route-search-block .route-search-block__form2 {
    text-align: center;
    padding: 20px 0;
    margin-bottom: 15px;
    border: 1px solid #dcdcdc;
    border-top: none; }
   .route-search-block .form-select__ss {
    width: 100px;
}
.route-search-block .route-search-block__form2 label {
    margin-right: 20px;
}
