﻿/* --------------------
 0. 共通設定
  - 0.1.1 html 共通設定
  - 0.1.2 font フォント共通設定
  - 0.1.3 h1h2h3h4h5h6 見出し・bodyテキスト共通設定
  - 0.2.1 vue 共通設定
 1. section 汎用パーツ
  - 1.1.1 section 汎用Section設定
  - 1.1.2 section-box 汎用BOX設定
  - 1.1.3 section-one-box 汎用100%BOX設定
  - 1.2.1 section-btn ボタン設定
  - 1.3.1 recently 最近チェック
 2. search 検索設定
  - 2.1.1 search 検索BOX設定
  - 2.1.2 search 検索BOXモーダルパーツ
  - 2.1.3 incremental インクリメンタルサーチ
  - 2.2.1 result 検索結果
 3. page 各ページ固有
  - 3.1.1 index トップ
  - 3.1.1 hotel ホテル
  - 3.1.2 hotel-map ホテル地図
  - 3.1.3 hotel-info ホテル詳細
  - 3.1.4 hotel-grad ホテルチラ見せ
  - 3.2.1 plan プラン一覧
  - 3.3.1 review 口コミ画面
  - 3.4.1 popular 人気の都市
 4. book 予約導線設定
  - 4.1.1 book 予約全体設定
  - 4.1.2 input 予約情報入力
  - 4.1.3 preview 予約情報確認
  - 4.1.4 complete 予約完了
  - 4.2.1 book-plan 予約プラン
  - 4.2.2 book-price 予約料金表示
 5. modal+alert モーダル＋通知設定
  - 5.1.1 modal モーダル全体設定
  - 5.2.1 alert-modal アラートモーダル設定
  - 5.3.1 popup ポップアップ設定
  - 5.3.2 noticePopup 下からポップアップ
  - 5.4.1 heart お気に入りハート
  - 5.4.2 heart お気に入りリスト
  - 5.5.1 noticePopup 下からポップアップ
  - 5.5.2 flatpickr デフォルト設定
  - 5.5.3 flatpickr カスタム設定
  - 5.6.1 map 地図設定
  - 5.7.1 refine 絞り込み設定
  - 5.8.1 error エラーページ
  - 5.9.1 loading ローディング
 6. header ヘッダー
  - 6.1.1 header ヘッダー全体設定
  - 6.1.2 bread-list パンくず設定
  - 6.1.3 header-modal ヘッダーモーダル設定
  - 6.1.4 header-step 予約導線ヘッダー設定
 7. footer フッター
  - 7.1.1 footer フッター全体設定
  - 7.1.2 user-support ユーザーサポートエリア設定
-------------------- */

