/* ===================================================================
CSS information

file name  : yprox_searchForm_theme.css
author     : Abilive
style info : デフォルトtheme用CSS
=================================================================== */
/* label */
.yprox_theme--default .inner label {
    display: block;
    font-size: 3.5vw;
    margin-bottom: .3rem;
    color: #fff;
}
@media screen and (min-width: 560px) {
    .yprox_theme--default .inner label {
        font-size: min(1.4vw,14px);
    }
}

/* input */
.yprox_theme--default .inner input:not([type="submit"]):not([type='checkbox']):not([type='radio']):not([type='number']) {
    display: block;
    width: 100%;
}

.yprox_theme--default .inner input[type="submit"] {
    font-size: min(4vw,18px);
    height: min(15vw,50px);
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #ef7700;
    letter-spacing: 0.15em;
    border: none;
    cursor: pointer;
    appearance: none;
    color: #fff;
    transition: opacity .3s ease-out;
}
@media (hover: hover) and (pointer: fine) {
    .yprox_theme--default .inner input[type="submit"]:hover {
        opacity: .7;
    }
}
.yprox_theme--default .inner input[name="dt"] {
    display: none !important;
}

/**
* カレンダータイプ
*/
.yprox_theme--default[data-calendar] {
    max-width: 1200px;
    margin: 0 auto;
}

.yprox_theme--default[data-calendar] .inner .js-yprox-searchForm__wrpCheckInn .flatpickr-wrapper {
}

.yprox_theme--default[data-calendar] .inner .js-yprox-searchForm__wrpCheckInn .flatpickr-wrapper[disabled="disabled"] {
    opacity: .5;
}

.yprox_theme--default[data-calendar] .inner .js-yprox-searchForm__wrpCheckInn .flatpickr-wrapper::before {
    content: '';
    display: inline-block;
    margin-right: .3rem;
    background-size: 100% auto;
    width: 1rem;
    height: 1.2rem;
    transform: translate(.5rem, .5rem);
    background-repeat: no-repeat;
    pointer-events: none;
    background-image: url(../img/reservation/reservation_calendar-icon.svg);
    margin-top: .2em;
}
@media screen and (min-width: 560px) {
    .yprox_theme--default[data-calendar] .inner .js-yprox-searchForm__wrpCheckInn .flatpickr-wrapper::before {
        width: min(2rem, 20px);
        height: min(2.2rem, 25px);
        margin-top: 0;
    }
}

.yprox_theme--default[data-calendar] .inner .js-yprox-searchForm__wrpCheckInn .flatpickr-wrapper input[type="text"] {
    display: block;
    background-color: transparent;
    border: none;
    cursor: pointer;
    appearance: none;
    margin-left: -1.3rem;
    padding: 0.5rem;
    padding-left: 2rem;
    padding-bottom: 3vw;
    color: #fff;
    font-size: min(4.4vw,18px);
}
@media screen and (min-width: 768px) {
    .yprox_theme--default[data-calendar] .inner .js-yprox-searchForm__wrpCheckInn .flatpickr-wrapper input[type="text"] {
        font-size: min(2vw,20px);
        padding-bottom: min(1.5vw,20px);
    }
}

/* select */
.yprox_theme--default .inner select:not(.flatpickr-monthDropdown-months) {
    padding: .5rem;
    padding-bottom: 3vw;
    display: block;
    border: none;
    color: #fff;
    background-color: transparent;
    font-size: min(4.4vw,18px);
    text-align: center;
}
.yprox_theme--default[data-calendar] .inner .js-yprox-searchForm__wrpAdults,
.yprox_theme--default[data-calendar] .inner div:nth-of-type(3) {
    position: relative;
}
.yprox_theme--default[data-calendar] .inner .js-yprox-searchForm__wrpAdults::after,
.yprox_theme--default[data-calendar] .inner div:nth-of-type(3)::after {
    width: 10px;
    height: 5px;
    display: block;
    margin-top: 0.5em;
    position: absolute;
    right: 10%;
    top: 1.5em;
    bottom: 0;
    margin: auto;
    content: "";
    background-image: url(../img/reservation/reservation_arrow-w.svg);
    background-repeat: no-repeat;
    background-size: contain;
}

