.hotel-suggestions .bannerBox {
  display: flex;
  justify-content: center;
  position: fixed;
  width: 100%;
  left: 0;
  bottom: 10px;
  z-index: 200;
}
.hotel-suggestions .banner {
  position: relative;
  top: 100px;
  width: 300px;
  transition: .5s;
}
.hotel-suggestions.show .banner {
  top: 0;
}
.hotel-suggestions .banner .close {
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
  overflow: hidden;
  width: 28px;
  height: 28px;
  background: url('/assets/img/common/icons/icon_closeround_white.svg') no-repeat center / 12px 12px;
  color: transparent;
  font: 0/0 a;
  text-shadow: none;
}
.browsed-hotels-banner {
  cursor: pointer;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  padding: 8px;
  border-radius: 4px;
  background-color: rgba(75, 75, 75, .95);
  color: #fff;
}
.browsed-hotels-banner .photo {
  display: flex;
  justify-content: center;
  float: left;
  width: 50px;
  height: 50px;
  margin: 0 8px 0 0;
  overflow: hidden;
}
.browsed-hotels-banner .photo .image {
  width: auto;
  height: 100%;
}
.browsed-hotels-banner .info {
  overflow: hidden;
}
.browsed-hotels-banner .info .caption {
  margin-bottom: 4px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.3;
}
.browsed-hotels-banner .info .name {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  margin: 4px 0;
  font-size: 12px;
  line-height: 1.4;
  word-break: break-all;
}
.browsed-hotels-banner .info .condition {
  overflow: hidden;
  margin-top: 4px;
  font-size: 10px;
  line-height: 1.4;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.hotel-suggestions .suggest-modal {
  display: none;
  position: relative;
  z-index: 1000;
}
.hotel-suggestions div,
.hotel-suggestions li,
.hotel-suggestions a {
  font-family: -apple-system, BlinkMacSystemFont, YuGothic, '\30D2\30E9\30AE\30CE\89D2\30B4\0020\0050\0072\006F\004E\0020\0057\0033', 'Hiragino Kaku Gothic ProN', '\30E1\30A4\30EA\30AA', Meiryo, '\FF2D\FF33\0020\FF30\30B4\30B7\30C3\30AF', 'MS PGothic', sans-serif;
}
.suggest-modal .overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: auto;
  background-color: rgba(0, 0, 0, .6);
}
.suggest-modal .suggest-modalContent {
  position: absolute;
  top: 16px;
  left: 50%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: calc(100% - 32px);
  padding: 12px;
  margin-bottom: 16px;
  border-radius: 4px;
  background-color: #fff;
  color: #3b1800;
}
.suggest-modal .suggest-modalContent::after {
  pointer-events: none;
  content: "";
  position: absolute;
  bottom: -16px;
  height: 16px;
  width: 1px;
}
.suggest-modal .suggest-modalContent .caption {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
}
.suggest-modal .suggest-modalContent .caption .ji-search {
  color: #e77611;
  font-size: 24px;
  vertical-align: -2px;
}
.suggest-modal .suggest-modalContent .close {
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
  width: 36px;
  height: 36px;
  background: url('/assets/img/common/icons/icon_closeround_gra.svg') no-repeat center / 13px 12px;
  color: transparent;
  font: 0/0 a;
  text-shadow: none;
}
.suggest-modal .suggest-modalContent .hotels, .suggest-modal .suggest-modalContent .history, .suggest-modal .suggest-modalContent .recommend {
  margin-top: 20px;
}
.suggest-modal .suggest-modalContent .hotels .sub-caption, .suggest-modal .suggest-modalContent .history .sub-caption, .suggest-modal .suggest-modalContent .recommend .sub-caption {
  margin-bottom: 8px;
}
.jalan-subheading.c-heading {
  position: relative;
  padding-left: 12px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.5;
}
.jalan-subheading.c-heading::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  display: block;
  width: 3px;
  margin: 2.5px 0;
  background-color: #e77611;
  border-radius: 2px;
}
.suggest-modal .suggest-modalContent .hotelsList .hotel {
  position: relative;
  display: flex;
  -webkit-box-flex: 0;
  flex: 0 0 142px;
  margin-right: 8px;
}
.suggest-modal .suggest-modalContent .hotelsList .hotel:last-of-type {
  margin-right: 0;
}
.browsed-hotels .hotelsList .hotel {
  padding-top: 24px;
}
.browsed-hotels .hotelsList .hotel:first-child::before {
  left: 11px;
}
.browsed-hotels .hotelsList .hotel:last-child::after {
  right: 11px;
}
.browsed-hotels .hotelsList .hotel::before {
  left: -4px;
}
.browsed-hotels .hotelsList .hotel::after {
  right: -4px;
}
.browsed-hotels .hotelsList .hotel::before, .browsed-hotels .hotelsList .hotel::after {
  content: "";
  position: absolute;
  top: 7px;
  width: calc(50% + 4px);
  height: 2px;
  background-color: #bcb6b3;
  z-index: -1;
}
.suggest-modal .suggest-modalContent .hotel .date {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  min-width: 120px;
  padding: 0 4px;
  border-radius: 8px;
  background-color: #bcb6b3;
  color: #fff;
  font-size: 10px;
  text-align: center;
}