@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
/* --------------------
 0.1.1 共通設定
-------------------- */
p, h1, h2, h3, h4, h5, ul, menu, dir, dl, dd, dt {
  display: block;
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  -webkit-margin-start: 0;
  -webkit-margin-end: 0;
  -webkit-padding-start: 0;
}
ul { list-style: none; }
a {
  text-decoration: none;
  color: #333;
}
html, body { -webkit-overflow-scrolling: touch !important; }
header#header *{
  box-sizing: border-box;
}
header#header div{
  position: static;
}
header#header .inner{
  width: 960px;
  padding-left: 0;
  padding-right: 0;
}
#header #utilityNav{
  min-width: 960px;
}
body {
  position: relative;
  box-sizing: border-box;
  /*font-family: 'Noto Sans JP';*/
  font-family:'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  color: #333;
  font-size: 14px;
}
body.open { overflow: hidden; }
input {
  font-size: 16px;
  color: #333;
}
[type=text] {
  line-height: normal;
}
input, button, a { outline: none; }
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
 -webkit-appearance: none;
}
input[type=text],input[type=checkbox], select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
input[type=text]::-ms-clear,input[type=search]::-ms-clear {
  visibility: hidden;
}
 select::-ms-expand {
 display: none;
}
input, button { line-height: 1.0; }
textarea {
  width: 100%;
  font-size: 16px;
  min-height: 8em;
  border: 1px solid #d2dae8;
  background-color: #d2dae8;
  box-sizing: border-box;
  border-radius: 3px;
  margin: 8px 0;
  padding: 8px;
  resize: vertical;
}
textarea:focus {
  outline: 0;
  box-shadow: 0 0 0 1px #2488ff;
}
input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px white inset;
}
/*
input[type="checkbox"]{
  width: 18px;
  height: 18px;
  border: 1px solid #888888;
  vertical-align: text-bottom;
  line-height: 1;
  border-radius: 4px;
  -webkit-appearance: none;
}
input[type="checkbox"]:checked{
  background-image: url(../img/icon_check01_blue.png);
  background-size: cover;
  background-color: #fff;
}
*/
.input-check-wrap,.input-radio-wrap{
  padding-left: 24px;
  display: inline-block;
}
.input-check-wrap input[type="checkbox"],.input-radio-wrap input[type="radio"]{
  display: none;
  position: relative;
}
.input-check-wrap label:before {
  content: "";
  width: 18px;
  height: 18px;
  position: absolute;
  top: calc(50% - 11px);
  left: 0;
  border: 1px solid #888888;
  border-radius: 4px;
  background-color: #fff;
}
.input-check-wrap input[type="checkbox"]:checked + label:before  {
  background-image: url(../img/icon_check04.png);
  background-size: 16px 16px;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: 1px 1px;
}
.input-radio-wrap label:before {
  content: "";
  width: 20px;
  height: 20px;
  position: absolute;
  top: calc(50% - 11px);
  left: 0;
  border: 1px solid #888888;
  border-radius: 30px;
  background-color: #fff;
}
.input-radio-wrap input[type="radio"]:checked + label:before  {
  background-image: url(../img/icon_radio02.png);
  background-size: 12px 12px;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: 4px 4px;
}
/* Edge */
@supports (-ms-ime-align: auto) {
	.input-radio-wrap input[type="radio"]:checked + label:before  {
    background-position: 4.5px 4px;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
	.input-radio-wrap input[type="radio"]:checked + label:before  {
    background-position: 4.5px 4px;
  }
}
p { line-height: 1.6; }
:placeholder-shown {
 color: #AAAAAA;
}
::-webkit-input-placeholder {
 color: #AAAAAA;
}
:-moz-placeholder {
 color: #AAAAAA;
}
::-moz-placeholder {
 color: #AAAAAA;
}
:-ms-input-placeholder {
 color: #AAAAAA;
}
div:after{
  display: none;
}
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
button:active,
button:focus,
button:active > span,
button:focus > span {
    position: relative;
}
/* --------------------
 0.1.3 h1h2h3h2h5h6 見出し・bodyテキスト共通設定
-------------------- */
.big-ttl {
  font-size: 26px;
  line-height: 1.1;
  color: #000;
  font-weight: bold;
  margin: 0 0 12px 0;
  padding-bottom: 12px;
}
.big-hotel-ttl {
  padding: 24px 0 0;
  font-size: 22px;
  line-height: 1.1;
  color: #000;
  font-weight: bold;
  margin: 0 0 12px 0;
}
.big-hotel-ttl__small_txt {
  display: block;
  margin-top: 8px;
  color: #888;
  font-size: 20px;
  font-weight: normal;
}
.middle-ttl,.middle-ttl-border {
  margin-bottom: 12px;
  padding: 0;
  font-size: 32px;
  line-height: 1.1;
}
.middle-ttl.middle-ttl_fixed {
  position: fixed;
  width: 100%;
  top: 0;
  background: #fff;
  transition: opacity 0.2s;
  z-index: 10;
}
.middle-ttl.middle-ttl_fixed.middle-ttl_fixedend { opacity: 0; }
.middle-ttl-bottom { padding: 2vw 0; }
.small-ttl {
  margin-bottom: 3px;
  font-size: 20px;
  line-height: 1.1;
  font-weight: bold;
}
.small-ttl-line {
  margin-top: 8px;
  margin-bottom: 8px;
  padding-bottom: 8px;
  border-bottom: 1px solid #DDD;
}
.small-ttl-bottom { margin-bottom: 16px; }
.body-small-txt {
  font-size: 12px;
  line-height: 1.2;
}
.price-txt {
  font-size: 22px;
  color: #da1e1e;
  font-weight: bold;
  line-height: 1;
  white-space: nowrap;
}
#mainWrap.input .price-txt,#mainWrap.preview .price-txt {
  font-size: 28px;
}
.price-txt__input {
  width: 0;
  font-size: 22px;
  color: red;
  font-weight: bold;
  line-height: 1;
  display: inline-block;
  border: none;
  padding-right: 4px;
  background: transparent;
  max-width: 172px;
  box-sizing: border-box;
}
.price-small-txt {
  color: #da1e1e;
  font-weight: bold;
}
#mainWrap.input .price-small-txt {
  font-size: 16px;
}
.link-txt {
  color : #0080ff;
  text-decoration: underline;
  cursor: pointer;
}
.link-txt-un {
  color : #ffdb3f;
  font-size: 16px;
  font-weight: bold;
}
.caption {
  font-size: 12px;
  line-height: 1.2;
}
/* --------------------
0.2.1 vue 共通設定
-------------------- */
#footer {
  min-width: 960px;
}
#footer.footer_fixed {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
}
#footer .section-box-wrap-inner { margin: 0 auto; }
#footer .middle-ttl {
  position: relative;
  min-height: 36px;
  margin-bottom: 12px;
  padding: 4px 0 0 28px;
  box-sizing: border-box;
  font-size: 24px;
  line-height: 1.1;
  color: #000;
  font-weight: bold;
}
#footer .user-support-box {
  width: 100%;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  box-sizing: border-box;
}
#completeFooter {
  padding: 2vw 3vw;
  background-color: #EEE;
}
/* --------------------
1.1.1 section 汎用Section設定
-------------------- */
section { box-sizing: border-box; }
.section-color-gray { background-color: #EEE; }
.section-grad-wrap { position: relative; }
.section-grad-btn {
  z-index: 2;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  margin-left: auto;
  padding: .3em;
  cursor: pointer;
  transition: .4s ease;
  opacity: .9;
  color: #00399b;
  text-align: right;
  font-weight: 500;
}
.section-grad-btn::before {
  content: "続きを読む"
}
.section-grad-item {
  position: relative;
  overflow: hidden;
  height: 50px;
}
.section-grad-item::before {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 55px;
  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
  background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
  content: "";
  box-sizing: border-box;
}
.section-grad-trigger { display: none; }
.section-grad-trigger:checked ~ .section-grad-btn::before {
  content: "閉じる"
}
.section-grad-trigger:checked ~ .section-grad-item {
  height: auto;
  padding: 0 0 5vw;
}
.section-grad-trigger:checked ~ .section-grad-item::before { display: none; }
.hotel-box-inner.stay-notice-line { border-top: 1px solid #000; }
/* --------------------
1.1.2 section-box 汎用BOX設定
-------------------- */
#mainWrap {
}
#mainWrap.booking-wrap {
  min-height: calc(100vh - 48px - 51px - 24px);
  padding-top: 30px;
}
.section-box-wrap {
  position: relative;
  width: 100%;
  text-align: left;
  box-sizing: border-box;
}
.section-box-wrap--gray {
  background-color: #f6f6f6;
  padding: 16px 0;
}
.section-box-wrap-inner {
  width: 960px;
  margin: 0 auto;
  /*padding: 0 16px;*/
  box-sizing: border-box;
}
.section-box-wrap-inner:after { display: none; }
.section-box-inner--short {
  width: 64.5%;
  z-index: 2;
}
.section-box-wrap-none { border: none; }
.section-box-note {
  font-size: 12px;
  color: #666;
  margin: 0 0 8px;
}
span.section-box-note {
  font-size: 12px;
  color: #666;
  margin: 0;
}
.section-box-note02 {
  color: #333;
  font-size: 12px;
  margin: 0 0 3px 0;
}
.section-box-note03 {
  color: red;
  font-size: 12px;
}
.section-box-note.section-box-note-bottom {
  margin-top: -1.5em;
  margin-bottom: 16px;
}
.section-box-note.section-box-note-margin { margin-bottom: 40px; }
.section-box-note-indent {
  font-size: 12px;
  color: #333;
  line-height: 1.6;
  margin-bottom: 3px;
}
.modal-section .section-box-note-indent {
  font-size: 14px;
}
.section-box-note-indent li {
  text-indent: -1em;
  padding-left: 1em;
}
span.section-box-required {
  color: red;
  margin: 0 1vw;
  vertical-align: top;
}
span.section-box-asterisk {
  margin: 0 0 0 5px;
}
span.section-box-asterisk img {
  vertical-align: text-top;
  padding-top: 1px;
}
.section-link-wrap { border-top: 1px solid #DDD; }
.section-shareholder-plus { border: none; }
.section-box-link {
  width: 100%;
  box-sizing: border-box;
  background-image: url(https://www.his-j.com/kix/jcom/img/icon/icon_next03.png);
  background-size: 14px;
  background-position: center right 8px;
  background-repeat: no-repeat;
  margin: 0;
}
.section-box-link a {
  display: block;
  color: #000;
}
.section-box-link.section-box-link-plus {
  background: none;
  padding-left: 25px;
}
.section-box-link.section-box-link-plus a {
  display: inline;
  width: auto;
  color: #0080ff;
  cursor: pointer;
}
.section-box-accordion {
  width: 100%;
  padding: 4vw 6vw 4vw 3vw;
  box-sizing: border-box;
  background-image: url(https://www.his-j.com/kix/jcom/img/icon/icon_down01.png);
  background-size: 22px;
  background-position: center right 1vw;
  background-repeat: no-repeat;
}
/* --------------------
1.1.3 section-one-box 汎用100%BOX設定
-------------------- */
.section-one-box {
  width: 100%;
  margin: 0 0;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.section-one-image { width: 100%; }
.section-one-image img { width: 100%; }
.section-one-body { width: auto; }
.section-one-rate {
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin: 0;
  padding: 0;
  font-size: 14px;
  border-radius: 0;
  background: none;
}
.section-one-rate li {
  margin: 0;
  padding: 0;
}
.section-one-rate li.section-rate-number {
  background-color: #023b95;
  width: 24px;
  height: 24px;
  margin: 0 8px 0;
  line-height: 24px;
  text-align: center;
  padding: 0;
  color: #FFF;
  border-radius: 3px;
  font-size: 12px;
}
.section-one-area {
  padding: 2px 0 0 16px;
  font-size: 12px;
  background-image: url(../img/icon_pin03.png);
  background-position: top 0 left 0;
  background-repeat: no-repeat;
  color: #333;
}
.section-one-txt {
  padding: 0 8px;
  margin: 0 0 8px 0;
}
.section-one-txt--ellipsis {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.section-one-price { text-align: right; }
/* --------------------
1.2.1 section-btn ボタン設定
-------------------- */
.section-btn-wrap {
  display: block; }
.text-right { text-align: right;
}
.section-btn-wrap-side {
  display: inline-block;
}
.section-btn-wrap-vertical {
  display: block;
  margin: 18px 0 0;
}
.section-btn-wrap-auto {
  width: 128px;
  margin: 0 auto;
  display: block;
}
.section-btn-wrap-auto .positive-btn {
  width: 100%;
  height: 48px;
  border-radius: 10px;
  font-size: 16px;
}
.section-btn-wrap-small {
  width: 280px;
  margin: 0 auto;
  display: block;
}
.section-btn-wrap-normal {
  width: 336px;
  margin: 0 auto;
  display: block;
}
.section-btn-wrap-long {
  width: 376px;
  margin: 0 auto;
  display: block;
}
.section-btn-wrap-modal-footer {
  width: 300px;
  margin: 0 auto;
  padding: 50px 0;
}
.review_preview .section-btn-wrap-small { margin: 0 160px 0 48px; }
.section-btn-wrap-search {
  display: block;
  width: 120px;
  margin: 22px 0 24px 4px;
  align-self: flex-start;
}
.result .section-btn-wrap-search {
  margin-top: 0;
  margin-bottom: 0;
  align-self: flex-end;
  background: url(../img/btn_result_search01_on.png) no-repeat;
}
.result .section-btn-wrap-search img {
  transition: all 0.5s;
}
.result .section-btn-wrap-search img:hover {
  opacity: 0;
}
.section-btn-wrap-bottom {
  display: block;
  margin-bottom: 40px;
}
.section-btn-wrap-left {
  margin-right: auto;
  margin-left: 0;
  background: url(../img/btn_input_check01_on.png) no-repeat;
}
.section-btn-wrap-left input {
  transition: all 0.5s;
}
.section-btn-wrap-left input:hover {
  opacity: 0;
}

.section-btn-2col-wrap {
  margin: 48px 0;
}
.section-btn-2col-wrap .section-box-wrap-inner {
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.review_preview .section-btn-2col-wrap .section-box-wrap-inner { justify-content: flex-start; }
.review_preview .section-btn-2col-wrap .section-box-wrap-inner a {
  width: 273px;
  margin-right: 17px;
}
.section-btn-2col-wrap-bottom { margin: 0 0 24px 0; }
.section-btn-modal-2col-wrap {
  width: 94vw;
  padding: 3vw;
  position: fixed;
  bottom: 0;
  left: 0;
}
.section-btn {
  width: 100%;
  padding: 14px;
  text-align: center;
  border: none;
  display: block;
  cursor: pointer;
  font-size: 16px;
  line-height: 1.125;
  position: relative;
}
.section-btn.multi-line { font-size: 16px; }
.section-btn.multi-line > img { margin-left: 10px;}
.section-btn.multi-line span {
  margin-top: 5px;
  font-size: 12px;
  display: block;
}
.section-btn-2col { width: 240px; }
.section-btn-2col .section-btn { font-size: 14px; }
.section-btn-2col-left { width: 38%; }
.section-btn-2col-right { width: 58%; }
.section-btn.primary-btn {
  background-color: #004098;
  color: #fff;
  border: 1px solid #004098;
  border-radius: 4px;
  box-sizing: border-box;
  transition: 0.5s all;
}
.section-btn.primary-btn:hover {
  background-color: #003175;
}
.section-btn.secondary-btn {
  background-color: #ff7c14;
  color: #fff;
  border: 1px solid #ff7c14;
  border-radius: 4px;
  box-sizing: border-box;
  transition: 0.5s all;
}
.section-btn.secondary-btn:hover {
  background-color: #ff6000;
}
.section-btn.outline-btn {
  background-color: #fff;
  border: 1px solid #888;
  transition: 0.25s;
  border-radius: 4px;
  box-sizing: border-box;
}
.section-btn.outline-btn-s {
  background-color: #fff;
  font-size: 14px;
  line-height: 1.5;
  padding: 4.5px 15px;
  border: 1px solid #888;
  transition: 0.25s;
  border-radius: 16px;
  box-sizing: border-box;
}
.section-btn.primary-btn.unusable-btn {
  background-color: #888;
  border: 1px solid #888;
  cursor: default;
  opacity: 0.5;
}
.section-btn.outline-btn-s.section-btn-right-arrow,
.section-btn.outline-btn-s.section-btn-left-arrow { padding: 4.5px 32px 5px 32px; }
_::-webkit-full-page-media, _:future, :root .section-btn.outline-btn-s.section-btn-right-arrow{ padding: 4.5px 32px 6.5px 32px; }
_::-webkit-full-page-media, _:future, :root .section-btn.outline-btn-s.section-btn-left-arrow{ padding: 4.5px 32px 6.5px 32px; }

.section-btn.outline-btn:hover,
.section-btn.outline-btn:focus,
.section-btn.outline-btn-s:hover,
.section-btn.outline-btn-s:focus { background-color: #f2f2f2; }
.section-btn.disable-btn {
  background-color: #d7d7d7;
  color: #fff;
  border: 1px solid #d7d7d7;
  border-radius: 4px;
  box-sizing: border-box;
  cursor: default;
}
.section-btn-right-arrow-btn{
  background: url(../img/icon_arrow01_gray.png) no-repeat right 9px center #fff;
}
.section-btn.section-btn-left-arrow:after {
  position: absolute;
  top: 37.5%;
  left: 4%;
  content: '';
  width: 8px;
  height: 12px;
}
.section-btn.section-btn-right-arrow:after {
  position: absolute;
  top: 37.5%;
  right: 4%;
  content: '';
  width: 8px;
  height: 12px;
}
.section-btn.section-btn-bottom-arrow:after {
  position: absolute;
  top: 40%;
  right: 8%;
  content: '';
  width: 12px;
  height: 8px;
}
.section-btn.section-btn-blank:after {
  position: absolute;
  top: 30.5%;
  right: 4%;
  content: '';
  width: 18px;
  height: 14px;
}
.section-btn.outline-btn-s.section-btn-right-arrow:after {
  position: absolute;
  top: 32%;
  right: 3%;
  content: '';
  width: 8px;
  height: 12px;
}
.section-btn.primary-btn.section-btn-left-arrow:after,
.section-btn.secondary-btn.section-btn-left-arrow:after,
.section-btn.disable-btn.section-btn-left-arrow:after{ background: url(../img/icon_arrow02_wh.png) no-repeat 0 0; }
.section-btn.primary-btn.section-btn-right-arrow:after,
.section-btn.secondary-btn.section-btn-right-arrow:after,
.section-btn.disable-btn.section-btn-right-arrow:after{ background: url(../img/icon_arrow01_wh.png) no-repeat 0 0; }
.section-btn.outline-btn.section-btn-right-arrow:after,
.section-btn.outline-btn-s.section-btn-right-arrow:after { background: url(../img/icon_arrow01_gray.png) no-repeat 0 0; }
.section-btn.outline-btn.section-btn-left-arrow:after { background: url(../img/icon_arrow02_gray.png) no-repeat 0 0; }
.section-btn.outline-btn.section-btn-bottom-arrow:after { background: url("../img/icon_bottom02_gray.png") no-repeat 0 0; }
.section-btn.primary-btn.section-btn-blank:after,
.section-btn.primary-btn.section-btn-blank:hover:after,
.section-btn.primary-btn.section-btn-blank:focus:after { background: url(../img/icon_newwindow06.png) no-repeat 0 0; }
.section-btn.outline-btn.section-btn-blank:after { background: url("../img/icon_newwindow05.png") no-repeat 0 0; }
.modal-login-box > input {
  background: url(../img/icon_arrow01_wh.png) no-repeat 0 0;
  background-position: 96%;
}

.section-btn.positive-btn {
  background-color: #ff9e14;
  color: #fff;
  font-weight: bold;
}
.section-btn-search {
  padding: 13px;
  line-height: 1;
}
.section-btn-search:before {
  display: inline-block;
  content: '';
  width: 21px;
  height: 20px;
  margin-right: 8px;
  background-repeat: no-repeat;
  background-position: 0 0;
  vertical-align: text-top;
}
.section-btn.primary-btn.section-btn-search:before,
.section-btn.secondary-btn.section-btn-search:before,
.section-btn.disable-btn.section-btn-search:before { background-image: url(../img/icon_search02-wh.png); }
.section-btn.secondary-btn.section-btn-search:hover { background-color: #ff6000; }
.section-btn.negative-btn {
  background: #fff;
  border: 1px solid #023B95;
  color: #023B95;
}
.section-btn.action-btn {
  width: 80%;
  margin: 0 auto;
  background-color: #333;
  color: #fff;
}
.section-btn.action-btn-right {
  position: relative;
  padding-left: 20px;
  padding-right: 20px;
  background-color: #333;
  color: #fff;
  white-space: nowrap;
  line-height: 1;
}
.section-btn.action-btn-right:after {
  display: inline-block;
  vertical-align: middle;
  width: 15px;
  height: 15px;
  margin: -3.5px 0 0 4px;
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center center;
  content: "";
}
.section-btn.action-btn-right.action-btn-right-navy { background-color: #023B95; }
.section-btn.action-btn-right.action-btn-right-bottom { margin-bottom: 40px; }
.section-btn-2col-wrap .section-btn.action-btn { width: 100%; }
.section-btn.sub-btn {
  background-color: #023B95;
  color: #fff;
  font-weight: bold;
}
.section-btn.general-btn,
.section-btn.general-btn-c {
  display: inline-block;
  margin-top: 8px;
  padding: 0;
  color: #023b95;
  background: none;
  text-decoration: underline;
  text-align: left;
}
.section-btn.general-btn-c { text-align: center; }
.section-btn.general-gray-btn {
  background: #DDD;
  background-image: url(../img/icon_next02.png);
  background-size: 18px;
  background-position: center right 2vw;
  background-repeat: no-repeat;
  color: #000;
}
.section-btn.general-gray-btn-smalltxt { font-size: 14px; }
.section-btn.general-gray-win-btn {
  background: #DDD;
  background-image: url(../img/icon_newwindow01.png);
  background-size: 20px;
  background-position: center right 2vw;
  background-repeat: no-repeat;
  color: #000;
}
.section-btn.section-btn-print:after {
  background: url(../img/icon_printer01.png) no-repeat 0 0;
  content: '';
  width: 20px;
  height: 20px;
  margin-left: 10px;
  display: inline-block;
  vertical-align: bottom;
}
.section-btn.secondary-btn.btn-disable{
  background-color: #d7d7d7;
  border: 1px solid #d7d7d7;
  cursor: default;
}
.login-btn-wrap {
  position: relative;
}
#checkConfirmationBtn{
  background: url(../img/btn_preview_reserve01_on.png) no-repeat;
  transition: all 0.5s;
}
#checkConfirmationBtn.btn-disable{
  background: url(../img/btn_preview_reserve01_disable.png) no-repeat;
}
#checkConfirmationBtn.btn-request{
  background: url(../img/btn_preview_request01_on.png) no-repeat;
}
#checkConfirmationBtn.btn-request.btn-disable{
  background: url(../img/btn_preview_request01_disable.png) no-repeat;
}
#checkConfirmationBtn input {
  opacity: 1;
  transition: all 0.5s;
}
#checkConfirmationBtn.btn-disable input {
  opacity: 0;
  cursor: default;
}
#checkConfirmationBtn input:hover {
  opacity: 0;
}
.correct-btn {
  background: url(../img/icon_correct.png) no-repeat 0 center;
  font-size: 14px;
  padding-left: 20px;
  border: none;
  line-height: 1.4;
}
.correct-btn:hover {
  text-decoration: underline;
}
.room-btn {
  min-width: 200px;
  max-width: 400px;
  margin: 16px 0 8px auto;
  padding: 16px 8px;
  background-color: #333;
  border-radius: 8px;
  text-align: center;
  font-size: 14px;
  font-weight: normal;
  color: #fff;
}
.section-btn-right { margin-left: auto; }
#mainWrap.input .section-btn-right {
  margin-left: 15px;
}
#mainWrap.input .section-btn-right-l {
  margin-left: auto;
  margin-bottom: 30px;
}
#mainWrap.input .section-btn-right-s {
  margin-left: auto;
}
.section-btn-left { margin-right: auto; }
.section-btn-line .section-btn-right {
  width: 50%;
  padding-left: 0.5em;
}
.section-btn-line .section-btn-left {
  width: 50%;
  padding-right: 0.5em;
}
.section-btn-prev {
  background-image: url(https://www.his-j.com/kix/sp/img/icon/icon_prev01_wh.png);
  background-size: 20px;
  background-position: center left 2vw;
  background-repeat: no-repeat;
}
.review-btn-wrap .section-btn {
  background-image: none;
  margin: 1vw 0;
}
.newwindow, .newwindow_white { position: relative; }
.newwindow:after, .newwindow_white:after {
  display: inline-block;
  vertical-align: middle;
  margin: -2px 0 0 2px;
  width: 20px;
  height: 20px;
  background: url(../img/icon_newwindow01.png) center/100% auto;
  content: "";
}
.newwindow_white:after { background: url(../img/icon_newwindow02.png) center/100% auto; }
#pageTop {
  position: fixed;
  bottom: 77px;
  right: 50px;
  font-size: 20px;
  display: none;
  z-index: 30;
}
#pageTop a {
  background-color: #023b95;
  display: block;
  text-decoration: none;
  color: #fff;
  width: 35px;
  padding: 15px 10px;
  font-weight: bold;
  text-align: center;
  border-radius: 5px;
}
#pageTop a:hover {
  background-color: #023b95;
  opacity: 0.7;
}
/* --------------------
1.3.1 recently 最近チェック
-------------------- */
.recently-line-wrap {
  border: none;
  margin-bottom: 32px;
}
.recently-line { background: none; }
.recently-line.recently-line-city {
  border: 1px solid #000;
  border-width: 1px 0 1px 0;
}
.recently-line.recently-line-city a { padding: 12px 0 12px 16px; }
.recently-line-wrap .section-one-box {
  background-color: #FFF;
  background-image: none;
}
.recently-line a {
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.recently-line-list {
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.recently-line-list li:not(:last-of-type):after {
  display: inline-block;
  margin-right: 0.5em;
  content: "、";
}
.recently-line-list li.recently-line-ttl { font-weight: bold; }
.recently-line-btn {
  color: #023b95;
  text-align: center;
  box-sizing: border-box;
  margin-left: auto;
}
.recently-line-wrap .section-one-body {
  box-sizing: border-box;
  padding: 8px 8px 0 8px;
}
.slick-list { margin: 0 -7px; }
.slick-slide { margin: 0 7px; }
/* --------------------

-------------------- */
.section-popular-city-box {
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.section-popular-city-box:after { display: none; }
.popular-city-card {
  position: relative;
  width: 300px;
}
.popular-city-card:not(:nth-last-of-type(-n+3)) { margin-bottom: 28px; }
.popular-city-card:after { display: none; }
.popular-city-card a { display: block; }
.stretched-link img {
  width: 100%
}
.popular-city-card p {
  position: absolute;
  bottom: 16px;
  left: 16px;
  z-index: 1;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
}
/* --------------------
1.4.1 recommend おすすめ情報
-------------------- */
.section-box-scroll {
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}
.section-box-scroll .section-box {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  overflow-x: auto;
  min-width: 230vw;
  -webkit-overflow-scrolling: touch;
  text-align: left;
}
.section-box-scroll .section-box-txt { margin-bottom: 1vw; }
#recommendWrap .section-box-wrap { margin-bottom: 32px; }
.recommend-info-box {
  background-image: url(https://www.his-j.com/kix/jcom/img/icon/icon_next03.png);
  background-size: 14px;
  background-position: bottom 4px right 4px;
  background-repeat: no-repeat;
  border: 2px solid #EEE;
  background-color: #FFF;
}
.recommend-info-box .recommend-info-box-inner {
  padding: 13px 8px;
  height: 53px;
}
.recommend-info-box .recommend-info-image { margin-bottom: 8px; }
.recommend-info-box .recommend-txt-area { padding: 0 2vw; }
.recommend-info-box img { width: 100%; }
.recommend-price-txt { text-align: right; }
.hotel-slider-recommend .recommend-info-box { width: auto; }
.slick-dots {
  left: 0;
  bottom: 0px!important;
}
.slick-dotted.slick-slider {
  padding-bottom: 32px;
  margin: 0;
}
.slick-dots li {
  width: 16px;
  height: 16px;
  margin: 0 6px;
}
.slick-dots li button {
  width: 16px;
  height: 16px;
}
.slick-dots li button:focus,
.slick-dots li button:hover{
  position: static;
  opacity: 1;
}
.slick-dots li button:before{
  font-family: auto;
  font-size: 30px;
  transition: all 0.5s;
  opacity: 1;
  color: #d7d7d7;
}
/* Edge */
@supports (-ms-ime-align: auto) {
	.slick-dots li button:before{
    font-size: 45px;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
	.slick-dots li button:before{
    font-size: 45px;
  }
}
.slick-dots li.slick-active button:before,.slick-dots li button:hover:before {
  color: #2488ff;
  opacity: 1;
}
.hotel-slider-recommend .slick-arrow,
.recently-line-slide .slick-arrow,
.recommend-info-box-wrap .slick-arrow {
  width: 40px;
  height: 40px;
  z-index: 1;
  top: 40%;
}
.hotel-slider-recommend .slick-arrow.slick-disabled,
.recently-line-slide .slick-arrow.slick-disabled,
.recommend-info-box-wrap .slick-arrow.slick-disabled { opacity: 1; }
.hotel-slider-recommend .slick-prev:before,
.hotel-slider-recommend .slick-next:before,
.recently-line-slide .slick-prev:before,
.recently-line-slide .slick-next:before,
.recommend-info-box-wrap .slick-prev:before,
.recommend-info-box-wrap .slick-next:before {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  color: #023b95;
  width: 40px;
  height: 40px;
  padding-bottom: 2px;
  border: 2px solid #023b95;
  border-radius: 100px;
  font-family: 'Noto Sans JP';
  font-size: 24px;
  font-weight: bold;
  opacity: 1;
  box-sizing: border-box;
}
.hotel-slider-recommend .slick-next:before,
.recently-line-slide .slick-next:before,
.recommend-info-box-wrap .slick-next:before {
  left: auto;
  right: -25px;
}
.hotel-slider-recommend .slick-arrow.slick-disabled:before,
.recently-line-slide .slick-arrow.slick-disabled:before,
.recommend-info-box-wrap .slick-arrow.slick-disabled:before {
  background-color: #999;
  color: #333;
  border: 2px solid #333;
  cursor: auto;
}
/* --------------------
2.1.1 search 検索BOX設定
-------------------- */
#contentsWrap {
  position: relative;
  padding: 16px 0 14px 0;
}
#mainWrap.review_input #contentsWrap,#mainWrap.review_preview #contentsWrap,#mainWrap.review_done #contentsWrap {
  padding-top: 0;
}
.search-header { background-color: #d2dae8; }
#searchWrap {
  position: relative;
  z-index: 30;
  padding: 0; 
}
.search-box-wrap--header {
  position: relative;
  display: flex;
  -webkit-align-items: stretch;
  align-items: stretch;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.search-box-wrap--header .search-box-line { margin-bottom: 0; }
.search-box-line {
  position: relative;
  box-sizing: border-box;
  margin-bottom: 16px;
}
.search-box-ttl {
  margin-bottom: 8px;
  font-size: 12px;
}
.search-box-ttl-column {
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  display: flex;
}
.search-box-ttl-column-ttl { margin-bottom: 0.5em; }
.search-box-ttl-column .search-box-line:not(:last-of-type) { margin-right: 16px; }
.search-box-ttl-column span {
  display: block;
  font-size: 12px;
  position: relative;
}
.search-box-ttl-column span:last-child { width: 43%; }
.search-box-txt-optional { color: #999; }
.section-input .search-box-ttl { font-weight: bold; }
.input-box-alert,.search-box-alert  {
  margin-top: 0;
  margin-bottom: 12px;
  color: red;
  padding: 3px 0 4px 20px;
  background-image: url(../img/icon_alert02_red.png);
  background-size: 16px;
  background-position: top 6px left;
  background-repeat: no-repeat;
}
@-moz-document url-prefix() {
  .input-box-alert,.search-box-alert {
    background-position: top 7px left;
  }
}
/* Edge */
@supports (-ms-ime-align: auto) {
	.input-box-alert,.search-box-alert {
    background-position: top 7px left;
  }
}
.search-ttl-wrap span { width: 50%; }
.search-box-input {
  position: relative;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.input-box {
  position: relative;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.result .people-modal-btn .search-box-input-inner {
  width: 224px;
  text-align: center;
}
.search-box-input-inner {
  padding: 5px 4px;
  box-sizing: border-box;
  border: 1px solid #023b95;
  border-width: 1px 0 1px 1px;
  background-color: #fff;
}
.search-box-input-inner--plan_calendar {
  width: 350px;
  padding: 4px;
  text-align: center;
}
.search-box-input-inner.search-box-input-inner--last { border-right: 1px solid #023b95; }
#searchWrap .area_selector {
  margin: 0;
  width: 130px;
  height: 36px;
  padding: 0 30px 0 4px;
  box-sizing: border-box;
  border: none;
  background-color: transparent;
  cursor: pointer;
  white-space: nowrap;
}
#searchWrap .area_selector.search-box-input-small {
  height: 24px;
}
.people-inputbox {
  position: relative;
  display: inline-block;
}
.people-inputbox-inner {
  position: relative;
  display: flex;
  width: 100%;
  justify-content: space-around;
}
#mainWrap.plan .people-inputbox-inner {
  justify-content: flex-start;
}
.current.people-inputbox:before {
  position: absolute;
  bottom: 2px;
  left: 50%;
  z-index: 0;
  width: 97%;
  height: 31px;
  background-color: #dfdfdf;
  -moz-transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  content: "";
}
.current.people-inputbox:after {
  position: absolute;
  bottom: 2px;
  left: 50%;
  width: 97%;
  height: 0;
  border-top: 4px solid #4f81bd;
  -moz-transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  content: "";
}
.search-box-input-inner__people {
  position: relative;
  font-size: 14px;
  display: inline-block;
  text-align: right;
}
.plan .search-box-input-inner__people { width: auto; }
.search-box-input-inner__people:not(:first-of-type):before {
  position: absolute;
  left: -2px;
  top: 50%;
  width: 0;
  height: 100%;
  -moz-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  border-left: 1px solid #9d9d9d;
  content: "";
}
.result .search-box-input-inner__people:not(:first-of-type):before { display: none; }
.plan .search-box-input-inner__people:not(:first-of-type):before { display: none; }
.search-box-input-inner > input {
  height: 36px;
  font-size: 14px;
}
.search-box-input-inner > input.search-box-input-small{
  height: inherit;
  padding: 2px 6px 1px 6px;
}
.search-box-input-inner > input:nth-of-type(n + 2) { border-left: 1px solid #9d9d9d; }
.search-box-room-input {
  border-radius: 5px;
  background-color: #d2dae8;
}
.search-box-input input, .search-box-input span.result-input {
  width: 100%;
  margin: 0 8px 0 0;
  padding: 8px 6px;
  border: 1px solid #d2dae8;
  border-radius: 5px;
  box-shadow: none;
  box-sizing: border-box;
  background-color: #d2dae8;
}
.input-box input {
  width: 100%;
  margin: 0 8px 0 0;
  padding: 8px 6px;
  border: 1px solid #d2dae8;
  border-radius: 5px;
  box-shadow: none;
  box-sizing: border-box;
  background-color: #d2dae8;
}

.search-box-input .search-box-input__short_box { width: 160px; }
.input-box .input-box__short_box { width: 160px; }
.search-box-input .search-box-input__short_box:disabled {
  background: #eee;
  color: #aaa;
}
.input-box .input-box__short_box:disabled {
  background: #eee;
  color: #aaa;
}
.search-box-input .search-box-input__middle_box { width: 280px; }
.input-box .input-box__middle_box { width: 280px; }
/*.search-box-input .result-input.modal-open-btn {
  width: 240px;
  background: none;
  border: none;
  border-left: 1px solid #000;
  border-radius: 0;
  margin-right: 0;
}*/
.modal-open-btn { cursor: pointer; }
.preview-wrap .search-box-input input,
.preview-wrap .search-box-input span.result-input {
  width: auto;
  padding: 0;
  border: none;
  background: none;
  color: #000;
  font-size: 16px;
  font-weight: bold;
}
.search-box-input input.preview_input_short { width: 4em; }
 .search-box-input input::disable,
.search-box-input span.result-input input::disable {
 width: 100%;
 padding: 4vw 3vw;
 border: 1px solid #DDD;
 border-radius: 5px;
 margin: 0.5vw;
 box-shadow: none;
 box-sizing: border-box;
 background-color: #FAFAFA;
}
.search-box-input input.search-input {
  width: 398px;
  padding: 0 0 0 26px;
  background-image: url(../img/icon_search01_blk.png);
  background-size: 24px;
  background-position: center left 0;
  background-repeat: no-repeat;
  line-height: 36px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@-moz-document url-prefix() {
  #searchCityInput .search-input,#searchHotelWrap .search-input{
    padding: 4px 0;
  }
}
.result .search-box-input input.search-input { width: 253px; }
.plan_calendar_img, .result_calendar_img {
  height: 28px;
  vertical-align: middle;
  pointer-events: none;
}
.people_icon {
  display: inline-block;
  vertical-align: middle;
  width: 28px;
  background: url(https://www.his-j.com/test/hotel-ui/img/icon_people01l_blk.png) center/auto 100% no-repeat;
}
.people_icon--2_adults { background-image: url(https://www.his-j.com/test/hotel-ui/img/icon_people02_blk.png); }
.people_icon--plus_child { background-image: url(https://www.his-j.com/test/hotel-ui/img/icon_people03_blk.png); }
.people_icon--2_adults_plus_child { background-image: url(https://www.his-j.com/test/hotel-ui/img/icon_people04_blk.png); }
.calendar-input-in, .calendar-input-out {
  position: relative;
  display: inline-block;
}
.index-wrapper .calendar-input-in,.index-wrapper .calendar-input-out {
  width: 180px;
}
.current.calendar-input-in:before,
.current.calendar-input-out:before {
  position: absolute;
  bottom: 0;
  left: 46%;
  z-index: 0;
  width: 145px;
  height: 43px;
  background-color: #dfdfdf;
  -moz-transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  content: "";
}
.index-wrapper .current.calendar-input-in:before,
.index-wrapper .current.calendar-input-out:before{
  position: absolute;
  bottom: 0;
  left: 47%;
  z-index: 0;
  width: 180px;
  height: 43px;
  background-color: #dfdfdf;
  -moz-transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  content: "";
}
#mainWrap.plan .current.calendar-input-in:before,
#mainWrap.plan .current.calendar-input-out:before {
  width: 95px;
  height: 36px;
}
#mainWrap.plan .current.calendar-input-in:before{
  left: 49px;
}
#mainWrap.plan .current.calendar-input-out:before {
  left: 44px;
}
.calendar-box-page .current.calendar-input-in:before,
.calendar-box-page .current.calendar-input-out:before {
  bottom: 2px;
  width: 94px;
  height: 31px;
}
.calendar-box-page .current.calendar-input-in:before{
  left: 49px;
}
.calendar-box-page .current.calendar-input-out:before {
  left: 44px;
}
.calendar-input-in .index-search-ttl,.calendar-input-out .index-search-ttl{
  position: relative;
}
.calendar-input-in input,.calendar-input-out input{
  position: relative;
  background: none;
}
.current.calendar-input-in:after,
.current.calendar-input-out:after {
  position: absolute;
  bottom: 3px;
  left: 50%;
  width: 90%;
  height: 0;
  border-top: 4px solid #4f81bd;
  -moz-transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  content: "";
}
.plan .current.calendar-input-in:after,
.plan .current.calendar-input-out:after { width: 100%; }
.search-box-input input#calendar-input-in,
.search-box-input input#calendar-input-out {
  width: 75px;
  padding: 0;
  text-align: center;
  height: 36px;
  font-size: 14px;
  position: relative;
  background-color: transparent;
}
.plan .search-box-input input#calendar-input-in,
.plan .search-box-input input#calendar-input-out { width: 125px; }
.search-box-wrap .search-box-input input {
  margin: 0;
  background-color: #fff;
  border: none;
  border-radius: 0;
  cursor: inherit;
}
.search-box-wrap .calendar-box-page.search-box-input input {
  background-color: inherit;
}
#mainWrap.plan .search-box-wrap .search-box-input input {
  background-color: inherit;
}
.calendar-nights {
  display: inline-block;
  font-size: 12px;
  width: 44px;
  text-align: left;
  white-space: nowrap;
}
.search-box-input-inner input.room,
.search-box-input-inner input.adult,
.search-box-input-inner input.child,
.search-box-input-inner input.people_num {
  width: 22px;
  height: 36px;
  padding: 0;
  text-align: center;
  font-size: 14px;
  position: relative;
  background-color: transparent;
}
.search-box-input-inner input.child { border: none; }
.search-hotel-checkbox {
  position: absolute;
  top: 71px;
  right: 0;
  width: 100%;
  text-align: right;
}
.search-hotel-checkbox__txt {
  display: inline-block;
  vertical-align: middle;
}
.search-hotel-checkbox__input { display: none; }
#searchHotelWrap { display: none; }
.search-box-input select {
  width: 100%;
  padding: 12px 16px;
  border: 1px solid #d2dae8;
  background-color: #d2dae8;
  border-radius: 5px;
  box-sizing: border-box;
  margin: 0 12px 8px 0;
  background-image: url(../img/icon_down01_blk.png);
  background-size: 12px;
  background-position: center right 8px;
  background-repeat: no-repeat;
  font-size: 14px;
}
.input-box select {
  width: 100%;
  padding: 12px 10px;
  border: 1px solid #d2dae8;
  background-color: #d2dae8;
  border-radius: 5px;
  box-sizing: border-box;
  margin: 0 12px 8px 0;
  background-image: url(../img/icon_down01_blk.png);
  background-size: 12px;
  background-position: center right 8px;
  background-repeat: no-repeat;
  font-size: 14px;
}
#ahModal .search-box-input select { background-color: #fff; }
.preview-wrap .search-box-input select {
  width: auto;
  margin-left: 0;
  padding: 0;
  border: none;
  background: none;
  color: #000;
  font-size: 16px;
  font-weight: bold;
}
.preview-wrap .input-box-textarea {
  font-size: 16px;
}
.select-placeholder {
  color: #AAAAAA;
}
select.select-placeholder option {
  color: #333;
}
.search-box-input input[type="checkbox"],
.search-box-input input[type="radio"] {
  width: 20px;
  height: 20px;
  padding: 0;
  border: 1px solid #888;
  border-radius: 4px;
  margin-right: 8px;
  vertical-align: middle;
  line-height: 1;
  cursor: pointer;
  background-color: #fff;
}
.search-box-input input[type="radio"] { border-radius: 20px; }
.search-box-input input[type="checkbox"]:checked {
  background: url(../img/icon_check04.png) no-repeat 1px 1px;
  background-size: 16px 16px;
}
.search-box-input input[type="radio"]:checked {
  background-image: url(../img/icon_radio01_blk.png);
  background-size: cover;
}
.search-box-input label {
  width: 100%;
  line-height: 1.4;
}
.input-box input[type="checkbox"],
.input-box input[type="radio"] {
  width: 20px;
  height: 20px;
  padding: 0;
  border: 1px solid #888;
  border-radius: 4px;
  margin-right: 8px;
  vertical-align: middle;
  line-height: 1;
  cursor: pointer;
  background-color: #fff;
}
.input-box input[type="radio"] { border-radius: 20px; }
.input-box input[type="checkbox"]:checked {
  background: url(../img/icon_check04.png) no-repeat 1px 3px;
  background-size: 16px 14px;
}
.input-box input[type="radio"]:checked {
  background-image: url(../img/icon_radio01_blk.png);
  background-size: cover;
}
.input-box label {
  width: 100%;
  line-height: 1.4;
}
.search-box-input.search-box-input-1col { flex-wrap: wrap; }
#mainWrap.booking-wrap .review-input-check .input-box-ttl { margin-bottom: 22px; }
.review-input-check .input-box.search-box-input-1col label {
  width: calc(100% - 30px);
  margin: 8px 0;
}
.search-box-input.search-box-input-2colwrap,
.input-box.input-box-2colwrap { flex-wrap: wrap; }
.search-box-input-2col {
  width: 50%;
  display: block;
  margin-bottom: 8px;
}
.search-box-input-1col { display: block; }
.search-box-input-1col:not(:last-of-type) { margin-bottom: 8px; }
.review-input-check .input-box label {
  display: inline-block;
  width: auto;
  height: 32px;
}
.search-box-list {
  flex-wrap: nowrap;
  display: flex;
  width: 100%;
  box-sizing: border-box;
}
.search-box-list li {
  width: calc(100%/5);
  text-align: center;
  font-size: 20px;
  padding: 2vw 0;
  box-sizing: border-box;
  flex-grow: 1;
  border: 1px solid #DDD;
  border-right: none;
}
.search-box-list li span { font-size: 12px; }
.search-box-list li:last-of-type { border-right: 1px solid #DDD; }
.search-box-disable-list {
  margin-bottom: 24px;
  font-size: 16px;
  font-weight: bold;
}
.search-box-disable-list li { margin-bottom: 16px; }
.search-box-disable-list .search-box-disable-list-item:before { content: "・"; }
.air-hotel {
  width: 100%;
  background: #dfecf9;
}
.air-hotel-page {
  width: 100%;
  background: url(../img/airhotel-bg01.png) repeat-y center;
}
#mainWrap.result .section-box-wrap.air-hotel .air-hotel-line { margin-bottom: 0; }
.air-hotel-line {
  width: 960px;
  height: 116px;
  margin: 0 auto 65px;
  padding: 34px 0 34px 100px;
  background: #dfecf9 url(../img/bg_air-hotel.png) no-repeat -10px 5px;
  font-size: 24px;
  text-align: center;
  line-height: 2;
  box-sizing: border-box;
  overflow: hidden;
}
.air-hotel-line .link-btn {
  display: inline-block;
  float: right;
}
.air-hotel-line .link-btn a { width: 196px; }
.air-hotel-line-bottom {
  margin-bottom: 3vw
}
.air-hotel-line-margin { margin-bottom: 64px; }
.review-btn-wrap .air-hotel-line { margin: 2vw 0 3vw 0; }
.search-box-select-active{
  border: 1px solid #2488ff;
  box-shadow: 0 0 0 1px #2488ff;
}
.search-box-pointer,.search-box-pointer input{
  cursor: pointer;
}
.search-clear{
  padding: 7px;
  background: #fff;
  border: none;
  position: absolute;
  right: -3px;
  bottom: -3px;
  cursor: pointer;
}
.result .search-clear{
  right: 2px;
  bottom: 7px;
}
.search-clear:hover{
  position: absolute;
}

/* --------------------
2.1.2 search 検索BOXモーダルパーツ
-------------------- */
#ah-peopleModal .search-box-line--room { width: 48%; }
#ah-peopleModal .search-box-line {
  border: 1px solid #ccc;
  border-width: 2px 0 2px 0;
}
.number-count-bg {
  margin-top: 10px;
  padding: 10px 15px;
  border-radius: 5px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  background: #dfecf9;
}
.number-count-wrap {
  box-sizing: border-box;
  flex-wrap: nowrap;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.number-count-wrap-room {
  padding: 0 15px;
}
.number-count-wrap-adult {
  width: 350px;
  margin-bottom: 10px;
}
.number-count-wrap-child {
  width: 350px;
  margin-bottom: 10px;
  margin-left: auto;
}
.number-count-wrap-child p {
  margin-right: auto;
}
.number-count-wrap-txt {
  font-size: 12px;
  width: 350px;
  margin-left: auto;
  display: none;
}
.number-count-wrap:not(:first-of-type):before {
  display: block;
  width: 0;
  height: 130%;
  content: "";
  border-left: 1px solid #ccc;
}
.number-count-ttl {
  color: #2488ff;
  font-size: 16px;
  font-weight: bold;
  margin-top: -9px;
}
.number-count-ttl-middle-right strong{
  padding-right: 10px;
}
.number-count-ttl-middle strong,.number-count-ttl-middle-right strong{
  font-size: 16px;
}
.number-count-box {
  border-radius: 4px;
  border: 1px solid #888;
  box-sizing: border-box;
  flex-wrap: nowrap;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  overflow: hidden;
}
.number-count-left,
.number-count-right {
  position: relative;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  box-sizing: border-box;
}
.number-count-left {
  border-right: 1px solid #888;
}
.number-count-right {
  border-left: 1px solid #888;
}
.number-count-left:after,
.number-count-right:after {
  position: absolute;
  display: block;
  width: 100%;
  height: 40px;
  line-height: 1;
  pointer-events: none;
  color: #888;
}
.number-count-left:after {
  content: "－";
  top: 7px;
  font-size: 26px;
}
@-moz-document url-prefix() {
	.number-count-left:after {
    top: 6px;
  }
}
.number-count-right:after {
  content: "+";
  top: 6px;
  font-size: 27px;
}
.number-count-left.disable,
.number-count-right.disable {
  background-color: #d7d7d7;
  color: #fff;
}
.number-count-left input,
.number-count-right input {
  border: none;
  background: none;
  vertical-align: super;
  font-size: 24px;
  width: 100%;
  height: 100%;
  font-weight: bold;
  cursor: pointer;
}
.number-count-disable { opacity: .3; }
.number-count-input {
  width: 40px;
  margin: 0;
  box-sizing: border-box;
}
.number-count-input input {
  width: 100%;
  padding: 0;
  box-sizing: border-box;
  text-align: center;
  border: none;
  border-radius: 0;
  font-size: 18px;
  font-weight: bold;
}
#peopleModal{
  cursor: default;
}
#peopleModal .number-count-age{
  width: 350px;
  flex-wrap: wrap;
  justify-content: space-between;
  border-top: 1px solid #fff;
  margin-top: 10px;
  padding-top: 10px;
  margin-left: auto;
  display: none;
}
#peopleModal .number-count-age-on{
  display: flex
}
.number-roomplus-btn{
  margin: 15px 0 0 335px;
}
.number-roomplus-btn .section-btn.outline-btn{
  font-size: 12px;
  padding: 8px;
}
.number-roomdown-btn{
  position: absolute;
  top: 45px;
}
.number-roomdown-btn .section-btn.outline-btn{
  left: 12px;
  font-size: 12px;
  width: 65px;
  padding: 5px 0;
}
.number-roomplus-btn .section-btn.outline-btn{
  font-size: 12px;
  padding: 8px;
}
#peopleModal .childage{
  height: 40px;
  font-size: 16px;
  width: 120px;
  padding: 0 20px 0 40px;
  border: 1px solid #888;
  border-radius: 3px;
  background-image: url(../img/icon_down01_blk.png);
  background-size: 12px;
  background-position: center right 8px;
  background-repeat: no-repeat;
}
#peopleModal .popup-box--child-01,
#peopleModal .popup-box--child-02,
#peopleModal .popup-box--child-03,
#ah-peopleModal .popup-box--child-01,
#ah-peopleModal .popup-box--child-02,
#ah-peopleModal .popup-box--child-03 {
  width: 380px;
  background-color: #023b95;
  color: #fff;
  text-align: center;
  margin: 12px 0 0 auto;
}
#peopleModal .popup-box--child-01:before,
#peopleModal .popup-box--child-02:before,
#peopleModal .popup-box--child-03:before,
#ah-peopleModal .popup-box--child-01:before,
#ah-peopleModal .popup-box--child-02:before,
#ah-peopleModal .popup-box--child-03:before {
  border: 30px solid transparent;
  border-bottom: 20px solid #023b95;
  top: -50px;
  right: 240px;
}
#peopleModal .popup-box--child-01 .popup-box-close,
#peopleModal .popup-box--child-02 .popup-box-close,
#peopleModal .popup-box--child-03 .popup-box-close,
#ah-peopleModal .popup-box--child-01 .popup-box-close,
#ah-peopleModal .popup-box--child-02 .popup-box-close,
#ah-peopleModal .popup-box--child-03 .popup-box-close {
  background-color: #fff;
  border: 2px solid #023b95;
}
#ah-peopleModal .popup-box--child-01 .popup-box-close,
#ah-peopleModal .popup-box--child-02 .popup-box-close,
#ah-peopleModal .popup-box--child-03 .popup-box-close { width: 24px; }
#peopleModal .child-01,
#peopleModal .child-02,
#peopleModal .child-03,
#ah-peopleModal .child-01,
#ah-peopleModal .child-02,
#ah-peopleModal .child-03,
#peopleModal .child-info.child-01 .child-second,
#peopleModal .child-info.child-02 .child-second,
#peopleModal .child-info.child-03 .child-second,
#ah-peopleModal .child-info.child-01 .child-second,
#ah-peopleModal .child-info.child-02 .child-second,
#ah-peopleModal .child-info.child-03 .child-second { display: none; }
#peopleModal .child-info .child-second {
  margin-top: 10px;
}
#peopleModal.child_01_on .child-01,
#peopleModal.child_02_on .child-02,
#peopleModal.child_03_on .child-03,
#ah-peopleModal.child01_on .child-01,
#ah-peopleModal.child02_on .child-02,
#ah-peopleModal.child03_on .child-03 {
  display: block;
}
#peopleModal .child-info.child-01.child_second_on .child-second,
#peopleModal .child-info.child-02.child_second_on .child-second,
#peopleModal .child-info.child-03.child_second_on .child-second,
#ah-peopleModal .child-info.child-01.child_second_on .child-second,
#ah-peopleModal .child-info.child-02.child_second_on .child-second,
#ah-peopleModal .child-info.child-03.child_second_on .child-second { display: flex; }
#peopleModal.child_01_on .popup-box--child-01,
#peopleModal.child_02_on .popup-box--child-02,
#peopleModal.child_03_on .popup-box--child-03,
#ah-peopleModal.child_01_on .popup-box--child-01,
#ah-peopleModal.child_02_on .popup-box--child-02,
#ah-peopleModal.child_03_on .popup-box--child-03 { display: block; }
#peopleModal .popup-box--child-01.temporarily_close,
#peopleModal .popup-box--child-02.temporarily_close,
#peopleModal .popup-box--child-03.temporarily_close,
#ah-peopleModal .popup-box--child-01.temporarily_close,
#ah-peopleModal .popup-box--child-02.temporarily_close,
#ah-peopleModal .popup-box--child-03.temporarily_close { display: none; }
/* --------------------
2.1.3 incremental インクリメンタルサーチ
-------------------- */
/*
input[type="search"] { -webkit-appearance: searchfield; }
input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: searchfield-cancel-button; }
*/
.incremental-box-wrap {
  position: relative;
  z-index: 2;
}
.incremental-box-wrap.incremental-box-wrap-city { z-index: 3; }
.incremental-box {
  display: none;
  position: absolute;
  top: 45px;
  left: 0;
  max-height: 295px;
  box-sizing: border-box;
  background-color: #FFF;
  overflow: hidden;
  filter: drop-shadow(0px 1px 2px rgba(0,0,0,0.3));
  z-index: 1;
  overflow-y: auto;
  border: 1px solid #023b95;
  border-top: none;
}
.index-wrapper .incremental-box {
  top: 30px;
  left: -35px;
}
.incremental-box-list { width: auto; }
.incremental-box-list li {
  max-width: 777px;
  padding: 12px;
  padding-left: 28px;
  background-image: url(../img/icon_pin01_blk.png);
  background-size: 16px;
  background-position: center left 8px;
  background-repeat: no-repeat;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #333;
}
.incremental-box-list li:hover,
.incremental-box-list li:first-of-type {
  background-color: #D2DAE8;
  cursor: pointer;
}
/* --------------------
2.2.1 result 検索結果
-------------------- */
.search-box-wrap--header .result-people-input {
  padding: 0;
  display: inline-block;
  width: 74px;
}
.result-wrap .search-box-wrap {
  width: 100%;
  min-width: 960px;
  background: #f2f2f2;
  padding: 14px 0;
}
.search-box-wrap-result {
  display: flex;
}
.result-wrap .search-box-line { margin-bottom: 0; }
.result-wrap .search-box-wrap .search-box-input.result-box-sort > li:first-child{ width: 21.4%; }
.result-wrap .search-box-wrap .search-box-input.result-box-sort > li:nth-child(2){ width: 21.8%; }
.result-wrap .search-box-wrap .search-box-input.result-box-sort > li:nth-child(3){ width: 25%; }
.result-wrap .search-box-wrap .search-box-input.result-box-sort > li:last-child{ width: 31.25%; }
.result-box-wrap {
  width: 100%;
  min-width: 960px;
  margin-bottom: 56px;
}
.result-key-wrap {
  background-color: #f2f2f2;
  padding: 0 0 10px;
}
.result-key-box {
  width: 960px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-content: center;
}
.result-key-box__ttl {
  display: inline-flex;
  align-items: center;
  height: 28px;
  margin-right: 8px;
  line-height: 1;
  font-weight: bold;
}
.result-key-box__item {
  display: inline-flex;
  align-items: center;
  height: 28px;
  margin: 0 6px 6px 0;
  padding: 0 0 0 5px;
  background-color: #fff;
  text-align: right;
  line-height: 1;
}
.result-key-box__close_btn {
  display: block;
  width: 28px;
  height: 28px;
  margin-left: 5px;
  background: url(../img/icon_close06.png) center/100% auto no-repeat;
  cursor: pointer;
  vertical-align: middle;
  transition: all 0.5s;
}
.result-key-box__close_btn:hover {
  background: #d7d7d7 url(../img/icon_close06.png) center/100% auto no-repeat;
}
.result-box-notice {
  margin: 20px 0 0 0;
  text-align: left;
  font-size: 20px;
}
.result-box-notice__num {
  font-size: 36px;
  font-weight: bold;
  margin-right: 2px;
}
.result-box-notice__num02 { font-weight: bold; }
.item-box {
  width: 100%;
  padding: 0;
  border: 1px solid #000;
  box-sizing: border-box;
  background-color: #FFF;
  overflow: hidden;
}
.item-box-wrap:not(:last-of-type) { margin-bottom: 32px; }
.item-box > a {
  width: 100%;
  display: block;
}
.item-box .section-one-box {
  margin: 0 0;
  box-sizing: border-box;
  background-image: none;
}
.item-box > .result-item-link {
  position: relative;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.result-item-box .section-one-box {
  position: static;
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: auto;
}
.result-item-box .section-one-box:after {
  display: block;
  position: absolute;
  top: 5%;
  right: 280px;
  bottom: 0;
  width: 0;
  height: 90%;
  border-right: 1px solid #000;
  content: "";
}
.result-item-box .section-one-body {
  width: 410px;
  padding: 8px 0 8px 12px;
}
.item-box .section-one-box-slide { width: 80vw; }
.item-box .section-one-image {
  box-sizing: border-box;
  position: relative;
}
.result-item-box .section-one-image,
.result-item-box .result-item-img {
  width: 241px;
  display: block;
}
.result-item-box .section-one-body .small-ttl { font-size: 16px; }
.result-item-box .section-one-body .small-ttl .eng_subtitle {
  display: block;
  font-size: 14px;
  font-weight: normal;
  margin-top: 4px;
}
.result-item-box .section-one-footer { width: 270px; }
.result-item-box .section-one-footer .section-one-price { padding: 8px; }
.result-item-box .section-one-footer .result-price .price-txt { font-size: 32px; }
.result-item-box .section-one-footer .result-price .price-small-txt { font-size: 20px; }
.result-wrap .result-item-img { width: 300px; }
.item-box .section-one-image-heart {
  width: 40px;
  position: absolute;
  top: 4px;
  left: 4px;
}
.section-one-crown {
  display: inline-flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  vertical-align: text-top;
  margin-right: 10px;
}
/*.section-one-crown:after{
  display:inline-block;
  font-size:18px;
  padding-left:2px;
  color:#666;
  content:"/";
}*/
.review .section-one-crown:after { display: none; }
.section-one-image-crown img {
  max-width: 25px;
  width: 100%;
  margin-right: 1px;
}
.item-box .section-one-body {
  width: 100%;
  background-size: 14px;
  background-position: center right -0.5vw;
  background-repeat: no-repeat;
}
.item-box .section-one-body .small-ttl {
  font-size: 12px;
  line-height: 1.3;
  color: #000;
}
.item-box .section-one-line {
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  margin-bottom: 8px
}
.recently-line .item-box .section-one-line { display: block; }
.recently-line .section-one-area { display: block; }
.search-box-input input,
.search-box-input span.result-input {
  -webkit-appearance: none; /*iPhone閲覧時のinputの影を無効化*/
  -moz-appearance: textfield;/*FFでスピナーボタンを消す*/
}
.section-input .input-box input { height: 40px; }
.section-input .input-box input[type="checkbox"] { height: 20px; }
.result-box .section-one-rate li {
  margin: 0 1vw 0 0;
  padding: 0 1vw;
}
.section-rate-number {
  background-color: #333;
  padding: 1vw 2vw 1vw 2vw;
  color: #FFF;
  border-radius: 3px;
}
.section-rate-number-small {
  margin-right: 1vw;
  padding: 0.5vw 2vw;
  background-color: #333;
  border-radius: 3px;
  display: inline-block;
  color: #FFF;
}
.section-one-rate li.section-rate-number-big { font-size: 14px; }
.item-box .section-one-rate.section-one-food { background-color: transparent; }
.item-box .section-one-rate.section-one-food li.section-rate-number {
  background-color: #333;
  padding: 1vw 2vw 1vw 5.5vw;
  color: #FFF;
  border-radius: 3px;
  background-image: url(../img/icon_food01_wh.png);
  background-size: 16px;
  background-position: center left 0.5vw;
  background-repeat: no-repeat;
  margin: 0 1vw 0 0;
}
.item-box .section-one-rate.section-one-food li.section-rate-number.section-food-exclude {
  background-color: #AAA;
  background-image: url(../img/icon_food01_wh.png);
}
.item-box .section-one-special {
  font-size: 12px;
  padding: 1vw 1vw;
  text-align: center;
  border: 1px solid #D2DAE8;
  background: #D2DAE8;
  color: #000;
  vertical-align: middle;
  line-height: 1;
  width: 20vw;
  border-radius: 3px;
}
.section-one-footer .section-one-price {
  width: 100%;
  box-sizing: border-box;
  margin-left: auto;
  margin-right: 0;
  padding: 0 12px 20px 0;
}
.item-box-input {
  display: flex;
  flex-wrap: nowrap;
}
.result-box-input-space {
  padding-bottom: 2vw
}
.result-box-input .calendar-modal-btn {
  box-sizing: border-box;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  line-height: 36px;
}
#ahModal .result-box-input .calendar-modal-btn,
#ahModal .result-box-input .people-modal-btn,
#ahModal .hotel-input .incremental-box-input {
  width: 200px;
  border: 1px solid #d2dae8;
  border-radius: 5px;
  padding: 0 16px;
  line-height: 1;
  height: 38px;
}
#ahModal .result-box-input .calendar-modal-btn { width: 218px; }
#ahModal .result-box-input .calendar-modal-btn .result-checkin-input,
#ahModal .result-box-input .calendar-modal-btn .result-checkout-input {
  width: 72px;
  text-align: center;
}
#ahModal .hotel-input .incremental-box-input {
  padding-left: 44px;
  background-position: center left 16px;
  width: 400px;
}
.people-modal-btn .people-inputbox {
  box-sizing: border-box;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  line-height: 34px;
}
.result-box-input input {
  box-sizing: border-box;
  text-align: right;
  border: none;
  font-size: 12px;
}
#ahModal .current.calendar-input-in:before,
#ahModal .current.calendar-input-out:before,
#ahModal .current.calendar-input-in:after,
#ahModal .current.calendar-input-out:after { width: 100%; }
#ahModal .result-box-input input {
  height: 30px;
  position: relative;
  background: transparent;
  cursor: pointer;
}
#ahModal .result-box-input .ah-people-box input {
  width: 16px;
  text-align: right;
  margin-left: 0.5em;
  margin-right: 0.25em;
}
#ahModal .result-box-input .ah-people-box .result-modal-people-unit { margin-right: 30px; }
.result-box-sort input,
.result-box-sort span.result-input {
  transition: all 0.5s;
  background-size: 18px;
  background-position: center left 1vw;
  background-repeat: no-repeat;
  text-align: center;
}
.result-box-input .result-checkin-input { width: 56px; }
.result-box-input .result-checkout-input { width: 48px; }
.result-sort-input {
  padding: 3vw 3vw;
  background-image: url(../img/icon_sort01_gray.png);
  background-position: center left 1vw;
}
.result-sort-img {
  width: 32px;
  vertical-align: middle;
}
.section-btn-2col-right.search-box-input_inactive {
  opacity: 0.5;
  cursor: inherit;
}
.result-modal-input {
  padding: 3vw 3vw;
  background-image: url(../img/icon_refine01_gray.png);
  background-position: center left 1vw;
}
.result-map-input {
  padding: 2vw 2vw 2vw 5vw;
  background-image: url(../img/icon_map01_gray.png);
  background-position: center left 1vw;
}
.result-price-input {
  padding: 2vw 2vw 2vw 5vw;
  background-image: url(../img/icon_price01_gray.png);
  background-position: center left 1vw;
}
.result-spot-input {
  padding: 3vw 3vw;
  background-image: url(https://www.his-j.com/kix/sp/img/icon/icon_hotel01.png);
  background-position: center left 1vw;
}
.result-box-input .result-people-input {
  text-align: center;
  width: 56px;
}
.result-box-input .result-room-input {
  padding: 3vw 3vw 3vw 7vw;
  background-image: none;
  background-position: center left 1vw;
  text-align: center;
}
.result-modal-input-icon-img {
  width: 20px;
  vertical-align: middle;
}
.pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 0 56px 0;
}
.pagination:after { display: none; }
.pagination__info {
  font-size: 16px;
  font-weight: bold;
}
.pagination__list {
  display: flex;
  align-items: center;
  line-height: 28px;
}
.pagination__item {
  display: flex;
  align-items: center;
  height: 28px;
  box-sizing: border-box;
}
.pagination__item:not(:last-of-type) { margin-right: 12px; }
.pagination__link { font-weight: bold; }
.pagination__link--number {
  display: block;
  width: 28px;
  height: 100%;
  border: 1px solid #023b95;
  text-align: center;
  color: #023b95;
  font-size: 14px;
}
.pagination__link--number_active {
  background-color: #023b95;
  color: #fff;
}
.pagination__link--left_arrow, .pagination__link--right_arrow, .pagination__three_dots {
  color: #333 !important;
}
.lodging_notes { margin-bottom: 64px; }
.hotel_ranking { margin-bottom: 40px; }
.hotel_ranking__ttl {
  padding: 12px 0;
  background-color: #4f81bd;
  text-align: center;
  color: #fff;
  font-size: 18px;
}
.hotel_ranking__ttl:before { display: none; }
.hotel_ranking__list {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px;
  border: 4px solid #4f81bd;
  border-top: none;
  counter-reset: ranking_number 0;
}
.hotel_ranking__item {
  width: 176px;
  counter-increment: ranking_number 1;
}
.hotel_ranking__item:not(:last-of-type) { margin-right: 12px; }
.hotel_ranking__link {
  border: 1px solid #000;
  display: block;
}
.hotel_ranking__link .section-one-box { background: none; }
.hotel_ranking__link .price-txt { font-size: 12px; }
.hotel_ranking__link .price-small-txt { font-size: 10px; }
.hotel_ranking__link .small-ttl {
  font-size: 12px;
  margin-bottom: 0;
}
.hotel_ranking__link .body-small-txt { font-size: 10px; }
.hotel_ranking__link .section-one-line { display: flex; }
.hotel_ranking__link .section-one-image-crown { width: 12px; }
.hotel_ranking__link .section-one-crown:after { display: none; }
.hotel_ranking__link .section-one-rate { display: inline-flex; }
.hotel_ranking__link .section-one-rate li.section-rate-number {
  margin: 0;
  height: 18px;
  line-height: 18px;
  font-size: 10px;
}
.hotel_ranking__item:before {
  width: 24px;
  height: 24px;
  margin-bottom: 8px;
  line-height: 24px;
  border: 2px solid #023b95;
  text-align: center;
  color: #023b95;
  font-size: 18px;
  font-weight: bold;
  display: inline-block;
  content: counter(ranking_number);
}
.hotel_ranking__item .section-one-body {
  width: 100%;
  padding: 8px;
}
.hotel_ranking__img { width: 100%; }
.hotel_ranking .hotel_ranking__btn_right {
  display: flex;
  justify-content: flex-end;
}
.avarage-price .avarage-price-ttl {
  color: #2488ff;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
  margin-bottom: 10px;
}
.avarage-price {
  display: none;
  background: #dfecf9;
  padding: 20px;
  position: absolute;
  bottom: 50px;
  left: 5px;
  border-radius: 4px;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
  text-align: center;
}
.avarage-price:after {
  display: block;
  content: '';
  border: 8px solid transparent;
  border-top: 8px solid #dfecf9;
  position: absolute;
  top: 100%;
  left: 45%;
}
.avarage-price dl {
  margin-bottom: 18px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.2;
}
.avarage-price dt,
.avarage-price dd { display: inline-block; }
.avarage-price dd { color: #da1e1e; }
.avarage-price dd span { font-size: 20px; }
.avarage-price li { font-size: 16px; }

/* --------------------
3.1.1 index トップ
-------------------- */
.index-mv{
  width: 100%;
  min-width: 960px;
  height: 600px;
  margin-bottom: 50px;
  background: url(../img/top_mv.jpg) no-repeat 50% 40%;
  background-size: cover;
  box-sizing: border-box;
}
.index-wrapper{
  width: 960px;
  margin: 0 auto;
}
.index-inner{
  width: 540px;
  padding: 20px 20px 2px 20px;
  background: #fff;
  border-radius: 5px;
  box-sizing: border-box;
}
.index-ttl {
  margin: 0 0 14px;
  padding: 0 0 0 30px;
  color: #2488ff;
  font-size: 20px;
  font-weight: normal;
  background: url(../img/icon_search02.png) no-repeat left 0 top 0;
}
.index-search-line{
  padding: 5px;
  border: 1px solid #888;
  border-radius: 5px;
}
.index-search-line-pin{
  padding-left: 35px;
  background: url(../img/icon_pin04.png) no-repeat left 8px top 14px;
}
.index-search-line-calender{
  padding-left: 35px;
  background: url(../img/icon_calender03.png) no-repeat left 8px top 15px;
}
.index-search-people{
  width: 200px;
  margin: 15px 0;
  padding-left: 0;
}
.index-search-hotel{
  padding-left: 12px;
  margin-top: 6px;
}
.index-search-ttl{
  font-size: 12px;
  color: #888;
}
.index-search-ttl img{
  display: inline-block;
  padding: 1px 0 0 5px;
}
.index-search-input{
  width: 100%;
  border: none;
}
.index-txt-link{
  margin: 5px 0 10px 5px;
}
.index-txt-link a{
  padding: 0 15px 0 0;
  color: #333;
  display: inline-block;
  background: url(../img/icon_next04.png) no-repeat right 0 top 2px;
}
.index-txt-link a:hover{
  text-decoration: underline;
}
.index-calendar {
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
}
.index-calendar-hyphen{
  display: inline-block;
  font-size: 10px;
  padding: 0 13px 6px 0;
  cursor: default;
}
.index-calendar-nights{
  padding: 0 0 2px 8px;
  display: inline-block;
  font-size: 16px;
}
.index-people{
  display: flex;
  justify-content :space-between;
}
.index-people-inner {
  width: 70px;
}
.index-people-inner span {
  display: block;
  padding-top: 2px;
  margin-left: 2px;
}
.index-people-inner span.index-people-ttl {
  padding-left: 14px;
  display: block;
  font-size: 12px;
  color: #888;
}
.index-people-input input{
  display: inline;
  width: 1.5em;
  overflow: hidden;
  border: none;
  text-align: right;
}
.index-hotelname label{
  vertical-align: bottom;
}
.index-city-inner{
  width: 820px;
  margin: 0 auto;
}
.index-city-inner a{
  padding: 15px 20px 15px 10px;
  border-top: 1px solid #d7d7d7;
  border-bottom: 1px solid #d7d7d7;
  display: block;
  transition: all 0.5s;
}
.index-city-inner a:hover{
  background: #f2f2f2;
}
.index-city-box{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.index-city-detail{
  width: 700px;
}
.index-city-ttl{
  font-weight: bold;
}
.index-city-btn{
  background: url(../img/icon_arrow02_orange.png) no-repeat right 50%;
  padding: 0 15px 0 0;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.1;
}
.index-popularity-wrap{
  text-align: center;
}
.index-popularity-list{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 0 8px;
}
.index-popularity-list li{
  width: calc(100% / 6);
  padding: 0 8px 16px;
  box-sizing: border-box;
}
_:-ms-lang(x)::-ms-backdrop, .index-popularity-list li { width: 16.66%; } /* IE11 only */
_:-ms-lang(x)::backdrop, .index-popularity-list li { width: 16.66%; } /* Edge only */
.index-popularity-list.index-recommend-list li{
  width: calc(100% / 3);
}
.index-popularity-list li a{
  position: relative;
  display: block;
  text-decoration: none;
  overflow: hidden;
  border-radius: 4px;
  -webkit-transition: all .25s ease-out;
  transition: all .25s ease-out;
}
.index-popularity-list li a:hover{
  opacity: 0.5;
}
.index-popularity-list li img{
  width: 100%;
}
.index-popularity-list li span{
  position: absolute;
  text-align: center;
  font-size: 1.14rem;
  font-weight: bold;
  color: #FFF;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, .02)), to(rgba(0, 0, 0, .6)));
  padding: 15px 12px 22px;
  bottom: 0;
  width: 100%;
  height: 90px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  box-sizing: border-box;
}
#mainWrap.index .search-line-calender-alert-on,
#mainWrap.result .search-line-calender-alert-on .search-box-input-inner,
#mainWrap.plan .search-line-calender-alert-on .search-box-input-inner,
#mainWrap.index .search-line-city-alert-on{
  border: 1px solid red;
}
.search-line-calender-alert-txt,.search-line-city-alert-txt{
  display: none;
}
#mainWrap.index .search-line-calender-alert-on + .search-line-calender-alert-txt,
#mainWrap.result .search-line-calender-alert-on + .search-line-calender-alert-tooltip,
#mainWrap.plan .search-line-calender-alert-on + .search-line-calender-alert-tooltip,
#mainWrap.index .search-line-city-alert-on ~ .index-txt-link .search-line-city-alert-txt{
  display: block;
  color: red;
  font-size: 12px;
  margin-top: 6px;
}
.search-line-calender-alert-tooltip{
  text-align: center;
  padding: 9px 12px;
  position: absolute;
  background: #004098;
  line-height: 1.5;
  right: -240px;
  top: -45px;
  -moz-transform: translate(-100%, 0);
  -webkit-transform: translate(-100%, 0);
  transform: translate(-100%, 0);
  border-radius: 5px;
  font-size: 12px;
  display: none;
  color: #fff;
}
.search-line-calender-alert-tooltip:before {
  content: "";
  position: absolute;
  bottom: -25px;
  left: 50%;
  margin-left: 0px;
  border: 8px solid transparent;
  border-top: 10px solid #004098;
  -moz-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.search-input-suggest{
  width: calc(100% - 30px);
}

/* --------------------
3.1.1 hotel ホテル
-------------------- */
.hotel-box-wrap { padding: 0 0 16px; }
.hotel-box-wrap--flex {
  display: flex;
  align-items: center;
}
.hotel-box-wrap--short { width: 640px; }
.hotel-box-header .select-plan-line { padding: 0; }
.hotel-box-area {
  font-size: 20px;
  padding: 0 0 0 22px;
  background-image: url(../img/icon_pin03.png);
  background-size: 15px 21px;
  background-position: center left;
  background-repeat: no-repeat;
}
.hotel-box-action {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  text-align: left;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.hotel-box-action li {
  position: relative;
  max-width: 18px;
  margin-right: 0.5em;
  border: 1px solid #333;
  /* background-color: #EEE; */
  border-radius: 70px;
  padding: 4px;
  text-align: center;
  line-height: 1;
  vertical-align: middle;
}
.hotel-box-action li img { width: 100%; }
.hotel-box-flex {
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.hotel-box-flex:after { display: none; }
.hotel-box-flex > .hotel-box-list { width: 50%; }
.hotel-box-pic {
  width: 624px;
  height: 420px;
  overflow: hidden;
  position: relative;
}
.hotel-box-pic img { width: 100%; }
.hotel-slider--hotel_top .slick-slide {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 600px;
  height: 420px;
  margin: 0;
  background-color: #000;
}
.hotel-slider--hotel_top .slick-slide img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}
.hotel-pic-nav {
  width: 100%;
  position: relative;
}
.hotel-pic-nav li {
  max-width: 30px;
  background-color: rgba(255, 255, 255, .8);
  border-radius: 70px;
  padding: 4px;
  text-align: center;
  line-height: 1;
  vertical-align: middle;
  position: absolute;
  z-index: 10;
}
.hotel-pic-nav li img { width: 100%; }
.hotel-pic-nav li.hotel-nav-prev {
  bottom: 28vw;
  left: 1vw;
  background-color: rgba(0, 0, 0, .6);
}
.hotel-pic-nav li.hotel-nav-next {
  bottom: 28vw;
  right: 1vw;
  background-color: rgba(0, 0, 0, .6);
}
.hotel-pic-nav li.hotel-nav-open {
  bottom: 12px;
  right: 12px;
}
.hotel-pic-txt {
  color: #FFF;
  text-align: center;
  padding: 3vw;
}
.hotel-pic-count {
  color: #FFF;
  text-align: center;
  padding: 3vw 3vw;
}
.hotel-box-link a{
  color: #2488ff;
}
.hotel-box-link:hover { text-decoration: underline; }
.hotel-box-info {
  width: 304px;
  height: 420px;
  margin-left: 32px;
  border: 1px solid #000;
  padding: 8px;
  overflow-y: scroll;
}
.hotel-box-info .hotel-box-wrap:first-of-type {
  border-bottom: 1px solid #ccc;
  margin-bottom: 8px;
}
.hotel-box-map {
  width: 450px;
  height: 260px;
  position: relative;
  margin-bottom: 0;
  cursor: pointer;
}
.hotel-box-map-inner {
  width: 450px;
  height: 260px;
}
.hotel-box-map-btn {
  position: absolute;
  width: 88px;
  height: 28px;
  bottom: 6px;
  right: 6px;
  padding: 0;
  line-height: 28px;
  background: #023b95;
  border-radius: 8px;
  color: #fff;
  font-size: 12px;
  border: none;
  cursor: pointer;
}
.lowewst-price {
  position: absolute;
  top: 0;
  left: calc(50% + 176px);
  width: 304px;
  padding: 8px;
  border: 1px solid #000;
  box-sizing: border-box;
}
.lowewst-price-wrap {
  padding: 8px;
  border: 1px solid #000;
  margin-bottom: 8px;
  text-align: right;
}
.hotel-box-list {
  width: 100%;
  margin: 0 0 8px;
  border-collapse: collapse;
  table-layout: fixed;
}
.hotel-box-list th,
.hotel-box-list td {
  box-sizing: border-box;
  font-size: 16px;
  padding: 10px;
  text-align: left;
  line-height: 1.6;
}
.hotel-box-list th {
  background: #f2f2f2;
  border: none;
  border-top: 1px solid #d7d7d7;
  border-bottom: 1px solid #d7d7d7;
}
.hotel-box-list td {
  border: 1px solid #d7d7d7;
}
.hotel-box-list td:first-of-type { border-left: none; }
.hotel-box-list td:last-of-type { border-right: none; }

/*.hotel-box-list th { width: calc((100% - 150px) / 3); }
.hotel-box-list td { width: 50px; }
*/
.hotel-box-list td > sup {
  font-size: 14px;
  top: -3px;
}
.hotel-box-list td > span {
  font-size: 12px;
}
td.hotel-box-list__no_border { border: none; }
.hotel-box-list_notes { margin: 0 0 8px; }
.hotel-box-list + .small-ttl,
.hotel-box-list_notes + .small-ttl { margin-top: 24px; }
.hotel-list-float-wrap{
  width: 100%;
  padding: 13px 0;
  background: #fff;
  box-shadow: 0 1px 3px 2px rgba(0,0,0,0.2);
  position: fixed;
  display: none;
  top: 0;
}
.hotel-list-float{
  width: 960px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.hotel-float-txt-wrap{
  width: 410px;
}
.hotel-float-ttl{
  display: inline;
  color: #888;
}
.hotel-float-code{
  display: inline-block;
  color: #2488ff;
  font-size: 12px;
}
.hotel-list-float .link-btn-list{
  width: 510px;
  display: flex;
  justify-content: space-between;
}
.hotel-list-float .link-btn-list li{
  width: 160px;
}
.hotel-list-float .link-btn-list li a{
  font-size: 12px;
  padding: 12px;
}
.hotel-list-float .link-btn-list li a.section-btn-search:before{
  width: 12px;
  height: 12px;
  background-size: 12px;
  vertical-align: middle;
  margin-top: -3px;
}
.read-continuation-more-btn-open{
  display: none;
}
/* --------------------
3.1.2 hotel-map ホテル地図
-------------------- */
/* --------------------
3.1.3 hotel-info ホテル詳細
-------------------- */
.section-hotel { padding: 0; }
.section-hotel .big-hotel-ttl {
  color: #333;
  font-size: 32px;
  font-weight: normal;
  margin: 0 0 10px 0;
}
.section-hotel .section-one-crown > img { width: 119px; }
.section-hotel .section-one-rate li.section-rate-number-big {
  color: #2488ff;
  font-size: 28px;
  font-weight: bold;
  background-color: #fff;
  border-radius: 0;
  width: auto;
  height: auto;
  margin: 0 5px;
}
.section-hotel .section-one-rate li.section-rate-txt { color: #2488ff; }
.section-hotel .hotel-box-action li {
  border-radius: 0;
  border: none;
  max-width: none;
  width: 32px;
  height: 32px;
  margin-right: 5px;
  padding: 0;
}
.section-hotel .hotel-box-action li:last-child { margin-right: 0; }
.section-hotel .section-one-rate li.section-rate-txt span { font-weight: bold; }
.section-hotel .heart-popup-wrap { border: none; }
.section-hotel-wrap .section-link-wrap { border-top: none; }
.section-hotel-info-wrap p + h3.small-ttl{
  padding-top: 15px;
}
.section-hotel-info-wrap a {
  color: #2488ff;
}
.section-hotel-info-wrap a:hover {
  text-decoration: underline;
}
.section-hotel-line {
  width: 100%;
  box-sizing: border-box;
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  text-align: left;
}
.section-hotel-info { padding: 1em; }
.section-hotel-ttl {
  font-weight: bold;
  min-width: 8em;
  margin-right: 1em;
}
.section-hotel-detail { font-weight: normal; }
.section-hotel-more { margin-bottom: 1vw; }
.section-hotel-more a { text-decoration: underline; }
.section-hotel-bold {
  font-weight: bold;
  min-width: 3em;
}
/* --------------------
3.1.4 hotel-grad ホテルチラ見せ
-------------------- */
#hotelInfomationGrad .section-grad-item { height: 100px; }
#hotelInfomationGrad .section-grad-trigger:checked ~ .section-grad-item {
  height: auto;
  padding: 0 0 5vw;
}
#hotelServiceGrad .section-grad-item { height: 120px; }
#hotelServiceGrad .section-grad-trigger:checked ~ .section-grad-item {
  height: auto;
  padding: 0 0 7vw;
}
#hotelDetailGrad .section-grad-item { height: 100px; }
#hotelDetailGrad .section-grad-trigger:checked ~ .section-grad-item {
  height: auto;
  padding: 0 0 5vw;
}
/* --------------------
3.2.1 plan プラン一覧・予約者情報
-------------------- */
.plan-box-header-inner {
  display: flex;
  align-items: center;
}
.review-box-wrap .hotel-box-wrap--flex .section-one-crown,
.hotel-box-wrap--flex .section-one-crown,
.plan-box-header-inner .section-one-crown { margin: 0 60px 0 0; }
.plan-box-header-inner .detail-link{
  margin-left: 80px;
  padding-right: 20px;
  background: url(../img/icon_arrow03.png) no-repeat right 0 top 0;
}
.plan-box-header-inner .hotel-box-action {
  margin-left: 40px;
}
.plan-search-section{
  width: 100%;
  min-width: 960px;
  margin-top: 10px;
  padding: 14px 0;
  background: #f2f2f2;
}
.plan-search-section .search-box-wrap--header{
  width: 960px;
  margin: 0 auto;
  justify-content: space-between;
  align-items: center;
}
.search-box-plan-ttl{
  margin-right: 20px;
  color: #2488ff;
  font-size: 20px;
}
.plan-search-section .section-btn-wrap-search{
  width: 150px;
  margin: 0;
}
.plan-search-section .section-btn-wrap-search .section-btn-search{
  padding: 13px 13px 13px 13px;
}
.plan-search-section .section-btn.secondary-btn.section-btn-search:before {
  margin-right: 5px;
  vertical-align: sub;
}
.plan-box-section{
  margin-bottom: 20px;
}
.plan-box-wrap-border{
  border-top: 1px solid #d7d7d7;
  border-left: 1px solid #d7d7d7;
  border-right: 1px solid #d7d7d7;
}
.plan-box-wrap-border:last-child{
  border-bottom: 1px solid #d7d7d7;
}
.plan-box-ttl{
  min-height: 19px;
  padding: 10px 10px 8px 10px;
  background: #dfecf9;
  border-bottom: 1px solid #d7d7d7;
  font-size: 16px;
  font-weight: bold;
}
.plan-box-txt{
  padding: 9px 10px 8px 10px;
  background: #f8f8f8;
  border-bottom: 1px solid #d7d7d7;
}
.plan-box-txt-mb{
  border: none;
  margin-bottom: 10px;
}
.plan-box-inner{
  display: flex;
  justify-content: space-between;
}
.plan-box-inner-left{
  width: 560px;
  padding: 9px 10px 8px 10px;
  box-sizing:border-box;
}
.plan-box-inner-head{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.plan-box-inner-head-ttl{
  font-size: 16px;
  font-weight: bold;
}
.plan-box-inner-ttl{
  font-weight: bold;
  font-size: 16px;
}
.plan-box-inner-campaign{
  color: #e95383;
  font-weight: bold;
}
.plan-box-inner-head-txt{
  flex: 1;
}
.plan-label{
  margin: 0;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.plan-label li {
  margin: 0 8px 0 0;
  padding: 0 14px 0 26px;
  background-color: #024895;
  color: #FFF;
  border-radius: 3px;
  line-height: 21px;
  font-size: 12px;
  background-image: url(../img/icon_food01_wh.png);
  background-size: 16px;
  background-position: center left 0.5vw;
  background-repeat: no-repeat;
}
.plan-label li.plan-label-disable {
  background-color: #DDD;
}
.plan-box-inner-img{
  width: 122px;
  margin-left: 20px;
  border-radius: 3px;
}
.plan-box-info-ttl{
  font-weight: bold;
}
.plan-indent{
  text-indent: -1em;
  padding-left: 1em;
}
/* .plan-readmore-txt{
  margin-bottom: 0px;
} */
.plan-readmore-txt > div{
  overflow: hidden;
  transition: all 0.5s;
  /* padding-bottom: 30px; */
}
.plan-box-conditions {
  margin: 15px 0 0;
}
.plan-box-room span{
  font-size: 12px;
  color: #888;
}
.plan-box-inner-right{
  width: 400px;
  padding: 9px 10px 8px 15px;
  border-left: 1px solid #d7d7d7;
  box-sizing:border-box;
  display: flex;
  justify-content: space-between;
}
.plan-box-price{
  width: 225px;
}
.plan-box-price-plan{
  font-size: 12px;
}
.plan-box-price-before{
  text-align: right;
  font-size: 14px;
  color: #888;
  text-decoration: line-through;
}
.plan-box-price-before span{
  font-size: 16px;
}
.plan-box-price-after {
  text-align: right;
  color: #da1e1e;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.0;
  margin: 5px 0 2px 0;
}
.plan-box-price-after span {
  font-size: 28px;
}
.plan-box-price-average{
  text-align: right;
}
.plan-box-price-days{
  text-align: right;
}
.plan-box-price-days span:before{
  display: inline-block;
  content: url(../img/icon_calender04.png);
  vertical-align: text-top;
}
.plan-box-price-days span:after{
  display: inline-block;
  content: url(../img/icon_next05.png);
  vertical-align: bottom;
  margin-left: 4px;
}
_::-webkit-full-page-media, _:future, :root .plan-box-price-days span:before{
  vertical-align: sub;
}
_::-webkit-full-page-media, _:future, :root .plan-box-price-days span:after{
  vertical-align: sub;
}
.plan-box-inner-center{
  width: 100%;
  padding: 9px 15px 8px 15px;
}
.plan-btn{
  width: 132px;
  margin: 5px 0 0 0;
}
.plan-btn-reserve{
  background: url(../img/btn_plan_reserve01_on.png) no-repeat;
}
.plan-btn-reserve input{
  transition: all 0.5s;
}
.plan-btn-reserve input:hover {
  opacity: 0;
}
.plan-btn-request{
  background: url(../img/btn_plan_request01_on.png) no-repeat;
}
.plan-btn-request input{
  transition: all 0.5s;
}
.plan-btn-request input:hover {
  opacity: 0;
}
.plan-request{
  margin-top: 10px;
  font-size: 12px;
  background: #dfecf9;
  padding: 10px;
}
.section-input .big-hotel-ttl{
  margin-bottom: 17px;
  font-size: 32px;
  font-weight: normal;
}
.input-middle-ttl{
  color: #2488ff;
  font-size: 20px;
}
.input-middle-ttl-hotel {
  font-size: 16px;
  line-height: 1.2;
  font-weight: bold;
}
.input-middle-ttl-en {
  color: #888;
}
.input-middle-txt-check {
  color: #888;
}
.input-middle-txt-check strong {
  padding: 0 20px 0 10px;
  color: #333;
  display: inline-block;
}
.input-room-box {
  padding: 12px 15px 10px 15px;
  display: flex;
}
.input-room-box-left {
  padding-right: 30px;
  white-space: nowrap;
}
.input-room-box-left p {
  font-weight: bold;
}
.input-room-box-right-inner {
  display: flex;
  align-items: center;
}
.input-room-box-right-inner p {
  line-height: 1em;
}
.input-room-box-right-discount {
  width: 5.5em;
  font-size: 16px;
  color: #da1e1e;
  font-weight: bold;
}
.input-room-box-right-price-down {
  width: 6em;
  color: #888888;
  text-decoration: line-through;
}
.input-room-box-right-tax {
  padding-right: 5px;
  font-size: 12px;
}
.input-room-box-right-price {
  padding-right: 25px;
  font-size: 20px;
  color: #da1e1e;
  font-weight: bold;
}
.booking-wrap .input-room-box-right .plan-price-calendar{
  width: auto;
}
.input-room-box-right-type-ttl{
  padding-right: 10px;
  color: #888;
}
.input-room-box-right-type-txt{
  padding-right: 20px;
  font-weight: bold;
}
.input-bottom-btn-wrapper{
  margin-top: -5px;
  display: flex;
  justify-content: space-between;
}
.input-bottom-btn-inner{
  width: 236px;
}

/* --------------------
3.3.1 review 口コミ画面
-------------------- */
.review-wrap .section-btn {
  width: 80%;
  padding: 4vw 0;
  border-radius: 8px;
  text-align: center;
  background-color: #023B95;
  color: #FFF;
  border: none;
  margin: 3vw auto 1vw;
  display: block;
  cursor: pointer;
  background-image: none;
}
.review-wrap .section-btn.negative-btn {
  background-color: #FFF;
  color: #333;
  border: 1px solid #333;
}
.review-box-wrap { padding: 0 0 16px; }
.review-box-wrap .section-one-box {
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 8px;
  margin: 0 0 24px;
  box-sizing: border-box;
  background-image: none;
}
.review-box-wrap .section-one-body {
  width: 240px;
  margin-right: 30px;
  padding: 0 0 0 0;
  background: none;
}
.review-box-wrap .section-one-rate {
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  background-color: #FFF;
  border-radius: 0;
  margin: 0 0 16px;
}
.review-box-wrap .section-one-rate li { font-size: 12px; }
.review-box-wrap .section-one-rate li:first-of-type { min-width: 2em; }
.review-box-wrap .section-one-rate li.link-txt-un:first-of-type {
  font-size: 18px;
  margin-right: 8px;
}
.review-box-wrap .section-one-rate li.link-txt-un:last-of-type {
  font-size: 14px;
  margin-right: 8px;
}
.review-box-wrap .section-one-rate li.section-one-rate-wrap { width: 9em; }
.review-box-wrap .section-one-rate li.section-one-rate-wrap .section-one-crown { width: 100%; }
.review-box-wrap .section-one-rate li.section-one-rate-wrap .section-one-crown li { padding: 0; }
.review-box-wrap .section-one-rate .section-one-crown li:first-of-type { min-width: auto; }
.review-user-rate-btns {
  width: 284px;
  flex-basis: 284px;
  align-content: center;
  margin-left: auto;
}
.review-box-header .section-one-box {
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px solid #ccc;
}
.review-user-rate {
  width: 33%;
  box-sizing: border-box;
  align-content: center;
}
.review-user-rate li {
  margin-bottom: 12px;
  box-sizing: border-box;
  text-align: center;
}
.review-user-ttl {
  color: #fff;
  font-size: 24px;
}
.review-user-rate li.review-user-number {
  color: #fff;
  font-size: 100px;
  font-weight: bold;
  line-height: 1;
  margin: 0 auto 12px;
}
.review-user-rate li.review-user-number span {
  display: block;
  font-size: 20px;
  font-weight: normal;
}
.review-box {
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 100%;
  margin-bottom: 16px;
  padding: 20px;
  box-sizing: border-box;
  box-shadow: 0px 0px 6px 0px rgba(6, 6, 6, 0.3);
  border-radius: 4px;
}
.review-list {
  width: 41.5%;
  height: 100%;
  box-sizing: border-box;
  padding: 0 12px 0 0;
}
.review-list li {
  padding: 8px 0;
}
.review-list li:last-child {
  border-bottom: none;
  padding-bottom: 2px;
}
.review-ttl {
  display: inline-block;
  color: #2488ff;
  font-weight: bold;
}
.review-list li:first-child .review-ttl {
  color: #333;
  font-weight: normal;
}
.review-txt { display: inline-block; }
.review-recommend-ttl {
  color: #2488ff;
  margin-bottom: 8px;
  font-weight: bold;
}
.review-recommend-txt span {
  display: inline-block;
  white-space: nowrap;
  margin: 0 18px 6px 0;
  margin-bottom: 6px;
}
.review-recommend-txt span:nth-of-type(3n) {
  margin-right: 0;
}
.review-recommend-txt span img {
  vertical-align: middle;
  margin-right: 10px;
}
.review-recommend-item:only-of-type:after,
.review-recommend-item:last-of-type:after {
  display: inline-block;
  width: 0;
  height: 0;
  margin: 0;
  content: "";
}
.review-paragraph-txt,
.plan-point-list-accordion {
  position: relative;
  overflow: hidden;
}
.plan-point-list-accordion {
  transition: height 0.5s;
  padding-right: 2em;
}
.plan-point-list-ttl {
  font-size: 16px;
  margin-bottom: 8px;
}
.plan-point-list-accordion_close { height: 1.3em !important; }
.plan-point-list-accordion:after {
  position: absolute;
  bottom: 0;
  right: 1em;
  display: block;
  content: "…";
  pointer-events: none;
}
.review-info-txt {
  padding: 0;
  color: #888;
  text-align: left;
  font-size: 14px;
  display: block;
  margin-top: 18px;
}
.review-user-icon img {
  width: 84px;
  vertical-align: sub;
}
.review-user-icon-txt { font-size: 16px; }
.review-user-icon-txt img {
  width: 25px;
  vertical-align: text-bottom;
}
.review-btn-bottom-txt {
  margin: 16px 0 0 0;
  text-align: center;
  font-size: 16px;
}
.review_done_wrap {
  background: #f2f2f2;
  overflow: hidden;
  padding: 60px;
  text-align: center;
}
.review-done-txt {
  margin: 0 0 50px;
  padding: 0;
  font-size: 32px;
  line-height: 1.5;
}
.review-done-txt_small { margin: 0 0 40px; }
.review_done_wrap .section-btn-wrap {
  width: 236px;
  margin: 0 auto;
}
.review_caution-txt {
  margin-bottom: 8px;
  color: red;
}
.review-paragraph {
  position: relative;
  width: 58.5%;
  box-sizing: border-box;
  padding-left: 20px;
  border-left: 1px dotted #ddd;
}
.review-paragraph-txt {
  transition: height 0.5s, margin-bottom 0.5s;
  margin-bottom: 5px;
}
.show-hidden-input02 { display: none; }
.show-hidden-btn {
  position: absolute;
  display: none;
  width: 100%;
  bottom: 0;
  text-align: center;
  padding: 25px 0 5px;
  background: #fff;
  background: linear-gradient(rgba(255,255,255,0), rgba(255,255,255,1) 50%);
  cursor: pointer;
}
#mainWrap.review .show-hidden-btn {
  padding: 20px 0 5px;
}
.show-hidden-btn:before,
.show-hidden-btn:after {
  content: '';
  border-top: 1px solid #d7d7d7;
  width: 179px;
  height: 2px;
  margin-top: 10px;
  display: inline-block;
}
#mainWrap.input .show-hidden-btn:before,
#mainWrap.input .show-hidden-btn:after {
  width: 365px;
  height: 2px;
}
.show-hidden-btn > span {
  position: relative;
  padding-right: 22px;
  color: #2488ff;
  margin: 0 12px;
}
.show-hidden-btn > span::after {
  position: absolute;
  top: 32%;
  right: 0;
  display: block;
  width: 12px;
  height: 8px;
  content: '';
  background: url(../img/icon_up03.png) no-repeat center/100% auto;
  -moz-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  transition: transform 0.5s;
}
#mainWrap.review .show-hidden-btn > span::after{
  -moz-transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
_::-webkit-full-page-media, _:future, :root #mainWrap.review .readmore-paragraph:not(.readmore-paragraph_close) .show-hidden-btn > span::after{
  right: -1px;
}
.show-hidden-btn.readmore-paragraph_close > span::after {
  -moz-transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  .readmore-paragraph_close.show-hidden-btn > span::after {
    right: 1px;
  }
}
#mainWrap.review .readmore-paragraph_close .show-hidden-btn > span::after{
  -moz-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