/* checkInn / Out */
.yprox_theme--default .inner .js-yprox-searchForm__wrpCheckInn br {
    display: none;
}

.yprox_theme--default .inner .js-yprox-searchForm__boxNoDate label {
    display: inline-block;
    vertical-align: middle;
}

.yprox_theme--default .inner .js-yprox-searchForm__wrpCheckInn span {
    display: inline-block;
}

.yprox_theme--default .inner .js-yprox-searchForm__wrpCheckInn span em {
    font-size: 0.8rem;
    margin-left: .2rem;
}

/**
 * 768px以上
 */
@media screen and (min-width: 768px) {
    .yprox_theme--default .inner {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
    }

    .yprox_theme--default .inner .js-yprox-searchForm__boxNoDate {
        display: block;
        width: 5rem;
        margin-left: .3rem;
        align-self: center;
    }

    .yprox_theme--default .inner .js-yprox-searchForm__boxNoDate label {
        margin-bottom: 0;
    }

    .yprox_theme--default .inner select:not(.flatpickr-monthDropdown-months) {
        padding: .5rem;
        width: 100%;
        display: block;
        /* width: calc(100% - 1rem); */
        font-size: min(2vw,20px);
        padding-bottom: min(1.5vw,20px);
    }

    /**
    * カレンダータイプ
    */
    .yprox_theme--default input[type="checkbox"] {
        transform: translate(0, .1rem);
    }

    .yprox_theme--default[data-calendar] .inner .js-yprox-searchForm__wrpCheckInn {
        flex: 1;
        display: flex;
        flex-wrap: wrap;
    }

    .yprox_theme--default[data-calendar] .inner .js-yprox-searchForm__wrpAdults {
        width: 16%;
        border-bottom: 2px solid #fff;
        margin-right: 2%;
    }

    .yprox_theme--default[data-calendar] .inner .js-yprox-searchForm__wrpNights,
    .yprox_theme--default[data-calendar] .inner .js-yprox-searchForm__wrpRooms {
        width: 16%;
        border-bottom: 2px solid #fff;
        margin-right: 2%;
    }

    .yprox_theme--default[data-calendar] .inner input[type="submit"] {
        width: 16%;
        align-self: flex-end;
        font-size: min(1.6vw,16px);
        height: min(6vw,60px);
    }

    .yprox_theme--default[data-calendar] .inner .js-yprox-searchForm__wrpCheckInn > label {
        width: 100%;
    }

    .yprox_theme--default[data-calendar] .inner .js-yprox-searchForm__wrpCheckInn .flatpickr-wrapper {
        flex: 1;
        display: flex;
        border-bottom: 2px solid #fff;
    }

    /**
    * 泊数選択タイプ
     */
    .yprox_theme--default:not([data-calendar]) .inner .js-yprox-searchForm__wrpCheckInn {
        flex: 1;
        display: flex;
        flex-wrap: wrap;
    }

    .yprox_theme--default:not([data-calendar]) .inner .js-yprox-searchForm__wrpCheckInn > label {
        width: 100%;
    }

    .yprox_theme--default:not([data-calendar]) .inner .js-yprox-searchForm__wrpCheckInn span:not(.js-yprox-searchForm__boxNoDate) {
        display: flex;
        align-items: center;
        width: 20%;
    }

    .yprox_theme--default:not([data-calendar]) .inner .js-yprox-searchForm__wrpCheckInn span.js-yprox-searchForm__boxCheckin-year {
        width: 33%;
    }

    .yprox_theme--default:not([data-calendar]) .inner .js-yprox-searchForm__wrpCheckInn span:nth-of-type(n+2) {
        margin-left: .5rem;
    }

    .yprox_theme--default:not([data-calendar]) .inner .js-yprox-searchForm__wrpAdults {
        width: 20%
    }

    .yprox_theme--default:not([data-calendar]) .inner .js-yprox-searchForm__wrpNights,
    .yprox_theme--default:not([data-calendar]) .inner .js-yprox-searchForm__wrpRooms {
        width: 12%;
    }
}

/**
 * 1024px以下
 */
