@charset "UTF-8";
/* ===================================================================
CSS information

 file name  : yoyakauban.css
 author     : Ability Consultant
 style info : 予約番
=================================================================== */
.con_search #tab, .con_search #panel {
  max-width: 1160px;
  margin: auto;
}
@media only screen and (max-width: 1024px) {
  .con_search #tab, .con_search #panel {
    width: 95%;
  }
}

.con_search #tab:after, .con_search #panel:after {
  content: "";
  display: table;
  clear: both;
}

/* FontSize */
/* -----------------------------------------------------------
	空室検索
----------------------------------------------------------- */
.con_search {
  background: #eeeeee;
}
@media only screen and (min-width: 1025px) {
  .con_search {
    margin: 0 10% 4%;
  }
}
@media print {
  .con_search {
    margin: 0 10% 4%;
  }
}
.ie8 .con_search {
  margin: 0 10% 4%;
}
@media only screen and (max-width: 767px) {
  .con_search {
    display: none;
  }
  .con_search.active {
    display: block;
    overflow-y: scroll;
    z-index: 400;
    position: fixed;
    top: 0;
    width: 100%;
    height: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .con_search #tab {
    width: 100%;
  }
}
.con_search #tab ul {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
}
.con_search #tab ul li {
  background: #666666;
  color: #fff;
  text-align: center;
  padding: .3em;
  width: 50%;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "HGS明朝E", "メイリオ", "ＭＳ Ｐ明朝", "MS PMincho", "Times New Roman", serif;
  font-size: 129%;
  letter-spacing: .2em;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
}
@media only screen and (max-width: 767px) {
  .con_search #tab ul li {
    letter-spacing: 0;
  }
}
.con_search #tab ul li:hover {
  cursor: pointer;
  background: #233f5b;
  color: #fff;
}
.con_search #tab ul li.active {
  background: #eeeeee;
  color: #29211b;
}
.con_search #tab ul li.active:hover {
  cursor: default;
}
.con_search #tab ul li.lnk_day a {
  text-decoration: none;
  color: #fff;
  display: block;
}
.con_search #tab ul li.lnk_day a:hover {
  color: #fff;
}
.con_search #panel {
  display: flex;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_search #panel {
    align-items: flex-start;
    justify-content: space-between;
  }
  .con_search #panel .box_panel {
    width: 72%;
  }
  .con_search #panel #bestrate_badge {
    width: 25%;
    text-align: center;
  }
  .con_search #panel #bestrate_badge img {
    max-width: 100%;
    height: auto;
  }
}
@media only screen and (max-width: 767px) {
  .con_search #panel {
    display: block;
    padding-bottom: 5em;
  }
}
.con_search #panel #bestrate_badge {
  text-align: center;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_search #panel #bestrate_badge {
    display: flex;
    align-items: center;
  }
}
.con_search #panel #bestrate_badge img {
  margin: 10px;
}

/* -----------------------------------------------------------
	予約番用
----------------------------------------------------------- */
/* 下段を横並びに強制 */
.box_subinfo {
  display: flex !important;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  margin-top: 20px;
  margin-bottom: 20px;
  margin-left: 40px;
}

/* ボタン群 */
.box_subinfo .btns {
  display: flex;
  gap: 10px;
  flex-wrap: nowrap;
}

/* 各リンク */
.box_subinfo .btns p {
  display: block;
}

/* TELエリア */
.box_subinfo .box_tel {
  display: flex;
  align-items: center;
  gap: 15px;
  white-space: nowrap;
}

.con_search #panel .box_panel .box_subinfo {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/* 幅リセットが最重要 */
.con_search #panel .box_panel .box_subinfo .btns,
.con_search #panel .box_panel .box_subinfo .box_tel {
  width: auto;
}

/* 左側（ボタン） */
.con_search #panel .box_panel .box_subinfo .btns {
  display: flex;
  gap: 10px;
}

/* ボタン内のp */
.con_search #panel .box_panel .box_subinfo .btns p {
  display: block;
}

/* 右側（TEL） */
.con_search #panel .box_panel .box_subinfo .box_tel {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-left: auto;
  /* ←これが一番重要 */
  white-space: nowrap;
}

/* ==============================
  ボタン群を完全再現
============================== */
.con_search #panel .box_panel .box_subinfo .btns {
  display: flex;
  gap: 8px;
  justify-content: flex-start;
}

/* pは箱化 */
.con_search #panel .box_panel .box_subinfo .btns p {
  display: block;
  margin: 0;
}

/* ★これが一番重要（ボタン化） */
.con_search #panel .box_panel .box_subinfo .btns p a {
  display: block;
  background: #a67c52;
  /* ←画像の色に寄せる */
  color: #fff;
  padding: 8px 16px;
  font-size: 13px;
  text-decoration: none;
  white-space: nowrap;
}

/* ホバー */
.con_search #panel .box_panel .box_subinfo .btns p a:hover {
  opacity: 0.7;
}

/* ==============================
  電話エリア完全再現
============================== */
.con_search #panel .box_panel .box_subinfo .box_tel {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-left: auto;
}