.show-hidden-txtbox.rvw-txtbox,
.show-hidden-txtbox.hotel-txtbox,
.show-hidden-txtbox.info-txtbox {
  position: absolute;
  top: 0;
  left: 8px;
  z-index: 10;
  width: 100%;
  height: 20px;
  cursor: pointer;
}
.show-hidden-txtbox.hotel-txtbox {
  top: 6px;
  left: auto;
  right: 4px;
}
.show-hidden-txtbox.rvw-txtbox:after,
.show-hidden-txtbox.hotel-txtbox:after,
.show-hidden-txtbox.info-txtbox:after {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 20px;
  height: 20px;
  content: "";
  background: url(../img/icon_up01.png) center/100% auto;
  pointer-events: none;
  -moz-transition-duration: 0.3s;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -moz-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
.show-hidden-txtbox.hotel-txtbox {
  height: 70px;
  right: 0;
  /* padding-top: 50px; */
  /* padding-right: 30px; */
  text-align: right;
  box-sizing: border-box;
}
.show-hidden-txtbox.hotel-txtbox::after { right: 8px; }
.show-hidden-txtbox.hotel-txtbox + .plan-point-list-accordion {
  height: 60px;
  padding-right: 0;
}
.show-hidden-input02:checked ~ .show-hidden-txtbox.rvw-txtbox:after,
.show-hidden-input02:checked ~ .show-hidden-txtbox.hotel-txtbox:after {
  -moz-transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
.show-hidden-input02:checked ~ .review-paragraph-txt:after,
.show-hidden-input02:checked ~ .plan-point-list-accordion:after { display: none; }
/*.show-hidden-input02:checked ~ .review-paragraph-txt,
.show-hidden-input02:checked ~ .plan-point-list-accordion{
  height:auto;
}*/
.review-hotel-ttl {
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 16px
}
.review-hotel-ttl_small_txt {
  display: block;
  margin-top: 4px;
  font-size: 16px;
  font-weight: normal;
}
.review-notes {
  text-align: center;
  margin-bottom: 100px;
}
.review_terms {
  line-height: 1.3;
  width: 640px;
}
.review_terms__txt { margin-bottom: 1em; }
.review_terms__list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.review_terms__list--number {
  padding-left: 1em;
}
.review_terms__item {
  margin-bottom: 1em;
  padding: 0 0 0 1em;
  text-indent: -1em;
}
.review_terms__item a {
  text-decoration: none;
  color: #0000EE;
}
.review_terms__item a:hover {
  text-decoration: underline;
}
.review_terms__item--number {
  position: relative;
  margin-bottom: 1em;
  padding-left: 1.6em;
  counter-increment: review_terms_num;
  text-indent: 0;
}
.review_terms__item--number:last-of-type {
  margin-bottom: 1em;
}
.review_terms__item:before {
  content: "■";
}
.review_terms__item--number:before {
  position: absolute;
  left: 0;
  width: 1em;
  content: counter(review_terms_num)".";
}
/* --------------------
3.4.1 popular 人気の都市
-------------------- */
.popular-city-box {
  position: relative;
  width: 300px;
  margin: 0 0 32px 0;
  text-align: center;
}
.popular-city-box img { width: 100%; }
.popular-city-box .body-small-txt {
  position: absolute;
  bottom: 16px;
  left: 16px;
  z-index: 1;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
}
/* --------------------
4.1.1 book 予約導線全体設定
-------------------- */
.booking-wrap .big-ttl { border-bottom: 1px solid #ddd; }
.help-modal-btn,
.shareholder-btn,
.plan-modal-btn,
.crown-modal-btn,
.review-modal-btn {
  width: 18px;
  display: inline-block;
  margin: 0 5px;
  border-radius: 40px;
  line-height: 1;
  vertical-align: middle;
  cursor: pointer;
}
.help-modal-btn img,
.shareholder-btn img,
.plan-modal-btn img,
.crown-modal-btn img,
.review-modal-btn img { width: 100%; }
.help-icon .help_icon_img { width: 24px; }
.section-box-note .help-modal-btn {
  width: 20px;/* opacity: .5; */
}
.section-box-inner--short { margin-bottom: 28px; }
/* --------------------
4.1.2 input 予約情報入力
-------------------- */
.position-relative { position: relative; }
.help-popup-box {
  display: none;
  position: absolute;
  bottom: calc(100% + 12px);
  left: 0;
  z-index: 10;
  padding: 0;
  width: auto;
  max-width: 640px;
  box-sizing: border-box;
}
.help-popup-box:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 20%;
  margin-left: -8px;
  border: 8px solid transparent;
  border-top: 8px solid rgba(0, 0, 0, 0.8);
}
.help-popup-box__inner {
  border-radius: 12px;
  position: relative;
  display: inline-block;
  background-color: rgba(0, 0, 0, 0.8);
  color: #FFF;
  box-sizing: border-box;
  padding: 12px;
}
.help-popup-box__ttl {
  font-size: 16px;
  font-weight: bold;
  margin: 0 0 4px 0;
}
.help-popup-box__txt { margin: 0; }
.help-popup-box__link {
  color: #fff;
  text-decoration: underline;
  font-weight: bold;
}
.help-popup-box__close {
  position: absolute;
  top: -11px;
  right: -3px;
  width: 24px;
  height: 24px;
  box-sizing: border-box;
  border-radius: 50%;
  background-color: #f00;
  z-index: 500;
  cursor: pointer;
}
.help-popup-box__close img {
  width: 100%;
  pointer-events: none;
}
.help-popup-box .link-txt {
  color: #fff;
  font-weight: bold;
}
.tool-popup-box {
  position: absolute;
  display: none;
  width: 250px;
  background: #fff;
  padding: 10px 12px;
  box-shadow: 0 0 5px 2px rgba(0,0,0,0.3);
  z-index: 40;
  top: 45px;
  border-radius: 5px;
  left: 20px;
  font-size: 12px;
}
.tool-popup-box.tool-popup-box-gray {
  background: #f2f2f2;
}
.tool-crown-box { left: 20px; }
.tool-review-box {
  left: 367px;
}
.tool-popup-box:before,.tool-popup-box:after {
  content: '';
  position: absolute;
  display: block;
  z-index: 20;
  border: solid transparent;
  border-width: 15px;
  transform: translate(-15px, 0);
  border-bottom-color: #fff;
}
.tool-popup-box:before{
  top: -30px;
  border-bottom-color: #d7d7d7;
}
.tool-popup-box:after {
  top: -29px;
}
.tool-popup-box.tool-popup-box-gray:before,.tool-popup-box.tool-popup-box-gray:after {
  border-bottom-color: #f2f2f2;
}
.tool-popup-box-ttl { font-weight: bold; }
.tool-popup-box-txt {
  font-size: 12px;
}
.tool-popup-box-txt-indent {
  font-size: 12px;
  text-indent: -1em;
  padding-left: 1em;
}
.tool-popup-box-txt-indent-red {
  font-size: 12px;
  text-indent: -1em;
  padding-left: 1em;
  color: #f00;
}
.tool-popup-box-close {
  text-align: center;
  width: 100%;
  display: block;
  margin-top: 10px;
  color: #5494ed;
  cursor: pointer;
}
.tool-popup-box-close img {
  width: 100%;
  pointer-events: none;
}
.tool-popup-box.tool-crown-box:before,
.tool-popup-box.tool-crown-box:after { left: 115px; }
.tool-popup-box.tool-review-box:before,
.tool-popup-box.tool-review-box:after { left: 193px; }
#modalOptionWrap.tool-popup-box{
  width: 300px;
  top: inherit;
  bottom: 225px;
  left: 158px;
}
#modalOptionWrap.tool-popup-box:before,#modalOptionWrap.tool-popup-box:after {
  top: inherit;
  bottom: -30px;
  left: 145px;
  border-bottom-color: #fff;
  transform: rotateX(180deg);
}
#modalSecuritycodeWrap.tool-popup-box:before,#modalSecuritycodeWrap.tool-popup-box:after {
  top: inherit;
  bottom: -30px;
  left: 125px;
  border-bottom-color: #fff;
  transform: rotateX(180deg);
}
#modalOptionWrap.tool-popup-box:before,#modalSecuritycodeWrap.tool-popup-box:before{
  top: inherit;
  bottom: -30px;
  border-bottom-color: #d7d7d7;
}
#modalOptionWrap.tool-popup-box:after,#modalSecuritycodeWrap.tool-popup-box:after {
  top: inherit;
  bottom: -29px;
}
#modalSecuritycodeWrap.tool-popup-box{
  top: inherit;
  bottom: 85px;
  left: 120px;
  width: 500px;
}
#mainWrap.input .input-box input.input-caution{
  border: 1px solid red;
}
/* --------------------
4.1.3 preview 予約情報確認
-------------------- */
.agree-box-txt {
  font-size: 12px;
  padding: 1vw 2vw;
  line-height: 1.5;
}
.agree-box-txt a { text-decoration: underline; }
.preview-last-inner { margin-bottom: 0; }
.preview-last-inner .section-box-txt { margin-bottom: 16px; }
.preview-last-inner .section-box-txt a {
  width: auto;
}
.preview-last-inner .section-box-txt a:hover {
  text-decoration: underline;
}
.preview-last-inner .search-box-line { padding: 1vw 0 0; }
.booking-wrap .preview-last-inner .section-btn { margin: 0; }
.review-input-wrap .preview-last-inner .section-box-txt,
.preview-input-wrap .preview-last-inner .section-box-txt {
  padding: 0;
  text-align: center;
}
.preview-input-wrap .preview-last-inner .section-box-txt-bottom {
  padding: 1vw 0 0 0;
  text-align: center;
}
.preview-last-inner-ttl{
  text-align: center;
  font-size: 20px;
  margin-bottom: 20px;
}
.preview-last-inner-btn{
  margin: 0 0 20px 360px;
}
.review-input-wrap .input-box {
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  margin-bottom: 16px;
}
.review-input-wrap .input-box label {
  width: auto;
  font-size: 12px;
}
.review-input-wrap .input-box input[type="checkbox"] {
  width: auto;
  width: 20px;
  height: 20px;
  padding: 0;
  border: 1px solid #DDD;
  border-radius: 3px;
  margin: 0 8px 0 0;
  line-height: 1;
  cursor: pointer;
}
.review-input-wrap .preview-last-inner .section-box-txt a { text-decoration: none; }
.review-input-wrap .preview-last-inner .section-box-txt a:hover { text-decoration: underline; }
.review-input-wrap .help-modal-btn { width: auto; }
/* --------------------
4.1.4 complete 予約完了
-------------------- */
.complete-box-info{
  width: 100%;
  padding: 40px 0 35px 0;
  background: #eff7fd;
}
.complete-box-info h2,.complete-box-info p{
  text-align: center;
}
.complete-ttl{
  font-size: 24px;
  line-height: 1.5;
}
.complete-txt-mail{
  font-size: 20px;
  color: #004098;
}
.complete-txt-mail span{
  padding-left: 32px;
  background: url(../img/icon_mail01_blue.png) no-repeat top 4px left 0;
  display: inline-block;
}
.complete-list-confirmation{
  padding-left: 320px;
  font-size: 20px;
  color: #004098;
}
.complete-txt-caution{
  color: #ff0000;
  font-size: 16px;
}
.complete-box-attention{
  width: 640px;
  margin: 0 auto;
  padding: 30px 0;
}
.complete-ttl-middle{
  font-size: 24px;
  text-align: center;
}
.complete-ttl-attention{
  color: #ff0000;
}
.complete-box-tel{
  padding: 15px 0;
  border: 5px solid #f2f2f2;
}
.complete-box-tel p{
  text-align: center;
}
.complete-ttl-tel{
  font-size: 20px;
  line-height: 2.0;
  text-align: center;
}
.complete-txt-tel{
  color: #2488ff;
  font-weight: bold;
  font-size: 24px;
}
.complete-txt-tel span{
  padding: 2px 0  0 32px;
  background: url(../img/icon_tel01.png) no-repeat top 4px left 0;
}
.complete-indent{
  text-indent: -1em;
  padding-left: 1em;
}
.complete-box-document{
  padding: 30px 0 40px 0;
  background: #f8f8f8;
}
.complete-box-document p{
  text-align: center;
}
/* --------------------
4.2.1 book-plan 予約プラン
-------------------- */
.select-plan-section {
  border: none;
  border-radius: 0;
  padding: 0;
  margin-bottom: 0;
}
.select-plan-section .section-box-inner {
  width: 100%;
  margin: 0 0 0;
}
.select-plan-section .section-link-wrap {
  margin: 0;
  padding: 0;
}
.select-plan-section.input-plan-section .section-link-wrap {
  margin: 0 0 12px;
  padding: 0;
  border-top: 0;
}
.select-plan-section.input-plan-section .section-link-wrap.section-link-wrap-bottom {
  padding: 0;
  border-bottom: none;
}
.select-plan-section .section-box-inner.select-plan-wrap {
  width: 94%;
  margin: 2vw 0 0;
  border-radius: 10px;
  overflow: hidden;
}
.select-plan-box {
  background-color: #FFF;
  border: 1px solid #DDD;
  border-bottom: none;
  padding: 12px;
}
.select-plan-box:last-of-type { border-bottom: 1px solid #CCC; }
.select-plan-header {
  background-color: #333;
  color: #FFF;
  padding: 10px 20px;
  font-weight: bold;
  margin: 0;
}
.select-plan-line {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.select-plan-more {
  margin-top: 4px;
  width: 100%;
}
.select-plan-area {
  box-sizing: border-box;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  text-align: left;
}
.select-plan-section .section-box-inner.select-plan-wrap .select-plan-line {
  width: 100%;
  margin: 3%;
  padding: 1vw 1vw;
}
.select-plan-line .section-btn.inner-btn {
  font-size: 12px;
  margin: 1vw 0 0;
}
.select-plan-detail {
  font-weight: bold;
  text-align: right;
  margin-left: auto;
}
.booking-wrap .select-plan-detail { margin-left: 0; }
.booking-wrap .select-plan-detail:not(:last-of-type) { margin-right: 1em; }
.select-plan-detail .price-box-price { font-weight: bold; }
#modalAlertWrap,#modalLoginWrap{
  z-index: 10;
}
#modalAlertWrap .input-check-wrap{
  vertical-align: middle;
}
#mainWrap.input input[type="text"]:focus,#mainWrap.review_input input[type="text"]:focus {
  box-shadow: 0 0 0 1px #2488ff;
}
#mainWrap.input select:focus,#mainWrap.review_input select:focus {
  outline: 0;
  box-shadow: 0 0 0 1px #2488ff;
}
/* --------------------
4.2.2 book-price 予約料金表示
-------------------- */
.price-box {
  position: absolute;
  top: 16px;
  right: calc(50% - 480px);
  z-index: 10;
  width: 300px;
  padding: 16px 12px;
  font-size: 12px;
  margin: 0;
  box-sizing: border-box;
  background-color: #D2DAE8;
}
.price-box-line {
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.price-box-txt {
  font-size: 12px;
  text-align: right;
}
.price-box-txt .discountprice {
  margin: 4px 0 15px;
}
#mainWrap.input .price-box-txt .discountprice,#mainWrap.preview .price-box-txt .discountprice{
  margin-bottom: 3px;
  line-height: 1.3;
}
.shareholder-price{
  margin-bottom: 12px;
  font-size: 16px;
}
.shareholder-price span{
  padding-left: 10px;
}
.price-box-txt .price-discountrate {
  color: #da1e1e;
  font-size: 16px;
  font-weight: bold;
}
.price-box-txt .plan-price {
  color: #888;
  font-size: 14px;
  text-decoration: line-through;
  margin-left: 10px;
}
.price-box-txt .price-box-note {
  display: block;
}
#mainWrap.input .price-box-txt .price-box-note {
  margin-top: 3px;
}
.price-box-note {
  font-size: 12px;
  color: #333;
}
.booking_notes {
  margin-bottom: 15px;
  font-size: 12px;
  font-weight: bold;
  color: #f00;
}
.checkInLate_notes {
  margin-top: 2px;
  padding-left: 28px;
  font-size: 12px;
}
#mainWrap.preview .checkInLate_notes {
  margin-top: 4px;
  padding-left: 0;
}
.price-box-notice {
  padding: 2vw 0;
  text-align: center;
}
.price-box-wrap {
  width: auto;
  position: absolute;
  top: 16px;
  right: calc(50% - 480px);
  z-index: 4;
}
.price-box-float{
  width: 300px;
  background-color: #FFF;
  border-radius: 4px;
  box-shadow: 0px 0px 6px 0px rgba(6, 6, 6, 0.3);
}
.price-box-wrap .price-line {
  padding: 15px 20px;
  background-color: #fff5d7;
  font-size: 12px;
  margin: 0;
}
.price-line-strong{
  font-size: 16px;
}
.price-box-inner {
  width: 100%;
  margin: 0;
  box-sizing: border-box;
  padding: 0;
}
.price-box-inner .section-link-wrap { border-top: none; }
.price-box-inner .section-link-wrap .section-box-link a {
  display: block;
  padding: 8px 20px 8px 8px;
  color: #333;
  font-weight: bold;
  border-bottom: 1px solid #DDD;
}
.price-box-inner .section-link-wrap .section-box-link a.privacy-modal-btn-caution { font-weight: normal; }
.price-box-inner .section-link-wrap .section-box-link a:hover { cursor: pointer; }
.price-box-inner .section-link-wrap:last-of-type .section-box-link a { border-bottom: 0; }
.search-box-line--shareholder {
  margin: -16px 0 8px 0;
  height: 51px;
  display: flex;
  flex-flow: column;
  justify-content: center;
}
.preview-box__inner {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 30px;
  padding: 0 14px;
}
#mainWrap.input .preview-box__inner,#mainWrap.preview .preview-box__inner {
  padding: 0;
}
#mainWrap.preview .guestroom .preview-box__inner {
  padding-left: 14px;
}
.preview-box__inner--underline:not(:last-of-type) {
  padding-bottom: 16px;
  border-bottom: 1px solid #DDD;
}
.preview-box__item {
  display: inline-flex;
}
.guestroom .preview-box__inner { margin-bottom: 20px; }
.guestroom .preview-box__item {
  display: inline-flex;
  flex-flow: column;
}
.preview-box__ttl {
  display: inline-block;
  color: #888;
  font-size: 14px;
  width: 146px;
  vertical-align: baseline;
  /*padding-right: 30px;*/
}
.preview-box__input {
  display: inline-block;
  color: #333;
  font-size: 16px;
  /*padding-right: 30px;*/
}
.preview-box__input span { margin-left: 15px; }
.preview-box__input input {
  display: inline;
  width: auto;
  padding: 0;
  border: none;
  background: none;
  color: #000;
  font-size: 16px;
  font-weight: bold;
}
.preview-shareholder-wrap{
  display: flex;
  justify-content: space-between;
}
.preview-shareholder-wrap p{
  font-size: 16px;
  padding: 5px 0;
}
.preview-shareholder-wrap p:nth-child(1){
  width: 340px;
}
.preview-shareholder-wrap p:nth-child(2){
  width: 200px;
}
.preview-shareholder-wrap p:nth-child(3){
  width: 150px;
  text-align: right;
}
.privacy-modal-btn--underline {
  color: #0080ff;
  cursor: pointer;
}
.guestroom {
  background-color: #eff7fd;
}
.guestroom .section-box-inner {
  padding: 0 14px;
  border-bottom: 2px solid #fff;
}
.guestroom .small-ttl {
  color: #2488ff;
  font-size: 16px;
  font-weight: normal;
  padding: 14px;
  border-bottom: 2px solid #fff;
}
.guestroom .small-ttl span {
  color: #333;
  margin-left: 15px;
}
.guestroom p.small-ttl {
  border-bottom: none;
  padding: 20px 14px 15px 14px;
}
.guestroom:not(:last-of-type) { margin-bottom: 20px; }
.preferred_ticket_amount {
  text-align: right;
  margin-top: 10px;
  padding: 14px 0;
  border-top: 1px solid #d7d7d7;
  font-size: 16px;
}
.preferred_ticket_amount span {
  padding-left: 30px;
  display: inline-block;
  color: #da1e1e;
  font-weight: bold;
}
.service-txt{
  font-size: 16px;
}
.use_service .price-small-txt,.notuse_service .price-small-txt {
  font-weight: normal;
  margin-left: 10px;
}
.use_service .price-small-txt:after {
  content: '';
  display: inline-block;
  background: url(../img/iconUse.png) no-repeat 0 0;
  background-size: 56px;
  width: 56px;
  height: 18px;
  margin-left: 15px;
  vertical-align: middle;
}
.notuse_service label,
.notuse_service label .price-small-txt { color: #888; }
.notuse_service label .small-txt-note { color: #333; }
.notuse_service .price-small-txt:after {
  content: '';
  display: inline-block;
  background: url(../img/iconNotuse.png) no-repeat 0 0;
  background-size: 56px;
  width: 56px;
  height: 18px;
  margin-left: 15px;
  vertical-align: middle;
}
/* --------------------
5.1.1 modal モーダル全体設定
-------------------- */
.modal {
  display: none;
  z-index: 1000000;
  position: fixed;
  top: 0;
  left: 0;
}
.modal-overlay {
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.7);
  position: fixed;
  top: 0;
  left: 0;
}
.modal-overlay-bg {
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0);
  position: absolute;
  top: 0;
  left: 0;
  cursor: pointer;
}
.modal-overlay-gray { background: rgba(0, 0, 0, 0.6); }
.modal-window {
  position: absolute;
  top: 50%;
  left: 50%;
  -moz-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  max-width: 960px;
  margin: 0 auto;
  background: #fff;
}
.modal-window.modal-window-hotel {
  background: none;
}
.modal-close-sheet {
  width: 100vw;
  height: 100vh;
}
#calendarModal {
  position: absolute;
  top: auto;
  left: auto;
  right: 450px;
}
#mainWrap.index #calendarModal {
  position: absolute;
  top: auto;
  left: 0;
  right: inherit;
}
.result #calendarModal { right: 428px; }
#ah-calendarModal {
  position: absolute;
  top: auto;
  left: 0;
}
.plan #calendarModal { right: auto; }
#peopleModal {
  position: absolute;
  top: auto;
  left: -230px;
}
.index-search-people #peopleModal {
  left: 0;
}
#ah-peopleModal {
  position: absolute;
  top: auto;
  left: -234px;
}
#peopleModal .modal-window,
#ah-peopleModal .modal-window {
  position: static;
  -moz-transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
  border: 1px solid #e2e2e2;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.1);
  margin-top: 8px;
  border-radius: 5px;
}
#peopleModal .modal-window:before,
#ah-peopleModal .modal-window:before {
  display: block;
  position: absolute;
  top: -20px;
  right: 75px;
  width: 0;
  height: 0;
  border: 10px solid transparent;
  border-bottom: 10px solid #e2e2e2;
  content: "";
}
#peopleModal .modal-window:after,
#ah-peopleModal .modal-window:after {
  display: block;
  position: absolute;
  top: -19px;
  right: 75px;
  width: 0;
  height: 0;
  border: 10px solid transparent;
  border-bottom: 10px solid #fff;
  content: "";
}
#mainWrap.plan #peopleModal .modal-window:before,
#mainWrap.plan #peopleModal .modal-window:after {
  right: 145px;
  left: auto;
}
.index-search-people #peopleModal .modal-window:before,#peopleModal .modal-window:after{
  right: inherit;
  left: 80px;
}
#peopleModal .modal-window.modal-window-result:after{
  left: initial;
}
.result #peopleModal .modal-window:before,
.result #peopleModal .modal-window:after {
  right: inherit;
  left: 330px;
}
#ah-peopleModal .modal-window:before,
#ah-peopleModal .modal-window:after { right: 450px; }
#peopleModal .modal-content {
  width: 520px;
  max-height: 520px;
  padding: 50px 20px 10px 20px;
  z-index: 10;
}
#ahModal #ah-peopleModal .modal-content {
  width: 824px;
  max-height: 320px;
}
#ahModal #ah-peopleModal .modal-content { overflow-y: auto; }
#peopleModal .modal-close-btn,
#ah-peopleModal .modal-close-btn {
  position: absolute;
  top: 14px;
  right: 32px;
  z-index: 1;
  background: none;
  border: none;
  width: 18px;
  height: 18px;
  padding: 0;
}
#peopleModal .modal-close-btn img,
#ah-peopleModal .modal-close-btn img {
  display: block;
  width: 100%;
}
#peopleModal .middle-ttl,
#ah-peopleModal .middle-ttl {
  margin-top: 24px;
  font-size: 16px;
  margin-bottom: 4px;
  padding: 4px 0 0 20px;
}
#peopleModal .middle-ttl:before,
#ah-peopleModal .middle-ttl:before {
  height: 30px;
  top: 0;
  bottom: auto;
}
#peopleModal .modal-content .section-box-wrap,
#ah-peopleModal .modal-content .section-box-wrap { background-color: transparent; }
#ah-peopleModal .number-count-input input {
  box-sizing: border-box;
  text-align: center;
  font-size: 18px;
}
#hotelPicModal .modal-window.modal-window--full {
  max-width: none;
  width: 100%;
  background: transparent;
}
.modal-content {
  max-height: 55vh;
  overflow-y: auto;
  box-sizing: border-box;
}
.modal-content.privacy-box { height: 70vh; }
.modal-window-privacy{
  width: 780px;
}
#ahModal .modal-content {
  width: 960px;
  overflow: visible;
}
.modal-content-auto { height: auto; }
.modal-content-left {
  height: 55vw;
  padding-right: 20px;
}
.modal-footer {
  background: #ccc;
  padding: 10px;
  text-align: right;
}
.modal-enter-active,
.modal-leave-active { transition: opacity 0.2s; }
.modal-enter-active.modal-window,
.modal-leave-active.modal-window { transition: opacity 0.8s, transform 0.2s; }
.modal-leave-active { transition: opacity 0.1s ease 0.1s; }
.modal-enter, .modal-leave-to { opacity: 0; }
.modal-enter.modal-window, .modal-leave-to.modal-window {
  opacity: 0;
  transform: translateY(-20px);
}
.modal-window-line,
.modal-window-line-nofocus {
  width: 100%;
  padding: 4vw 2vw;
  border-top: 1px solid #EEE;
  box-sizing: border-box;
}
.modal-window-line:last-of-type,
.modal-window-line-nofocus:last-of-type { border-bottom: 1px solid #EEE; }
.modal-window-line.modal-line-focus {
  background-color: #f3f4f6;
  background-image: url(../img/icon_check01_blue.png);
  background-size: 22px;
  background-position: center right 3vw;
  background-repeat: no-repeat;
  padding-right: 4vw;
}
.modal-content .section-box-wrap {
  width: 100%;
  text-align: left;
  margin-bottom: 8px;
  /* overflow: hidden; */
  box-sizing: border-box;
  background-color: #FFF;
  border: none;
  border-radius: 0;
}
.heading-ttl {
  margin-top: 0;
  margin-bottom: 0;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  font-size: 20px;
  line-height: 1.1;
  color: #023B95;
  font-weight: bold;
}
#ahModal .heading-ttl { margin-bottom: 40px; }
.heading-ttl-bottom {
  min-width: 17vw;
  max-width: 30vw;
  margin: 2vw 0 1vw auto;
  background-color: #333;
  border-radius: 30px;
  text-align: center;
  justify-content: center;
  font-size: 20px;
  color: #FFF;
}
.booking-wrap .heading-ttl-bottom {
  padding: 0vw;
  margin: 0 4vw 3vw auto;
  min-width: auto;
  max-width: 36vw;
  background-color: #333;
}
.booking-wrap .heading-ttl-bottom a {
  color: #FFF;
  padding: 1vw 6vw 2vw 3vw;
  display: block;
  width: 100%;
  text-align: center;
  box-sizing: border-box;
  background-image: url(https://www.his-j.com/kix/jcom/img/icon/icon_next.png);
  background-size: 12px;
  background-position: center right 4vw;
  background-repeat: no-repeat;
}
.booking-alert-box {
  margin-bottom: 20px;
  padding: 15px 0 14px 0;
  padding-left: 50px;
  border: 1px solid red;
  background-image: url(../img/icon_alert02_red.png);
  background-size: 22px;
  background-position: center left 15px;
  background-repeat: no-repeat;
  color: red;
  font-size: 16px;
}
.modal-content .section-box-wrap:last-of-type { margin-bottom: 1vw; }
/*
.modal-window .section-btn-line {
  width: 100%;
  padding: 2vw;
  flex-wrap: nowrap;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  box-sizing: border-box;
  position: fixed;
  bottom:0;
  left: 0;
}
.modal-window .section-btn-line .section-btn-left {
  width: 30%;
  padding-right: 0.5em;
}
.modal-window .section-btn-line .section-btn-right {
  width: 70%;
  padding-left: 0.5em;
}*/
.result-wrap .modal-window .section-btn {
  width: 100%;
  padding: 4vw 1vw;
  border-radius: 8px;
  text-align: center;
  background-color: #023B95;
  color: #FFF;
  border: none;
  margin: 0;
  display: block;
  cursor: pointer;
  box-sizing: border-box;
}
/*
.result-wrap .modal-window .section-btn-line .section-btn-left .section-btn {
  background-color: #FFF;
  border: 1px solid #023B95;
  color: #023B95;
}*/
.booking-wrap .plan-price-calendar {
  width: 25px;
  display: inline-block;
  margin: 0 0 0 0;
  border-radius: 40px;
  line-height: 1;
  vertical-align: top;
}
.booking-wrap .plan-price-calendar img { width: 100%; }
.modal.modal-overlay .section-box-txt { padding: 8px 0; }
.modal-content.hotel-pic-contents {
  position: absolute;
  top: 50%;
  left: 50%;
  -moz-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  padding: 0;
  width: 100%;
  max-height: none;
  pointer-events: none;
  overflow: hidden;
}
.plan-ttl {
  padding: 8px 8px 8px;
  margin-bottom: 0;
}
.hotel-pic-btn {
  width: 24px;
  display: inline-block;
  margin: 0;
  border-radius: 40px;
  line-height: 1;
  vertical-align: middle;
}
.hotel-pic-btn img { width: 100%; }
/* --------------------
5.1.2 share 共有モーダル
-------------------- */
.share-link-wrap .modal-window-line-nofocus {
  /* background-image: url(../img/icon_sms01_blk.png); */
  background-size: 34px;
  background-position: center left;
  background-repeat: no-repeat;
  padding-left: 11vw;
}
.share-link { background-image: url(../img/icon_link01_blk.png); }
.share-mail { background-image: url(../img/baseline-mail_outline-24px.png); }
.share-line { background-image: url(../img/icon_line01_blk.png); }
.share-sms { background-image: url(../img/icon_sms01_blk.png); }
/* .share-messe { background-image: url(../img/icon_messe01_blk.png); }
 */
.share-tw { background-image: url(../img/icon_twitter01_blk.png); }
.share-fb { background-image: url(../img/icon_facebook01_logo.png); }
.share-mg { background-image: url(../img/icon_messenger01_blk.png); }
/* --------------------
5.1.3 hotel-pic ホテル写真モーダル
-------------------- */
#hotelSlideModal{
  z-index: 1000000;
}
#hotelSlideModal .modal-overlay{
  background: rgba(0, 0, 0, 0.9);
}
.slick-initialized .slick-slide{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.hotel-modal-slide-inner{
  width: 100%;
  height: 420px;
  display: flex;
  align-items: center;
  background: #000;
}
.hotel-modal-slide .slick-counter {
  bottom: -10px
}
.hotel-modal-slide button:active,
.hotel-modal-slide button:focus{
  position: absolute;
}
.slick-track-fixed{
transform:translate3d(0, 0, 0)!important;
}
/* --------------------
5.1.4 price 料金モーダル
-------------------- */
.price-modal-heading{
  width: 550px;
  display: flex;
  padding: 12px 35px;
  box-sizing: border-box;
}
.price-modal-heading .heading-ttl{
  margin-right: 40px;
  font-size: 20px;
  font-weight: normal;
  color: #2488ff;
}
.price-modal-heading .section-box-txt{
  font-size: 12px;
}
.price-modal-content{
  width: 550px;
}
.price-modal-ttl{
  margin-bottom: 2px;
  padding: 14px 45px;
  background: #f2f2f2;
  box-shadow: 0 2px 5px -2px rgba(0,0,0,0.3);
}
.price-modal-list{
  display: flex;
  padding: 11px 45px;
  border-bottom: 1px solid #bfbfbf;
  flex-wrap: wrap;
}
.price-modal-list:last-child{
  border-bottom: none;
}
.price-modal-list p:nth-child(1){
  width: 160px;
}
.price-modal-list p:nth-child(2){
  width: 100px;
  text-align: right;
}
.price-modal-list p:nth-child(3){
  width: 120px;
  text-align: right;
}
.price-modal-list p:nth-child(4){
  width: 55px;
  text-align: right;
}
.price-modal-list-surcharge{
  width: 380px;
  margin: 5px 0 0 -10px;
  padding: 3px 10px;
  background: #fff5d7;
}
.price-modal-list-surcharge ul{
  display: flex;
  justify-content: space-between;
}
.price-modal-list-surcharge ul li{
  padding: 4px 0;
}
.price-modal-list-surcharge ul li:last-child{
  font-weight: bold
}
.price-modal-through{
  color: #888;
  text-decoration: line-through;
}
.price-modal-main{
  font-weight: bold;
}
.price-modal-change{
  font-weight: bold;
  color: #da1e1e;
}
.price-modal-main-off{
  font-weight: bold;
  color: #888888;
}

/* --------------------
5.2.1 alert-modal アラートモーダル設定
-------------------- */
.modal-section ol li,ol.list_parentheses02 li{
  list-style: decimal;
  margin-left: 1.5em;
  margin-bottom: 14px;
}
.modal-section .underline {
  text-decoration: underline;
}
.alert-modal-wrap .modal.modal-overlay {
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  position: fixed;
  z-index: 50;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.modal-inner.alert-window {
  width: 780px;
  padding: 50px 40px;
  max-width: 960px;
  max-height: 60vh;
  overflow: auto;
}
.modal-privacy-agree{
  padding: 25px 25px 40px 25px;
  background: #f2f2f2;
}
/* Edge */
@supports (-ms-ime-align: auto) {
	.modal-privacy-agree-bottom-wrap{
    margin-bottom: 50px;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active) {
	.modal-privacy-agree-bottom-wrap{
    margin-bottom: 50px;
  }
}
/* firefox */
@-moz-document url-prefix() {
	.modal-privacy-agree-bottom-wrap{
    margin-bottom: 50px;
  }
}
.modal-privacy-agree-bottom{
  padding: 25px 0;
}
.modal-privacy-input{
  width: 100%;
  text-align: center;
  font-weight: bold;
}
.modal-privacy-input input{
  vertical-align: bottom;
  margin-right: 8px;
  display: inline-block;
}
.modal-privacy-policy-ttl{
  padding: 11px 25px 9px 25px;
  font-size: 16px;
  font-weight: bold;
  border-top: 1px solid #d7d7d7;
  border-bottom: 1px solid #d7d7d7;
}
.privacy-policy-txt{
  padding: 11px 25px 25px 25px;
}
.alert-box-ttl {
  margin-bottom: 15px;
  font-size: 32px;
  line-height: 1.1;
  display: block;
  text-align: center;
}
.alert-box-list liactive { border-bottom: 4px solid #023B95; }
.alert-box-txt {
  margin-bottom: 25px;
}
.alert-box-txt strong {
  font-weight: bold;
  color: #f00;
}
.privacy-box-ttl {
  padding: 32px 20px 25px 20px;
  font-size: 20px;
  color: #2488ff;
}
.privacy-box-list {
  border-bottom: 1px solid #888;
  font-size: 14px;
  padding: 0 20px;
  box-sizing: border-box;
}
.privacy-box-list ul {
  width: 100%;
  display: table;
  margin-bottom: 5px;
}
.privacy-box-list ul li {
  width: 20%;
  padding: 6px 0;
  border-right: 3px #fff solid;
  border-left: 3px #fff solid;
  cursor: pointer;
  text-align: center;
  border-radius: 4px;
  display: table-cell;
  vertical-align: middle;
  background: #f2f2f2;
}
.privacy-box-list ul li span{
  display: inline-block;
  width: 100%;
}
.privacy-box-list ul li.active {
  border-left: 1px solid #888;
  border-top: 1px solid #888;
  border-right: 1px solid #888;
  border-bottom: 1px solid #888;
  background: #fff;
  position: relative;
}
.privacy-box-list ul li.active:before{
  /*width: 146px;*/
  width: 100%;
  position: absolute;
  content: "";
  border-left: 1px solid #888;
  border-right: 1px solid #888;
  background: #fff;
  left: -1px;
  bottom: -7px;
  height: 10px;
}
.privacy-box-list ul li.active:after{
  /*width: 146px;*/
  width: 100%;
  position: absolute;
  content: "";
  background: #fff;
  left: 0px;
  bottom: -10px;
  height: 10px;
}
.privacy-box-txt {
  padding: 30px;
}
#modalPrivacyWrap .privacy-box-txt { display: none; }
#modalPrivacyWrap .privacy-box-txt.privacy-box-txt_active { display: block; }
.privacy-box-txt a{
  color: #0080ff;
}
.privacy-box-txt a:hover{
  text-decoration: underline;
}
.privacy-policy-modal .alert-box-ttl {
  font-size: 20px;
  text-align: center;
}
.privacy-policy-modal .search-box-input { font-size: 18px; }
.privacy-policy-modal .search-box-line {
  text-align: center;
  border: 1px solid #000;
  padding: 16px 0;
  border-width: 1px 0 1px 0;
}
.privacy-policy-modal .link-txt {
  color: #f00;
  text-decoration: none;
  font-weight: bold;
}
/*
.privacy-policy-modal .search-box-input { display: inline-block; }
.privacy-policy-checkbox {
  position: relative;
  display: block;
  font-size: 18px;
  margin-bottom: 12px;
}
.privacy-policy-checkbox:before {
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 20px;
  margin-right: 0.5em;
  content: "";
  border: 1px solid #000;
  cursor: pointer;
}
.privacy-policy-checkbox:after {
  position: absolute;
  top: 50%;
  left: 10px;
  -moz-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  display: inline-block;
  vertical-align: middle;
  font-size: 20px;
  content: "+";
  pointer-events: none;
}
#privacy-policy-input:checked ~ .privacy-policy-checkbox:after {
  position: absolute;
  top: 50%;
  left: 0.6em;
  -moz-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  display: inline-block;
  vertical-align: middle;
  font-size: 18px;
  content: "-";
}
.privacy-policy-txt { display: none; }
#privacy-policy-input:checked ~ .privacy-policy-txt { display: block; }
*/
#privacy-policy-input { display: none; }
.privacy-policy-list > li { margin-bottom: 10px; }
.privacy-policy-ttl {
  margin-bottom: 15px;
  font-size: 16px;
  font-weight: bold;
}
.privacy-policy-section { margin-bottom: 30px; }
.privacy-policy-section > p,
.privacy-policy-textsection > p { margin-bottom: 10px; }
.privacy-policy-section > p.privacy-policy-heading01 {
  font-weight: bold;
  font-size: 16px;
  margin-top: 30px;
}
.privacy-policy-section > p.privacy-policy-heading02 {
  font-weight: bold;
  margin: 10px 0;
}
.privacy-policy-date { margin-top: 20px; }
.privacy-policy-name {
  margin-top: 20px;
  text-align: right;
}
.privacy-policy-caution { color: red; }
.privacy-policy-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
}
.privacy-policy-table th {
  padding: 10px;
  background: #EEE;
  border: 1px solid #BBB;
}
.privacy-policy-table td {
  padding: 10px;
  border: 1px solid #BBB;
}
.privacy-policy-table_right { text-align: right; }
.privacy-policy-textsection { margin-top: 30px; }
#updateModal .update-window{
  width: 560px;
  padding: 35px 25px;
  box-sizing: border-box;
}
.update-box-ttl{
  margin-bottom: 30px;
  color: #2488ff;
  font-size: 20px;
  text-align: center;
}
.modal-popup-update-list{
  margin-bottom: 40px;
  padding-bottom: 5px;
  border-bottom: 1px solid #888;
  display: flex;
  align-items: flex-end;
}
.modal-popup-update-txt{
  width: 48%;
  box-sizing: border-box;
  padding-left: 20px;
  font-size: 16px;
}
.modal-popup-update-center{
  width: 4%;
  color: #888;
  padding-bottom: 5px;
}
.modal-popup-update-txt-inner{
  color: #888;
}
.modal-popup-update-price{
  padding-left: 20px;
  display: inline-block;
  color: #da1e1e;
  font-weight: bold;
}
.modal-popup-update-btn{
  display: flex;
  justify-content: space-between;
}
.modal-popup-update-btn li{
  width: 48%;
}
/* --------------------
5.2.1 alert-modal 予約導線モーダル設定
-------------------- */
#modalLoginWrap {
  text-align: center;
  display: none;
}
#modalLoginWrap .alert-box-ttl {
  margin-bottom: 40px;
  font-size: 20px;
}
#modalLoginWrap .modal-content {
  width: 500px;
  padding: 45px 80px 50px 80px;
  max-height: inherit;
}
.modal-login-box p{
  margin-top: 5px;
}
.modal-login-box-bottom{
  padding: 20px 20px 5px 20px;
  background: #f2f2f2;
}
/* --------------------
5.3.1 popup ポップアップ設定
-------------------- */
.popup-box, .popup-box-bottom {
  width: 100%;
  margin: 0 auto;
  padding: 8px 24px 8px 8px;
  box-sizing: border-box;
  background-color: #D2DAE8;
  border-radius: 12px;
  position: relative;
  display: inline-block;
}
.popup-box:before {
  content: "";
  position: absolute;
  top: -16px;
  right: 20%;
  margin-left: -8px;
  border: 8px solid transparent;
  border-bottom: 8px solid #D2DAE8;
}
.popup-box-bottom:before {
  top: 100%;
  border-top: 8px solid #D2DAE8;
  border-bottom: none;
}
.popup-box-ttl {
  font-weight: bold;
  margin-bottom: 8px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  line-height: 1.4;
}
#noticePopupBox .popup-box-ttl {
  text-align: center;
  margin-bottom: 4px;
}
.popup-box-txt {
  font-weight: normal;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  line-height: 1.2;
}
.popup-box-link {
  display: block;
  margin-bottom: 4px;
  color: #fff;
  text-decoration: underline;
  padding-right: 16px;
  background: url(../img/icon_next03.png) no-repeat center right/16px;
}
.popup-box-list {
  width: 100%;
  padding: 15px 0;
  flex-wrap: nowrap;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  box-sizing: border-box;
}
.popup-box-list li {
  width: 50%;
  margin: 0 1%;
  box-sizing: border-box;
}
.popup-box-list li a {
  width: 100%;
  display: block;
  padding: 10px 0;
  border: 1px solid #FFF;
  color: #FFF;
  text-align: center;
  box-sizing: border-box;
  padding-right: 20px;
  border-radius: 20px;
  font-size: 12px;
  background-image: url(https://www.his-j.com/kix/sp/img/icon/icon_next01_wh.png);
  background-size: 18px;
  background-position: center right 6px;
  background-repeat: no-repeat;
}
.popup-box-close {
  position: absolute;
  top: -11px;
  right: -3px;
  width: 24px;
  height: 24px;
  box-sizing: border-box;
  border-radius: 50%;
  background-color: #f00;
  /* border: 2px solid #023B95; */
  z-index: 500;
  cursor: pointer;
}
.popup-box-close.popup-box-close-head {
  top: 0;
  right: 0;
  -moz-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.popup-box-close.popup-box-close-red {
  background-color: red;
  border: 2px solid red;
}
.popup-box-close.popup-box-close-white {
  background-color: #fff;
  border: 2px solid #000;
}
.popup-box-close img { width: 100%; }
.popup-box-close.popup-box-close-head.ah-modal-close {
  background: none;
  border-radius: 0;
  width: auto;
  height: 52px;
  color: #fff;
  display: block;
  align-items: normal;
  padding: 0;
  line-height: 52px;
  top: -72px;
  right: -72px;
  -moz-transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}
.popup-box-close.popup-box-close-head.ah-modal-close img {
  width: 52px;
  margin-bottom: 0;
}
.air-hotel-line span { width: 180px;}
_::-webkit-full-page-media, _:future, :root .air-hotel-line .section-btn-search:before {
	vertical-align: sub;
}
/*
.help-modal-wrap .popup-box-close {
	position: absolute;
	top: 10px;
	right: 10px;
	width: 25px;
	height: 25px;
	box-sizing: border-box;
	background-color: #FFF;
	border: 2px solid #D2DAE8;
	border-radius: 50%;
}*/
.popup-box-use {
  display: none;
  width: auto;
  padding: 16px;
  position: absolute;
  right: 50px;
  top: 50%;
  -moz-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  border: #d2dae8 2px solid;
  border-radius: 5px;
  font-size: 12px;
}
.popup-box-use:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -27px;
  margin-right: -8px;
  border: 5px solid transparent;
  border-right: 20px solid #d2dae8;
  -moz-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.popup-box-use:after {
  content: "";
  position: absolute;
  top: 50%;
  left: -21px;
  margin-right: -8px;
  border: 5px solid transparent;
  border-right: 20px solid #fff;
  -moz-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.popup-box-retry {
  text-align: center;
  padding: 8px 12px;
  position: absolute;
  background: #004098;
  line-height: 1.5;
  left: -12px;
  top: 5px;
  -moz-transform: translate(-100%, 0);
  -webkit-transform: translate(-100%, 0);
  transform: translate(-100%, 0);
  /* border: #d2dae8 2px solid; */
  border-radius: 5px;
  font-size: 12px;
  display: none;
  color: #fff;
  animation: Flash1 2s infinite;
}
@keyframes Flash1{
  50%{
    opacity: 0;
  }
}
.popup-box-retry:before {
  content: "";
  position: absolute;
  top: 25px;
  right: -16px;
  margin-left: -8px;
  border: 8px solid transparent;
  border-left: 10px solid #004098;
  -moz-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.popup-box-retry:after {
  content: "";
  position: absolute;
  top: 30%;
  right: -21px;
  margin-left: -8px;
  border: 5px solid transparent;
  border-left: 20px solid #fff;
  -moz-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
/* --------------------
5.3.2 noticePopup 下からポップアップ
-------------------- */
.notice-popup-box {
  position: fixed;
  right: 50%;
  bottom: 20px;
  -moz-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(480px, 0);
  z-index: 10;
  padding: 0;
  cursor: pointer;
  width: auto;
  max-width: 400px;
  box-sizing: border-box;
}
/* #noticePopupBox { display: none; }
 */
#noticePopupBoxRemove { display: none; }
.notice-popup-box .popup-box,
.notice-popup-box .popup-box-bottom {
  background-color: rgba(0, 0, 0, 0.8);
  color: #FFF;
  box-sizing: border-box;
  padding: 12px;
}
.notice-popup-box .popup-box:before { border-bottom: 8px solid rgba(0, 0, 0, 0.8); }
.notice-popup-box .popup-box-bottom:before {
  border-top: 8px solid rgba(0, 0, 0, 0.8);
  border-bottom: none;
}
.notice-popup-box .popup-box-close { border: none; }
/* --------------------
5.4.1 heart お気に入りハート
-------------------- */
.heart-box-wrap { display: none; }
.heart-box-wrap a {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
  position: fixed;
  right: 0;
  bottom: 6vw;
  z-index: 30;
  padding: 1vw 2vw;
  box-sizing: border-box;
}
.heart-box-notice {
  width: 70%;
  margin: 0 20px 0 auto;
  padding: 8px;
  box-sizing: border-box;
  border-radius: 5px;
  position: relative;
  display: inline-block;
  /* filter: drop-shadow(0px 1px 4px rgba(0,0,0,0.5)); */
  background-color: rgba(0, 0, 0, 0.8);
  color: #FFF;
}
.heart-box-notice:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  margin-top: -5px;
  border: 5px solid transparent;
  border-left: 5px solid rgba(0, 0, 0, 0.8);
}
.heart-box-btn {
  max-width: 40px;
  border: 1px solid #FFF;
  background-color: #FFF;
  border-radius: 50px;
  padding: 2px;
  text-align: center;
  line-height: 1;
  vertical-align: middle;
  filter: drop-shadow(0px 1px 4px rgba(0,0,0,0.5));
  position: relative;
}
.heart-box-btn img { width: 100%; }
.heart-box-number {
  position: absolute;
  top: 4px;
  right: 6px;
  padding: 2px;
  z-index: 31;
  width: 15px;
  height: 15px;
  text-align: center;
  background-color: #db4a50;
  color: #FFF;
  border-radius: 50px;
}
/* --------------------
5.4.2 heart お気に入りリスト
-------------------- */
.favorite-box-close {
  width: 8vw;
  margin-right: 2vw;
  line-height: 9;
  text-align: center;
}
.favorite-box-close img {
  width: 90%;
  min-width: 1.5em;
}
.result-box.favorite-box .section-one-image {
  width: 70px;
  height: auto;
}
.favorite-header { padding: 1vw 2vw 1vw 2vw; }
.result-box.favorite-box .section-one-box {
  padding: 0 1vw 2vw 2vw;
  margin: 0 0;
  background: none;
  box-sizing: border-box;
}
.result-box.favorite-box .section-one-body {
  width: 80%;
  margin: 0;
  padding: 0 1vw 0 2vw;
  background: none;
  box-sizing: border-box;
}
.result-box.favorite-box .section-one-rate {
  background-color: transparent;
  margin: 0.5vw 0;
}
.result-box.favorite-box .section-one-rate li {
  margin: 0 0 0;
  padding: 0;
  font-size: 12px;
}
.result-box.favorite-box .section-one-rate li.section-rate-number {
  background-color: #333;
  padding: 0.5vw 1.5vw;
  color: #FFF;
  border-radius: 3px;
  background-image: none;
  margin: 0 1vw 0 0;
  text-align: center;
}
.result-box.favorite-box .section-one-price {
  width: 100%;
  margin: 0 0;
  padding: 0 0 1vw;
  text-align: left;
  border-top: none;
  border-bottom: 1px solid #EEE;
  box-sizing: border-box;
}
.favorite-rate {
  width: 95%;
  margin-bottom: 1vw;
  padding-bottom: 1vw;
  border-bottom: 1px solid #DDD;
}
.favorite-rate li {
  margin-bottom: 1vw;
  line-height: 1;
}
.favorite-rate:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.result-box.favorite-box .section-one-price span { text-align: right; }
.favorite-rate-price { text-align: right; }
.favorite-box-description{
  background: #e9f3ff;
  padding: 60px 80px 80px 80px;
}
.favorite-box-description h3{
  font-size: 24px;
  margin: 0 0 30px 0;
}
.favorite-box-description p{
  font-size: 16px;
}
.favorite-box-description h3:before{
  content: '';
  width: 26px;
  height: 28px;
  padding-right: 10px;
  display: inline-block;
  vertical-align: middle;
  background: url(../img/icon_heart04_red.png) no-repeat;
  background-size: 26px;
}
/* --------------------
5.5.1 calendar カレンダー設定
-------------------- */
.calendar-input {
  text-align: center;
  padding-top: 16px;
  display: none;
}
.checkIn .calendar-input--checkin,
.checkOut .calendar-input--checkout { display: none; }
.calendar-input .calendar-input-txt {
  font-weight: bold;
  font-size: 18px;
  color: #000;
}
.calendar-input.empty .calendar-input-date,
.calendar-input.select .calendar-input-date { color: #a6a6a6; }
/* .calendar-header{
  position: relative;
  padding: 20px;
  background-color:#fff;
}
.calendar-header__ttl{
  line-height:1;
  text-align:center;
  font-size:20px;
  font-weight:bold;
}
.calendar-header__close{
  position: absolute;
  top: 8px;
  right: 8px;
  display:inline-block;
}
.calendar-header__close img { width: 28px; }
*/
#calendarModal .modal-window{
  transform: translate(0, 0);
  border: 1px solid #e2e2e2;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.1);
  margin-top: 8px;
  border-radius: 5px;
}
#calendarModal .modal-window:before{
  display: block;
  position: absolute;
  top: -20px;
  right: 75px;
  width: 0;
  height: 0;
  border: 10px solid transparent;
  border-bottom: 10px solid #e2e2e2;
  content: "";
}
#calendarModal .modal-window:after{
  display: block;
  position: absolute;
  top: -19px;
  right: 75px;
  width: 0;
  height: 0;
  border: 10px solid transparent;
  border-bottom: 10px solid #fff;
  content: "";
}
#calendarModal .modal-window.checkIn:before,
#calendarModal .modal-window.checkIn:after { right: 353px; }
#calendarModal .modal-window.checkOut:before,
#calendarModal .modal-window.checkOut:after { right: 240px; }
#mainWrap.index #calendarModal .modal-window.checkIn:before,
#mainWrap.index #calendarModal .modal-window.checkIn:after { right: 498px; }
#mainWrap.index #calendarModal .modal-window.checkOut:before,
#mainWrap.index #calendarModal .modal-window.checkOut:after { right: 303px; }
#mainWrap.plan #calendarModal .modal-window.checkIn:before,
#mainWrap.plan #calendarModal .modal-window.checkIn:after { right: 545px; }
#mainWrap.plan #calendarModal .modal-window.checkOut:before,
#mainWrap.plan #calendarModal .modal-window.checkOut:after { right: 450px; }
#calendarModal .header-wrap,
#calendarModal .header-modal-box{
  background: none;
  display: block;
}
#calendarModal .flatpickr-input[readonly]{ cursor: auto; }
#calendarModal .modal-close-btn{
  display: none;
}
#calendarModal .modal-content{
  max-height: none;
  padding-top: 0;
}
.modal-content-calendar .calendar-wrapper .flatpickr-calendar {
  border-radius: 0;
  border: 0;
  box-shadow: none;
}
.modal-content-calendar .calendar-wrapper .flatpickr-months .flatpickr-month { height: 40px; }
.modal-content-calendar .calendar-wrapper .numInputWrapper {
  width: auto;
  background-color: transparent;
  font-size: 14px;
}
.modal-content-calendar .calendar-wrapper .flatpickr-months .flatpickr-prev-month,
.modal-content-calendar .calendar-wrapper .flatpickr-months .flatpickr-next-month {
  height: 20px;
  line-height: 1;
  width: auto;
}
.modal-content-calendar .calendar-wrapper .flatpickr-months .flatpickr-prev-month {
  padding-left: 0px;
  left: 18px;
}
.modal-content-calendar .calendar-wrapper .flatpickr-months .flatpickr-next-month {
  padding-right: 0px;
  right: 18px;
}
.modal-content-calendar .calendar-wrapper .flatpickr-prev-month:after,
.modal-content-calendar .calendar-wrapper .flatpickr-next-month:after {
  display: block;
  width: 20px;
  height: 20px;
  background: url(../img/icon_up01_blue.png) no-repeat center/100% auto;
  content: "";
}
.modal-content-calendar .calendar-wrapper .flatpickr-prev-month:after {
  -moz-transform: rotate(-90deg);
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
.modal-content-calendar .calendar-wrapper .flatpickr-next-month:after {
  -moz-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
.modal-content-calendar .calendar-wrapper .flatpickr-day.selected.startRange,
 .modal-content-calendar .calendar-wrapper .flatpickr-day.startRange.startRange,
 .modal-content-calendar .calendar-wrapper .flatpickr-day.endRange.startRange,
.modal-content-calendar .calendar-wrapper .flatpickr-day.selected.endRange,
 .modal-content-calendar .calendar-wrapper .flatpickr-day.startRange.endRange,
 .modal-content-calendar .calendar-wrapper .flatpickr-day.endRange.endRange {
  background-color: #023b95;
  border: none;
}
.modal-content-calendar .calendar-wrapper .flatpickr-day.selected.endRange:hover:after { display: none; }
 .modal-content-calendar .calendar-wrapper .flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)),