@media screen and (max-width: 1024px) and (min-width: 768px) {
    /* select */

    .yprox_theme--default:not([data-calendar]) .inner .js-yprox-searchForm__wrpCheckInn {
        flex: 1;
        display: flex;
        flex-wrap: wrap;
    }

    .yprox_theme--default:not([data-calendar]) .inner .js-yprox-searchForm__wrpCheckInn > label {
        width: 100%;
    }

    .yprox_theme--default:not([data-calendar]) .inner .js-yprox-searchForm__wrpCheckInn span:not(.js-yprox-searchForm__boxNoDate) {
        width: 20%;
    }

    .yprox_theme--default:not([data-calendar]) .inner .js-yprox-searchForm__wrpCheckInn span.js-yprox-searchForm__boxCheckin-year {
        width: 26%;
    }

    .yprox_theme--default:not([data-calendar]) .inner .js-yprox-searchForm__wrpCheckInn span:nth-of-type(n+2) {
        margin-left: .5rem;
    }

    .yprox_theme--default:not([data-calendar]) .inner .js-yprox-searchForm__wrpAdults {
        width: 18%
    }

    .yprox_theme--default:not([data-calendar]) .inner .js-yprox-searchForm__wrpNights {
        width: 11%;
    }

    .yprox_theme--default:not([data-calendar]) .inner .js-yprox-searchForm__wrpRooms {
        width: 13%;
    }

    /* select */
    .yprox_theme--default:not([data-calendar]) .inner select:not(.flatpickr-monthDropdown-months) {
        padding: .5rem .2rem;
    }

}

/**
 * 767px以下
 */