/* 受付時間ラベル */
.con_search #panel .box_panel .box_subinfo .box_tel .time {
  background: #666;
  /* ←濃いグレー */
  color: #fff;
  padding: 5px 12px;
  font-size: 13px;
  white-space: nowrap;
}

/* TEL全体 */
.con_search #panel .box_panel .box_subinfo .box_tel .tel {
  font-size: 14px;
  color: #666;
  display: flex;
  align-items: center;
  gap: 5px;
  font-family: "游明朝", "Yu Mincho", "Hiragino Mincho ProN", "MS PMincho", serif;
}

/* 電話番号強調 */
.con_search #panel .box_panel .box_subinfo .box_tel .tel-link {
  font-size: 24px;
  font-weight: bold;
  color: #666;
}

/* ==============================
  上段フォーム横並び（最重要）
============================== */
/* フォーム全体を横並び */
.con_search #panel .box_panel form {
  margin-left: 40px;
  display: flex;
  align-items: flex-end;
  gap: 50px;
  flex-wrap: wrap;
  margin-right: 30px;
}

/* 日付・泊数・部屋数・人数ブロック */
.con_search #panel .box_panel .inbox_489ban {
  display: flex;
  gap: 50px;
}

/* dlを「ラベル＋入力の1セット」にする */
.con_search #panel .box_panel dl {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  height: 100%;
}

/* dt, ddの余白リセット */
.con_search #panel .box_panel dt,
.con_search #panel .box_panel dd {
  margin: 0;
}

/* 日付の中だけ横並び */
.con_search #panel .box_panel .date_489ban dd {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  /* ← 左寄せ */
  gap: 12px;
}

/* 入力UI */
.con_search #panel .box_panel input {
  background: #fff;
  border: none;
  /* ← グレー枠削除 */
  outline: none;
  box-shadow: none;
  padding: 10px 14px;
  /* ← 大きく */
  font-size: 16px;
  /* ← 文字も大きく */
  min-width: 10px;
  /* ← 横幅も確保 */
}

.con_search #panel .box_panel select {
  background: #fff;
  border: none;
  /* ← グレー枠削除 */
  outline: none;
  box-shadow: none;
  padding: 10px 14px;
  /* ← 大きく */
  font-size: 16px;
  /* ← 文字も大きく */
  min-width: 120px;
  /* ← 横幅も確保 */
}

/* 検索ボタン */
.con_search #panel .box_panel button {
  height: 40px;
  padding: 0 20px;
  background: #a67c52;
  color: #fff;
  border: none;
  cursor: pointer;
  font-size: 16px;
}

/* ホバー */
.con_search #panel .box_panel button:hover {
  opacity: 0.8;
}

/* ==============================
  タブレット用
============================== */
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #panel {
    position: relative;
  }

  .con_search #panel {
    align-items: stretch;
  }

  /* 宿泊日だけ広く */
  /* OK（こっちに変更） */
  .date_489ban input[type="date"] {
    width: 180px;
  }

  /* 他はコンパクト */
  .stay_489ban select,
  .room_489ban select,
  .person_489ban select {
    width: auto;
    min-width: 100px;
  }

  .con_search #panel .box_panel form {
    margin-top: 20px;
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: 16px;
    align-items: end;
    max-width: 640px;
    margin: 20px auto 0;
  }

  /* 宿泊日 */
  .con_search #panel .box_panel .date_489ban {
    grid-column: 1;
  }

  /* 泊数 */
  .con_search #panel .box_panel .stay_489ban {
    grid-column: 2;
  }

  /* 部屋数 */
  .con_search #panel .box_panel .room_489ban {
    grid-column: 3;
  }

  /* 大人 */
  .con_search #panel .box_panel .person_489ban {
    grid-column: 4;
  }

  /* 検索ボタン */
  .con_search #panel .box_panel button {
    grid-column: 1 / -1;
    justify-self: center;
  }

  /* ラッパー解除 */
  .con_search #panel .box_panel .inbox_489ban {
    display: contents;
  }

  /* BEST RATE */
  #bestrate_badge {
    position: absolute;
    right: 40px;
    bottom: 5px;
    display: block;
  }

  /* ボタン4つ */
  .box_subinfo {
    flex-direction: column;
    align-items: center;
    gap: 16px;
    justify-content: center;
    margin-top: 20px;
    margin-left: 0;
  }

  .box_subinfo .btns {
    width: 100%;
    display: flex;
    justify-content: center !important;
    gap: 16px;
    width: fit-content;
  }

  .box_subinfo .btns p {
    width: 24%;
  }

  .box_subinfo .btns p a {
    width: 100%;
    text-align: center;
  }

  .box_subinfo .box_tel {
    margin-left: 0 !important;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    width: fit-content;
  }

  .date_489ban dd {
    flex-wrap: nowrap;
    display: flex;
    align-items: center;
    gap: 10px;
    white-space: nowrap;
  }

  .date_489ban dd label {
    display: flex;
    align-items: center;
    gap: 4px;
  }

  .person_489ban dd {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  .room_489ban dd,
  .person_489ban dd {
    display: flex;
    align-items: center;
    gap: 6px;
  }
}