.modal-content-calendar .calendar-wrapper .flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)),
.modal-content-calendar .calendar-wrapper .flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) {
 -webkit-box-shadow: none;
 box-shadow: none;
}
.modal-content-calendar .calendar-wrapper .flatpickr-day.inRange,
.modal-content-calendar .calendar-wrapper .flatpickr-day.inRange.is-holiday,
 .calendar-wrapper .flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1) {
  color: #fff;
}
.modal-content-calendar .dayContainer{
  margin-top: 2px;
  padding: 0 11px 0 20px;
  display: inline-block;
}
.modal-content-calendar .flatpickr-day,.modal-content-calendar .dayContainer .flatpickr-day.disabled,.modal-content-calendar .flatpickr-day.disabled:hover{
  background: #fff;
  margin: -1px -1px 0 0;
  border: 1px solid #888;
  border-radius: 0;
  max-width: inherit;
}
.modal-content-calendar .rangeMode .flatpickr-day{
  margin-top: -1px;
}
.modal-content-calendar .span.flatpickr-weekday{
  font-weight: normal;
}
.modal-content-calendar .dayContainer .flatpickr-day.disabled:nth-child(7n),.modal-content-calendar .dayContainer .flatpickr-day.disabled:nth-child(7n+1){
  color: rgba(57,57,57,0.1);
}
.modal-content-calendar .flatpickr-day.selected.startRange,.modal-content-calendar .flatpickr-day.startRange.startRange, .flatpickr-day.endRange.startRange{
  border-radius: 0;
  height: 38px;
}
.modal-content-calendar .flatpickr-day.selected.endRange,.modal-content-calendar .flatpickr-day.startRange.endRange,.modal-content-calendar .flatpickr-day.endRange.endRange{
  border-radius: 0;
  height: 38px;
}
.flatpickr-day.inRange, .flatpickr-day.prevMonthDay.inRange, .flatpickr-day.nextMonthDay.inRange, .flatpickr-day.today.inRange, .flatpickr-day.prevMonthDay.today.inRange, .flatpickr-day.nextMonthDay.today.inRange, .flatpickr-day:hover, .flatpickr-day.prevMonthDay:hover, .flatpickr-day.nextMonthDay:hover, .flatpickr-day:focus, .flatpickr-day.prevMonthDay:focus, .flatpickr-day.nextMonthDay:focus{
  background-color: #2488ff;
}
.modal-content-calendar .flatpickr-day.inRange,.modal-content-calendar .flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){
  box-shadow: none;
  background-color: #2488ff;
  border: 1px solid #2488ff;
}
.modal-content-calendar .flatpickr-weekdays .flatpickr-weekdaycontainer{
  padding: 0 20px;
}
/* --------------------
5.5.3 flatpickr カスタム設定
-------------------- */
.modal-content-calendar .calendar-wrapper {
  width: 100%;
  height: 320px;
  padding-top: 13px;
}
.flatpickr-calendar {
  width: 100%;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.flatpickr-months, .flatpickr-weekdays { display: none; }
.modal-content-calendar .calendar-wrapper .flatpickr-current-month {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  white-space: nowrap;
}
.modal-content-calendar .flatpickr-current-month input.cur-year[disabled]{
  color: #000;
}
.modal-content-calendar .calendar-wrapper .cur-year {
  order: 1;
  pointer-events: none;
  width: 3em;
  padding-left: 0;
  text-align: right;
  font-size: 14px;
}
.modal-content-calendar .calendar-wrapper .arrowUp,
.modal-content-calendar .calendar-wrapper .arrowDown { display: none; }
.modal-content-calendar .calendar-wrapper .cur-month {
  width: 4.5em;
  order: 1;
  margin-left: 0;
  text-align: left;
  background-color: transparent !important;
  font-weight: normal;
}
.modal-content-calendar .calendar-wrapper .cur-month{
  font-size: 14px;
  line-height: 1.5;
}
.modal-content-calendar .calendar-wrapper .cur-month:before {
  content: "年"
}
.flatpickr-rContainer { width: 100%; }
.flatpickr-innerContainer { padding-bottom: 0; }
.dayContainer {
  width: 100%;
  min-width: 100%;
  max-width: 100%;
}
.flatpickr-yearmonth-box {
  width: 100%;
  padding: 0;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
}
.flatpickr-year-txt:after { content: "年"; }
.flatpickr-month-txt:after { content: "月"; }
.flatpickr-days {
  width: 40%;
  display: block;
}
.flatpickr-day { max-width: none; }
.dayContainer:after { display: none; }
.dayContainer .flatpickr-day:nth-child(7n+1) { color: #ff0000; }
.dayContainer .flatpickr-day:nth-child(7n) { color: #1bb8f1; }
.modal-content-calendar .calendar-wrapper .flatpickr-day.selected,
.modal-content-calendar .calendar-wrapper .flatpickr-day.startRange,
.modal-content-calendar .calendar-wrapper .flatpickr-day.endRange,
.modal-content-calendar .calendar-wrapper .flatpickr-day.selected.inRange,
.modal-content-calendar .calendar-wrapper .flatpickr-day.startRange.inRange,
.modal-content-calendar .calendar-wrapper .flatpickr-day.endRange.inRange,
.modal-content-calendar .calendar-wrapper .flatpickr-day.selected:focus,
.modal-content-calendar .calendar-wrapper .flatpickr-day.startRange:focus,
.modal-content-calendar .calendar-wrapper .flatpickr-day.endRange:focus,
.modal-content-calendar .calendar-wrapper .flatpickr-day.selected:hover,
.modal-content-calendar .calendar-wrapper .flatpickr-day.startRange:hover,
.modal-content-calendar .calendar-wrapper .flatpickr-day.endRange:hover,
.modal-content-calendar .calendar-wrapper .flatpickr-day.selected.prevMonthDay,
.modal-content-calendar .calendar-wrapper .flatpickr-day.startRange.prevMonthDay,
.modal-content-calendar .calendar-wrapper .flatpickr-day.endRange.prevMonthDay,
.modal-content-calendar .calendar-wrapper .flatpickr-day.selected.nextMonthDay,
.modal-content-calendar .calendar-wrapper .flatpickr-day.startRange.nextMonthDay,
.modal-content-calendar .calendar-wrapper .flatpickr-day.endRange.nextMonthDay,
.modal-content-calendar .calendar-wrapper .flatpickr-day.selected.is-holiday,
.modal-content-calendar .calendar-wrapper .flatpickr-day.startRange.is-holiday,
.modal-content-calendar .calendar-wrapper .flatpickr-day.endRange.is-holiday,
.modal-content-calendar .calendar-wrapper .dayContainer .flatpickr-day.selected:nth-child(7n+1),
.modal-content-calendar .calendar-wrapper .dayContainer .flatpickr-day.selected:nth-child(7n) {
  background: #02429a;
  color: #fff;
  border-color: #02429a;
}
 .flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)),
 .flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)),
 .flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) {
 -webkit-box-shadow: none;
 box-shadow: none;
}
.flatpickr-day.inRange {
  border-radius: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
}
/* --------------------
5.6.1 map 地図設定
-------------------- */
.map-item-wrap {
  display: flex;
  flex-wrap: nowrap;
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
}
.map-item-box { padding-right: 2vw; }
.map-item-box:last-child { padding-right: 0; }
/* --------------------
5.7.1 refine 絞り込み設定
-------------------- */
.range-box {
  margin: 0 6vw 6vw 6vw;
  padding: 2vw 0;
  background: #c6d9f1;
  text-align: center;
}
.renge-graph {
  padding: 0 6vw;
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-end;
  justify-content: space-around;
}
.renge-graph div {
  width: 4%;
  border-top: 1px solid #D9D9D9;
  border-left: 1px solid #D9D9D9;
  border-right: 1px solid #D9D9D9;
  background: #c6d9f1;
}
.range-slider { padding: 0 6vw 3vw 6vw; }
.noUi-horizontal { height: 4px; }
.noUi-connect { background: #608dc3; }
.noUi-horizontal .noUi-handle {
  width: 24px;
  height: 24px;
  top: -12px;
  border-radius: 12px;
}
html:not([dir=rtl]) .noUi-horizontal .noUi-handle { right: -12px; }
.noUi-handle:after, .noUi-handle:before { display: none; }
.noUi-handle:after, .noUi-handle:after { display: none; }
.noUi-marker-horizontal { display: none; }
.noUi-value-horizontal { display: none; }
.range-minmax {
  padding: 0 6vw;
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-end;
  justify-content: space-around;
}
.range-minmax span {
  width: 50%;
  display: block;
}
.range-minmax span:last-child { text-align: right; }
/* --------------------
5.8.1 error エラーページ
-------------------- */
.error-section {
  background-color: #fbe9e4;
  margin: 8px 0 40px;
  padding: 60px;
  text-align: center;
}
.error-ttl {
  font-size: 32px;
  line-height: 1.25;
  text-align: center;
  margin-bottom: 60px;
}
.error-ttl img { width: 24px; }
.error-ttl:before {
  content: '';
  display: inline-block;
  background: url(../img/icon_alert02_red.png) no-repeat left center;
  width: 29px;
  height: 26px;
  margin-right: 10px;
}
.error-txt {
  margin-bottom: 25px;
  font-size: 20px;
}
.error-num {
  margin-bottom: 60px;
  color: #ff0000;
  font-size: 20px;
  font-weight: bold;
}
.error-btn {
  width: 336px;
  margin: 0 auto;
}
.error-banner-list {
  display: flex;
  justify-content: space-between;
}
.error-banner-list li { margin-right: 16px; }
.error-banner-list li:last-child { margin-right: 0; }
.error-banner-list li img { width: 100%; }
/* --------------------
5.9.1 loading ローディング
-------------------- */
#loaderFrame {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
/*      background: rgba(0, 0, 0, 0.5) url(./img/loading.gif) no-repeat center 40% /20%;*/
  background: rgba(0, 0, 0, 0.5) ;
}
#loaderFrame .loader-wrap{
  width: 100%;
  top: 30vh;
  position: fixed;
}
#loaderFrame p {
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  padding-top: 20px;
  color: #fff;
  font-size: 14px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  text-shadow: 0 0 2px #666;
  position: absolute;
}
._modal-backdrop.modal-backdrop-loader {
  opacity: .5;
}
#loader,
#loader:after {
border-radius: 50%;
width: 5em;
height: 5em;
}
#loader {
  margin: 30px auto;
  /* font-size: 1px; */
  /* position: relative; */
  /* top: 40%; */
  text-indent: -9999em;
  border-top: 9px solid rgba(255,255,255, 0.2);
  border-right: 9px solid rgba(255,255,255, 0.2);
  border-bottom: 9px solid rgba(255,255,255, 0.2);
  border-left: 9px solid #ffffff;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: load8 1.1s infinite linear;
  animation: load8 1.1s infinite linear;
}
@-webkit-keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
  }
  @keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
