@charset "UTF-8";
/* max-width: 1024px
============================================================================================ */
@media only screen and (max-width: 1024px) {
  .reserve .contents .section {
    margin-top: 123px; } }
/* max-width: 767px
============================================================================================ */
@media only screen and (max-width: 767px) {
  /* common
  =================================================================== */
  /* layout
  =================================================================== */
  /* background
  =================================================================== */
  /* flex
  =================================================================== */
  /* animation delay
  =================================================================== */
  /* 3d
  =================================================================== */
  /* font
  =================================================================== */
  /* vw
  =================================================================== */
  /* form
  =================================================================== */
  /* vw
  ================================================*/
  /* reserve
  ========================================================================*/
  .reserve {
    /*form
    ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/ }
    .reserve .contents .section {
      margin-bottom: 50px; }
    .reserve .h2 {
      margin-bottom: 30px; }
      .reserve .h2 strong {
        width: 156px; }
    .reserve .reserve__prev--text {
      margin-bottom: 35px; }
      .reserve .reserve__prev--text li {
        font-size: 11px;
        margin-bottom: 15px; }
    .reserve .reserve__step {
      margin-bottom: 40px; }
      .reserve .reserve__step li {
        padding-left: 65px;
        margin-right: 8px; }
        .reserve .reserve__step li:before, .reserve .reserve__step li:after {
          width: 60px; }
        .reserve .reserve__step li:before {
          opacity: .2; }
        .reserve .reserve__step li:after {
          width: 0; }
        .reserve .reserve__step li span {
          display: block;
          transition-duration: 0.5s;
          transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
          -ms-transition-duration: 0.5s;
          -ms-transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
          -webkit-transition-duration: 0.5s;
          -webkit-transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
          -moz-transition-duration: 0.5s;
          -moz-transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1); }
          .reserve .reserve__step li span.reserve__step--circle {
            width: 9px;
            height: 9px;
            margin: 0 auto 5px; }
          .reserve .reserve__step li span.reserve__step--text {
            font-size: 12px; }
        .reserve .reserve__step li.selected:after {
          width: 60px; }
    .reserve form input, .reserve form button, .reserve form textarea, .reserve form select {
      padding: 10px 15px;
      font-size: 13px;
      border-radius: 6px; }
    .reserve form .arrow:after {
      width: 10px;
      right: 15px; }
    .reserve form .reserve__list {
      margin-bottom: 30px; }
      .reserve form .reserve__list > li {
        padding-left: 0;
        margin-bottom: 25px; }
        .reserve form .reserve__list > li > dl > dt {
          position: relative;
          width: 100%;
          top: 0;
          font-size: 13px;
          margin-bottom: 5px; }
          .reserve form .reserve__list > li > dl > dt span {
            font-size: 10px;
            transform: scale(0.9);
            -webkit-transform: scale(0.9);
            transform-origin: left center; }
        .reserve form .reserve__list > li > dl > dd.select .select--wrapper select {
          width: 100%;
          padding-right: 100px; }
        .reserve form .reserve__list > li > dl > dd.input--text input {
          max-width: 212px;
          margin-right: 10px; }
        .reserve form .reserve__list > li > dl > dd.small {
          width: 100%;
          max-width: inherit; }
        .reserve form .reserve__list > li > dl > dd.date > ul > li {
          width: calc((100% - 20px) / 3); }
          .reserve form .reserve__list > li > dl > dd.date > ul > li span {
            margin-left: 4px; }
        .reserve form .reserve__list > li:not(:last-child) > dl > dt:after {
          font-size: 10px; }
    .reserve form .checkbox {
      line-height: 25px;
      margin-bottom: 15px; }
      .reserve form .checkbox label {
        font-size: 12px;
        padding-left: 27px;
        margin: 0 0 25px 0; }
        .reserve form .checkbox label:before {
          height: 17px;
          width: 17px;
          border: 2px solid #cb2e27; }
        .reserve form .checkbox label:after {
          height: 13px;
          width: 13px;
          left: 4px;
          background-size: 10px auto; }
    .reserve form .frame--border {
      padding: 15px 20px;
      margin-bottom: 35px; }
      .reserve form .frame--border .terms {
        font-size: 10px;
        max-height: 130px; }
        .reserve form .frame--border .terms > ul > li {
          margin-bottom: 12px; }
          .reserve form .frame--border .terms > ul > li h2 {
            font-size: 11px;
            margin-bottom: 8px; }
          .reserve form .frame--border .terms > ul > li h3 {
            margin-bottom: 5px; }
          .reserve form .frame--border .terms > ul > li:nth-child(1) {
            margin-bottom: 8px; }
    .reserve form .reserve--btn {
      height: 50px; }
      .reserve form .reserve--btn input {
        font-size: 14px; }

  /* ieハック
  ーーーーーーーーーーーーーーーーーーーーーーー*/
  /* confirm
  ========================================================================*/
  .reserve_confirm form .reserve__list > li > dl > dd {
    padding: 0 30px;
    width: 100% !important; }
    .reserve_confirm form .reserve__list > li > dl > dd.select:after {
      display: none; }
  .reserve_confirm form .reserve__list > li:not(:last-child) {
    padding-left: 100px; }
    .reserve_confirm form .reserve__list > li:not(:last-child) > dl > dt {
      width: auto;
      position: absolute; }
  .reserve_confirm .reserve__btn--double .reserve--btn--back {
    width: 29%;
    height: 80%; }
    .reserve_confirm .reserve__btn--double .reserve--btn--back:after {
      width: 6px;
      left: 16px; }
    .reserve_confirm .reserve__btn--double .reserve--btn--back input {
      font-size: 11px;
      border: 1px solid #cb2e27;
      padding: 8px 5px 8px 15px; }
    .reserve_confirm .reserve__btn--double .reserve--btn--back:hover:after {
      left: 14px; }
  .reserve_confirm .reserve__btn--double .reserve--btn--next {
    width: calc(70% - 20px); }

  /* complete
  ========================================================================*/
  .reserve_complete .reserve__step {
    margin-top: 50px; }
  .reserve_complete .reserve--grid {
    min-height: 180px; } }
