
#page-reserve_entry #contents .main .box dl.form-block table{
  width: 100%;
}

#page-reserve_entry #contents .main .box dl.form-block table tr td{
  width: 50%;
  padding: 0 3px;
}

#page-reserve_entry #contents .main .box dl.form-block table tr.error-tr td{
  text-align: left;
}

#page-reserve_entry #contents .main .box dl.form-block table tr td dl{
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
}

#page-reserve_entry #contents .main .box dl.title dd.caution {
  word-break: break-all;
}

#header .inner h1.title {
  flex-direction: row;
}

div.main {
  padding-top: 100px;
}

label.error{
  margin-bottom: 10px;
  font-size: 14px;
  white-space: pre-wrap;
}

.privacy {
  padding-left: 7px;
}

span.require-column:before{
  content: ' * ';
  color: red;
}

.login_id input[type=text]{
  text-align:left !important;
}

p.title{
  display: inline-block !important;
  width: 40px;
}

.row {
  padding-bottom: 12px;
}

#footer .inner>.nav li input[type=submit],
a.btn-normal {
  width: 212px;
}

#footer .inner >.nav {
  display: flex;
}

#captcha_image {
  margin: 10px;
}

img {
  height: auto;
}

@media screen and (max-width: 499px) { 
  /*　画面サイズ 499pxまで適用　*/
  .group-a {
    width: 49%;
    display: inline-block;
    vertical-align: top;
  }
  .form-group {
    display: inline-block;
    width: 100% !important;
  }
  input[type=text] {
    width: 100%;
  }
  #footer .inner >.nav {
    flex-direction: column;
    align-items: center;
  }
  #footer .inner>.nav li input[type=submit],
  a.btn-normal {
    margin: 5px;
  }
}
@media screen and (min-width: 500px) and (max-width: 999px) {
  /*　画面サイズ 500pxから999pxまで適用　*/
  .form-group {
    display: block;
  }
  .group-a {
    width: 49%;
    display: inline-block;
    vertical-align: top;
  }
  input[type=text] {
    width: 100%;
  }
  #footer .inner >.nav {
    justify-content: space-between;
    flex-flow: row-reverse;
  }
}
@media screen and (min-width:1000px) {
  /*　画面サイズ 1000px以上から適用　*/
  .row {
    display: flex;
  }
  .form-group {
    display: inline-block;
    padding-right: 6px;
    margin-bottom: 10px;
  }
  .group-a {
    display: inline-block;
    padding-right: 30px;
    vertical-align: top;
  }
  .space {
    margin-left: 178px;
  }
  p.title {
    display: inline-block !important;
    width: 40px;
  }
  .form-group.group-a {
    width: 178px;
  }
  input[type=text] {
    display: inline-block;
    vertical-align: middle;
    width: 100%;
  }
  .block { 
    display:block;
  }
  .group-b {
    width: 85%;
  }
  #footer .inner >.nav {
    justify-content: space-between;
    flex-flow: row-reverse;
  }
}