/* --------------------
6.1.1 header ヘッダー全体設定
-------------------- */
/*
.header-wrap {
  background-color: #023B95;
  color: #000;
}
*/
.header-wrap-box {
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 960px;
  height: 50px;
  margin: 0 auto;
}
.header-logo { display: block; }
.header-wrap-box .header-logo img {
  display: block;
  width: 100%;
  max-width: 75px;
}
.header-modal-box .header-logo img {
  width: 100%;
  max-width: 75px;
  margin: 2vw;
}
/* --------------------
6.1.2 bread-list パンくず設定
-------------------- */
#breadcrumb {
	width: 960px;
	margin: 0 auto;
	padding: 8px 0;
	position:relative;
}
#breadcrumb a {
	color:#003F98;
}
#breadcrumb a:hover {
	text-decoration:none;
}
#socialBox {
	position:absolute;
	top:6px;
	right:0;
}
#breadcrumb li {
	display: inline-block;
	position: relative;
	margin-right: 10px;
}
#breadcrumb a:after {
	content: '';
	display: block;
	position: absolute;
	width: 6px;
	height: 6px;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 6px;
	right: -8px;
}
.bread-menu-box {
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}
.bread-menu {
  width: auto;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 2vw 2vw;
  background-color: #EEE;
  -webkit-overflow-scrolling: touch;
  white-space: nowrap;
}
.bread-menu li {
  margin: 1vw 0;
  display: inline-block;
  font-size: 14px;
}
.bread-menu li:after { content: " > "; }
.bread-menu li:last-of-type::after { content: ""; }
.bread-menu li a {
  color: #333;
  text-decoration: underline;
  padding: 0 1vw 0 1vw;
}
/* --------------------
6.1.3 header-modal ヘッダーモーダル設定
-------------------- */
/*
.header-modal-box {
  background-color: #023B95;
  color: #FFF;
  height: 50px;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
}
*/
.modal-inner{
  width: 900px;
  padding: 50px 50px 0 50px;
  box-sizing: border-box;
}
.modal-inner-hotel{
  width: 820px;
  padding: 0 70px;
}
.header-modal-box button {
  color: #FFF;
  background-color: transparent;
  border: none;
}
.header-modal-ttl{
  margin-bottom: 20px;
  font-size: 32px;
}
.header-modal-ttl-center{
  margin-bottom: 20px;
  font-size: 32px;
  text-align: center;
}
.header-modal-left {
  width: 75px;
  margin-right: auto;
  text-align: center;
}
.header-modal-center {
  font-weight: bold;
  text-align: center;
}
.header-modal-right {
  width: 75px;
  margin-left: auto;
  text-align: center;
}
/* --------------------
6.1.4 header-step 予約導線ヘッダー設定
-------------------- */
.step-list-box{
  width: 960px;
  margin: 0 auto;
}
.step-list-box img{
  width: 100%;
}
/* --------------------
7.1.1 footer フッター全体設定
-------------------- */
p.footer-pagetop-line {
  background: #D2DAE8;
  text-align: center;
}
p.footer-pagetop-line a {
  display: block;
  color: #333;
  padding: 5vw 1vw 2.5vw;
  box-sizing: border-box;
  background-image: url(../img/icon_up01_blk.png);
  background-size: 12px;
  background-position: center top 1.5vw;
  background-repeat: no-repeat;
}
.footer-wrap {
  width: 960px;
  margin: 0 auto;
}
#footer.booking .footer-wrap {
  width: 960px;
  margin: 0 auto;
  padding-bottom: 30px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.footer-menu-list {
  display: flex;
  flex-wrap: wrap;
  padding: 3vw;
}
.footer-menu-list li {
  /* width: calc(100%/2); */
  box-sizing: border-box;
  margin: 1vw 0;
  padding: 1vw 2vw;
  text-align: center;/* border-right: 1px solid #999; */
}
.footer-menu-list li:nth-of-type(even) { border-right: none; }
.footer-menu-list li:last-of-type { border-right: none; }
.footer-menu-list li a {
  color: #333;
  text-decoration: underline;
}
.privacyArea {
  width: 74px;
  overflow: hidden;
  zoom: 1;
}
.privacyArea #privacyImg {
  margin: 4px 0 0;
  background-position: 0px -380px;
}
#copyRightArea {
  margin: 20px 0 0;
  text-align: right;
}
#copyRightArea #copyRight { background-position: -268px -98px; }
.sprtCmmn{
  background-image: url(https://www.his-j.com/cmn/headfoot/images/sprite_commonNEW2019.png);
  background-repeat: no-repeat;
}
/* --------------------
7.1.2 user-support ユーザーサポートエリア設定
-------------------- */
.user-surpport-bg{
  width: 100%;
    min-width: 960px;
  padding: 55px 0;
  background: #e9f3ff;
}
.user-surpport-wrapper{
  width: 960px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
.user-surpport-inner{
  padding: 35px 20px 20px 20px;
  border-radius: 5px;
  box-shadow: 0 0 5px 5px rgba(0,0,0,0.1);
  box-sizing: border-box;
}
.user-surpport-inner-oversea{
  width: 600px;
}
.user-surpport-inner-dome{
  width: 340px;
}
.user-surpport-inner{
  padding: 35px 25px 20px 25px;
  border-radius: 5px;
  box-shadow: 0 0 3px 3px rgba(0,0,0,0.1);
  box-sizing: border-box;
  background: #fff;
}
.user-surpport-ttl{
  width: 100%;
  margin-bottom: 25px;
  text-align: center;
  font-size: 28px;
}
.user-support-ttl-sub,.small-ttl-foot{
  margin-bottom: 10px;
  padding-left: 45px;
  background-repeat: no-repeat;
  background-position: 0 calc(50% - 2px);
  font-size: 16px;
  color: #004098;
  font-weight: bold;
  line-height: 1.4;
}
.user-surpport-box-wrapper{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.user-surpport-box{
  width: 48%;
}
.user-support-image{
  display: none;
}
.user-support-ttl-store,.small-ttl-foot{
  background-image: url(../img/icon_support01.png);
}
.user-support-ttl-trouble{
  background-image: url(../img/icon_support02.png);
}
.user-support-ttl-dome{
  background-image: url(../img/icon_support03.png);
}
.user-support-txt,.user-support-body p{
  margin-bottom: 10px;
  color: #888;
}
.user-support-txt .note-indent{
  display: block;
  text-indent: -1em;
  padding-left: 1em;
}
.user-support-link,.section-btn-wrap-footer{
  padding-right: 28px;
  text-align: right;
  background-image: url(../img/icon_newwindow04.png);
  background-repeat: no-repeat;
  background-position: top 3px right 5px;
}
.user-support-body a,.section-btn-wrap-footer a{
  color: #004098;
}
.section-btn-wrap-footer a.section-btn{
  width: inherit;
  padding: 0;
  text-align: inherit;
  display: inline;
  font-size: 14px;
  line-height: 1.6;
}
.user-support-body a:hover,.section-btn-wrap-footer a:hover{
  text-decoration: underline;
}
.user-surpport-wrapper-1col{
  width: 815px;
  margin: 0 auto;
}
.user-surpport-wrapper-1col .user-surpport-inner{
  width: 100%;
}
.user-surpport-top{
  padding: 70px 0 100px 0;
}
.user-surpport-top-list{
  display: flex;
  justify-content: space-between;
}
.user-surpport-top-list li{
  width: 31.5%;
}
.user-support-mail-box{
  text-align: center;
}
.user-support-mail-btn{
  width: 336px;
  margin: 0 auto;
}

.user-other-wrapper{
  width: 960px;
  margin: 0 auto;
  padding: 55px 0 40px 0;
}
.user-other-list{
  padding-bottom: 40px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.user-other-list li{
  width: 49%;
  margin-bottom: 20px;
}
.user-other-list li a{
  background-position: 10px center;
  background-repeat: no-repeat;
  border: 1px solid #d7d7d7;
  border-radius: 5px;
  padding: 14px 10px 12px 75px;
  display: block;
  transition: 0.5s all;
}
.user-other-list li.user-other-list-air a{
  background-image: url(../img/icon_other01.png);
}
.user-other-list li.user-other-list-op a{
  background-image: url(../img/icon_other02.png);
}
.user-other-list li.user-other-list-car a{
  background-image: url(../img/icon_other03.png);
}
.user-other-list li.user-other-list-insurance a{
  background-image: url(../img/icon_other04.png);
}
.user-other-list li.user-other-list-mail a{
  background-image: url(../img/icon_other05.png);
}
.user-other-list li a:hover{
  background-color: #f2f2f2;
}
.user-other-list-ttl{
  font-size: 16px;
  font-weight: bold;
}
.user-other-list-txt{
  font-size: 12px;
  color: #888;
}

.search-box-input .result-input.modal-open-btn {
  position: relative;
  cursor: pointer;
}
.modal-select {
  display: none;
  z-index: 40;
  position: absolute;
  top: 100%;
  border: 1px solid #CCC;
  box-sizing: border-box;
  transform: translate(0, 10px);
  box-shadow: 0 0 5px 2px rgba(0, 0, 0, 0.2);
  cursor: auto;
  background: #fff;
}
.modal-select::before, .modal-select::after {
  content: '';
  position: absolute;
  display: block;
  top: -30px;
  left: 50%;
  z-index: 20;
  border: solid transparent;
  border-bottom: solid;
}
#refineModal.modal-select::before, #refineModal.modal-select::after {
  left: 100px;
}
.modal-select::before {
  top: -24px;
  border-width: 12px;
  border-bottom-color: #ccc;
  transform: translate(-14px, 0);
}
.modal-select::after {
  top: -24px;
  border-width: 12px;
  border-bottom-color: #fff;
  transform: translate(-14px, 0);
}
.modal-select-content {
  padding: 16px;
}
.modal-select-window .negative-btn.section-btn {
  background-color: #FFF;
  border: 1px solid #023B95;
  color: #023B95;
}

.modal-select .modal-window-line,
.modal-select .modal-window-line-nofocus {
  width: 100%;
  padding: 10px;
  border-top: 1px solid #EEE;
  box-sizing: border-box;
  cursor: pointer;
  transition: all 0.5s;
  background-size: 22px;
  background-position: center right 10px;
  background-repeat: no-repeat;
}
.modal-select .share-link-wrap .modal-window-line-nofocus{
  background-position: center left 10px;
}
.modal-select .modal-window-line.modal-line-focus {
  background-color: inherit;
  background-image: url(../img/icon_check01_blue.png);
}
.modal-select .modal-window-line:hover {
  background-color: #f2f2f2;
}
.modal-select .modal-window-line:first-of-type,
.modal-select .modal-window-line-nofocus:first-of-type { border-top: none; }
.modal-select .modal-window-line:last-of-type,
.modal-select .modal-window-line-nofocus:last-of-type { border-bottom: none; }
#shareModal .modal-window-line-nofocus { padding-left: 40px; }
/*並べ替え・料金*/
.modal-select-sort, .modal-select-price {
  left: -1px;
  border-radius: 5px;
}
.modal-select-sort { width: 232px; }
.modal-select-price { width: 290px; }
.modal-select-sort .modal-select-content,
.modal-select-price .modal-select-content { padding: 5px; }
/*シェア*/
.modal-select-share{
  width: 280px;
  top: 35px;
  right: 0;
  border-radius: 5px;
}
#shareModal.modal-select.modal-select-share::before, #shareModal.modal-select.modal-select-share::after{
  left: 260px;
}
/*地図*/
.modal-map .modal-window {
  max-width: inherit;
  top: 60px;
  bottom: 60px;
  left: 60px;
  right: 60px;
  transform: translate(0);
}
.modal-map .modal-content {
  height: 100%;
  max-height: none;
  box-sizing: border-box;
  overflow-y: visible;
}
.modal-map .map-modal-item {
  width: 450px;
  height: 100%;
  overflow-y: scroll;
}
.modal-map .search-box-wrap { height: 100%; }
.modal-map .map-item-box { padding: 0 16px 16px 0; }
.modal-map .item-box {
  border: none;
  background: #EEE;
  border-radius: 5px;
  overflow: hidden;
  box-sizing: border-box;
}
.modal-map .item-box:hover { background: #dae3f2; }
.modal-map .item-box .section-one-image { width: 150px; }
.modal-map .item-box .section-one-line { margin-bottom: 0; }
.modal-map .item-box .section-one-body .small-ttl {
  font-size: 11px;
  margin-bottom: 5px;
}
.modal-map .item-box .section-one-body { padding: 12px; }
.modal-map .map-modal-slide {
  display: flex;
  align-content: center;
}
.modal-map .section-one-rate { margin-bottom: 8px; }
.modal-map .section-one-txt { padding: 0; }
.modal-map .section-one-footer .section-one-price { padding: 0; }
.modal-map .section-one-footer { padding: 12px; }
.modal-map .search-box-input .result-input.modal-open-btn {
  width: 50%;
  box-sizing: border-box;
}
.modal-map .search-box-input {
  position: relative;
  height: 50px;
}
.modal-map .search-box-line { position: relative; }
.modal-map-header {
  position: relative;
  padding: 16px 16px 0 16px;
}
.modal-map-text { font-size: 20px; }
.modal-map-text-result {
  font-size: 30px;
  font-weight: bold;
}
.modal-map-text-sub {
  font-size: 12px;
}
.map-modal-list{
  width: 360px;
}
.map-modal-list h2{
  padding: 15px 35px 14px 35px;
  font-size: 16px;
  font-weight: bold;
  line-height: 16px;
}
.map-modal-list h2.map-modal-spots-ttl{
  padding: 15px 20px 14px 20px;
}
.map-modal-spotinfo p{
  padding: 0 20px 20px 20px;
}
.map-modal-spot{
  height: calc(100% - 45px);
  overflow-y: auto;
}
.map-modal-spot li{
  padding: 10px 35px;
  border-top: 1px solid #bfbfbf;
  background: no-repeat 10px 9px;
  background-size: 20px;
  cursor: pointer;
  transition: 0.5s all;
}
.map-modal-spot li:hover{
  background-color: #f2f2f2;
}
.map-modal-spot li.map-modal-spot-active{
  background-image: url(../img/icon_check01_blue.png);
}
.map-box-wrap{
  width: calc(100% - 360px);
  height: 100%;
  position: relative;
}
.map-modal-figure {
  height: 100%;
  margin: 0;
  min-width: 580px;
}
.map-modal-btn-wrap {
  position: absolute;
  display: flex;
  justify-content: space-between;
  /* min-width: 390px; */
  width: 550px;
  bottom: 40px;
  left: 0;
  right: 0;
  margin: auto;
  background: #fff;
  padding: 15px;
  box-shadow: 3px 5px 4px 0 rgba(0, 0, 0, 0.1);
  border-radius: 5px;
}
span.map-select-btn {
  padding: 6px 15px;
  text-align: center;
  border-radius: 4px;
  display: inline-block;
  cursor: pointer;
  font-size: 16px;
  position: relative;
  background: #fff;
  border: 1px solid #888;
  transition: 0.5s all;
}
.map-modal-btn .section-btn {
  width: 100%;
  padding: 7.5px 30px;
  text-align: center;
  border: none;
  display: block;
  cursor: pointer;
  font-size: 16px;
  position: relative;
}
/* .map-box-wrap .map-modal-btn {
  width: 55%;
} */
.map-box-wrap .map-modal-btn a {
  margin-left: -140px;
}
/* .map-reset {
  width: 40%;
} */
span.map-reset-btn {
  padding: 6px 15px;
  text-align: center;
  border-radius: 4px;
  display: block;
  cursor: pointer;
  font-size: 16px;
  position: relative;
  background: #fff;
  border: 1px solid #888;
  transition: 0.5s all;
}
.tool-popup-select-box {
  position: absolute;
  display: none;
  width: 250px;
  background: #fff;
  padding: 10px 12px;
  box-shadow: 0 0 5px 2px rgba(0,0,0,0.3);
  z-index: 40;
  bottom: 40px;
  border-radius: 5px;
  left: 90px;
  font-size: 12px;
}
span.map-select-btn:hover,
span.map-reset-btn:hover {
  background: #d7d7d7;
}

.tool-popup-select-box:before, .tool-popup-select-box:after {
  content: '';
  position: absolute;
  display: block;
  z-index: 50;
  border: solid transparent;
  border-width: 22px;
  transform: translate(-15px, 0);
  border-top-color: #fff;
  left: 130px;
}
.tool-popup-select-box:before {
  border-top-color: #d7d7d7;
  bottom: -45px;
}
.tool-popup-select-box:after {
  bottom: -41px;
}



@media screen and (max-width:1060px) {

}

/*地図内スポット*/
.modal-select-spot {
  width: 40%;
  left: 25%;
  transform: translate(-50%, 10px);
}
.modal-select-spot .modal-select-window {
  height: 300px;
  overflow-y: scroll;
}
/*地図内絞り込み*/
.modal-select-spot .modal-select-refine { display: block; }
/*絞り込み*/
.modal-select-refine {
  width: 960px;
  left: 0;
  border-radius: 5px;
}
#refineModal .modal-close-btn {
  color: #FFF;
  background-color: transparent;
  border: none;
  position: absolute;
  z-index: 10;
  top: 4px;
  right: 4px;
  display: inline-block;
  cursor: pointer;
}
.modal-select-refine-content {
  display: flex;
  flex-wrap: wrap;
}
#refineModal .modal-select-ttl{
  margin-bottom: 5px;
  font-size: 20px;
  font-weight: bold;
  color: #2488ff;
}
#refineModal .search-box-input select{
  background-color: #fff;
  border: 1px solid #888;
  margin: 0;
}
#refineModal .search-box-input-wave{
  padding: 0 10px;
}
.modal-select-refine-left {
  width: 360px;
  padding-right: 40px;
}
.modal-select-refine-hotelname {
  margin-bottom: 40px;
}
.modal-select-refine-hotelrank {
  display: flex;
  justify-content: space-between;
}
.modal-select-refine-hotelrank li {
  width: 18%;
  border: 1px solid #fff;
  border-radius: 7px;
  font-size: 24px;
}
.modal-select-refine-hotelrank li > div {
  padding: 11px 0;
  border: 1px solid #888888;
  border-radius: 6px;
  cursor: pointer;
  text-align: center;
}
.modal-select-refine-hotelrank li span {
  font-size: 12px;
  color: #888;
  display: block;
  text-align: center;
}
/*
.modal-select-refine-hotelrank li.modal-list-active {
  border: 1px solid #2488ff;
}
*/
.modal-select-refine-hotelrank li.modal-list-active > div {
  border: 2px solid #2488ff;
  padding: 10px 0;
}
.modal-select-refine-hotelrank-indent{
  text-indent: -1em;
  padding-left: 1em;
  color: #888;
  font-size: 14px;
}
.modal-select-refine-right {
  width: 500px;
  padding-left: 20px;
  font-size: 14px;
}
.modal-select-refine-right .section-box-wrap{
  display: flex;
}
.modal-select-refine-inner:nth-child(1){
  width: 55%;
}
.modal-select-refine-inner:nth-child(2){
  width: 45%;
}
.modal-select-refine-inner p {
  margin-bottom: 8px;
  text-indent: -25px;
  padding-left: 25px;
}
.modal-select-refine-inner > div{
  margin-bottom: 8px;
}
.modal-select-refine-inner .input-check-wrap label:before{
  top: -1px;
}
.modal-select-refine-inner p input{
  transition: none;
}
.modal-select-refine-btn {
  display: flex;
  justify-content: space-between;
  width: 500px;
  margin: 20px auto 0;
}
/* mailモーダル */
#mailModal {
  display: none;
  width: 100%;
  height: 100vh;
}
#mailModal .modal-window { width: 400px; }
#mailModal .section-box-wrap { margin: 0; }
#mailModal .header-modal-box {
  background-color: #ccc;
  color: #000;
  font-size: 20px;
}
#mailModal .mailModal_item_ttl {
  font-size: 16px;
  margin-bottom: 8px;
  line-height: 1;
}
#mailModal .mailModal_item_input {
  width: 100%;
  box-sizing: border-box;
  padding: 8px 8px;
  margin-bottom: 20px;
  border: 1px solid #ccc;
}
#mailModal .mailModal_item_message {
  margin: 0 auto 16px;
  background: #fff;
  resize: vertical;
}
#mailModal_notice { display: none; }
#mailModal_notice .mail_notice_txt {
  text-align: center;
  font-size: 16px;
  padding: 16px 0;
}
/* --------------------
サーバ証明書
-------------------- */
.rn-note{
  font-size: 12px;
  margin-bottom: 15px;
}
/* --------------------
お気に入りリスト
-------------------- */
.heart-popup-wrap {
  position: absolute;
  display: none;
  width: 225px;
  color: #fff;
  text-align: center;
  background: rgba(0, 0, 0, 0.8);
  padding: 5px;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
  z-index: 40;
  border-radius: 4px;
}
.heart-popup-wrap > p { line-height: 1.5; }
.heart-popup-wrap::before {
  content: '';
  position: absolute;
  right: 3px;
  display: block;
  z-index: 20;
  border: solid transparent;
}
.heart-popup-wrap::before {
  top: -16px;
  border-width: 8px;
  border-bottom-color: rgba(0, 0, 0, 0.8);
  transform: translate(-8px, 0);
}
/*.heart-popup-wrap::after {
  top: -28px;
  border-width: 8px;
  border-bottom-color: rgba(0, 0, 0, 0.8);
  transform: translate(-8px, 0);
}*/
.heart-popup-link {
  display: inline-block;
  width: 100%;
  box-sizing: border-box;
  color: #fff;
  padding-right: 20px;
  text-align: right;
  background: url(../img/icon_arrow01_wh.png) no-repeat right 5px top 4px;
}
.heart-popup-link:hover {
  text-decoration: underline;
}
.heart-popup {
  position: relative;
  cursor: pointer;
}
.heart-popup .heart-off {
  position: relative;
  z-index: 3;
  transition: 0.5s all;
}
.heart-popup.added .heart-off {
  display: none;
}
.heart-popup .heart-on {
  display: none;
}
.heart-popup.added .heart-on {
  display: block;
}
.heart-popup .heart-off:hover {
  opacity: 0;
}
.heart-over{
  top: 0;
  left: 0;
  position: absolute;
  opacity: 0;
  z-index: 2;
  transition: all 0.5s;
}
.heart-popup:hover .heart-over {
  opacity: 1;
}
.heart-popup.added:hover .heart-over {
  opacity: 0;
}
.share-btn{
  position: relative;
}
.share-btn img{
  position: relative;
  z-index: 3;
}
.share-btn:before{
  top: 0;
  left: 1px;
  position: absolute;
  content: "";
  width: 30px;
  height: 30px;
  border-radius: 30px;
  background-color: #d7d7d7;
  opacity: 0;
  transition: all 0.5s;
  z-index: 2;
}
.share-btn:hover:before{
  opacity: 1.0;
}