@media screen and (max-width: 767px) {
    .flatpickr-calendar, .flatpickr-days {
        width: auto !important;
    }

    .yprox_theme--default .inner {
        display: flex;
        flex-wrap: wrap;
    }

    .yprox_theme--default[data-calendar] .inner div:nth-of-type(3) {
        margin-left: auto;
    }

    .yprox_theme--default .inner .js-yprox-searchForm__wrpCheckInn {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 1rem;
    }

    .yprox_theme--default .inner .js-yprox-searchForm__boxNoDate {
        display: block;
        margin-top: .3rem;
    }

    .yprox_theme--default .inner .js-yprox-searchForm__wrpAdults,
    .yprox_theme--default .inner .js-yprox-searchForm__wrpRooms,
    .yprox_theme--default .inner .js-yprox-searchForm__wrpNights {
        width: 48%;
        margin-bottom: 1rem;
        border-bottom: 2px solid #fff;
    }

    .yprox_theme--default .inner input[type="submit"] {
        width: 100%;
        margin: 0 auto;
    }

    .yprox_theme--default .inner select:not(.flatpickr-monthDropdown-months) {
        width: 100%;
    }

    .yprox_theme--default .inner .js-yprox-searchForm__wrpCheckInn > label {
        width: 100%;
    }

    /**
   * カレンダータイプ
   */
    .yprox_theme--default[data-calendar] .inner .js-yprox-searchForm__wrpCheckInn .flatpickr-wrapper {
        flex: 1;
        display: flex;
        border-bottom: 2px solid #fff;
    }

    .yprox_theme--default[data-calendar] .inner .js-yprox-searchForm__boxNoDate {
        width: 100%;
    }

    /**
     * 泊数選択タイプ
     */
    .yprox_theme--default:not([data-calendar]) .inner .js-yprox-searchForm__wrpAdults {
        width: 100%;
    }

    .yprox_theme--default:not([data-calendar]) .inner div:nth-of-type(4) {
        margin-left: auto;
    }

    .yprox_theme--default:not([data-calendar]) .inner .js-yprox-searchForm__wrpCheckInn span:not(.js-yprox-searchForm__boxNoDate) {
        display: flex;
        align-items: center;
        width: 32%;
    }

    .yprox_theme--default:not([data-calendar]) .inner .js-yprox-searchForm__wrpCheckInn span:not(.js-yprox-searchForm__boxNoDate):nth-of-type(n+2) {
        margin-left: 2%;
    }
}
.top-search {
    background-color: #729e45;
    padding: 10vw 5vw;
  }
  @media screen and (min-width: 560px) {
    .top-search {
      padding: min(4vw, 50px);
      padding-top: min(5vw, 60px);
    }
  }
  @media screen and (min-width: 560px) {
    .top-search__link-wrap {
      margin-top: min(2vw, 25px);
      display: flex;
      align-items: center;
      justify-content: space-between;
    }
  }
  .top-search__link {
    margin-top: 10vw;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
  }
  @media screen and (min-width: 560px) {
    .top-search__link {
      width: 70%;
      margin-top: 0;
      flex-direction: row;
    }
  }
  .top-search__link a:nth-child(2) {
    margin-top: 2.5vw;
  }
  @media screen and (min-width: 560px) {
    .top-search__link a:nth-child(2) {
      margin-top: 0;
      margin-left: 16px;
    }
  }
  .top-search__link-txt {
    color: #fff;
    margin-top: 5vw;
    display: flex;
    flex-direction: column;
  }
  @media screen and (min-width: 560px) {
    .top-search__link-txt {
      margin-top: 0;
      width: 27%;
    }
  }
  .top-search__link-txt a {
    color: #fff;
  }
  .top-search__link-txt p {
    display: flex;
    align-items: center;
  }
  .top-search__link-txt p::before {
    width: min(2.5vw, 7.5px);
    height: min(5vw, 15px);
    margin-right: 16px;
    display: block;
    content: "";
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
  }
  
  .panel__cover {
    display: flex;
    flex-wrap: wrap;
  }
  @media screen and (min-width: 560px) {
    .panel__cover {
      justify-content: space-between;
    }
  }
  .panel__inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: 100%;
  }
  @media screen and (min-width: 560px) {
    .panel__inner {
      width: 74.6%;
      justify-content: space-between;
    }
  }
  .panel__date {
    width: 100%;
  }
  @media screen and (min-width: 560px) {
    .panel__date {
      width: 31.2%;
    }
  }
  .panel__number-of-day, .panel__number-of-people, .panel__number-of-rooms {
    color: #fff;
    width: 20vw;
    height: 15vw;
    margin-top: 5vw;
    background: #fff;
    font-size: 7vw;
    background: transparent;
    border-bottom: 2px solid #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    text-align: center;
  }
  @media screen and (min-width: 560px) {
    .panel__number-of-day, .panel__number-of-people, .panel__number-of-rooms {
      font-size: min(2.5vw, 26px);
      width: 21%;
      height: min(6vw, 60px);
      margin: 0;
      cursor: pointer;
    }
  }
  .panel__number-of-day::before, .panel__number-of-people::before, .panel__number-of-rooms::before {
    display: block;
    content: "";
    position: absolute;
    top: -1em;
    left: 0;
    font-size: 3.75vw;
  }
  @media screen and (min-width: 560px) {
    .panel__number-of-day::before, .panel__number-of-people::before, .panel__number-of-rooms::before {
      font-size: min(1.2vw, 14px);
    }
  }
  .panel__number-of-day::after, .panel__number-of-people::after, .panel__number-of-rooms::after {
    width: 15px;
    height: 10px;
    display: block;
    margin-top: 0.5em;
    position: absolute;
    right: 15%;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "";
    background-image: url(../img/reservation/reservation_arrow-w.svg);
    background-repeat: no-repeat;
    background-size: contain;
  }
  @media screen and (min-width: 560px) {
    .panel__number-of-day::after, .panel__number-of-people::after, .panel__number-of-rooms::after {
      font-size: min(1.5vw, 18px);
      right: 30%;
    }
  }
  .panel__number-of-day > span, .panel__number-of-people > span, .panel__number-of-rooms > span {
    width: 100%;
  }
  .panel__number-of-day::before {
    content: "泊数";
  }
  .panel__number-of-people::before {
    content: "人数";
  }
  .panel__number-of-rooms::before {
    content: "室数";
  }
  .panel__number-of-day {
    margin-right: 3vw;
    margin-left: 3vw;
  }
  @media screen and (min-width: 560px) {
    .panel__number-of-day {
      margin: 0;
    }
  }
  .panel__btn {
    margin: 5vw auto 0;
    position: relative;
  }
  @media screen and (min-width: 560px) {
    .panel__btn {
      width: 23.9%;
      margin: 0;
    }
  }
  .panel__btn #top_submit {
    font-size: 4vw;
    color: #fff;
    border: none;
    width: 70vw;
    height: 15vw;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #ef7700;
    transition: 0.3s;
    letter-spacing: 0.15em;
  }
  @media screen and (min-width: 560px) {
    .panel__btn #top_submit {
      font-size: min(1.4vw, 18px);
      width: 100%;
      height: min(6vw, 60px);
      cursor: pointer;
    }
    .panel__btn #top_submit:hover {
      color: #ef7700;
      background-color: #fff;
    }
  }
  .panel input {
    border: none;
  }
  .panel input,
  .panel button,
  .panel textarea,
  .panel select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }
  .panel select::-ms-expand {
    display: none;
  }
  .panel select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    background: transparent;
  }
  .panel .obj_cal {
    display: none !important;
  }
  
  /* 検索パネルソース
  ---------------------------------------------- */
  .check-in__panel {
    position: relative;
    height: 15vw;
  }
  .check-in__panel::before {
    font-size: 3.75vw;
    display: block;
    content: "宿泊日";
    position: absolute;
    top: -1em;
    left: 1.5em;
    color: #fff;
  }
  @media screen and (min-width: 560px) {
    .check-in__panel::before {
      font-size: min(1.2vw, 14px);
      left: 0;
    }
  }
  @media screen and (min-width: 560px) {
    .check-in__panel {
      height: min(6vw, 60px);
    }
  }
  .check-in__panel input#datepicker {
    position: absolute;
    color: transparent;
    width: 70vw;
    height: 15vw;
    background: transparent;
    border-bottom: 2px solid #fff;
  }
  @media screen and (min-width: 560px) {
    .check-in__panel input#datepicker {
      width: 100%;
      height: min(6vw, 60px);
      cursor: pointer;
    }
  }
  .check-in__panel > span {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
  }
  .check-in__panel select.obj_year,
  .check-in__panel select.obj_month,
  .check-in__panel select.obj_day,
  .check-in__panel span.nen,
  .check-in__panel span.tsuki {
    color: #fff;
    background-color: rgba(255, 255, 255, 0);
  }
  .check-in__panel input#year,
  .check-in__panel input#month,
  .check-in__panel input#day {
    color: #fff;
    font-size: 7vw;
    text-align: center;
    pointer-events: none;
    background-color: transparent;
  }
  @media screen and (min-width: 560px) {
    .check-in__panel input#year,
  .check-in__panel input#month,
  .check-in__panel input#day {
      font-size: min(2.5vw, 26px);
    }
  }
  .check-in__panel input#year {
    width: 25vw;
  }
  @media screen and (min-width: 560px) {
    .check-in__panel input#year {
      width: 40%;
    }
  }
  .check-in__panel input#month,
  .check-in__panel input#day {
    width: 15vw;
  }
  @media screen and (min-width: 560px) {
    .check-in__panel input#month,
  .check-in__panel input#day {
      width: 30%;
    }
  }
  .check-in__panel span.nen,
  .check-in__panel span.tsuki {
    font-size: 7vw;
  }
  @media screen and (min-width: 560px) {
    .check-in__panel span.nen,
  .check-in__panel span.tsuki {
      font-size: min(2.5vw, 26px);
    }
  }
  
  /** Custom Select **/
  .custom-select-wrapper {
    width: 100%;
    position: relative;
    display: inline-block;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
  }
  .custom-select-wrapper select {
    display: none;
  }
  
  .custom-select {
    width: 100%;
    position: relative;
    display: inline-block;
  }
  .custom-select.opened .custom-options {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
    transform: translateY(0);
    background-color: rgba(114, 158, 69, 0.8);
    z-index: 3;
  }
  
  .custom-select-trigger {
    width: 100%;
    display: block;
    padding-right: 15%;
  }
  
  .custom-options {
    color: #fff;
    position: absolute;
    display: block;
    top: 50px;
    left: 0;
    right: 0;
    min-width: 100%;
    transition: all 0.4s ease-in-out;
    opacity: 0;
    visibility: hidden;
  }
  .custom-options .custom-option {
    font-size: 7vw;
    color: #fff;
    font-style: oblique;
    line-height: 2em;
    border-bottom: 1px solid #fff;
    cursor: pointer;
    transition: all 0.4s ease-in-out;
    display: flex;
    justify-content: center;
    margin: 0;
    padding: 2vw 10vw;
    left: -5vw;
  }
  @media screen and (min-width: 560px) {
    .custom-options .custom-option {
      font-size: min(2.5vw, 26px);
      padding: initial;
    }
    .custom-options .custom-option:hover {
      background: rgba(255, 255, 255, 0.5);
    }
  }
  
  .option-hover:before {
    background: #f9f9f9;
  }
  
  .tel-btn {
    color: #fff;
    margin-top: 5vw;
    padding-top: 5vw;
    border-top: 1px solid #fff;
  }
  @media screen and (min-width: 560px) {
    .tel-btn {
      padding-top: min(2vw, 25px);
      margin-top: min(2vw, 25px);
    }
  }
  .tel-btn__txt {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  @media screen and (min-width: 560px) {
    .tel-btn__ttl {
      font-size: min(1.6vw, 21px);
      font-weight: normal;
      letter-spacing: 0.1em;
    }
  }
  .tel-btn__tel {
    font-size: 4.5vw;
    padding-left: 5vw;
    margin-left: 5vw;
    border-left: 1px solid #fff;
    line-height: 1.25;
  }
  @media screen and (min-width: 560px) {
    .tel-btn__tel {
      padding-left: 2.5%;
      margin-left: 2.5%;
      font-size: min(2vw, 24px);
    }
    .tel-btn__tel small {
      font-size: 0.7em;
    }
  }
  .tel-btn__notice {
    text-align: center;
    margin-top: 5vw;
  }
  @media screen and (min-width: 560px) {
    .tel-btn__notice {
      font-size: min(1.4vw, 16px);
      margin-top: min(2vw, 25px);
    }
  }
  .tel-btn__btn {
    display: flex;
    flex-direction: column;
    margin-top: 5vw;
  }
  @media screen and (min-width: 560px) {
    .tel-btn__btn {
      flex-direction: row;
      margin-top: min(1.5vw, 20px);
    }
  }
  .tel-btn__btn .btn__inner {
    color: #729e45 !important;
  }
  .tel-btn__btn .btn__inner::after {
    background-image: url(../img/reservation/arrow-g.svg) !important;
  }
  .tel-btn__btn .btn__inner:nth-child(2) {
    margin-top: 2.5vw;
  }
  @media screen and (min-width: 560px) {
    .tel-btn__btn .btn__inner:nth-child(2) {
      margin-top: 0;
      margin-left: 1.5%;
    }
  }
  
  /* -------------- 新form -------------- */
  @media screen and (min-width: 560px) {
    .yprox_theme--default[data-calendar] .inner .js-yprox-searchForm__wrpCheckInn {
      margin-right: min(2vw, 15px);
    }
  }
  
  .book-notice {
    background-color: #5a7d37;
    text-align: center;
    color: #fff;
    padding: 15vw 0;
  }
  @media screen and (min-width: 560px) {
    .book-notice {
      padding-top: min(4vw, 50px);
      padding-bottom: min(4vw, 50px);
    }
  }
  .book-notice__inr {
    width: min(95%, 900px);
    margin: 0 auto;
  }
  @media screen and (min-width: 560px) {
    .book-notice__inr {
      display: flex;
      justify-content: space-between;
    }
  }
  .book-notice__item {
    margin-top: 15vw;
  }
  @media screen and (min-width: 560px) {
    .book-notice__item {
      width: 48%;
      margin-top: 0;
    }
  }
  .book-notice__item:nth-child(1) {
    margin-top: 0;
  }
  .book-notice__ttl {
    font-size: 5vw;
  }
  @media screen and (min-width: 560px) {
    .book-notice__ttl {
      font-size: min(1.8vw, 21px);
    }
  }
  .book-notice__body {
    margin-top: 10vw;
    line-height: 1.75;
  }
  @media screen and (min-width: 560px) {
    .book-notice__body {
      font-size: min(1.2vw, 14px);
      margin-top: min(2vw, 25px);
    }
  }
  .book-notice .btn--bk {
    color: #fff;
    margin: 10vw auto 0;
    border: 2px solid #fff;
    font-size: 3.5vw;
  }
  @media screen and (min-width: 560px) {
    .book-notice .btn--bk {
      font-size: min(1.2vw, 13px);
      margin-top: min(2vw, 25px);
    }
  }
  .book-notice .btn--bk::after {
    background-image: url(../../img/common/cmn--btn--arrow--white.svg);
  }
  