.suggest-modal .suggest-modalContent .hotelsList {
  margin-right: -12px;
  margin-left: -12px;
  padding-left: 12px;
  overflow-x: scroll;
  display: flex;
}
.hotelsList .hotel-info-card {
  cursor: pointer;
  border: 1px solid #bcb6b3;
  box-sizing: border-box;
  width: 142px;
}
.hotelsList .hotel:last-of-type .hotel-info-card::after {
  content: "";
  display: block;
  position: absolute;
  right: -12px;
  width: 12px;
  height: 1px;
}
.hotelsList .hotel-info-card a {
  color: #3b1800;
}
.hotelsList .hotel-info-card .photo {
  width: 100%;
  height: 105px;
  text-align: center;
}
.hotelsList .hotel-info-card .photo .image {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.hotelsList .hotel-info-card .info {
  padding: 4px 5px 9px;
}
.hotelsList .hotel-info-card .info .name {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  min-height: 32px;
  margin-bottom: 4px;
  font-size: 12px;
  line-height: 1.4;
  word-break: break-all;
}
.hotelsList .hotel-info-card .info .area {
  min-height: 26px;
  margin: 4px 0 8px;
  font-size: 10px;
  line-height: 1.3;
}
.hotelsList .hotel-info-card .info .fee {
  margin-top: 8px;
  font-size: 10px;
  line-height: 1.2;
  text-align: right;
}
.hotelsList .hotel-info-card .info .fee .value {
  font-size: 12px;
  font-style: normal;
  font-weight: bold;
}
.browsed-hotels .more {
  margin-top: 10px;
  font-size: 12px;
  font-weight: bold;
  text-align: right;
}
.browsed-hotels .more a {
  color: #1558ce;
}
.suggest-modal .suggest-modalContent .search-condition {
  overflow: hidden;
  display: block;
  padding: 11px 9px;
  border: 1px solid #bcb6b3;
  font-size: 12px;
  font-weight: bold;
  line-height: 1.4;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #1558ce;
}
.hotel-search-history .historyList .item + .item .condition {
  border-top: none;
}
body.showModal .suggest-modal {
  display: block;
}
body.showModal {
  position: fixed;
  width: 100%;
  height: 100%;
  overflow-y: hidden;
}
.suggest-modal .suggest-modalContent p.recommendNotes {
  margin-top: 12px;
  font-size: 12px;
}
.jlnsp-top__latestPlanInfo .jlnsp-top__latestPlanInfo__nav a {
  font-family: -apple-system, BlinkMacSystemFont, YuGothic, '\30D2\30E9\30AE\30CE\89D2\30B4\0020\0050\0072\006F\004E\0020\0057\0033', 'Hiragino Kaku Gothic ProN', '\30E1\30A4\30EA\30AA', Meiryo, '\FF2D\FF33\0020\FF30\30B4\30B7\30C3\30AF', 'MS PGothic', sans-serif;
}
.jlnsp-top__latestPlanInfo__close {
  cursor: pointer;
  top: 0;
  right: 0;
  overflow: hidden;
  width: 28px;
  height:  28px;
  background: url('/assets/img/common/icons/icon_closeround_white.svg') no-repeat center / 12px 12px;
}