/*上部お気に入りボタン*/
#heartBtn .heart-popup-wrap {
  top: 40px;
  left: -200px;
}
.hotel-box-action li { cursor: pointer; }
/*商品情報お気に入りボタン*/
.section-box {
  position: relative;
  overflow: visible;
}
.result-item-box {
  position: relative;
  overflow: visible;
}
.section-one-image-heart {
  position: absolute;
  width: 40px;
  height: 40px;
  top: 4px;
  left: 4px;
  background: #fff;
  border-radius: 20px;
  border: 1px solid #333;
  z-index: 20;
}
.section-one-image-heart > img { width: 100%; }
.section-box .heart-popup-wrap,
.result-item-box .heart-popup-wrap {
  top: 50px;
  left: -21px;
}
/*パンくずお気に入りボタン*/
#breadcrumb {
  padding: 15px 0;
}
#breadcrumb ol{
  width: 720px;
}
.breadcrumb-btnlist {
  position: absolute;
  top: 8px;
  right: 0;
}
#breadcrumb li.breadcrumb-favorite-btn > div {
  display: block;
  position: relative;
  color: #333;
  font-size: 12px;
  padding: 8px 10px 8px 30px;
  border-radius: 4px;
  vertical-align: top;
  border: 1px solid #d7d7d7;
  cursor: pointer;
  transition: 0.5s all;
}
#breadcrumb li.breadcrumb-favorite-btn.breadcrumb-favorite-btn-off > div,#breadcrumb li.breadcrumb-favorite-btn.breadcrumb-favorite-btn-on > div {
  background: url(../img/icon_heart02.png) no-repeat 10px 50%;
}
/*
#breadcrumb li.breadcrumb-favorite-btn.breadcrumb-favorite-btn-on > div {
  background: url(../img/icon_heart02_red.png) no-repeat 10px 50%;
}
*/
#breadcrumb li.breadcrumb-favorite-btn.breadcrumb-favorite-btn-on > div:hover,#breadcrumb li.breadcrumb-favorite-btn.breadcrumb-favorite-btn-off > div:hover {
  background-color: #f2f2f2;
}
.breadcrumb-favorite-number {
  position: absolute;
  display: block;
  top: -6px;
  left: -12px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  color: #fff;
  font-size: 10px;
  text-align: center;
  line-height: 20px;
  background: #e9473f;
  z-index: 10;
  display: none;
}
#breadcrumb li.breadcrumb-reservation-btn {
  display: inline-block;
  margin: 0;
}
#breadcrumb li.breadcrumb-reservation-btn > a {
  border: 1px solid #d7d7d7;
  border-radius: 4px;
  color: #333;
  font-size: 12px;
  display: block;
  padding: 8px 10px 8px 27px;
  background: url(../img/icon_document01.png) no-repeat 10px 6px;
  transition: 0.5s all;
}
#breadcrumb li.breadcrumb-reservation-btn > a:hover {
  background-color: #f2f2f2;
}
#breadcrumb li.breadcrumb-favorite-btn > div::after,
#breadcrumb li.breadcrumb-reservation-btn > a::after { display: none; }
#breadcrumb li.breadcrumb-reservation-btn img { width: 100%; }
/*お気に入りモーダル*/
#favoriteModal{
    z-index: 1000000;
}
#favoriteModal .modal-window{
  left: auto;
  transform: translate(0, -50%);
  max-width: 900px;
  position: relative;
}
#favoriteModal .header-modal-box { position: relative; }
#favoriteModal .modal-inner {
  width: auto;
  min-height: inherit;
  min-width: 600px;
}
#favoriteModal .modal-content {
  max-height: 350px;
  height: 40vh;
}
.modal-close-btn {
  position: absolute;
  display: block;
  width: 40px;
  height: 40px;
  top: -45px;
  right: 0;
  cursor: pointer;
}
.modal-close-btn > img {
  width: 100%;
}
.favorite-modal-list{
  padding: 4px;
}
.favorite-modal-list > li > a {
  margin-bottom: 20px;
  padding: 20px;
  box-shadow: 0 0 2px 2px rgba(0,0,0,0.1);
  position: relative;
  display: flex;
  align-items: center;
  border: 1px solid #e2e2e2;
  border-radius: 8px;
  box-sizing: border-box;
  transition: 0.5s all;
}
.favorite-modal-list > li > a:hover {
  background-color: #eaf6fd;
}
.favorite-modal-item-image {
  width: 150px;
  padding: 0 15px 0 20px;
  align-self: end;
  display: flex;
  justify-content: center;
}
.favorite-modal-item-image > img {
  max-width: 150px;
  max-height: 105px;
  border-radius: 4px;
  vertical-align: bottom;
}
.favorite-modal-item-info{
  width: 500px;
}
.favorite-modal-item-heading {
  font-size: 16px;
  margin-bottom: 5px;
}
.favorite-modal-item-heading-en {
  margin-bottom: 20px;
  color: #888888;
}
.favorite-modal-item-city {
  margin-bottom: 5px;
  padding: 0 0 0 15px;
  background-image: url(../img/icon_pin02.png);
  background-size: 11px 16px;
  background-position: center left;
  background-repeat: no-repeat;
}
.favorite-modal-item-grade {
  color: #888888;
}
.favorite-modal-item-grade img {
  width: 120px;
}

/*地図モーダル*/
.map-modal-close-btn {
  position: absolute;
  display: block;
  width: 40px;
  height: 40px;
  top: -15px;
  right: -15px;
  border-radius: 20px;
  background: red;
  text-align: center;
  z-index: 10;
}
.map-modal-close-btn > img { width: 100%; }
.map-modal-wrap {
  display: flex;
  height: 100%;
  overflow-x: auto;
  overflow-y: hidden;
}
.map-modal-spot-heading {
  text-align: center;
  padding: 10px;
  color: #fff;
  background: #024895;
}
.map-modal-spot-list {
  width: 200px;
  height: 300px;
  overflow: auto;
  padding: 5px;
  border: 1px solid #024895;
  box-sizing: border-box;
}
.map-modal-spot-list > li {
  padding: 10px;
  border-bottom: 1px dotted #bbb;
}
.map-modal-spot-list > li:last-child { border-bottom: none; }
.map-modal-spot-list a { color: #024895; }
.map-modal-spot-item { cursor: pointer; }
.map-modal-spot-item:hover { background: #eee; }
.map-modal-text { padding-top: 16px; }
.map-modal-image {
  width: 465px;
  margin-left: 10px;
}
/*もっと見るBOX*/
.more-lead-box {
  position: relative;
  transition: height 0.5s;
  overflow: hidden;
  padding-bottom: 25px;
}
.more-lead-box.more-lead-box_close {
  height: 50px !important;
  cursor: pointer;
  padding-bottom: 25px;
}
.more-lead-btn {
  position: absolute;
  width: 100%;
  display: block;
  top: auto;
  bottom: 0;
  padding-top: 25px;
  text-align: center;
  background: #fff;
  background: linear-gradient(rgba(255,255,255,0), rgba(255,255,255,1) 50%);
  cursor: pointer;
}
.more-lead-btn > span {
  position: relative;
  padding-left: 22px;
}
.more-lead-btn > span::after {
  position: absolute;
  top: 1px;
  left: 0;
  display: block;
  width: 20px;
  height: 20px;
  content: "";
  background: url(../img/icon_up01.png) center/100% auto;
  pointer-events: none;
  -moz-transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
.more-lead-box_close .more-lead-btn > span::after {
  -moz-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
/*google map マーカー*/
.gm-style-iw { overflow: hidden ! important; }
/*.gm-style-iw div { overflow: hidden ! important; }*/
.marker-content {
  display: block;
}
.marker-content-heading {
  font-size: 16px;
}
.marker-content-heading-en{
  margin-bottom: 15px;
}
.marker-content-box{
  display: flex;
  align-items: flex-start;
}
.marker-content-img{
  width: 120px;
  border-radius: 3px;
}
.marker-content-info {
  width: 365px;
  margin-left: 20px;
}
.marker-content-rate-img{
  width: 120px;
}
.marker-content-rate-img img{
  width: 100%;
}
.marker-content-detail{
  color: #888;
  margin-bottom: 10px;
}
.marker-content-price-box{
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.marker-content-price {
  color: #da1e1e
}
.marker-content-price > span {
  font-size: 20px;
  font-weight: bold;
}
.marker-content-price > span {
  font-size: 20px;
  font-weight: bold;
}
.marker-content-btn{
  border: 1px solid #888;
  padding: 5px 20px;
  border-radius: 300px;
  transition: 0.5s all;
}
.marker-content-btn:hover{
  background: #d7d7d7;
}

/* --------------------
hotel.html
-------------------- */
#mainWrap.hotel .section-hotel .hotel-box-action { margin: 0 0 0 auto;}

#mainWrap.hotel .hotel-box-mv{
  width: 960px;
  height: 420px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
#mainWrap.hotel .hotel-box-mv .hotel-box-mv-img{
  width: 800px;
  overflow: hidden;
}
#mainWrap.hotel .hotel-box-mv .hotel-box-mv-thumb{
  width: 136px;
  overflow: hidden;
}
#mainWrap.hotel .hotel-box-mv img{
  max-height: 420px;
}
#mainWrap.hotel .hotel-box-mv .hotel-box-mv-thumb img{
  max-width: 100%;
  max-height: 95px;
}
#mainWrap.hotel .hotel-box-mv .hotel-box-mv-thumb li{
  height: 95px;
  margin-bottom: 13px;
  transition: all 0.5s;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #000;
}
#mainWrap.hotel .hotel-box-mv .hotel-box-mv-thumb li:hover{
  opacity: 0.5;
  cursor: pointer;
}
#mainWrap.hotel .hotel-box-mv .hotel-box-mv-thumb li:nth-child(4) span{
  position: absolute;
  background: rgba(0,0,0,0.5);
  top: -1px;
  left: 0;
  width: 136px;
  height: 95px;
  padding: 20px 0;
  box-sizing: border-box;
  color: #fff;
  text-align: center;
  line-height: 1.8;
}

#mainWrap.hotel .lead-box { margin-bottom: 60px; }
#mainWrap.hotel .lead-txt {
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 25px;
}
#mainWrap.hotel .link-btn-list {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 10px;
}
#mainWrap.hotel .link-btn-list li { width: 236px; }
#mainWrap.hotel .link-btn-list li:first-child { margin-right: 10px; }
#mainWrap.hotel .link-btn-list li:nth-child(2) { margin-right: 30px; }
#mainWrap.hotel .hotel-code {
  color: #2488ff;
  font-weight: bold;
  text-align: right;
}
#mainWrap.hotel .middle-ttl:before,
#mainWrap.review_done .middle-ttl:before { display: none; }
#mainWrap.hotel .note-indent {
  text-indent: -1em;
  padding-left: 1em;
}
#mainWrap.hotel .hotel-box-list td.hotel-box-list__no_border { border: none; }
#mainWrap.hotel .hotel-box-list td.hotel-box-list__no_border span { margin-right: 15px; }
#mainWrap.hotel .hotel-box-address,
#mainWrap.hotel .hotel-box-list.detail:first-of-type {
  width: 480px;
  margin-right: 32px;
}
#mainWrap.hotel .hotel-box-list.detail:last-of-type {
  width: 448px;
}
#mainWrap.hotel .hotel-box-map-btn {
  border: 1px solid #888;
  border-radius: 16px;
  color: #333;
  font-size: 14px;
  width: 235px;
  box-sizing: border-box;
  bottom: 15px;
  text-align: center;
  background: #fff url(../img/icon_arrow01_gray.png) no-repeat 92% 50%;
  transition: all 0.5s;
}
#mainWrap.hotel .hotel-box-map-btn:hover,#mainWrap.hotel .hotel-box-map-btn:focus { background-color: #f2f2f2;}
#mainWrap.hotel .hotel-box-list.address th { width: 5em; }
#mainWrap.hotel .hotel-box-list.detail th { width: 9em; }
#mainWrap.hotel .section-btn-2col-wrap .section-box-wrap-inner,
#mainWrap.plan .section-btn-2col-wrap .section-box-wrap-inner,
#mainWrap.review .section-btn-2col-wrap .section-box-wrap-inner,
#mainWrap.complete .section-btn-2col-wrap .section-box-wrap-inner{
  width: 592px;
  padding: 0;
}
#mainWrap.complete .section-btn-2col-wrap .section-box-wrap-inner{
  display: flex;
  justify-content: space-around;
}
#mainWrap.hotel .section-btn-2col-wrap .section-box-wrap-inner > a,
#mainWrap.plan .section-btn-2col-wrap .section-box-wrap-inner > a,
#mainWrap.review .section-btn-2col-wrap .section-box-wrap-inner > a,
#mainWrap.complete .section-btn-2col-wrap .section-box-wrap-inner > a {
  width: 50%;
}
#mainWrap.hotel .section-btn-2col-wrap .section-box-wrap-inner > a:first-child,
#mainWrap.plan .section-btn-2col-wrap .section-box-wrap-inner > a:first-child,
#mainWrap.review .section-btn-2col-wrap .section-box-wrap-inner > a:first-child,
#mainWrap.complete .section-btn-2col-wrap .section-box-wrap-inner > a:first-child {
  margin-right: 17px;
}
.section__heading {
  font-size: 32px;
  text-align: center;
  margin: 0 0 32px 0;
}
.carousel {
  margin: 0 auto;
  padding: 0 72px;
}
.carousel__prev-arrow,
.carousel__next-arrow {
  position:absolute;
  top:0;
  bottom:0;
  width:48px;
  height: auto;
  background-color:#F2F2F2;
  border:none;
  cursor:pointer;
  outline:none;
  padding:0;
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  -webkit-transition:.25s;
  transition:.25s;
}
.carousel .carousel__prev-arrow,
.carousel .carousel__next-arrow {
  bottom:33px;
}
.carousel__prev-arrow:hover,
.carousel__next-arrow:hover {
  background:#888;
}
/*.carousel__prev-arrow:focus,
.carousel__next-arrow:focus {
  background:#D7D7D7;
}*/
.carousel__prev-arrow {
  left:-70px;
}
.carousel__next-arrow {
  right:-70px;
}
.carousel .carousel__prev-arrow {
  left: 0;
}
.carousel .carousel__next-arrow {
  right: 0;
}
.carousel__prev-arrow::after,
.carousel__next-arrow::after {
  position: absolute;
  display: block;
  width: 39px;
  height: 39px;
  top: 50%;
  left: 50%;
  content: '';
  border-top: 5px solid #fff;
  border-right: 5px solid #fff;
  -webkit-transition:.25s;
  transition:.25s;
}
.carousel__container .carousel__prev-arrow::after,
.carousel__container .carousel__next-arrow::after {
  width: 20px;
  height: 20px;
  top: 50%;
  left: 50%;
  border-top: 4px solid #fff;
  border-right: 4px solid #fff;
}
.carousel__container button:active,
.carousel__container button:focus{
    position: absolute;
}
.carousel__prev-arrow::after {
  -webkit-transform:translate(-30%, -50%) rotate(-135deg);
  transform:translate(-30%, -50%) rotate(-135deg);
}
.carousel__next-arrow::after {
  -webkit-transform:translate(-70%, -50%) rotate(45deg);
  transform:translate(-70%, -50%) rotate(45deg);
}
.hotel-box-mv-img .slick-slide {
  background: #888;
  height: 420px;
  align-items: center;
  position: relative;
  transition: all 0.5s;
  cursor: pointer;
  flex-wrap: wrap;
}
.hotel-box-mv-img .slick-slide:hover {
  opacity: 0.5;
}
.hotel-box-mv-txt{
  width: 600px;
  padding: 5px 8px 3px 8px;
  color: #fff;
  font-size: 16px;
  display: none;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 300;
  box-sizing: border-box;
  background: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.5) 20%);
}
.hotel-box-mv-txt span{
  display: inline-block;
  padding-right: 10px;
}

.hotel-box-mv-img .carousel__prev-arrow,
.hotel-box-mv-img .carousel__next-arrow {
  width: 105px;
  height: 420px;
  background-color: rgba(255,255,255,0.5);
  z-index: 30;
}
.hotel-box-mv-img .carousel__prev-arrow:hover,
.hotel-box-mv-img .carousel__next-arrow:hover {
  background: rgba(255,255,255,0);
}
.hotel-box-mv-img .carousel__prev-arrow {
  left: -8px;
}
.hotel-box-mv-img .carousel__next-arrow {
  right:-8px;
}
.carousel{
  display: none;
}
.carousel.slick-initialized{
  display: block;
}
.carousel .item-box {
  border-radius: 4px;
  background-color: #fff;
  box-shadow: 0px 0px 4px 0px rgba(6, 6, 6, 0.3);
  border: none;
  margin: 4px 8px 4px;
}
.carousel .item-box a {
  padding: 15px;
  display: block;
  box-sizing: border-box;
  transition: all 0.5s;
}
.carousel .item-box a:hover { background: #eaf6fd; }
.carousel .item-box .section-one-top .section-one-area {
  background: none;
  padding: 0;
  color: #6a6a6a;
  margin-bottom: 5px;
}
.carousel .item-box .section-one-top .small-ttl { font-size: 16px; }
.carousel .item-box .section-one-middle {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.carousel .item-box .section-one-image {
  width: 46%;
  border-radius: 4px;
  overflow: hidden;
  background-size: cover;
}
.carousel .item-box .section-one-image:before {
  content: '';
  display: block;
  padding-top: 70%;
}
.carousel .item-box .section-one-body { width: 108px; }
.carousel .item-box .section-one-crown {
  width: 100%;
  display: block;
  margin: 0;
}
.carousel .item-box .section-one-crown > img { width: 80px; }
.carousel .item-box .section-one-rate {
  color: #2488ff;
  font-size: 14px;
  display: block;
  margin-bottom: 5px;
}
.carousel .item-box .section-one-rate li {
  font-size: 12px;
  background: none;
}
.carousel .item-box .section-one-rate li:first-child,
.carousel .item-box .section-one-rate li:nth-child(2) { display: inline-block; }
.carousel .item-box .section-one-rate li:last-child { font-size: 10px; }
.carousel .item-box .section-one-rate .section-rate-number {
  color: #2488ff;
  font-size: 16px;
  font-weight: bold;
  margin: 0;
}
.carousel .item-box .section-one-txt {
  color: #6a6a6a;
  font-size: 12px;
  line-height: 1.3;
  margin: 0;
  padding: 0;
}
.carousel .item-box .section-one-footer {
  margin-top: 8px;
}
.carousel .item-box .section-one-footer .section-one-price { padding: 0; }
.carousel .item-box .section-one-footer .section-one-line { margin: 0; }
.carousel .item-box .section-one-footer .section-one-price .body-small-txt {
  color: #6a6a6a;
  font-size: 10px;
  width: 46%;
}
.carousel .item-box .section-one-footer .price-txt {
  font-size: 20px;
  width: 54%;
}
.carousel .item-box .section-one-footer .price-txt .price-small-txt { font-size: 16px; }
.hotel-modal-slide{
  height: 420px;
  margin-bottom: 60px;
}
.hotel-modal-slide li img{
  max-height: 420px;
  margin:  0 auto;
}
.hotel-modal-slide li a{
  display: block
}
.hotel-modal-slide .slick-slide:focus {
  outline: 0;
}
.hotel-modal-txt{
  width: 840px;
  color: #fff;
  margin: 8px 0 0 0;
  text-align: center;
  display: none;
}
.hotel-modal-txt span{
  padding-right: 10px;
  display: inline-block;
}
.hotel-modal-slide-thumb li{
  height: 66px;
}
.hotel-modal-slide-thumb li:focus{
  outline: 0;
}
.hotel-modal-slide-thumb li div{
  height: 60px;
  width: 85px;
  background: #000;
  margin: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hotel-modal-slide-thumb li.slick-current{
  background: #2488ff;
}
.hotel-modal-slide-thumb li img{
  max-width: 85px;
  max-height: 60px;
}
.hotel-modal-slide .carousel__prev-arrow, .hotel-modal-slide .carousel__next-arrow{
  background: none;
  border: none;
  z-index: 300;
}
.hotel-box-mv button:active,
.hotel-box-mv button:focus{
  position: absolute;
}
/* --------------------
result.html
-------------------- */
#mainWrap.result .search-header { background: none; }
#mainWrap.result .search-box-input-inner {
  border-radius:4px;
  border: 1px solid #888;
  margin-right: 10px;
}
#mainWrap.plan .search-box-input-inner {
  border-radius:4px;
  border: 1px solid #888;
  padding: 5px 10px;
}
#mainWrap.plan .search-box-input-inner .index-calendar-nights {
  width: 40px;
  padding: 0 10px 2px 0;
  font-size: 14px;
}
#mainWrap.result .search-box-room-input,#mainWrap.plan .search-box-room-input { background: none; }
#mainWrap.result .search-box-input input.search-input,#mainWrap.plan .search-box-input input.search-input { width: 384px; }
#mainWrap.result .search-box-input #calendar-input-in input,
#mainWrap.result .search-box-input #calendar-input-out input,
#mainWrap.plan .search-box-input #calendar-input-in input,
#mainWrap.plan .search-box-input #calendar-input-out input {
  width: 93px;
  font-size: 14px;
  text-align: center;
}
#mainWrap.plan .search-box-input #calendar-input-in input{
  text-align: left;
}
#mainWrap.result .search-box-input #calendar-input-in input,
#mainWrap.plan .search-box-input #calendar-input-in input{
  min-height: 36px;
  padding: 8px 0 7px 6px;
  background: none;
}
#mainWrap.result .search-box-input #calendar-input-out input,
#mainWrap.plan .search-box-input #calendar-input-out input {
  padding: 8px 6px 7px 0;
  background: none;
}
#mainWrap.plan .search-box-input #calendar-input-out input{
  text-align: left;
}
#mainWrap.result .people-modal-btn .search-box-input-inner {
  width: 223px;
  margin-right: 0;
 padding: 7px 5px 5px 5px;
}
#mainWrap.result .search-box-input-inner select:focus{
  outline: 0;
}
#mainWrap.plan .people-modal-btn .search-box-input-inner {
  width: 260px;
  margin-right: 0;
}
#mainWrap.result .search-box-input-inner__people,#mainWrap.plan .search-box-input-inner__people {
  display: inline-block;
  white-space: nowrap;
}
#mainWrap.plan .search-box-input-inner__people {
  padding: 2px 0 0 5px;
  width: 75px;
  text-align: left;
}
#mainWrap.result .search-box-input-inner__people .people_num_adult,
#mainWrap.result .search-box-input-inner__people .people_num_child,
#mainWrap.plan .search-box-input-inner__people .people_num_adult,
#mainWrap.plan .search-box-input-inner__people .people_num_child{
  display: inline;
  width: 22px;
  padding: 0;
  font-size: 12px;
  text-align: center;
  background-color: transparent;
}
#mainWrap.result #searchWrap .search-box-line:nth-of-type(4),
#mainWrap.result #searchWrap .search-box-line:last-of-type { margin-top: 10px; }
#mainWrap.index .section-btn-wrap-search,#mainWrap.result .section-btn-wrap-search {
  align-self: flex-start;
}
#mainWrap.index .section-btn-wrap-search{
  width: 180px;
  margin-left: 0;
}
#mainWrap.index .section-btn-wrap-search {
  align-self: flex-end;
  background: url(../img/btn_index_search01_on.png) no-repeat;
}
#mainWrap.index .section-btn-wrap-search input {
  transition: all 0.5s;
}
#mainWrap.index .section-btn-wrap-search input:hover {
  opacity: 0;
}
#mainWrap.result .section-btn-wrap-search {
  width: 100px;
  margin-left: 10px;
}
#mainWrap.result .search-box-line:nth-of-type(4) .search-box-input-inner { width: 394px; }
#mainWrap.result #searchWrap .area_selector { width: 435px; }
#mainWrap.result .search-box-line:nth-of-type(5) .search-box-input-inner { margin-right: 0; }
#mainWrap.result .search-header .big-ttl {
  color: #2488ff;
  font-size: 20px;
  font-weight: normal;
  margin-bottom: 14px;
  padding: 0;
}
#mainWrap.result .search-header .big-ttl span { font-size: 14px; }
#mainWrap.result .search-box-wrap--header { width: 850px; }
#mainWrap.result .search-box-input input.search-input {
  background: #fff;
  padding: 0 6px;
}
#mainWrap.result .search-box-wrap .search-box-input,
#mainWrap.plan .search-box-wrap .search-box-input { justify-content: flex-start; }
#mainWrap.result .search-box-wrap .result-input.modal-open-btn {
  text-align: left;
  padding: 14px 12px 13px 12px;
  margin-right: 12px;
}

#mainWrap.result .search-box-wrap .result-input.refine-modal-btn,
#mainWrap.plan .search-box-wrap .result-input.refine-modal-btn {
  background: #fff url(../img/icon_refine02.png) no-repeat 12px 48%;
}
#mainWrap.result .search-box-wrap .result-input.map-modal-btn,
#mainWrap.plan .search-box-wrap .result-input.map-modal-btn {
  background: #fff url(../img/icon_map02.png) no-repeat 12px 48%;
}
#mainWrap.result .search-box-wrap .result-input.sort-modal-btn,
#mainWrap.plan .search-box-wrap .result-input.sort-modal-btn {
  background: #fff url(../img/icon_sort02.png) no-repeat 12px 48%;
}
#mainWrap.result .search-box-wrap .result-input.price-modal-btn,
#mainWrap.plan .search-box-wrap .result-input.price-modal-btn {
  background: #fff url(../img/icon_price02.png) no-repeat 12px 48%;
}
#mainWrap.result .search-box-wrap .result-input.refine-modal-btn:hover,
#mainWrap.plan .search-box-wrap .result-input.refine-modal-btn:hover {
  background: #d7d7d7 url(../img/icon_refine02.png) no-repeat 12px 48%;
}
#mainWrap.result .search-box-wrap .result-input.map-modal-btn:hover,
#mainWrap.plan .search-box-wrap .result-input.map-modal-btn:hover {
  background: #d7d7d7 url(../img/icon_map02.png) no-repeat 12px 48%;
}
#mainWrap.result .search-box-wrap .result-input.sort-modal-btn:hover,
#mainWrap.plan .search-box-wrap .result-input.sort-modal-btn:hover {
  background: #d7d7d7 url(../img/icon_sort02.png) no-repeat 12px 48%;
}
#mainWrap.result .search-box-wrap .result-input.price-modal-btn:hover,
#mainWrap.plan .search-box-wrap .result-input.price-modal-btn:hover {
  background: #d7d7d7 url(../img/icon_price02.png) no-repeat 12px 48%;
}
#mainWrap.result .search-box-wrap .result-input.refine-modal-btn:after,
#mainWrap.result .search-box-wrap .result-input.sort-modal-btn:after,
#mainWrap.result .search-box-wrap .result-input.price-modal-btn:after,
#mainWrap.plan .search-box-wrap .result-input.refine-modal-btn:after,
#mainWrap.plan .search-box-wrap .result-input.sort-modal-btn:after,
#mainWrap.plan .search-box-wrap .result-input.price-modal-btn:after{
  position: absolute;
  top: 41.5%;
  right: 4%;
  content: '';
  width: 12px;
  height: 8px;
  background: url(../img/icon_bottom02_gray.png) no-repeat 0 0;
}
#mainWrap.result .search-box-wrap .result-input.map-modal-btn:after,
#mainWrap.plan .search-box-wrap .result-input.map-modal-btn:after{
  position: absolute;
  top: 37.5%;
  right: 4%;
  content: '';
  width: 8px;
  height: 12px;
  background: url(../img/icon_arrow01_gray.png) no-repeat 0 0;
}
#mainWrap.result .search-box-wrap .result-input.refine-modal-btn.outline-btn-active,
#mainWrap.result .search-box-wrap .result-input.sort-modal-btn.outline-btn-active,
#mainWrap.result .search-box-wrap .result-input.price-modal-btn.outline-btn-active,
#mainWrap.result .search-box-wrap .result-input.map-modal-btn.outline-btn-active{
  background-color: #d7d7d7;
}
#mainWrap.result .search-box-wrap .result-input.map-modal-btn.outline-btn-active{
  position: absolute;
  top: 37.5%;
  right: 4%;
  content: '';
  width: 8px;
  height: 12px;
  background: url(../img/icon_arrow01_gray.png) no-repeat 0 0;
}
#mainWrap.result .search-box-wrap .result-input.modal-open-btn.sort-modal-btn,
#mainWrap.result .search-box-wrap .result-input.modal-open-btn.price-modal-btn,
#mainWrap.plan .search-box-wrap .result-input.modal-open-btn.sort-modal-btn,
#mainWrap.plan .search-box-wrap .result-input.modal-open-btn.price-modal-btn{
  padding: 5px 12px 4px 12px;
}
#mainWrap.result .search-box-wrap .result-input.modal-open-btn:last-of-type,
#mainWrap.plan .search-box-wrap .result-input.modal-open-btn:last-of-type{
  margin-right: 0;
}
#mainWrap.result .search-box-wrap .result-input.modal-open-btn .sort-ttl,
#mainWrap.result .search-box-wrap .result-input.modal-open-btn .price-ttl,
#mainWrap.plan .search-box-wrap .result-input.modal-open-btn .sort-ttl,
#mainWrap.plan .search-box-wrap .result-input.modal-open-btn .price-ttl{
  color: #888;
  font-size: 14px;
  margin-left: 30px;
}
#mainWrap.result .search-box-wrap .result-input.modal-open-btn .result-sort-txt,
#mainWrap.plan .search-box-wrap .result-input.modal-open-btn .result-sort-txt{
  display: block;
  margin-left: 30px;
}
.result-wrap .result-item-box {
  width: 100%;
  background-color: #fff;
  box-shadow: 0px 0px 4px 0px rgba(6, 6, 6, 0.3);
  border: none;
  border-radius: 4px;
  position: relative;
  box-sizing: border-box;
  margin-bottom: 18px;
}
.result-wrap .result-item-box .result-item-link {
  display: flex;
  justify-content: space-between;
  align-self: flex-start;
  flex-wrap: nowrap;
  padding: 20px;
  box-sizing: border-box;
  transition: 0.5s all;
  position: relative;
}
.result-wrap .result-item-box .result-item-link:hover {
  background: #eaf6fd;
  text-decoration: none;
}
.result-item-box .section-one-image-heart {
  position: absolute;
  top: 22px;
  left: auto;
  right: 22px;
  border-radius: 0;
  border: none;
  width: 28px;
  height: 26px;
  background-color: transparent;
}
.result-item-box .section-one-image-heart .heart-popup-wrap {
  top: unset;
  right: -8px;
  left: auto;
  bottom: 40px;
}
.result-item-box .section-one-image-heart .heart-popup-wrap:before {
  content: "";
  position: absolute;
  top: 100%;
  right: 8px;
  border: 8px solid transparent;
  border-top: 8px solid rgba(0,0,0,0.8);
}
.result-item-box .section-one-image {
  width: 150px;
  border-radius: 4px;
  overflow: hidden;
  margin-right: 10px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.result-item-box .section-one-image:before {
  content: '';
  padding-top: 70%;
  display: block;
}
.result-item-box .section-one-box .small-ttl {
  color: #004098;
  font-size: 20px;
  margin-bottom: 15px;
}
.result-item-box .section-one-box .small-ttl .eng_subtitle {
  color: #888;
  font-size: 14px;
  font-weight: normal;
  display: block;
  margin: 10px 0 0 0;
}
.result-item-box .section-one-body {
  width: 660px;
  display: flex;
  justify-content: space-between;
  padding: 0;
}
.result-item-box .section-one-detail { width: 500px; }
.result-item-box .section-one-detail .section-one-line {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
}
.result-item-box .section-one-detail .section-one-area { font-size: 16px; }
.result-item-box .section-one-detail .section-one-crown {
  width: 120px;
  justify-content: flex-end;
  margin: 0 0 0 auto;
}
.result-item-box .section-one-detail .section-one-crown img { width: 100%; }
.result-item-box .section-one-txt--ellipsis {
  white-space: normal;
  text-overflow: clip;
  height: 4.6em;
}
.result-item-box .section-one-box:after { display: none; }
.result-item-box .section-one-box { width: 660px; }
.result-item-box .section-one-footer {
  width: 245px;
  padding-top: 55px;
  margin-bottom: 35px;
}
.result-item-box .section-one-footer .section-one-rate {
  color: #2488ff;
  position: absolute;
  top: 0;
  right: 40px;
}
.result-item-box .section-one-footer .section-one-rate li { font-size: 12px; }
.result-item-box .section-one-footer .section-one-rate li:first-child { align-self: flex-end; }
.result-item-box .section-one-footer .section-one-rate li.section-rate-number {
  background: none;
  color: #2488ff;
  font-size: 28px;
  font-weight: bold;
  width: auto;
  padding: 0 8px 0 5px;
  margin: 0;
}
.result-item-box .section-one-footer .section-one-rate li:last-child {
  text-align: right;
  line-height: 1.1;
  align-self: flex-start;
}
.result-item-box .section-one-footer .section-one-rate li:last-child span { display: block; }
.result-item-box .section-one-footer .section-one-price {
  margin-top: 12px;
  padding: 0;
}
.result-item-box .section-one-footer .section-one-price .result-price { position: static; }
.result-item-box .section-one-footer .section-one-price .result-price li:first-child,
.result-item-box .section-one-footer .section-one-price .result-price li:last-child { color: #6a6a6a; }
.result-item-box .section-one-footer .section-one-price .result-price li:first-child { margin-bottom: 5px; }
.result-item-box .section-one-footer .section-one-price .result-price li:last-child { margin-top: 5px; }
.result-item-box .plan-link {
  position: absolute;
  bottom: 22px;
  right: 22px;
}
.result-item-box .plan-link a {
  background: url("../img/icon_arrow02_orange.png") no-repeat right 50%;
  padding: 0 15px 0 0;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.1;
}
.result-item-box .plan-link a:hover { text-decoration: underline; }
#mainWrap.result .pagination__link--number {
  border-radius: 4px;
  border: 1px solid #888;
  color: #333;
}
#mainWrap.result .pagination__link--number_active {
  background: #333;
  color: #fff;
}
#mainWrap.result .pagination__link--number {
  transition: all 0.5s;
}
#mainWrap.result .pagination__link--number:hover {
  background: #f2f2f2;
}
#mainWrap.result .pagination__link--number_active:hover {
  background: #333;
}
.result-wrap .pagination { margin: 15px 0 80px; }
#mainWrap.result .middle-ttl {
  padding: 0;
  color: #333;
  font-size: 28px;
  font-weight: normal;
}
#mainWrap.review_preview .middle-ttl {
  margin-top: 0;
}
#mainWrap.result .middle-ttl:before { display: none; }
#mainWrap.result .small-ttl {
  font-size: 16px;
}
#mainWrap.result .result-item-link .small-ttl {
  font-size: 20px;
}
#mainWrap.result .hotel_ranking {
  width: 100%;
  min-width: 960px;
  background: #f2f2f2;
  padding: 40px 0;
  margin-bottom: 80px;
}
#mainWrap.result .hotel_ranking__list {
  border: none;
  padding: 0;
}
#mainWrap.result .hotel_ranking__item { position: relative; }
#mainWrap.result .hotel_ranking__item:before {
  position: absolute;
  top: 10px;
  left: -4px;
  z-index: 2;
  display: inline-block;
  content: counter(ranking_number)'位';
  background: #2488ff;
  width: auto;
  height: auto;
  margin-bottom: 8px;
  padding: 0 12px;
  border: none;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: 24px;
  text-align: center;
}
#mainWrap.result .hotel_ranking__item:first-child:before { background: #e1b303; }
#mainWrap.result .hotel_ranking__item:nth-child(2):before { background: #627a86; }
#mainWrap.result .hotel_ranking__item:nth-child(3):before { background: #81422b; }
#mainWrap.result .hotel_ranking__item .hotel_ranking__link {
  border: none;
  border-radius: 4px;
  background-color: #fff;
  box-shadow: 0px 0px 6px 0px rgba(6, 6, 6, 0.4);
  transition: all 0.5s;
}
#mainWrap.result .hotel_ranking__item .hotel_ranking__link:hover {
  background: #eaf6fd;
}
#mainWrap.result .hotel_ranking__item .section-one-image {
  border-radius: 4px 4px 0 0;
  overflow: hidden;
  width: 100%;
  height: 102px;
  position: relative;
}
#mainWrap.result .hotel_ranking__item .section-one-image .hotel_ranking__img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
}
#mainWrap.result .hotel_ranking__item .section-one-body { padding: 15px; }
#mainWrap.result .hotel_ranking__item .section-one-body .small-ttl {
  font-size: 14px;
  font-weight: normal;
  line-height: 1.4;
}
#mainWrap.result .hotel_ranking__item .section-one-body .section-one-crown {
  width: 102px;
  height: 13px;
  margin-top: 12px;
}
#mainWrap.result .hotel_ranking__item .section-one-body .section-one-crown img { width: 100%; }
#mainWrap.result .hotel_ranking .section-btn-wrap-side { margin-top: 12px; }
/* --------------------
review.html
-------------------- */
.section-hotel .plan-box-right,
.section-hotel .review-box-right {
  margin: 0 0 0 auto;
  display: flex;
}
.section-hotel .review-box-right .link-btn-list {
  display: flex;
}
.section-hotel .plan-box-right .link-btn-list li,
.section-hotel .review-box-right .link-btn-list li { width: 236px; }
.section-hotel .review-box-right .hotel-box-action { margin-left: 40px; }
.section-hotel .review-box-right .link-btn-list li:first-child { margin-right: 20px; }
#mainWrap.review .section-hotel .section-box-wrap.bg_review {
  width: 100%;
  min-width: 960px;
  background: url(../img/bg_review.png) no-repeat 0 0;
  background-size: cover;
  padding: 60px 0;
  margin-bottom: 30px;
}
#mainWrap.review .section-one-body .section-one-rate {
  margin-bottom: 15px;
  padding: 0 3px;
  cursor: pointer;
  transition: 0.5s all;
}
#mainWrap.review .section-one-body .section-one-rate:hover {
  background: rgba(255,255,255,0.2);
}
#mainWrap.review .section-one-rate li:first-child {
  margin-right: 15px;
  padding-top: 3px;
}
#mainWrap.review .bg_review .section-one-crown {
  margin: 0;
}
#mainWrap.review .section-one-rate li:last-child {
  margin-left: 10px;
  padding-top: 3px;
  font-size: 16px;
  color: #fff;
}
#mainWrap.review .section-one-rate li:last-child span {
  text-decoration: underline;
}
#mainWrap.review .result-box-notice { margin-bottom: 0; }
#mainWrap.review .result-box-notice .review-all-rank {
  color: #ffdb3f;
  font-size: 16px;
  font-weight: bold;
  text-decoration: underline;
  cursor: pointer;
  padding: 0 3px;
  transition: 0.5s all;
}
#mainWrap.review .result-box-notice .review-all-rank:hover {
  background: rgba(255,255,255,0.2);
}
#mainWrap.review .plan-wrap .section-btn-wrap {
  width: 336px;
  margin: 60px auto 30px;
}
#mainWrap.review .plan-wrap h2 {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 15px;
}
#mainWrap.review .section-one-box { justify-content: space-between; }
#mainWrap.review .review-user-rate-btns .primary-btn { border: 1px solid #fff;}
/* --------------------
review_input.html
-------------------- */
#mainWrap.booking-wrap .input-box-line {
  width: 540px;
  box-sizing: border-box;
}
#mainWrap.booking-wrap .input-box-line-wide {
  width: 100%;
  box-sizing: border-box;
}
#mainWrap.booking-wrap .input-box-line-wide .input-box {
  width: 540px;
}
#mainWrap.review_input .input-box-line:last-of-type,
#mainWrap.review_preview .input-box-line:last-of-type { width: 100%; }
#mainWrap.review_input .input-box-2col label img {
  vertical-align: middle;
  line-height: 1;
  padding: 0 10px 0 7px;
}
#mainWrap.booking-wrap .input-box-ttl {
  font-size: 14px;
  font-weight: normal;
  margin-bottom: 0;
}
#mainWrap.booking-wrap .input-box-ttl span { font-size: 12px; }
#mainWrap.review_input .section-box-note {
  color: #888;
  margin: 0 0 5px;
}
#mainWrap.review_input .input-box input,
#mainWrap.review_input .input-box select,
#mainWrap.input .input-box input,
#mainWrap.input .input-box select {
  background-color: #fff;
  border: 1px solid #888;
  border-radius: 4px;
  font-size: 14px;
  margin-right: 0;
}
#mainWrap.input .input-box input,#mainWrap.review_input .input-box input {
  padding-left: 10px;
  padding-right: 10px;
}
#mainWrap.review_input .input-box select,
#mainWrap.input .input-box select { margin-right: 10px; }
#mainWrap.review_input .input-box .input__short_box { width: 165px; }
#mainWrap.review_input .input-box .input__middle_box { width: 340px; }
#mainWrap.review_input .input-box-2col,
#mainWrap.review_preview .input-box-2col {
  margin-bottom: 20px;
  width: 50%;
  display: block;
}
#mainWrap.review_input textarea {
  background-color: #fff;
  border: 1px solid #888;
  border-radius: 4px;
  height: 300px;
  color: #333;
  font-size: 14px;
  margin: 0;
}
#mainWrap.review_input .review-input-wrap,
#mainWrap.preview .preview-input-wrap {
  background-color: #fff5d7;
  padding: 30px;
}
#mainWrap.review_input .review-input-wrap .section-btn-wrap,
#mainWrap.preview .preview-input-wrap .section-btn-wrap {
  width: 336px;
  margin: 0 auto;
}
#mainWrap.review_input .review-input-wrap .section-btn-wrap .section-btn.section-btn-right-arrow:after { right: 3%; }
#mainWrap.review_input .review-input-wrap .input-box label {
  font-size: 14px;
  margin-left: 11px;
}
.review_bg {
  width: 100%;
  min-width: 960px;
  height: 86px;
  border-bottom: 4px solid #004097;
}
.review_bg .header-wrap-box { height: 100%; }
.review_bg .header-logo {
  display: block;
  width: 98px;
  height: 38px;
  margin: 0 5px 0 0;
}
.review_bg .header-logo img { max-width: 98px; }
.review_bg .header-logo #imgHeadLogo {
  background-position: 0 0;
}
.review_bg .header-logo .sprtCmmn {
  background:url(https://hotels.his-j.com/headfoot/images/sprite_common.png) no-repeat;
}
/* --------------------
review_preview.html
-------------------- */
#mainWrap.preview-wrap .input-box-ttl { color: #888; }
#mainWrap.preview-wrap .input-box-txt { font-size: 16px; }
#mainWrap.review_preview .input-box-2col img {
  margin-right: 11px;
  vertical-align: middle;
  line-height: 1;
}
/* --------------------
error.html
-------------------- */
#mainWrap.error #contentsWrap { padding-top: 30px;}
/* --------------------
input.html
-------------------- */
#mainWrap.preview .middle-ttl,
#mainWrap.input .middle-ttl {
  color: #2488ff;
  font-size: 20px;
  border-bottom: 1px solid #2488ff;
  padding: 0 0 5px;
  margin-bottom: 20px;
}
#mainWrap.input .section-btn-wrap {
  width: 256px;
  margin-bottom: 65px;
}
#mainWrap.input .help-icon .help_icon_img,
#mainWrap.input .help-modal-btn { width: 18px;}
#mainWrap.input input.checkin-input { margin-right: 6px; }
#mainWrap.input input.checkin-input + label {
  font-size: 16px;
  font-weight: bold;
}
#mainWrap.input .attention { color: #ff0000; }
#mainWrap.input .input-box input.shareholder-radio + label {
  margin-left: 6px;
}
#mainWrap.input .section-shareholder-area { margin-left: 25px;}
#mainWrap.input .section-shareholder-area .input-box {
  width: 420px;
}
#mainWrap.input .section-shareholder-area .input-box {
  justify-content: space-between;
}
#mainWrap .section-shareholder-btn{
  color: #2488ff;
  cursor: pointer;
}
.section-box-inner.section-box-border-top {
  border-top: 1px solid #d7d7d7;
  padding: 7px 0 0;
}
/* --------------------
ah-modal
-------------------- */
#ahModal { display: none; }
#ahModal .modal-window {
  width: 417px;
  max-width: 417px;
  border-radius: 4px;
}
#ahModal .modal-content {
  width: 100%;
  max-height: 80vh;
  overflow-y: scroll;
}
#div_ahwgt,#v_widget { background: none !important; }
#div_ahwgt * { box-sizing: border-box; }
#div_ahwgt #v_widgetTitle { width: 100%; }
#div_ahwgt #v_widgetTitle > img,
#div_ahwgt .v_widgetBottom img { display: none; }
#div_ahwgt #v_widgetTitle:before {
  content: '海外航空券＋ホテルを探す';
  color: #2488ff;
  font-size: 16px;
  line-height: 1.3;
  padding: 20px 0 0 40px;
  display: block;
  background: url(../img/icon_search02.png) no-repeat 10px 19px;
  background-size: 21px;
}
#div_ahwgt .v_widgetBottom {
  background: none;
  width: 100%;
  height: 0;
}
#div_ahwgt #v_widget { width: 100%; }
#v_widget .widgetInner {
  border: none !important;
  padding: 14px 20px 10px;
}
#v_widget .Wsection { margin-bottom: 0; }
#v_widget .Wsection dt,
#v_widget table th {
  color: #888 !important;
  font-size: 12px;
  font-weight: normal !important;
}
#v_widget .Wsection input[type=text],
#v_widget .Wsection select {
  width: 100%;
  height: 50px !important;
  background-color: #fff;
  border-radius: 4px;
  border: 1px solid #888;
  color: #333;
  font-size: 16px;
  padding: 10px;
  margin-bottom: 14px !important;
}
#v_widget .Wsection select { background: #fff url(../img/icon_bottom02_gray.png) no-repeat center right 8px; }
#v_widget .Wsection:nth-child(3) input,
#v_widget .Wsection:nth-child(4) input {
  width: 55% !important;
  background: url(../img/icon_calender03.png) no-repeat center left 10px;
  padding-left: 40px;
  color: #888;
}
#v_widget .Wsection:nth-child(3) label img,
#v_widget .Wsection:nth-child(4) label img { display: none; }
#v_widget .Wsection table,#v_widget .Wsection th,#v_widget .Wsection td { display: block; }
#v_widget .Wsection table tr td > div {
  color: #888;
  font-size: 12px;
  font-weight: normal;
  width: 110px;
  line-height: 57px;
}
/*#v_widget .Wsection table.tableColor .childAge { margin-top: 18px; }*/
#v_widget .Wsection table.tableColor .childAge select {
  display: inline-block;
}
#v_widget .Wsection table tr td > div:nth-child(4) select { margin-bottom: 3px !important;}
#v_widget .Wsection table tr td select {
  margin-top: 3px;
  display: block;
  width: 78px;
}
#v_widget .Wsection table tr td p {
  clear: both;
  padding-left: 32px;
}
#v_widget .Wsection .rooms-RN table tr td select {
  margin-left: 8px;
  float: right;
}
#v_widget .Wsection .rooms-RN table tr td .childAge select {
  float:none;
}
#v_widget .Wsection table tr td { padding: 0; }
#v_widget .Wsection .tableColor { padding: 15px; }
#v_widget .Wsection .tableColor tr { display: flex; }
#v_widget .Wsection .tableColor tr td:first-child {
  width: 25%;
  padding-right: 15px;
  align-self: center;
}
#v_widget .Wsection table.tableColor .childName { line-height: 57px !important; }
#v_widget .Wsection .tableColor tr td:nth-child(2) { width: 273px; }
#v_widget .Wsection td span { font-weight: normal; }
#v_widget .Wsection.hotel-RN .rooms-RN { margin-bottom: 4px; }
#v_widget .Wsection.hotel-RN { margin-bottom: 15px;}
#v_widget .Wsection:nth-child(6) input { margin-bottom: 0; }
#v_widget .Wsection:nth-child(6) dt img { display: none; }
#v_widget .Wsection:nth-child(6) dt:after {
  content: 'を指定する（任意）';
  display: inline;
}
#v_widget .submit { margin-top: 25px;}
#div_ahwgt .err{
  color: #f00;
}
ol.list_parentheses{
  padding:0;
  margin:0;
}
ol.list_parentheses li{
  list-style-type:none;
  list-style-position:inside;
  counter-increment: cnt;
  margin-bottom: 0;
  text-indent: -2.5em;
  padding-left: 2.5em;
  margin-left: 0;
}
ol.list_parentheses li:before{
  display: marker;
  content: "（" counter(cnt) "）";
}

/* --------------------
loading
-------------------- */
#loaderFrame {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000000;
/*      background: rgba(0, 0, 0, 0.5) url(./img/loading.gif) no-repeat center 40% /20%;*/
  background: rgba(0, 0, 0, 0.5) ;
}
#loaderFrame .loader-wrap{
  width: 100%;
  top: 30vh;
  position: fixed;
}
#loaderFrame p {
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  padding-top: 20px;
  color: #fff;
  font-size: 14px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  text-shadow: 0 0 2px #666;
  position: absolute;
}
._modal-backdrop.modal-backdrop-loader {
  opacity: .5;
}
/* ローディングアニメーション */
#loader,
#loader:after {
border-radius: 50%;
width: 5em;
height: 5em;
}
#loader {
  margin: 30px auto;
  /* font-size: 1px; */
  /* position: relative; */
  /* top: 40%; */
  text-indent: -9999em;
  border-top: 9px solid rgba(255,255,255, 0.2);
  border-right: 9px solid rgba(255,255,255, 0.2);
  border-bottom: 9px solid rgba(255,255,255, 0.2);
  border-left: 9px solid #ffffff;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: load8 1.1s infinite linear;
  animation: load8 1.1s infinite linear;
}
@-webkit-keyframes load8 {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}
@keyframes load8 {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}



.mb100 { margin-bottom: 100px !important; }
.mb80 { margin-bottom: 80px !important; }
.mb75 { margin-bottom: 75px !important; }
.mb65 { margin-bottom: 65px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb5 { margin-bottom: 5px !important; }
.mb0 { margin-bottom: 0 !important;}
.ml5 { margin-left: 5px !important;}