/*
  トップページ用のdomhotel-pc.css
  本来トップページではdomhotel-pc.cssの読み込みは不要なはずだが
  消してしまうのは怖い + domhotel-pc.cssの変更の影響がトップページに出るのを避けるため
  20200814リリース時点のdomhotel-pc.cssをdomhotel-pc-top.cssという名前でコピーして
  トップページからはdomhotel-pc-top.cssを参照するようにする(JTBMAINT-1443)
*/
@charset "UTF-8";
/* v1.0 2017/10/18 */
/* domhotel-pc.css */
/* search
---------------------------------------------------------- */
/* search 基本検索 */
.domhotel-search {
  position: relative;
}
.domhotel-search .dom-search__column {
  margin-bottom: 10px;
}
.domhotel-search__dep-area {
  width: 14rem;
  float: left;
  margin-right: 15px;
}
.domhotel-search__place {
  width: 36rem;
  float: left;
  margin-right: 15px;
}
.domhotel-search__date {
  width: 14rem;
  float: left;
  position: static;
}
.domhotel-search__date .dom-search__panel--calendar {
  top: 40px;
}
.domhotel-search__night {
  width: 8rem;
  float: left;
  margin-right: 15px;
  margin-left: -1px;
}
.domhotel-search__night .dom-search__input--night:before {
  display: none;
}
.domhotel-search__night .dom-search__input--night input {
  padding-left: 10px;
}
.domhotel-search__people {
  width: 24rem;
  float: left;
  margin-right: 15px;
}
.domhotel-search__people .dom-search__panel--people {
  width: 38rem;
  left: auto;
  right: 0;
}
.domhotel-search__people .dom-spinbox__label {
  width: calc(100%);
}
.domhotel-search__people .dom-spinbox--room {
  border-bottom: 1px solid #d7d7d7;
  margin-bottom: 20px;
}
.domhotel-search__people .domhotel-people-warning {
  font-size: 1.1rem;
  position: absolute;
  bottom: 100%;
  left: 0;
  white-space: nowrap;
  background-color: #fff;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.2);
  padding: .5rem 1rem;
  border-radius: 4px;
  opacity: 0;
  visibility: hidden;
  transition: all .2s;
  z-index: 1;
}
.domhotel-search__people:hover .domhotel-people-warning {
  opacity: 1;
  visibility: visible;
}
.domhotel-search__room {
  width: 10rem;
  float: left;
  margin-right: 15px;
}
.domhotel-search__btn-submit {
  width: 14rem;
  z-index: 2;
}
.domhotel-search__option {
  clear: both;
  padding-top: 5px;
}
.domhotel-search__option .dom-search-option__selected {
  padding-right: 17rem;
  bottom: 0;
}

@media screen and (max-width: 1110px) {
  .domhotel-search__btn-submit {
    position: static;
    margin-bottom: 10px;
  }
}
/* plan プラン検索 */
.domhotel-search-plan .domhotel-search__date .dom-search__panel--calendar {
  left: 0;
  position: absolute;
}

/* location 地図から探す */
.domhotel-search-location {
  height: 100vh;
  margin-bottom: 20px;
}
.domhotel-search-location__in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  border: 2px solid #195178;
  overflow: hidden;
  height: 100%;
  background-color: #fff;
}
.domhotel-search-location.is-fixed {
  margin-top: 100%;
}
.domhotel-search-location.is-fixed .domhotel-search-location__in {
  width: 1120px;
  position: fixed;
  top: 0;
  left: auto;
  z-index: 10;
}
.domhotel-search-location.is-released {
  margin-top: 100%;
}
.domhotel-search-location__column-01 {
  min-width: 27.5rem;
  width: 27.5rem;
  box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.5);
  position: relative;
  z-index: 100;
}
.domhotel-search-location__column-02 {
  width: 100%;
  position: relative;
}
.domhotel-search-location__map {
  width: 100%;
  height: 100%;
  position: relative;
}
.domhotel-search-location .dom-search-conditions {
  height: 100%;
  overflow: auto;
}
.domhotel-search-location__hotel {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 100;
  background-color: rgba(0, 0, 0, 0.6);
  width: 240px;
  padding: 6px;
  overflow: auto;
  max-height: 100%;
}
.domhotel-search-location__hotel-item {
  margin-bottom: 6px;
}
.domhotel-search-location__btn-refresh {
  margin: 5px 10px 15px;
}
.domhotel-search-location__pager {
  margin: 15px 0 6px;
}

.domhotel-section-search__txt-01 {
  margin: 10px 0 -10px;
}

.domhotel-section-search #panel01 {
  margin-top: 25px;
}

/* result
---------------------------------------------------------- */
.domhotel-result-header .dom-result-header__display-number {
  bottom: auto;
  top: 0;
}
.domhotel-result-header .dom-sort__item {
  padding: 0 .5em;
}

/* 地図の下に固定 表示件数 */
.domhotel-result-header.is-fixed {
  position: static;
}
.domhotel-result-header.is-fixed .dom-result-header__display-number {
  position: fixed;
  top: auto;
  right: auto;
  bottom: 11px !important;
  z-index: 12;
  margin-left: 15px;
}
.domhotel-result-header.is-fixed .dom-form-pulldown__panel {
  top: auto;
  bottom: 100%;
}

/* 地図の下に固定 ページャー */
.domhotel-result-pager.is-fixed {
  position: fixed;
  bottom: 5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 11;
  width: 1120px;
  padding-right: 5px;
}

/* 検索結果の客室ごとヘッダー */
.domhotel-result-room__header {
  padding: 10px;
  background-color: #d0e8ff;
  margin-bottom: 20px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  position: relative;
}
.domhotel-result-room__header:after {
  content: "";
  border-style: solid;
  border-width: 15px 20px 0 20px;
  border-color: #d0e8ff transparent transparent transparent;
  position: absolute;
  bottom: -15px;
  left: 50%;
  margin-left: -15px;
}
.domhotel-result-room__column-01 {
  padding: 10px;
}
.domhotel-result-room__column-02 {
  width: 15rem;
  min-width: 15rem;
}
.domhotel-result-room__name {
  display: inline-block;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.2;
}
.domhotel-result-room__txt-01 {
  font-size: 1.1rem;
  color: #777;
}

/* 20200508:絞り込み項目レイアウト改修 */
.domhotel-result-header {
  z-index: 3;
}
.domhotel-result-header .dom-result-header__count {
  margin-bottom: .5em;
}
.domhotel-result-header .domhotel-selected-conditions__list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: center;
  align-items: center;
  margin-bottom: .8rem;
}
.domhotel-result-header .domhotel-selected-conditions__item {
  margin: 0 .8rem .8rem 0;
  padding: .5rem 2.4rem .5rem .8rem;
  height: 2.4rem;
  border-radius: 2px;
  font-size: 1.2rem;
  line-height: 1;
  cursor: pointer;
  border: 1px solid #999;
  color: #666;
  position: relative;
}
.domhotel-result-header .domhotel-selected-conditions__item:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-result-header .domhotel-selected-conditions__item:hover {
  opacity: .8;
}
.domhotel-result-header .domhotel-selected-conditions__item:before {
  font-size: 1.1rem;
  color: #3c92ba;
  position: absolute;
  top: 50%;
  right: 0.6rem;
  margin-top: -.5em;
}
.domhotel-result-header .domhotel-selected-conditions__item .domhotel-ico-star {
  position: relative;
  display: inline-block;
  margin-right: .5em;
}
.domhotel-result-header .domhotel-selected-conditions__item .domhotel-ico-star:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-result-header .domhotel-selected-conditions__item .domhotel-ico-star:before {
  color: #fcaa05;
}
.domhotel-result-header .domhotel-selected-conditions__btn-clear {
  margin: 0 .8rem .8rem 0;
  padding: .5rem .8rem;
  height: 2.4rem;
  border-radius: 2px;
  font-size: 1.2rem;
  line-height: 1;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #2d6e8c;
  font-weight: bold;
  color: #2d6e8c;
}
.domhotel-result-header .domhotel-selected-conditions__btn-clear:hover {
  opacity: .8;
}
.domhotel-result-header .domhotel-selected-conditions__block {
  margin-top: .8rem;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.domhotel-result-header .domhotel-selected-conditions__block > dt {
  white-space: nowrap;
  line-height: 2.4rem;
}
.domhotel-result-header .domhotel-selected-conditions__block > dt:after {
  content: "：";
}
.domhotel-result-header .domhotel-selected-conditions__block > dd {
  flex: 1;
  padding-left: .8rem;
}
.domhotel-result-header .dom-sort__item {
  background-color: #fff;
  border: 1px solid #999;
  border-radius: 4px;
  margin-right: .5em;
  padding: .5rem 1rem;
  line-height: 1;
  transition: all .2s;
}
.domhotel-result-header .dom-sort__item:hover, .domhotel-result-header .dom-sort__item--active {
  border-color: #666;
  background-color: #666;
  color: #fff;
}
.domhotel-result-header .dom-display-number {
  position: static;
  align-self: flex-start;
}
.domhotel-result-header .dom-display-number .dom-form-pulldown__input input {
  height: 35px;
}

/* hotel
---------------------------------------------------------- */
/* hotel - list 検索結果 */
.domhotel-hotel-list {
  position: relative;
  margin: 20px 0 50px;
}
.domhotel-hotel-list__item {
  padding: 20px;
  margin-bottom: 20px;
  background-color: #fff;
}
.domhotel-hotel-list__item-in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.domhotel-hotel-list__column-01 {
  width: 67.51%;
  margin-bottom: 15px;
}
.domhotel-hotel-list__column-01 .dom-hotel-details__hotel-ico {
  float: left;
}
.domhotel-hotel-list__column-02 {
  width: 29.29%;
  margin-bottom: 15px;
}
.domhotel-hotel-list__column-03 {
  width: 20rem;
}
.domhotel-hotel-list__column-04 {
  width: 39.49%;
}
.domhotel-hotel-list__column-05 {
  width: 29.29%;
  position: relative;
  padding-bottom: 75px;
}
.domhotel-hotel-list .domhotel-total-label {
  margin-bottom: .4rem;
  color: #777;
}
.domhotel-hotel-list .domhotel-total-label .domhotel-people {
  display: inline-block;
}
.domhotel-hotel-list .domhotel-total-label .domhotel-tax {
  display: inline-block;
  margin-left: .2em;
}
.domhotel-hotel-list .domhotel-total-label .domhotel-tooltip-link {
  display: inline-block;
  font-size: 1.2rem;
  position: relative;
  padding-right: 1.2em;
  cursor: pointer;
  position: relative;
}
.domhotel-hotel-list .domhotel-total-label .domhotel-tooltip-link:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-hotel-list .domhotel-total-label .domhotel-tooltip-link:before {
  color: #999;
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -.5em;
}
.domhotel-hotel-list .domhotel-total-label .domhotel-tooltip-link:hover .domhotel-tooltip-content {
  opacity: 1;
  visibility: visible;
}
.domhotel-hotel-list .domhotel-total-label .domhotel-tooltip-content {
  font-size: 1.1rem;
  position: absolute;
  bottom: 100%;
  right: 0;
  white-space: nowrap;
  background-color: #fff;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.4);
  padding: .5rem 1rem;
  margin-bottom: .5rem;
  border-radius: 4px;
  opacity: 0;
  visibility: hidden;
  transition: all .2s;
  z-index: 1;
}
.domhotel-hotel-list .domhotel-total-price {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  -webkit-align-items: flex-end;
  align-items: flex-end;
}
.domhotel-hotel-list .domhotel-total-price .domhotel-from,
.domhotel-hotel-list .domhotel-total-price .domhotel-to {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1;
}
.domhotel-hotel-list .domhotel-total-price .domhotel-from em,
.domhotel-hotel-list .domhotel-total-price .domhotel-to em {
  font-size: 2.5rem;
  font-weight: bold;
}
.domhotel-hotel-list .domhotel-per-price {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  align-items: center;
  margin-top: .5rem;
}
.domhotel-hotel-list .domhotel-per-price .domhotel-adult {
  font-size: 1.2rem;
  color: #777;
}
.domhotel-hotel-list .domhotel-per-price .domhotel-range {
  margin-left: .5em;
}

/* hotel - details 施設詳細 */
.domhotel-hotel-details__in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.domhotel-hotel-details__column-01 {
  min-width: 45rem;
  width: 45rem;
  padding-bottom: 2rem;
}
.domhotel-hotel-details__column-02 {
  width: calc(100% - 45rem);
  padding-left: 30px;
}
.domhotel-hotel-details__column-03 {
  width: 50%;
  align-self: center;
}
.domhotel-hotel-details__column-03 .domhotel-hotel-details__dp-list > li {
  margin-bottom: 8px;
}
.domhotel-hotel-details__column-04 {
  width: 50%;
  padding-left: 20px;
  position: relative;
}
.domhotel-hotel-details__column-04 .dom-hotel-price {
  margin-bottom: 0;
}
.domhotel-hotel-details__column-row {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  position: relative;
}
.domhotel-hotel-details__action-list {
  white-space: nowrap;
  font-size: 0;
  margin-bottom: 20px;
}
.domhotel-hotel-details__action-list > li {
  display: inline-block;
  min-width: 10rem;
  padding-left: 10px;
}
.domhotel-hotel-details__area {
  margin-bottom: 20px;
}
.domhotel-hotel-details__area .domhotel-area-txt:before {
  content: "［";
}
.domhotel-hotel-details__area .domhotel-area-txt:after {
  content: "］";
}
.domhotel-hotel-details__icons {
  width: 60%;
}
.domhotel-hotel-details__rating {
  margin-left: auto;
}
.domhotel-hotel-details__lead {
  margin: 1em 0;
}
.domhotel-hotel-details__dp-list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.domhotel-hotel-details__dp-list > li {
  margin-right: 8px;
}
.domhotel-hotel-details__dp-list > li:last-child {
  margin-right: 0;
}
.domhotel-hotel-details .dom-hotel-details__ico-list-01 > li {
  margin-right: 10px;
}
.domhotel-hotel-details .dom-hotel-details__btn {
  width: 27rem;
}
.domhotel-hotel-details .domhotel-btn-map {
  display: inline-block;
  border: 1px solid #aaa;
  border-radius: 3px;
  background-color: #fff;
  color: #125687;
  position: relative;
  font-weight: bold;
  text-decoration: none;
  font-size: 1.2rem;
  line-height: 25px;
  padding: 0 .8em 0 .5em;
  margin-left: .5em;
}
.domhotel-hotel-details .domhotel-btn-map:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-hotel-details .domhotel-btn-map:hover {
  opacity: .8;
}
.domhotel-hotel-details .domhotel-btn-map:before {
  margin-right: .2em;
}
.domhotel-hotel-details .domhotel-hotel-ico-list {
  margin-bottom: auto;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: center;
  align-items: center;
}
.domhotel-hotel-details .domhotel-hotel-ico-list > li {
  margin: 0 2.5rem .5rem 0;
}
.domhotel-hotel-details .domhotel-hotel-ico-list > li img {
  width: 2rem;
  margin-right: .3rem;
}
.domhotel-hotel-details .domhotel-recommend-ico-list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: center;
  align-items: center;
}
.domhotel-hotel-details .domhotel-recommend-ico-list > li {
  margin: .5rem 1rem 0 0;
}
.domhotel-hotel-details .dom-hotel-details__access {
  margin: 1em 0 2em;
}
.domhotel-hotel-details .dom-hotel-details__access-label {
  display: inline;
}
.domhotel-hotel-details .dom-hotel-details__access-label:after {
  content: "：";
}
.domhotel-hotel-details .dom-hotel-details__access-txt {
  display: inline;
}
.domhotel-hotel-details .domhotel-link-dp-air,
.domhotel-hotel-details .domhotel-link-dp-jr {
  display: block;
  color: #125687;
  border: 1px solid #125687;
  border-radius: 4px;
  padding: .7rem 1rem .7rem 3.5rem;
  text-decoration: none;
  text-align: center;
  font-size: 1.2rem;
  line-height: 1.3;
  white-space: nowrap;
  position: relative;
}
.domhotel-hotel-details .domhotel-link-dp-air em,
.domhotel-hotel-details .domhotel-link-dp-jr em {
  font-weight: bold;
  font-size: 1.3rem;
  display: block;
}
.domhotel-hotel-details .domhotel-link-dp-air:before,
.domhotel-hotel-details .domhotel-link-dp-jr:before {
  position: absolute;
  top: 50%;
  left: 1rem;
  margin-top: -.5em;
  font-size: 1.8rem;
}
.domhotel-hotel-details .domhotel-link-dp-air {
  position: relative;
}
.domhotel-hotel-details .domhotel-link-dp-air:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-hotel-details .domhotel-link-dp-jr {
  position: relative;
}
.domhotel-hotel-details .domhotel-link-dp-jr:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-hotel-details .domhotel-total-label {
  margin-bottom: .4rem;
  color: #777;
}
.domhotel-hotel-details .domhotel-total-label .domhotel-people {
  display: inline-block;
}
.domhotel-hotel-details .domhotel-total-label .domhotel-tax {
  display: inline-block;
  margin-left: .2em;
}
.domhotel-hotel-details .domhotel-total-label .domhotel-tooltip-link {
  display: inline-block;
  font-size: 1.2rem;
  position: relative;
  padding-right: 1.2em;
  cursor: pointer;
  position: relative;
}
.domhotel-hotel-details .domhotel-total-label .domhotel-tooltip-link:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-hotel-details .domhotel-total-label .domhotel-tooltip-link:before {
  color: #999;
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -.5em;
}
.domhotel-hotel-details .domhotel-total-label .domhotel-tooltip-link:hover .domhotel-tooltip-content {
  opacity: 1;
  visibility: visible;
}
.domhotel-hotel-details .domhotel-total-label .domhotel-tooltip-content {
  font-size: 1.1rem;
  position: absolute;
  bottom: 100%;
  right: 0;
  white-space: nowrap;
  background-color: #fff;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.4);
  padding: .5rem 1rem;
  margin-bottom: .5rem;
  border-radius: 4px;
  opacity: 0;
  visibility: hidden;
  transition: all .2s;
  z-index: 1;
}
.domhotel-hotel-details .domhotel-total-price {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  -webkit-align-items: flex-end;
  align-items: flex-end;
}
.domhotel-hotel-details .domhotel-total-price .domhotel-from,
.domhotel-hotel-details .domhotel-total-price .domhotel-to {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1;
}
.domhotel-hotel-details .domhotel-total-price .domhotel-from em,
.domhotel-hotel-details .domhotel-total-price .domhotel-to em {
  font-size: 2.5rem;
  font-weight: bold;
}
.domhotel-hotel-details .domhotel-per-price {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  align-items: center;
  margin-top: .5rem;
}
.domhotel-hotel-details .domhotel-per-price .domhotel-adult {
  font-size: 1.2rem;
  color: #777;
}
.domhotel-hotel-details .domhotel-per-price .domhotel-range {
  margin-left: .5em;
}

.domhotel-hotel-ttl {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin-bottom: 2rem;
}
.domhotel-hotel-ttl__ico {
  padding-right: 1.5rem;
}
.domhotel-hotel-ttl__ico img {
  height: 2.7rem;
}
.domhotel-hotel-ttl__name {
  flex: 1;
}
.domhotel-hotel-ttl__name .dom-heading-04 {
  margin-bottom: 0;
}
.domhotel-hotel-ttl .domhotel-tooltip-link {
  cursor: pointer;
  position: relative;
}
.domhotel-hotel-ttl .domhotel-tooltip-link:hover .domhotel-tooltip-premium {
  opacity: 1;
  visibility: visible;
}
.domhotel-hotel-ttl .domhotel-tooltip-premium {
  font-size: 1.2rem;
  position: absolute;
  width: 23rem;
  top: 100%;
  left: 0;
  background-color: #fff;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5);
  padding: 1.5rem;
  margin-top: 2.5rem;
  opacity: 0;
  visibility: hidden;
  transition: all .2s;
  z-index: 1;
}
.domhotel-hotel-ttl .domhotel-tooltip-premium:before {
  content: "";
  display: block;
  width: 100%;
  height: .6rem;
  background: -webkit-linear-gradient(left, #bf1923 0%, #fff 100%);
  background: linear-gradient(to right, #bf1923 0%, #fff 100%);
  position: absolute;
  top: 0;
  left: 0;
}
.domhotel-hotel-ttl .domhotel-tooltip-premium__ttl {
  font-size: 1.3rem;
  font-weight: bold;
  margin-bottom: .5em;
}

/* hotel - menu メニュー（タブ型） */
.domhotel-hotel-menu {
  margin: 0;
  padding: 0 0 40px 0;
  background-color: #f7f7f7;
  z-index: 999;
  transition: all .2s;
}
.domhotel-hotel-menu .dom-tab__list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  justify-content: space-around;
}
.domhotel-hotel-menu .dom-tab__list > li a {
  transition: color .2s;
}
.domhotel-hotel-menu .dom-tab__list > li a:hover {
  color: #333;
  font-weight: bold;
}
.domhotel-hotel-menu .dom-tab__item.is-active:after {
  background-color: #cc0d21;
}
.domhotel-hotel-menu.is-fixed {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  padding: 10px 0 0;
  box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.2);
}
.domhotel-hotel-menu.is-fixed .dom-tab__list {
  min-width: 970px;
  max-width: 1120px;
  margin: auto;
  position: relative;
}
.domhotel-hotel-menu.is-fixed + * {
  margin-top: 102.5px;
}
.domhotel-hotel-menu .domhotel-count {
  font-size: 1.4rem;
}
.domhotel-hotel-menu .domhotel-count:before {
  content: "（";
}
.domhotel-hotel-menu .domhotel-count:after {
  content: "）";
}

.domhotel-hotel-menu-landing {
  margin-top: -73px;
  padding-top: 73px;
}

/* plan
---------------------------------------------------------- */
/* plan - list 検索結果 */
.domhotel-plan-list {
  margin: 20px 0 50px;
}
.domhotel-plan-list__item {
  padding: 20px;
  margin-bottom: 20px;
  background-color: #fff;
}
.domhotel-plan-list__item-in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.domhotel-plan-list__column-01 {
  margin-bottom: 20px;
}
.domhotel-plan-list__column-01 .dom-plan-details__plan-ico {
  width: auto;
  margin-bottom: 1rem;
}
.domhotel-plan-list__column-01 .dom-plan-details__plan-ico img {
  width: 92px;
  /* width: 120px; から変更 */
}
.domhotel-plan-list__column-02 {
  width: 67.51%;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.domhotel-plan-list__column-03 {
  width: 29.29%;
  position: relative;
  padding-bottom: 75px;
}
.domhotel-plan-list__column-04 {
  text-align: center;
}
.domhotel-plan-list__column-image {
  width: 22rem;
}
.domhotel-plan-list__column-info {
  width: calc(100% - 22rem);
  min-width: calc(100% - 22rem);
}
.domhotel-plan-list__column-note {
  clear: both;
  width: 100%;
  padding-top: 15px;
  font-size: 1.2rem;
}
.domhotel-plan-list .dom-accordion-content-02 {
  height: 110px;
}
.domhotel-plan-list .dom-accordion-content-02.is-open {
  overflow: visible;
  height: auto;
}
.domhotel-plan-list .domhotel-total-label {
  margin-bottom: .4rem;
  color: #777;
}
.domhotel-plan-list .domhotel-total-label .domhotel-people {
  display: inline-block;
}
.domhotel-plan-list .domhotel-total-label .domhotel-tax {
  display: inline-block;
  margin-left: .2em;
}
.domhotel-plan-list .domhotel-total-label .domhotel-tooltip-link {
  display: inline-block;
  font-size: 1.2rem;
  position: relative;
  padding-right: 1.2em;
  cursor: pointer;
  position: relative;
}
.domhotel-plan-list .domhotel-total-label .domhotel-tooltip-link:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-plan-list .domhotel-total-label .domhotel-tooltip-link:before {
  color: #999;
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -.5em;
}
.domhotel-plan-list .domhotel-total-label .domhotel-tooltip-link:hover .domhotel-tooltip-content {
  opacity: 1;
  visibility: visible;
}
.domhotel-plan-list .domhotel-total-label .domhotel-tooltip-content {
  font-size: 1.1rem;
  position: absolute;
  bottom: 100%;
  right: 0;
  white-space: nowrap;
  background-color: #fff;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.4);
  padding: .5rem 1rem;
  margin-bottom: .5rem;
  border-radius: 4px;
  opacity: 0;
  visibility: hidden;
  transition: all .2s;
  z-index: 1;
}
.domhotel-plan-list .domhotel-total-price {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  -webkit-align-items: flex-end;
  align-items: flex-end;
}
.domhotel-plan-list .domhotel-total-price .domhotel-from,
.domhotel-plan-list .domhotel-total-price .domhotel-to {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1;
}
.domhotel-plan-list .domhotel-total-price .domhotel-from em,
.domhotel-plan-list .domhotel-total-price .domhotel-to em {
  font-size: 2.5rem;
  font-weight: bold;
}
.domhotel-plan-list .domhotel-per-price {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  align-items: center;
  margin-top: .5rem;
}
.domhotel-plan-list .domhotel-per-price .domhotel-adult {
  font-size: 1.2rem;
  color: #777;
}
.domhotel-plan-list .domhotel-per-price .domhotel-range {
  margin-left: .5em;
}

/* plan - details プラン詳細 */
.domhotel-plan-details__item-in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.domhotel-plan-details__column-01 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin-bottom: 10px;
}
.domhotel-plan-details__column-02 {
  width: 76%;
  padding-right: 20px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.domhotel-plan-details__column-03 {
  width: 24%;
  position: relative;
  padding-bottom: 75px;
}
.domhotel-plan-details__column-image {
  width: 30rem;
  min-width: 30rem;
}
.domhotel-plan-details__column-info {
  width: calc(100% - 30rem);
  min-width: calc(100% - 30rem);
}
.domhotel-plan-details__column-note {
  width: 100%;
  padding-top: 15px;
  font-size: 1.2rem;
}
.domhotel-plan-details__figure {
  width: 28rem;
}
.domhotel-plan-details .dom-plan-details__plan-name {
  font-size: 2rem;
  line-height: 1.2;
}
.domhotel-plan-details .dom-plan-details__room-type {
  font-size: 1.6rem;
  margin-bottom: 1.5em;
}
.domhotel-plan-details .dom-plan-details__room-type .dom-ico-point-up {
  margin-left: 1em;
}

/* plan - image プラン画像 */
.domhotel-plan-image__main img {
  max-height: 225px;
}
.domhotel-plan-image__caption {
  text-align: center;
  font-size: 1.1rem;
  line-height: 1.4;
  padding: 10px 0;
}
.domhotel-plan-image.slick-dotted.slick-slider {
  margin-bottom: 0;
}
.domhotel-plan-image .slick-dots {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
  position: static;
}
.domhotel-plan-image .slick-dots > li {
  width: 100px;
  height: 72px;
  margin: 0;
  padding: 2px;
}
.domhotel-plan-image .slick-dots > li img {
  max-height: 72px;
}

/* plan - info プラン内容 */
.domhotel-plan-info__in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.domhotel-plan-info__column-01 {
  width: 30rem;
}
.domhotel-plan-info__column-02 {
  width: calc(100% - 30rem);
  padding-left: 30px;
}
.domhotel-plan-info__ico {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  margin-bottom: 20px;
}
.domhotel-plan-info__ico-txt {
  margin-left: 1em;
  padding-top: 3px;
}

/* plan - change プラン内容の変更 */
.domhotel-plan-change {
  margin-top: 30px;
  border: 2px solid #999;
  display: table;
  width: 100%;
}
.domhotel-plan-change__column-01 {
  display: table-cell;
  vertical-align: middle;
  background-color: #f5f5f5;
  padding: 20px;
  text-align: center;
  position: relative;
  width: 30rem;
}
.domhotel-plan-change__column-01:after {
  content: "";
  border-style: solid;
  border-color: transparent transparent transparent #f5f5f5;
  border-width: 10px 0 10px 10px;
  position: absolute;
  top: 50%;
  right: -10px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 11;
}
.domhotel-plan-change__column-02 {
  display: table-cell;
  vertical-align: middle;
}
.domhotel-plan-change__heading {
  font-size: 1.8rem;
  line-height: 1;
  font-weight: normal;
}
.domhotel-plan-change__list > li {
  font-size: 1.5rem;
  line-height: 1.4;
  margin: .5em 0;
}
.domhotel-plan-change .dom-form-pulldown__input {
  padding: 10px 0;
}
.domhotel-plan-change .dom-form-pulldown__input input {
  color: #333;
  font-weight: bold;
  border: none;
  padding: 0 45px 0 20px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.domhotel-plan-change .dom-form-pulldown__input input:focus {
  box-shadow: none;
}
.domhotel-plan-change .dom-form-pulldown__input:after {
  font-size: 1.8rem;
  right: 20px;
}
.domhotel-plan-change .dom-form-pulldown__input.is-active input {
  box-shadow: none;
}
.domhotel-plan-change .dom-form-pulldown__panel {
  border-color: #999;
  box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.2);
  top: calc(100% + 1px);
  width: calc(100% + 2px);
}
.domhotel-plan-change .dom-form-pulldown .dom-pulldown-list > li {
  padding: 0;
}
.domhotel-plan-change .dom-form-pulldown .dom-pulldown-list > li a {
  padding: 8px 20px;
  display: block;
  text-decoration: none;
}

/* plan - check btn この施設のプランを見るボタン（ページ下部） */
.domhotel-plan-check-btn {
  text-align: right;
  margin-bottom: 40px;
}
.domhotel-plan-check-btn a {
  display: inline-block;
  width: 27rem;
}

/* plan - select プラン選択条件 */
.domhotel-plan-select {
  margin-bottom: 1.5em;
  text-align: center;
}
.domhotel-plan-select__heading {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
  margin-bottom: 1.5em;
  text-align: left;
}
.domhotel-plan-select__content {
  height: 100px;
  overflow: hidden;
}
.domhotel-plan-select__content.is-open {
  height: auto;
}
.domhotel-plan-select__more-btn span:after {
  content: "表示する";
}
.domhotel-plan-select__ico-required {
  background-color: #cc0d21;
  color: #fff;
  white-space: nowrap;
  font-size: 1.2rem;
  line-height: 1;
  padding: 10px;
}
.domhotel-plan-select__ttl {
  padding-left: 1em;
  font-size: 1.6rem;
  line-height: 1.2;
  font-weight: bold;
}
.domhotel-plan-select__column {
  text-align: left;
  margin-bottom: 10px;
  border: 1px solid #d7d7d7;
  padding: 10px 15px;
}
.domhotel-plan-select__label {
  font-size: 1.6rem;
  margin-bottom: .5em;
  position: relative;
}
.domhotel-plan-select__label:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-plan-select__label:before {
  margin-right: .3em;
}
.domhotel-plan-select__price {
  border-top: 1px solid #d7d7d7;
  margin-top: 8px;
  padding-top: 8px;
  text-align: right;
  line-height: 1.4;
}
.domhotel-plan-select__adult-label {
  font-size: 1.1rem;
  margin-right: .5em;
}
.domhotel-plan-select__adult-price {
  font-size: 1.4rem;
}
.domhotel-plan-select__total-label {
  font-size: 1.1rem;
  margin-right: .5em;
}
.domhotel-plan-select__total-price {
  font-size: 1.4rem;
}

/* room
---------------------------------------------------------- */
.domhotel-room__point {
  margin-bottom: 20px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
}
.domhotel-room__point-label {
  position: relative;
  padding-left: 22px;
}
.domhotel-room__point-label:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-room__point-label:before {
  font-size: 1.6rem;
  color: #999;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -.4em;
}
.domhotel-room__point-list {
  padding-left: 1em;
}
.domhotel-room__point-list > li {
  display: inline-block;
  margin-right: 5px;
}
.domhotel-room__info-list > li {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  border-bottom: 1px solid #d7d7d7;
  padding: 10px 0;
  line-height: 1.4;
}
.domhotel-room__info-label {
  font-weight: bold;
  width: 8em;
  min-width: 8em;
}

/* pay-tbl 部屋割り */
.domhotel-room-pay-tbl {
  margin-bottom: 20px;
  width: 100%;
}
.domhotel-room-pay-tbl th,
.domhotel-room-pay-tbl td {
  border-top: 1px solid #d7d7d7;
  border-bottom: 1px solid #d7d7d7;
  padding: 15px;
}
.domhotel-room-pay-tbl th {
  background-color: #f5f5f5;
  font-size: 1.5rem;
  text-align: center;
  white-space: nowrap;
  width: 12rem;
}
.domhotel-room-pay-tbl td {
  text-align: center;
}
.domhotel-room-pay-tbl td:nth-child(3), .domhotel-room-pay-tbl td:nth-child(4) {
  text-align: right;
}
.domhotel-room-pay-tbl__people-box {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
}
.domhotel-room-pay-tbl__type {
  font-size: 1.4rem;
  font-weight: bold;
  margin: 0 .5em 0 1em;
}
.domhotel-room-pay-tbl__label {
  font-size: 1.2rem;
  margin-right: 1em;
}
.domhotel-room-pay-tbl__price-unit {
  font-weight: bold;
  font-size: 1.6rem;
}
.domhotel-room-pay-tbl__price-total {
  font-weight: bold;
  font-size: 1.8rem;
}
.domhotel-room-pay-tbl__price-breakdown {
  font-size: 1.4rem;
  font-weight: bold;
  display: inline-block;
  position: relative;
}
.domhotel-room-pay-tbl__price-breakdown:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-room-pay-tbl__price-breakdown:before {
  font-size: 1.2rem;
  letter-spacing: .3em;
}

/* people 部屋割り 人数入力 */
.domhotel-room-people {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
  padding-right: 1.5em;
}
.domhotel-room-people__label {
  font-size: 1.4rem;
  padding-right: .5em;
}
.domhotel-room-people__pulldown {
  width: 8rem;
  text-align: left;
  z-index: inherit;
}
.domhotel-room-people__child {
  font-size: 1.6rem;
}

/* meal
---------------------------------------------------------- */
.domhotel-meal__point {
  margin-bottom: 20px;
}
.domhotel-meal__point-ico {
  margin-left: .5em;
  display: inline-block;
  line-height: 1;
  padding: 8px 12px;
  background-color: #ececec;
}
.domhotel-meal__info-list > li {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  border-bottom: 1px solid #d7d7d7;
  padding: 10px 0;
  line-height: 1.4;
}
.domhotel-meal__info-label-01 {
  font-weight: bold;
  width: 3em;
  min-width: 3em;
  white-space: nowrap;
}
.domhotel-meal__info-label-02 {
  text-align: center;
  white-space: nowrap;
}
.domhotel-meal__info-label-02:before {
  content: "［";
}
.domhotel-meal__info-label-02:after {
  content: "］";
}
.domhotel-meal__info-data {
  padding-left: 1em;
}
.domhotel-meal__txt-01 {
  margin-bottom: 1.5em;
}
.domhotel-meal__in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.domhotel-meal__image {
  width: 30rem;
  text-align: center;
}
.domhotel-meal__image-caption {
  font-size: 1.2rem;
  line-height: 1.4;
  padding: 10px 0;
  text-align: center;
}
.domhotel-meal__detail {
  padding-right: 40px;
  width: calc(100% - 30rem);
}
.domhotel-meal__detail-02 {
  width: 100%;
}
.domhotel-meal__tbl {
  width: 100%;
  border-top: 1px solid #d7d7d7;
}
.domhotel-meal__tbl th {
  padding: 15px 0;
  vertical-align: top;
  font-weight: bold;
  border-bottom: 1px solid #d7d7d7;
}
.domhotel-meal__tbl td {
  padding: 15px;
  border-bottom: 1px solid #d7d7d7;
}
.domhotel-meal__tbl-02 {
  width: 100%;
  border-top: 1px solid #d7d7d7;
  border-bottom: 1px solid #d7d7d7;
  text-align: left;
}
.domhotel-meal__tbl-02 th {
  padding: 15px;
  vertical-align: top;
  font-weight: bold;
  border-bottom: 1px dotted #d7d7d7;
}
.domhotel-meal__tbl-02 td {
  padding: 15px;
  border-bottom: 1px dotted #d7d7d7;
}
.domhotel-meal__tbl-02-ttl {
  background-color: #f5f5f5;
  padding: 15px;
}
.domhotel-meal__more {
  margin-top: 20px;
  text-align: center;
}
.domhotel-meal__more-content {
  padding-top: 10px;
  margin-bottom: 20px;
}

/* special - 特別料理 */
.domhotel-meal-special {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.domhotel-meal-special__item {
  width: 31%;
  margin-right: 3.5%;
  margin-bottom: 40px;
}
.domhotel-meal-special__item:nth-child(3n) {
  margin-right: 0;
}
.domhotel-meal-special__ttl {
  font-size: 1.6rem;
  line-height: 1.2;
  margin-bottom: .8em;
  font-weight: bold;
}
.domhotel-meal-special__tbl {
  width: 100%;
  border-top: 1px solid #d7d7d7;
}
.domhotel-meal-special__tbl th {
  padding: 8px 10px;
  vertical-align: top;
  border-bottom: 1px solid #d7d7d7;
  background-color: #f5f5f5;
  font-size: 1.2rem;
  width: 10rem;
  white-space: nowrap;
}
.domhotel-meal-special__tbl td {
  padding: 8px 0 8px 10px;
  border-bottom: 1px solid #d7d7d7;
}

/* restaurant - レストラン */
.domhotel-restaurant__txt-01 {
  margin-bottom: 1.5em;
}
.domhotel-restaurant__list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.domhotel-restaurant__item {
  width: 48%;
  padding: 30px 0;
}
.domhotel-restaurant__ttl {
  font-size: 2rem;
  line-height: 1.2;
  margin-bottom: 25px;
  font-weight: bold;
}
.domhotel-restaurant__in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.domhotel-restaurant__column-01 {
  width: 24rem;
}
.domhotel-restaurant__column-02 {
  width: calc(100% - 24rem);
  padding-left: 25px;
}
.domhotel-restaurant__image {
  text-align: center;
  margin-bottom: 15px;
}
.domhotel-restaurant__info {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.domhotel-restaurant__info > dt {
  text-align: left;
  padding-left: 1.2em;
  position: relative;
}
.domhotel-restaurant__info > dt:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-restaurant__info > dt:before {
  color: #777;
  position: absolute;
  top: 4px;
  left: 0;
}
.domhotel-restaurant__info > dd:before {
  content: "：";
}
.domhotel-restaurant__detail {
  margin-bottom: 1em;
}
.domhotel-restaurant__detail-ttl {
  font-weight: bold;
  font-size: 1.4rem;
}

/* restaurant-slider - レストランスライダー */
.domhotel-restaurant-slider {
  margin: 30px 0 20px;
  padding: 0 35px;
}
.domhotel-restaurant-slider .slick-slide {
  padding: 0 10px;
}
.domhotel-restaurant-slider .slick-caption {
  margin-top: .8em;
}
.domhotel-restaurant-slider .slick-prev,
.domhotel-restaurant-slider .slick-next {
  bottom: auto;
  top: 50px;
}

/* restaurant-tbl - レストラン情報 */
.domhotel-restaurant-tbl {
  width: 100%;
  border-top: 1px solid #d7d7d7;
}
.domhotel-restaurant-tbl th {
  padding: 8px 10px;
  vertical-align: top;
  border-bottom: 1px solid #d7d7d7;
  background-color: #f5f5f5;
  font-size: 1.2rem;
  width: 10rem;
  white-space: nowrap;
}
.domhotel-restaurant-tbl td {
  padding: 8px 0 8px 10px;
  border-bottom: 1px solid #d7d7d7;
}

/* map
---------------------------------------------------------- */
/* map - search btn 地図から探すボタン */
.domhotel-map-search-btn {
  height: 106px;
  overflow: hidden;
  margin-bottom: 20px;
  border: 4px solid #fff;
  border-radius: 6px;
  position: relative;
  cursor: pointer;
}
.domhotel-map-search-btn:hover {
  opacity: .8;
}
.domhotel-map-search-btn__image {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 106px;
  width: 100%;
}
.domhotel-map-search-btn__txt {
  width: 100%;
  height: 34px;
  padding: 4px 10px 0 10px;
  background-color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  color: #125687;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
  position: relative;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 10;
}
.domhotel-map-search-btn__txt:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-map-search-btn__txt:before {
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -.3em;
  font-size: 1.2rem;
}
.domhotel-map-search-btn__txt span {
  position: relative;
}
.domhotel-map-search-btn__txt span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-map-search-btn__txt span:before {
  font-size: 2rem;
  margin-right: .3em;
}

/* map - コンテナ */
.domhotel-map {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #f7f7f7;
  border: 2px solid #195178;
  width: 82.5rem;
  height: 100vh;
  overflow: hidden;
  z-index: 10;
  /*visibility: hidden;
  transition: all .1s ease 0s;
  opacity: 0;*/
  display: none;
  /*&.is-show{ visibility: visible; opacity: 1;}*/
}
.domhotel-map.is-fixed {
  position: fixed;
  top: 0;
  left: auto;
}
.domhotel-map__header {
  width: 100%;
  height: 50px;
  background-color: #fff;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
  z-index: 1000;
  padding: 0 15px;
  position: absolute;
  top: 0;
  left: 0;
}
.domhotel-map__header-ttl {
  font-size: 1.6rem;
  line-height: 50px;
  font-weight: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.domhotel-map__map {
  height: 100%;
  width: 100%;
  padding: 50px 0 60px;
  position: relative;
}
.domhotel-map__map-container {
  height: 100%;
}
.domhotel-map__btn-hide {
  z-index: 10;
  background-color: #fff;
  font-size: 1.3rem;
  line-height: 1;
  font-weight: normal;
  cursor: pointer;
  color: #125687;
  padding: 18px;
  position: relative;
  position: absolute;
  top: 0;
  right: 0;
}
.domhotel-map__btn-hide:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-map__btn-hide:before {
  font-size: 1.1rem;
  margin-right: .5em;
}
.domhotel-map__pin {
  position: absolute;
  cursor: pointer;
  min-width: 20px;
  width: 20px;
  height: 35px;
  z-index: 10;
}
.domhotel-map__pin:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(../../../assets/images/dom/1.0/ico-map-pin.svg) no-repeat 0 0;
  background-size: contain;
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
}
.domhotel-map__pin:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 2px;
  left: 50%;
  transform: translateX(-50%);
  box-shadow: 0 0 6px 6px rgba(0, 0, 0, 0.4);
  background-color: transparent;
  z-index: 0;
  transform: scaleY(0.5);
}
.domhotel-map__pin.is-active, .domhotel-map__pin:hover {
  z-index: 12;
}
.domhotel-map__pin.is-active:before, .domhotel-map__pin:hover:before {
  background: url(../../../assets/images/dom/1.0/ico-map-pin-on.svg) no-repeat 0 0;
}
.domhotel-map__pin:hover .domhotel-map__tooltip {
  display: block;
}
.domhotel-map__tooltip {
  background-color: #fff;
  line-height: 1.4;
  position: absolute;
  top: 0;
  padding: 8px 10px;
  white-space: nowrap;
  box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.3);
  margin-top: -12px;
  display: none;
}
.domhotel-map__tooltip:after {
  content: "";
  border-style: solid;
  margin-top: -6px;
}
.domhotel-map__tooltip.is-right {
  left: calc(100% + 10px);
}
.domhotel-map__tooltip.is-right:after {
  border-color: transparent #fff transparent transparent;
  border-width: 6px 6px 6px 0;
  position: absolute;
  top: 50%;
  left: -6px;
}
.domhotel-map__tooltip.is-left {
  right: calc(100% + 10px);
}
.domhotel-map__tooltip.is-left:after {
  border-color: transparent transparent transparent #fff;
  border-width: 6px 0 6px 6px;
  position: absolute;
  top: 50%;
  right: -6px;
}
.domhotel-map__tooltip-area {
  font-size: 1rem;
  display: block;
}
.domhotel-map__tooltip-name {
  font-size: 1.2rem;
  font-weight: bold;
  display: block;
}
.domhotel-map__location {
  position: absolute;
  background: url(../../../assets/images/dom/1.0/ico-location.png) no-repeat 0 0;
  background-size: contain;
  width: 28px;
  height: 28px;
  z-index: 11;
}

/* map - box 施設概要 */
.domhotel-map-box {
  display: none;
  background-color: #fff;
  position: absolute;
  top: 55px;
  right: 5px;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
  max-width: 45rem;
  line-height: 1.4;
  z-index: 100;
  -webkit-transform: scale(0.9);
  transform: scale(0.9);
  -webkit-transform-origin: top right;
  transform-origin: top right;
}
.domhotel-map-box.is-active {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.domhotel-map-box__close {
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  padding: 7px 8px;
  line-height: 1;
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
}
.domhotel-map-box__close:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-map-box__close:hover {
  opacity: .8;
}
.domhotel-map-box__close:before {
  color: #fff;
  font-size: 1rem;
}
.domhotel-map-box__figure img {
  max-width: 20rem;
  max-height: 15rem;
}
.domhotel-map-box__in {
  padding: 10px 12px;
}
.domhotel-map-box__area {
  font-size: 1rem;
}
.domhotel-map-box__name {
  font-size: 1.3rem;
  font-weight: bold;
}
.domhotel-map-box__rating {
  -webkit-transform-origin: center right;
  transform-origin: center right;
  -webkit-transform: scale(0.85);
  transform: scale(0.85);
}
.domhotel-map-box__price {
  margin-bottom: 5px;
  text-align: right;
}
.domhotel-map-box__price-label {
  font-size: 1rem;
  color: #777;
}
.domhotel-map-box__price-adult {
  font-size: 1.2rem;
  font-weight: bold;
  position: relative;
}
.domhotel-map-box__price-adult:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-map-box__price-adult:before {
  color: #999;
  margin-right: .3em;
}
.domhotel-map-box__price-adult em {
  font-size: 1.6rem;
  font-weight: bold;
  margin-right: .1em;
}
.domhotel-map-box__btn > a {
  font-size: 1.2rem;
  line-height: 30px;
}
.domhotel-map-box__btn > a span:before {
  font-size: 1em;
}

/* map - box-02 施設概要 */
.domhotel-map-box-02 {
  background-color: #fff;
}
.domhotel-map-box-02.is-active {
  background: #d0e8ff;
}
.domhotel-map-box-02__delete {
  position: relative;
  position: absolute;
  top: 0;
  right: 0;
  padding: 8px;
  line-height: 1;
  cursor: pointer;
}
.domhotel-map-box-02__delete:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-map-box-02__delete:hover {
  opacity: .8;
}
.domhotel-map-box-02__delete:before {
  color: #999;
  font-size: 1rem;
}
.domhotel-map-box-02__in {
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 10px;
}
.domhotel-map-box-02__name {
  width: 100%;
  font-size: 1.3rem;
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: .8em;
  padding-right: 20px;
}
.domhotel-map-box-02__image {
  width: 8rem;
}
.domhotel-map-box-02__content {
  width: calc(100% - 8rem);
  text-align: right;
}
.domhotel-map-box-02__price {
  margin-bottom: 4px;
  line-height: 1.1;
  text-align: right;
}
.domhotel-map-box-02__price em {
  font-size: 1.4rem;
  margin-right: .1em;
}
.domhotel-map-box-02__btn > a {
  font-size: 1.1rem;
  line-height: 22px;
  border-radius: 3px;
  display: inline-block;
  padding: 0 6px;
}

/* map - access アクセス情報 */
.domhotel-map-access {
  position: relative;
}
.domhotel-map-access__map {
  height: 500px;
  width: 100%;
  position: relative;
}
.domhotel-map-access__pin {
  position: absolute;
  cursor: pointer;
  min-width: 20px;
  width: 30px;
  height: 50px;
}
.domhotel-map-access__pin:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(../../../assets/images/dom/1.0/ico-map-pin.svg) no-repeat 0 0;
  background-size: contain;
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
}
.domhotel-map-access__pin:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  box-shadow: 0 0 6px 6px rgba(0, 0, 0, 0.4);
  background-color: transparent;
  z-index: 0;
  transform: scaleY(0.5);
}

/* map - info-box 施設概要 */
.domhotel-map-info-box {
  display: none;
  background-color: #fff;
  position: absolute;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
  width: 28rem;
  line-height: 1.4;
  border: 1px solid #195178;
  z-index: 100;
}
.domhotel-map-info-box:before, .domhotel-map-info-box:after {
  content: "";
  position: absolute;
  border-style: solid;
  border-width: 20px 10px 0 10px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  left: 50%;
}
.domhotel-map-info-box:before {
  border-color: #195178 transparent transparent transparent;
  bottom: -20px;
  z-index: 101;
}
.domhotel-map-info-box:after {
  border-color: #fff transparent transparent transparent;
  bottom: -18px;
  z-index: 102;
}
.domhotel-map-info-box.is-active {
  display: block;
}
.domhotel-map-info-box__close {
  position: relative;
  position: absolute;
  top: 0;
  right: 0;
  padding: 10px;
  line-height: 1;
  cursor: pointer;
}
.domhotel-map-info-box__close:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-map-info-box__close:hover {
  opacity: .8;
}
.domhotel-map-info-box__close:before {
  color: #999;
  font-size: 1rem;
}
.domhotel-map-info-box__in {
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 15px;
}
.domhotel-map-info-box__name {
  width: 100%;
  font-size: 1.3rem;
  font-weight: bold;
  margin-bottom: .8em;
  padding-right: 20px;
}
.domhotel-map-info-box__image {
  width: 8rem;
}
.domhotel-map-info-box__content {
  width: calc(100% - 8rem);
  text-align: right;
  padding-left: 1em;
}
.domhotel-map-info-box__price {
  margin-bottom: 10px;
  text-align: right;
}
.domhotel-map-info-box__price em {
  font-size: 1.4rem;
  margin-right: .1em;
}
.domhotel-map-info-box__btn > a {
  font-size: 1.1rem;
  line-height: 26px;
  border-radius: 4px;
  display: inline-block;
  padding: 0 10px;
}

/* reserve
---------------------------------------------------------- */
/* reserve - section 予約条件入力エリア */
.domhotel-reserve-section__in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.domhotel-reserve-section__column-01 {
  width: 70rem;
  min-width: 70rem;
}
.domhotel-reserve-section__column-02 {
  width: calc(100% - 70rem);
  min-width: calc(100% - 70rem);
  padding: 0 30px 0 50px;
}
.domhotel-reserve-section__column-03 {
  margin-top: 60px;
  width: 100%;
}
.domhotel-reserve-section__heading {
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 1em;
  padding: 5px 0 0 50px;
  position: relative;
}
.domhotel-reserve-section__heading-number {
  display: block;
  background-color: #999;
  position: absolute;
  top: 0;
  left: 0;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  line-height: 36px;
  font-size: 2.2rem;
  color: #fff;
  text-align: center;
}
.domhotel-reserve-section__heading small {
  font-size: 1.3rem;
  font-weight: normal;
}
.domhotel-reserve-section__date-header {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 1.5em;
  font-size: 1.2rem;
}
.domhotel-reserve-section__date-header-txt {
  margin-right: 1.5em;
}
.domhotel-reserve-section__date-header .dom-note-list-type-03 > li {
  margin-right: 1em;
}
.domhotel-reserve-section__people-txt {
  display: block;
  clear: both;
  line-height: 1.4;
  margin-bottom: 1.5em;
}
.domhotel-reserve-section__room-txt {
  margin-bottom: 1.5em;
}
.domhotel-reserve-section .dom-search {
  margin-top: 30px;
}
.domhotel-reserve-section .dom-search__column {
  float: none;
  margin: 0 0 20px 0;
  width: 100%;
}
.domhotel-reserve-section .domhotel-search__room {
  margin-top: 40px;
}
.domhotel-reserve-section__txt-01 {
  font-size: 1.6rem;
  margin-bottom: 1em;
  padding: 15px 20px;
  border: 1px solid #d7d7d7;
}
.domhotel-reserve-section .domhotel-free-cancellation {
  margin-top: 2rem;
}
.domhotel-reserve-section .domhotel-free-cancellation__in {
  display: inline-block;
  border: 2px solid #fcaa05;
  line-height: 1.2;
  padding: .8rem 2rem;
  border-radius: 4rem;
  position: relative;
}
.domhotel-reserve-section .domhotel-free-cancellation__in:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-reserve-section .domhotel-free-cancellation__in:before {
  vertical-align: middle;
  margin-right: .5rem;
  color: #fcaa05;
}
.domhotel-reserve-section .domhotel-free-cancellation__in em {
  font-weight: bold;
  color: #f96f09;
}

/* 人数・室数パネル 修正20191108
---------------------------------------------------------- */
.domhotel-reserve-section .domhotel-search__people .dom-search__panel--people {
  width: 100%;
}
.domhotel-reserve-section .dom-spinbox__label {
  padding-left: 0;
}

/* ローディング中ボタン 追加20200229
---------------------------------------------------------- */
.domhotel-reserve-section .dom-reserve__btn-group .dom__btn-cv-01.is-loading > a {
  background-color: #f9fafc;
  border-color: #f9fafc;
  color: #ccc;
  position: relative;
  pointer-events: none;
}
.domhotel-reserve-section .dom-reserve__btn-group .dom__btn-cv-01.is-loading > a:after {
  content: "";
  background: url(../images/ico-loading-01.gif) no-repeat center center;
  background-size: contain;
  display: block;
  width: 4rem;
  height: 4rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* calendar
---------------------------------------------------------- */
.domhotel-calendar__selected {
  margin-bottom: 1em;
  padding-right: 20rem;
  text-align: right;
  position: relative;
}
.domhotel-calendar__selected-label {
  font-size: 1.4rem;
}
.domhotel-calendar__selected-date {
  font-size: 2rem;
  font-weight: bold;
}
.domhotel-calendar__selected-clear-btn {
  position: absolute;
  top: 0;
  right: 0;
}
.domhotel-calendar__select-night {
  display: inline-block;
  width: 8rem;
  text-align: left;
  top: -5px;
}
.domhotel-calendar__header {
  border-style: solid;
  border-width: 1px 1px 0 1px;
  border-color: #d7d7d7;
  padding: 15px;
  position: relative;
}
.domhotel-calendar__month {
  font-size: 2rem;
  line-height: 1;
  font-weight: bold;
  text-align: center;
}
.domhotel-calendar__arr {
  position: relative;
  position: absolute;
  top: 0;
  line-height: 18px;
  font-size: 1.3rem;
  cursor: pointer;
  padding: 16px;
}
.domhotel-calendar__arr:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-calendar__arr:hover {
  opacity: .8;
}
.domhotel-calendar__arr:before {
  font-size: 1.6rem;
  color: #999;
  display: inline-block;
  position: absolute;
  top: 50%;
  margin-top: -.5em;
}
.domhotel-calendar__arr--prev {
  padding-left: 35px;
  left: 0;
}
.domhotel-calendar__arr--prev:before {
  left: 15px;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
.domhotel-calendar__arr--next {
  padding-right: 35px;
  right: 0;
}
.domhotel-calendar__arr--next:before {
  right: 15px;
}
.domhotel-calendar__tbl {
  border: 1px solid #d7d7d7;
  width: 100%;
}
.domhotel-calendar__tbl th {
  background-color: #f5f5f5;
  border: 1px solid #d7d7d7;
  line-height: 30px;
  font-weight: bold;
  text-align: center;
  width: 10rem;
  max-width: 10rem;
}
.domhotel-calendar__tbl td {
  border: 1px solid #d7d7d7;
  text-align: center;
  width: 9.9rem;
  max-width: 9.9rem;
}
.domhotel-calendar__date-in {
  position: relative;
  padding: 30px 0 0 0;
  width: 100%;
  height: 9rem;
}
.domhotel-calendar__date-in.is-active, .domhotel-calendar__date-in:hover {
  background-color: #f0b2b2;
  cursor: pointer;
}
.domhotel-calendar__date-in.is-active {
  font-weight: bold;
}
.domhotel-calendar__date--disabled {
  background: #f5f5f5;
  color: #aaa;
}
.domhotel-calendar__date--disabled .domhotel-calendar__date-in:hover {
  background-color: initial;
  cursor: default;
}
.domhotel-calendar__date--disabled .domhotel-calendar__price {
  color: #aaa;
}
.domhotel-calendar__day {
  position: absolute;
  top: 9px;
  left: 7px;
  font-size: 1.4rem;
  line-height: 1;
}
.domhotel-calendar__status {
  position: absolute;
  top: 9px;
  right: 7px;
  line-height: 1;
}
.domhotel-calendar__stock {
  font-size: 1.6rem;
  vertical-align: middle;
}
.domhotel-calendar__price {
  font-size: 1.4rem;
  line-height: 1.2;
  min-height: 33.6px;
  color: #125687;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
.domhotel-calendar__price-unit, .domhotel-calendar__price-total {
  width: 100%;
}
.domhotel-calendar__room-note {
  color: #cc0d21;
  font-size: 1.1rem;
  line-height: 1.2;
  margin-top: .4em;
  font-weight: bold;
}
.domhotel-calendar__pager {
  margin-top: 1.5em;
  text-align: center;
  font-size: 1.4rem;
}
.domhotel-calendar__pager-label {
  display: inline-block;
}
.domhotel-calendar__pager-list {
  display: inline-block;
}
.domhotel-calendar__pager-list > li {
  display: inline-block;
  margin: 0 .8em;
  font-weight: bold;
}

/* modal
---------------------------------------------------------- */
/* 最近見た施設 */
.domhotel-modal-recent__in {
  padding: 10px;
}
.domhotel-modal-recent__ttl {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 20px;
}
.domhotel-modal-recent__txt-01 {
  margin-bottom: 1em;
}
.domhotel-modal-recent__list > li {
  padding: 10px 0 10px 25px;
  font-weight: bold;
  font-size: 1.5rem;
  position: relative;
}
.domhotel-modal-recent__list > li:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-modal-recent__list > li:before {
  color: #999;
  font-size: 1.6rem;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -.5em;
}

/* 子供の人数入力 */
.domhotel-modal-child-number__in {
  padding: 10px;
}
.domhotel-modal-child-number__ttl {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 20px;
}
.domhotel-modal-child-number__select-btn {
  cursor: pointer;
  margin: 15px auto 0;
  width: 14rem;
}

/* 部屋ごとの料金内訳 */
.domhotel-modal-breakdown__in {
  padding: 10px;
}
.domhotel-modal-breakdown__in:after {
  content: '';
  display: block;
  clear: both;
}
.domhotel-modal-breakdown__ttl {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 20px;
}
.domhotel-modal-breakdown__tbl {
  width: 100%;
  margin-bottom: 20px;
}
.domhotel-modal-breakdown__tbl caption {
  font-size: 1.6rem;
  line-height: 1.2;
  margin-bottom: .3em;
}
.domhotel-modal-breakdown__tbl td,
.domhotel-modal-breakdown__tbl th {
  border: 1px solid #d7d7d7;
  line-height: 1.4;
}
.domhotel-modal-breakdown__tbl thead {
  background-color: #f5f5f5;
}
.domhotel-modal-breakdown__tbl thead th {
  text-align: center;
  font-weight: normal;
  padding: 8px 15px;
  width: 20%;
}
.domhotel-modal-breakdown__tbl tbody th {
  text-align: left;
  font-weight: bold;
  padding: 10px 15px;
}
.domhotel-modal-breakdown__tbl tbody td {
  text-align: right;
  font-size: 1.4rem;
  padding: 10px 15px;
}
.domhotel-modal-breakdown__subtotal {
  font-weight: bold;
  font-size: 1.6rem;
}
.domhotel-modal-breakdown__total {
  float: right;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  -webkit-align-items: center;
  align-items: center;
}
.domhotel-modal-breakdown__total-label {
  font-weight: bold;
  font-size: 1.4rem;
  padding-right: 20px;
}
.domhotel-modal-breakdown__total-price {
  font-size: 2.4rem;
}
.domhotel-modal-breakdown__total-price em {
  font-weight: bold;
  margin-right: .2em;
}
.domhotel-modal-breakdown__note {
  float: left;
  width: 66%;
  text-indent: -1em;
  padding-left: 1em;
}

/* 子供の宿泊、ペットの宿泊、ノーマライゼーションについて */
.domhotel-modal-about__in {
  padding: 10px;
}
.domhotel-modal-about__ttl {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 20px;
}
.domhotel-modal-about__txt-01 {
  margin-bottom: 1.5em;
}
.domhotel-modal-about__tbl {
  width: 100%;
}
.domhotel-modal-about__tbl th {
  background-color: #f5f5f5;
  font-weight: bold;
  font-size: 1.4rem;
}
.domhotel-modal-about__tbl th,
.domhotel-modal-about__tbl td {
  border: 1px solid #d7d7d7;
  padding: 15px;
  text-align: left;
}

/* review
---------------------------------------------------------- */
/* レート★★★★共通スタイル */
.dom-rrb-rating {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
}

.dom-rrb-rating .dom-rrb-rating-score {
  height: 100%;
  text-align: left;
  position: relative;
  margin-right: .5rem;
  display: inline-flex;
}

.dom-rrb-rating .dom-rrb-rating-star {
  position: relative;
  height: 100%;
  width: 6.5rem;
}

.dom-rrb-rating .dom-rrb-rating-star .star-on:after {
  z-index: 1;
  margin: auto;
  position: absolute;
  left: 0;
  color: #fcaa05;
  content: '★★★★★';
  width: inherit;
  overflow: hidden;
  top: 50%;
  transform: translateY(-50%);
}

.dom-rrb-rating .dom-rrb-rating-star .star-off {
  width: 100%;
}

.dom-rrb-rating .dom-rrb-rating-star .star-off:after {
  z-index: 0;
  margin: auto;
  position: absolute;
  left: 0;
  color: #fcaa05;
  content: '☆☆☆☆☆';
  top: 50%;
  transform: translateY(-50%);
}

/* review-total - 総合評価 */
.domhotel-review-total-section {
  background-color: #fff;
  margin-bottom: 20px;
  padding: 25px 20px 20px;
}

.domhotel-review-heading {
  font-size: 1.6rem;
  line-height: 1.2;
  margin-bottom: 2rem;
}
.domhotel-review-heading__ttl {
  font-size: 2rem;
  font-weight: bold;
  margin-right: .5em;
  display: inline;
}

.domhotel-review-total-note {
  margin-bottom: 1.5em;
}

/* review-total-box - 総合評価＞ボックス */
.domhotel-review-total-box {
  border: 1px solid #999;
  padding: 2.5rem;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
}
.domhotel-review-total-box__header {
  width: 30%;
  padding: 0 2.5rem 0 0;
  text-align: center;
}
.domhotel-review-total-box__header .domhotel-overall-rating {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  font-size: 1.8rem;
  line-height: 1;
}
.domhotel-review-total-box__header .domhotel-overall-rating__score {
  margin-left: 1em;
  letter-spacing: .2em;
}
.domhotel-review-total-box__header .domhotel-overall-rating__score em {
  font-size: 2.8rem;
  font-weight: bold;
  letter-spacing: 0;
  margin-right: .5rem;
}
.domhotel-review-total-box__header .domhotel-overall-rating .domhotel-no-data {
  letter-spacing: 0;
  color: #999;
}
.domhotel-review-total-box__header .dom-rrb-rating {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
  margin-top: 1rem;
}
.domhotel-review-total-box__header .dom-rrb-rating .dom-rrb-rating-star {
  font-size: 2.4rem;
  height: 2.4rem;
  width: 12rem;
}
.domhotel-review-total-box__header .domhotel-overall-count {
  margin-top: 1rem;
}
.domhotel-review-total-box__header .domhotel-overall-count:before {
  content: "（";
}
.domhotel-review-total-box__header .domhotel-overall-count:after {
  content: "）";
}
.domhotel-review-total-box__body {
  width: 70%;
  padding: 1rem 0 1rem 2.5rem;
  border-left: 1px solid #999;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
}
.domhotel-review-total-box__body .domhotel-detail-rating {
  width: 40%;
  line-height: 1;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
}
.domhotel-review-total-box__body .domhotel-detail-rating:nth-child(n+3) {
  margin-top: 1.5rem;
}
.domhotel-review-total-box__body .domhotel-detail-rating__label {
  width: 6em;
  font-size: 1.4rem;
}
.domhotel-review-total-box__body .domhotel-detail-rating__score {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
}
.domhotel-review-total-box__body .domhotel-detail-rating .dom-rrb-rating .dom-rrb-rating-score-text {
  font-size: 1.8rem;
  font-weight: bold;
}
.domhotel-review-total-box__body .domhotel-detail-rating .dom-rrb-rating .dom-rrb-rating-star {
  font-size: 1.6rem;
  height: 1.6rem;
  width: 8rem;
}
.domhotel-review-total-box__body .domhotel-detail-rating .domhotel-breakdown-tooltip {
  display: inline-block;
  position: relative;
}
.domhotel-review-total-box__body .domhotel-detail-rating .domhotel-breakdown-tooltip-trigger {
  color: #125687;
  border-bottom: 1px dotted #125687;
  display: inline-block;
  padding: .3rem 1.5rem .3rem 0;
  cursor: pointer;
  position: relative;
  position: relative;
}
.domhotel-review-total-box__body .domhotel-detail-rating .domhotel-breakdown-tooltip-trigger:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-review-total-box__body .domhotel-detail-rating .domhotel-breakdown-tooltip-trigger:before {
  font-size: 1rem;
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -.5em;
}
.domhotel-review-total-box__body .domhotel-detail-rating .domhotel-breakdown-tooltip-content {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  top: calc(100% + 5px);
  left: 0;
  transition: all .2s;
  background-color: #fff;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4);
  padding: .8rem;
  white-space: nowrap;
  font-size: 1.2rem;
  z-index: 10;
}
.domhotel-review-total-box__body .domhotel-detail-rating .domhotel-breakdown-tooltip-content:before {
  content: "";
  display: block;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
  border-width: 5px;
  position: absolute;
  bottom: 100%;
  left: 2rem;
}
.domhotel-review-total-box__body .domhotel-detail-rating .domhotel-breakdown-tooltip-content .domhotel-breakdown-total {
  display: inline;
}
.domhotel-review-total-box__body .domhotel-detail-rating .domhotel-breakdown-tooltip-content .domhotel-breakdown-total em {
  font-weight: bold;
  margin-left: .3em;
}
.domhotel-review-total-box__body .domhotel-detail-rating .domhotel-breakdown-tooltip-content .domhotel-breakdown-list {
  display: inline;
}
.domhotel-review-total-box__body .domhotel-detail-rating .domhotel-breakdown-tooltip-content .domhotel-breakdown-list:before {
  content: "（";
}
.domhotel-review-total-box__body .domhotel-detail-rating .domhotel-breakdown-tooltip-content .domhotel-breakdown-list:after {
  content: "）";
}
.domhotel-review-total-box__body .domhotel-detail-rating .domhotel-breakdown-tooltip-content .domhotel-breakdown-list > li {
  display: inline;
}
.domhotel-review-total-box__body .domhotel-detail-rating .domhotel-breakdown-tooltip-content .domhotel-breakdown-list > li:not(:last-child) {
  margin-right: .5em;
}
.domhotel-review-total-box__body .domhotel-detail-rating .domhotel-breakdown-tooltip-content .domhotel-breakdown-list > li em {
  font-weight: bold;
  margin-left: .3em;
}
.domhotel-review-total-box__body .domhotel-detail-rating .domhotel-breakdown-tooltip:hover .domhotel-breakdown-tooltip-content {
  opacity: 1;
  visibility: visible;
}

.domhotel-review-total-box--no-data {
  display: block;
  width: 40%;
  margin: 0 auto 2rem;
}
.domhotel-review-total-box--no-data .domhotel-review-total-box__header {
  width: auto;
}

/* review-user - レビュー詳細 */
.domhotel-review-user-section {
  margin-bottom: 4rem;
}

.domhotel-review-user-heading {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1;
  margin: 4rem 0 2rem;
  padding-bottom: .8em;
  border-bottom: 1px solid #d7d7d7;
}

/* review-search - レビュー詳細＞検索 */
.domhotel-review-search {
  margin-bottom: 1rem;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.domhotel-review-search__column {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
  margin: 0 2.5rem 1rem 0;
}
.domhotel-review-search__column--age .dom-form-pulldown {
  width: 120px;
}
.domhotel-review-search__column--type .dom-form-pulldown {
  width: 150px;
}
.domhotel-review-search__column--sex .dom-form-pulldown {
  width: 100px;
}
.domhotel-review-search__column--score .dom-form-pulldown {
  width: 170px;
}
.domhotel-review-search__column--room {
  margin-right: 0;
}
.domhotel-review-search__column--room .dom-form-pulldown {
  width: 200px;
}
.domhotel-review-search__column--room .dom-form-pulldown__panel {
  width: 300px;
}
.domhotel-review-search__column--room .dom-pulldown-list {
  max-height: 300px;
}
.domhotel-review-search__label {
  white-space: nowrap;
  padding-right: .5em;
}

/* review-result-header - レビュー詳細＞検索結果情報 */
.domhotel-review-result-header {
  margin-bottom: 1.5rem;
}
.domhotel-review-result-header__sort {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.domhotel-review-result-header .dom-sort__item {
  background-color: #fff;
  border: 1px solid #999;
  border-radius: 4px;
  margin-right: .5em;
  padding: .5rem 1rem;
  line-height: 1;
  transition: all .2s;
}
.domhotel-review-result-header .dom-sort__item:hover, .domhotel-review-result-header .dom-sort__item--active {
  border-color: #666;
  background-color: #666;
  color: #fff;
}
.domhotel-review-result-header .domhotel-review-switch input {
  display: none;
}
.domhotel-review-result-header .domhotel-review-switch label {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
}
.domhotel-review-result-header .domhotel-review-switch-btn {
  margin-left: 1rem;
  display: inline-block;
  background-color: #bbb;
  border-radius: 4rem;
  width: 5rem;
  height: 2rem;
  position: relative;
}
.domhotel-review-result-header .domhotel-review-switch-btn:before {
  content: "";
  display: block;
  width: 1.6rem;
  height: 1.6rem;
  border-radius: 50%;
  background-color: #fff;
  position: absolute;
  top: 0.2rem;
  left: 0.2rem;
  transition: all .2s;
}
.domhotel-review-result-header .domhotel-review-switch-btn:after {
  content: "OFF";
  color: #fff;
  font-size: 1rem;
  line-height: 1;
  width: 100%;
  padding: 0 .8rem;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -.5em;
  text-align: right;
}
.domhotel-review-result-header .domhotel-review-switch input:checked + label .domhotel-review-switch-btn {
  background: transparent linear-gradient(112deg, #3498DB 0%, #52C8FF 100%) 0% 0% no-repeat padding-box;
}
.domhotel-review-result-header .domhotel-review-switch input:checked + label .domhotel-review-switch-btn:before {
  left: calc(100% - 1.8rem);
}
.domhotel-review-result-header .domhotel-review-switch input:checked + label .domhotel-review-switch-btn:after {
  content: "ON";
  text-align: left;
}
.domhotel-review-result-header .domhotel-review-check input {
  display: none;
}
.domhotel-review-result-header .domhotel-review-check label {
  background-color: #fff;
  border: 1px solid #125687;
  border-radius: 4px;
  padding: .5rem 1rem;
  color: #125687;
  line-height: 1;
}
.domhotel-review-result-header .domhotel-review-check input:checked + label {
  color: #fff;
  background-color: #125687;
}

/* review-user-list - レビュー詳細＞検索結果リスト */
.domhotel-review-user-list {
  margin-bottom: 3rem;
}

/* review-user-item - レビュー詳細＞ユーザーごと */
.domhotel-review-user-item {
  background-color: #fff;
  margin-bottom: 20px;
  padding: 20px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.domhotel-review-user-item__header {
  width: 25%;
  padding: 1rem 4rem 0 0;
}
.domhotel-review-user-item__body {
  flex: 1;
}
.domhotel-review-user-item .domhotel-user-name {
  position: relative;
  padding-left: 2rem;
}
.domhotel-review-user-item .domhotel-user-name:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-review-user-item .domhotel-user-name:before {
  font-size: 1.6rem;
  color: #999;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -.5em;
}
.domhotel-review-user-item .domhotel-user-name em {
  font-size: 1.5rem;
  margin-right: .5em;
}
.domhotel-review-user-item .domhotel-user-meta {
  margin-top: 1rem;
  color: #777;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.domhotel-review-user-item .domhotel-user-meta > li {
  border: 1px solid #d7d7d7;
  font-size: 1.2rem;
  margin: 0 .5rem .5rem 0;
  padding: 0 .5rem;
}
.domhotel-review-user-item .domhotel-user-date {
  margin-top: .5rem;
  color: #777;
}
.domhotel-review-user-item .domhotel-user-ttl {
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: .5em;
}
.domhotel-review-user-item .domhotel-user-comment {
  font-size: 1.4rem;
  margin-bottom: 1.5em;
}
.domhotel-review-user-item .domhotel-user-rating {
  line-height: 1;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: center;
  align-items: center;
}
.domhotel-review-user-item .domhotel-user-rating__label {
  margin-right: 1em;
}
.domhotel-review-user-item .domhotel-user-rating__score {
  margin-right: .5em;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
}
.domhotel-review-user-item .domhotel-user-rating__score .dom-rrb-rating .dom-rrb-rating-score {
  margin: 0 0 0 .5em;
  font-weight: bold;
  font-size: 1.4rem;
}
.domhotel-review-user-item .domhotel-user-rating__breakdown {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
}
.domhotel-review-user-item .domhotel-user-rating__breakdown:before {
  content: "（";
}
.domhotel-review-user-item .domhotel-user-rating__breakdown:after {
  content: "）";
}
.domhotel-review-user-item .domhotel-user-rating__breakdown > li:not(:last-child) {
  margin-right: .8em;
}
.domhotel-review-user-item .domhotel-user-rating__breakdown > li em {
  font-weight: bold;
  margin-left: .3em;
}
.domhotel-review-user-item .domhotel-user-stay {
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  border-top: 1px dotted #d7d7d7;
  color: #777;
}
.domhotel-review-user-item .domhotel-user-stay__item {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.domhotel-review-user-item .domhotel-user-stay__item > dt:after {
  content: "：";
}
.domhotel-review-user-item .domhotel-reply-box {
  background-color: #f5f5f5;
  border: 1px solid #d7d7d7;
  border-radius: 6px;
  margin-top: 2rem;
  padding: 1.5rem;
}
.domhotel-review-user-item .domhotel-reply-box__header {
  position: relative;
  font-weight: bold;
  padding-left: 2.4rem;
  margin-bottom: .5em;
}
.domhotel-review-user-item .domhotel-reply-box__header:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-review-user-item .domhotel-reply-box__header:before {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -.5em;
  color: #81d7ff;
  font-size: 1.6rem;
}

/* gallery
---------------------------------------------------------- */
.domhotel-gallery {
  padding: 20px 40px;
  position: relative;
}
.domhotel-gallery .slick-arrow {
  top: 272px;
}
.domhotel-gallery .slick-arrow:before {
  font-size: 3rem;
}
.domhotel-gallery .slick-prev {
  left: -18px;
}
.domhotel-gallery .slick-next {
  right: -18px;
}
.domhotel-gallery .slick-caption {
  padding: 20px 0;
  text-align: center;
  font-size: 1.3rem;
  line-height: 1.4;
}
.domhotel-gallery *:active {
  outline: none;
}
.domhotel-gallery .slick-dots {
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -2px;
  bottom: auto;
}
.domhotel-gallery .slick-dots > li {
  width: 68px;
  height: 40px;
  padding: 2px;
  margin: 0;
  overflow: hidden;
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
}
.domhotel-gallery .slick-dots > li:hover {
  opacity: .8;
}
.domhotel-gallery .slick-dots > li:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: .15s;
}
.domhotel-gallery .slick-dots > li img {
  max-height: 100%;
  margin: auto;
}
.domhotel-gallery .slick-dots > li.slick-active {
  position: relative;
}
.domhotel-gallery .slick-dots > li.slick-active:before {
  box-shadow: 0 0 0 3px #5298da inset;
}
.domhotel-gallery__figure {
  height: 540px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
}
.domhotel-gallery__figure img {
  max-height: 100%;
}

/* 画像切替 */
.domhotel-gallery-nav {
  text-align: center;
  margin-bottom: 20px;
}
.domhotel-gallery-nav li {
  display: inline-block;
  font-size: 1.4rem;
  margin: 0 1em;
}
.domhotel-gallery-nav li a {
  display: inline-block;
  padding: .5em 0;
  opacity: .7;
  text-decoration: none;
}
.domhotel-gallery-nav li a:hover {
  opacity: .5;
}
.domhotel-gallery-nav li a.is-active {
  color: #333;
  font-weight: bold;
  opacity: 1;
  position: relative;
}
.domhotel-gallery-nav li a.is-active:after {
  content: "";
  background-color: #000;
  display: block;
  width: 100%;
  height: 4px;
  position: absolute;
  bottom: 0;
  left: 0;
}

/* bath
---------------------------------------------------------- */
.domhotel-bath-type {
  font-size: 1.6rem;
  margin: 0 0 1em .5em;
  position: relative;
}
.domhotel-bath-type:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-bath-type:before {
  color: #777;
  margin-right: .5em;
}

/* 大浴場施設情報 スライダー*/
.domhotel-bath-list {
  margin: 30px 0 20px;
  padding: 0 35px;
}
.domhotel-bath-list .slick-slide {
  padding: 0 10px;
}
.domhotel-bath-list .slick-prev,
.domhotel-bath-list .slick-next {
  bottom: auto;
  top: 50px;
}
.domhotel-bath-list__caption {
  margin-top: .8em;
}

/* 大浴場施設情報 テーブル */
.domhotel-bath-tbl-01 {
  width: 100%;
}
.domhotel-bath-tbl-01__th {
  background-color: #f5f5f5;
  text-align: left;
  width: 15rem;
}
.domhotel-bath-tbl-01__th, .domhotel-bath-tbl-01__td {
  border: 1px solid #d7d7d7;
  padding: 15px;
}
.domhotel-bath-tbl-01__child {
  width: 100%;
}
.domhotel-bath-tbl-01__child tr:last-child th, .domhotel-bath-tbl-01__child tr:last-child td {
  border-bottom: none;
}
.domhotel-bath-tbl-01__child-th {
  border-bottom: 1px solid #d7d7d7;
  font-weight: bold;
  padding: 10px 5px;
  width: 22rem;
}
.domhotel-bath-tbl-01__child-td {
  border-bottom: 1px solid #d7d7d7;
  padding: 10px 5px;
}

.domhotel-bath-tbl-02 {
  width: 100%;
}
.domhotel-bath-tbl-02 th {
  background-color: #f5f5f5;
  text-align: left;
  width: 15rem;
}
.domhotel-bath-tbl-02 th,
.domhotel-bath-tbl-02 td {
  border: 1px solid #d7d7d7;
  padding: 15px;
}

/* various
---------------------------------------------------------- */
/* 施設案内文 */
.domhotel-various-guide {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin-bottom: 30px;
}
.domhotel-various-guide:last-child {
  margin-bottom: 0;
}
.domhotel-various-guide__image {
  width: 30rem;
  max-width: 30rem;
}
.domhotel-various-guide__txt {
  padding-right: 30px;
  width: calc(100% - 30rem);
}

/* おすすめ */
.domhotel-various-recommend {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin-bottom: 30px;
}
.domhotel-various-recommend:last-child {
  margin-bottom: 0;
}
.domhotel-various-recommend__image {
  width: 40rem;
  max-width: 40rem;
}
.domhotel-various-recommend__detail {
  padding-left: 30px;
  width: calc(100% - 40rem);
}
.domhotel-various-recommend__caption {
  line-height: 1.4;
  padding: 10px 0 0 0;
  text-align: center;
}
.domhotel-various-recommend__ttl {
  font-size: 1.8rem;
  line-height: 1.2;
  margin-bottom: 1em;
  font-weight: bold;
}
.domhotel-various-recommend__catch {
  font-size: 2rem;
  margin-bottom: 1em;
}
.domhotel-various-recommend__room, .domhotel-various-recommend__time {
  position: relative;
  padding-left: 22px;
  margin-bottom: 1em;
}
.domhotel-various-recommend__room:before, .domhotel-various-recommend__time:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-various-recommend__room:before, .domhotel-various-recommend__time:before {
  font-size: 1.6rem;
  color: #999;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -.4em;
}
.domhotel-various-recommend__room {
  position: relative;
}
.domhotel-various-recommend__room:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-various-recommend__time {
  position: relative;
}
.domhotel-various-recommend__time:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-various-recommend .domhotel-plan-check-btn {
  margin-bottom: 0;
  margin-top: 20px;
}
.domhotel-various-recommend__btn-detail {
  text-align: right;
  margin-top: 20px;
  margin-bottom: 0;
}
.domhotel-various-recommend__btn-detail a {
  display: inline-block;
}

/* area
---------------------------------------------------------- */
.domhotel-area {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.domhotel-area__tab {
  width: 10%;
  min-width: 10%;
}
.domhotel-area__contents {
  width: 90%;
  min-width: 90%;
  padding-left: 15px;
}

/* tab - タブ */
.domhotel-area-tab__list {
  height: 344px;
}
.domhotel-area-tab__list > li {
  width: 100%;
  height: 33.3333%;
  display: table;
}
.domhotel-area-tab__list > li:first-child .domhotel-area-tab__item {
  border-width: 1px;
}
.domhotel-area-tab__item {
  position: relative;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  border-style: solid;
  border-color: #d7d7d7;
  border-width: 0 1px 1px 1px;
}
.domhotel-area-tab__item span {
  display: inline-block;
  font-size: 1.4rem;
  color: #333;
}
.domhotel-area-tab__item span:before, .domhotel-area-tab__item span:after {
  color: #aaa;
  display: block;
  margin-bottom: 5px;
  font-size: 2.4rem;
}
.domhotel-area-tab__item--area span {
  position: relative;
}
.domhotel-area-tab__item--area span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-area-tab__item--trans span {
  position: relative;
  position: relative;
}
.domhotel-area-tab__item--trans span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-area-tab__item--trans span:after {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-area-tab__item--trans span:before {
  margin-left: 24px;
}
.domhotel-area-tab__item--trans span:after {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  margin-left: -15px;
}
.domhotel-area-tab__item--onsen span {
  position: relative;
}
.domhotel-area-tab__item--onsen span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-area-tab__item.is-active {
  background-color: #195178;
  border-color: #195178;
}
.domhotel-area-tab__item.is-active span {
  color: #fff;
}
.domhotel-area-tab__item.is-active span:before, .domhotel-area-tab__item.is-active span:after {
  color: #fff;
}
.domhotel-area-tab__item.is-active:after {
  content: "";
  display: block;
  border-color: transparent transparent transparent #195178;
  border-style: solid;
  border-width: calc( 344px / 6) 0 calc( 344px / 6) 20px;
  position: absolute;
  top: 0;
  right: -21px;
  z-index: 1;
}

/* contents - タブのコンテンツ */
.domhotel-area-contents__in {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

/* map - 地図 */
.domhotel-area-map {
  position: relative;
  width: 57rem;
}
.domhotel-area-map__map {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
.domhotel-area-map__label {
  display: inline-block;
  background-color: rgba(255, 255, 255, 0.9);
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);
  border-radius: 4px;
  color: #125687;
  font-size: 1.2rem;
  line-height: 1;
  height: 21px;
  padding: 5px 5px 5px 6px;
  cursor: pointer;
  position: absolute;
  z-index: 100;
}
.domhotel-area-map__label-number {
  color: #777;
  margin-left: .2em;
}

/* list - エリア一覧 */
.domhotel-area-list {
  padding-left: 20px;
}
.domhotel-area-list__heading {
  font-size: 1.6rem;
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: 1em;
}
.domhotel-area-list__heading:before {
  color: #aaa;
  font-size: 1.8rem;
  margin-right: .5em;
}
.domhotel-area-list__heading--area {
  position: relative;
}
.domhotel-area-list__heading--area:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-area-list__heading--trans {
  position: relative;
}
.domhotel-area-list__heading--trans:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-area-list__heading--onsen {
  position: relative;
}
.domhotel-area-list__heading--onsen:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-area-list__list > li {
  margin-bottom: .5em;
}
.domhotel-area-list__label {
  color: #125687;
}
.domhotel-area-list__label-number {
  color: #777;
  margin-left: .2em;
}

/* planlist
---------------------------------------------------------- */
/* mv メインビジュアル */
.domhotel-planlist-mv {
  background: url(../images/bg-mv-planlist-01.jpg) no-repeat center center;
  background-size: cover;
  margin-bottom: 40px;
}
.domhotel-planlist-mv__in {
  height: 240px;
  max-width: 1130px;
  margin: 0 auto;
  padding: 70px 5px;
}

.domhotel-planlist-mv-copy {
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1;
  text-shadow: 0 0 9px #000;
  margin-bottom: 1em;
}

.domhotel-planlist-mv-ttl {
  color: #fff;
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 1;
  text-shadow: 0 0 9px #000;
}

/* insex アンカーリンク */
.domhotel-planlist-index {
  margin-bottom: 20px;
}

.domhotel-planlist-index-list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
}
.domhotel-planlist-index-list > li {
  margin: 0 5px 10px;
}
.domhotel-planlist-index-list > li a {
  border: 1px solid #195178;
  border-radius: 3px;
  font-size: 1.3rem;
  line-height: 1.2;
  color: #195178;
  padding: 10px 10px 10px 30px;
  display: block;
  position: relative;
  transition: background .2s;
}
.domhotel-planlist-index-list > li a:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-planlist-index-list > li a:hover {
  background-color: #fff;
  text-decoration: none;
}
.domhotel-planlist-index-list > li a:before {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  position: absolute;
  top: 50%;
  left: 12px;
  margin-top: -.5em;
  font-size: 1rem;
  transition: .2s;
}

/* section ブロック */
.domhotel-planlist-section {
  margin-bottom: 20px;
}

/* header ヘッダー */
.domhotel-planlist-header {
  margin-bottom: 10px;
  border: 1px solid #195178;
  border-radius: 4px;
  padding: 25px 25px 25px 60px;
  cursor: pointer;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
  position: relative;
}
.domhotel-planlist-header:hover {
  opacity: .8;
}
.domhotel-planlist-header:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-planlist-header:before {
  color: #195178;
  font-size: 2rem;
  position: absolute;
  top: 50%;
  left: 25px;
  margin-top: -.5em;
  transition: .2s;
}
.domhotel-planlist-header.is-open:before {
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
.domhotel-planlist-header__ttl {
  font-size: 3rem;
  line-height: 1;
  font-weight: normal;
  color: #195178;
  display: inline-block;
}
.domhotel-planlist-header__ico {
  margin-left: 1em;
  background-position: center center;
  background-repeat: no-repeat;
  width: 30px;
  height: 30px;
  display: inline-block;
}
.domhotel-planlist-header__txt {
  font-size: 2rem;
  font-weight: normal;
  margin-left: 2em;
  color: #195178;
}

/* contents コンテンツ */
.domhotel-planlist-content {
  display: none;
  padding: 10px 0;
}
.domhotel-planlist-content.is-open {
  display: block;
}

/* bnr-list バナーリスト */
.domhotel-planlist-bnr-list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 10px -10px 0;
}
.domhotel-planlist-bnr-list__item {
  width: 25%;
  padding: 0 10px;
  margin-bottom: 30px;
  display: block;
}
.domhotel-planlist-bnr-list.is-hide .domhotel-planlist-bnr-list__item:nth-child(n+5) {
  display: none;
}

/* bnr バナー */
.domhotel-planlist-bnr__image {
  margin-bottom: 8px;
}
.domhotel-planlist-bnr__txt {
  font-size: 1.6rem;
  line-height: 1.4;
}

/*btn-more もっと見る*/
.domhotel-planlist-btn-more {
  display: none;
  margin: 10px 0 0 0;
  text-align: center;
  cursor: pointer;
  text-align: center;
  font-size: 1.5rem;
}
.domhotel-planlist-btn-more:hover {
  opacity: .8;
}
.domhotel-planlist-btn-more > span {
  color: #125687;
  font-weight: bold;
  position: relative;
}
.domhotel-planlist-btn-more > span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-planlist-btn-more > span:before {
  display: inline-block;
  color: #333;
  font-size: 1.2rem;
  margin-right: .8em;
  transition: .2s;
}
.domhotel-planlist-btn-more.is-open > span:before {
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
.domhotel-planlist-btn-more span:after {
  content: "もっと見る";
}
.domhotel-planlist-btn-more.is-show {
  display: block;
}
.domhotel-planlist-btn-more.is-open span:after {
  content: "閉じる";
}

/* link テキストバナー */
.domhotel-planlist-link-list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 10px;
}
.domhotel-planlist-link-list__item {
  margin: 0 5px 5px 0;
}
.domhotel-planlist-link-list.is-hide {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  height: 40px;
  overflow: hidden;
}

.domhotel-planlist-bnr-list.is-hide + .domhotel-planlist-link-list {
  display: none;
}

.domhotel-planlist-link {
  display: block;
  background-color: #fff;
  border: 1px solid #d7d7d7;
  border-radius: 4px;
  color: #125687;
  text-decoration: none;
  font-size: 1.3rem;
  line-height: 1;
  color: #333;
  padding: 10px;
  position: relative;
  text-decoration: none;
}

/* header-small 小カテゴリ */
.domhotel-planlist-header-small {
  background: #333;
  border-radius: 3px;
  color: #fff;
  padding: 10px 10px 10px 60px;
  cursor: pointer;
  position: relative;
}
.domhotel-planlist-header-small:hover {
  opacity: .8;
}
.domhotel-planlist-header-small:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-planlist-header-small:before {
  font-size: 1.5rem;
  position: absolute;
  top: 50%;
  left: 25px;
  margin-top: -.5em;
  transition: .2s;
}
.domhotel-planlist-header-small.is-open:before {
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
.domhotel-planlist-header-small__ttl {
  font-size: 1.8rem;
  font-weight: bold;
}

/* section-small 小カテゴリブロック */
.domhotel-planlist-section-small:not(:last-child) {
  margin-bottom: 20px;
}

/* section
---------------------------------------------------------- */
.domhotel-section-search .dom-section-heading-03 {
  margin-top: 0;
}

/* spotlist
---------------------------------------------------------- */
.domhotel-spotlist-section {
  margin-bottom: 2rem;
}

.domhotel-spotlist-heading {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.2;
  margin: 2.5rem 0 1.5rem;
  padding-left: 1rem;
  border-left: 4px solid #cc0d21;
}

.domhotel-spotlist-lead {
  margin-bottom: 1em;
}

.domhotel-spotlist-list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -.5rem;
  margin-right: -.5rem;
}
.domhotel-spotlist-list > li {
  width: 20%;
  padding: 0 .5rem 1rem;
}
.domhotel-spotlist-list > li a {
  display: block;
  background-color: #fff;
  border: 1px solid #d7d7d7;
  border-radius: 4px;
  padding: 1rem 2.5rem 1rem 1.5rem;
  position: relative;
  text-decoration: none;
  transition: color .2s;
}
.domhotel-spotlist-list > li a:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-spotlist-list > li a:before {
  color: #cc0d21;
  position: absolute;
  top: 50%;
  right: 1rem;
  margin-top: -.5em;
  font-size: .8em;
}
.domhotel-spotlist-list > li a:hover {
  color: #cc0d21;
}
.domhotel-spotlist-list > li a.is-disabled {
  pointer-events: none;
  background-color: #e7e7e7;
  color: #999;
}
.domhotel-spotlist-list > li a.is-disabled:before {
  color: #999;
}

/* arealist
---------------------------------------------------------- */
.domhotel-arealist-index {
  margin-bottom: 2rem;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  justify-content: center;
}

.domhotel-arealist-index-ttl {
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.2;
  color: #fff;
  padding: 1.1rem 2rem;
  margin: 5px 0;
  background-color: #195178;
  border-radius: 4px;
  white-space: nowrap;
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-align-items: center;
  align-items: center;
}
.domhotel-arealist-index-ttl:before {
  content: "";
  border-style: solid;
  border-width: 5px 0 5px 5px;
  border-color: transparent transparent transparent #195178;
  position: absolute;
  top: 50%;
  left: 100%;
  margin-top: -5px;
}

.domhotel-arealist-index-list {
  padding-left: 2rem;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.domhotel-arealist-index-list > li {
  margin: 5px;
}
.domhotel-arealist-index-list > li a {
  border: 1px solid #195178;
  border-radius: 3px;
  font-size: 1.5rem;
  line-height: 1.2;
  color: #195178;
  padding: 1rem 2rem 1rem 3rem;
  display: block;
  position: relative;
  transition: background .2s;
}
.domhotel-arealist-index-list > li a:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-arealist-index-list > li a:hover {
  background-color: #fff;
  text-decoration: none;
}
.domhotel-arealist-index-list > li a:before {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  position: absolute;
  top: 50%;
  left: 12px;
  margin-top: -.5em;
  font-size: 1rem;
  transition: .2s;
}

.domhotel-arealist-link-planlist {
  text-align: center;
}
.domhotel-arealist-link-planlist a {
  display: inline-block;
  position: relative;
  font-weight: bold;
  font-size: 1.5rem;
  padding-right: 2rem;
  position: relative;
}
.domhotel-arealist-link-planlist a:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-arealist-link-planlist a:before {
  position: absolute;
  top: 50%;
  right: 0;
  font-size: .8em;
  margin-top: -.5em;
}

.domhotel-arealist-area {
  margin-top: 4rem;
}

.domhotel-arealist-pref {
  margin: 2rem 1rem 0;
}

.domhotel-arealist-area-ttl {
  margin-bottom: 1rem;
}
.domhotel-arealist-area-ttl a {
  display: block;
  border: 1px solid #195178;
  border-radius: 4px;
  padding: 1.8rem;
  font-size: 2.4rem;
  line-height: 1;
  font-weight: bold;
  color: #195178;
  text-decoration: none;
  transition: background .2s;
}
.domhotel-arealist-area-ttl a:hover {
  background-color: #fff;
}

.domhotel-arealist-pref-ttl {
  margin-bottom: 2rem;
}
.domhotel-arealist-pref-ttl a {
  display: block;
  border-radius: 3px;
  color: #fff;
  font-size: 1.8rem;
  line-height: 1;
  font-weight: bold;
  position: relative;
  background: #333;
  padding: 1.2rem 1.8rem;
  color: #fff;
  text-decoration: none;
  transition: opacity .2s;
}
.domhotel-arealist-pref-ttl a:before {
  content: "";
  border-style: solid;
  border-width: 8px 8px 0 8px;
  border-color: #333 transparent transparent transparent;
  position: absolute;
  top: 100%;
  left: 4rem;
}
.domhotel-arealist-pref-ttl a:hover {
  opacity: .8;
}

.domhotel-arealist-link-map a {
  display: inline-block;
  position: relative;
  font-weight: bold;
  font-size: 1.5rem;
  padding-left: 2rem;
  position: relative;
}
.domhotel-arealist-link-map a:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-arealist-link-map a:before {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -.5em;
}

.domhotel-arealist-block__item {
  padding: 2rem 0;
}
.domhotel-arealist-block__item:not(:first-child) {
  padding: 0;
  visibility: hidden;
  opacity: 0;
  height: 0;
  transition: all .2s;
  border-top: 1px solid #d7d7d7;
}
.domhotel-arealist-block.is-open .domhotel-arealist-block__item {
  padding: 2rem 0;
  visibility: visible;
  opacity: 1;
  height: auto;
}
.domhotel-arealist-block__ttl {
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.2;
  padding-left: 1rem;
  border-left: 4px solid #cc0d21;
  margin-bottom: 1rem;
}
.domhotel-arealist-block__list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.domhotel-arealist-block__list > li {
  margin: .5rem .5rem 0 0;
}
.domhotel-arealist-block__list > li a {
  display: block;
  background-color: #fff;
  border: 1px solid #d7d7d7;
  border-radius: 4px;
  text-decoration: none;
  font-size: 1.3rem;
  line-height: 1;
  color: #333;
  padding: 1rem;
  position: relative;
  text-decoration: none;
  transition: all .2s;
}
.domhotel-arealist-block__list > li a:hover {
  text-decoration: none;
  color: #195178;
  border-color: #195178;
}

.domhotel-arealist-btn-more {
  margin: 0 0 2rem 0;
  text-align: center;
  cursor: pointer;
  text-align: center;
  font-size: 1.5rem;
}
.domhotel-arealist-btn-more:hover {
  opacity: .8;
}
.domhotel-arealist-btn-more > span {
  color: #125687;
  font-weight: bold;
  position: relative;
}
.domhotel-arealist-btn-more > span:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-arealist-btn-more > span:before {
  display: inline-block;
  color: #333;
  font-size: 1.2rem;
  margin-right: .8em;
  transition: .2s;
}
.domhotel-arealist-btn-more.is-open > span:before {
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
.domhotel-arealist-btn-more span:after {
  content: "もっと見る";
}
.domhotel-arealist-btn-more.is-open {
  margin-top: 2rem;
}
.domhotel-arealist-btn-more.is-open span:after {
  content: "閉じる";
}

.domhotel-btn-back-planlist {
  text-align: center;
  margin: 2rem 0;
}
.domhotel-btn-back-planlist a {
  display: inline-block;
  padding: 1rem 0 1rem 3rem;
  font-size: 1.6rem;
  font-weight: bold;
  position: relative;
}
.domhotel-btn-back-planlist a:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-btn-back-planlist a:before {
  display: inline-block;
  -webkit-transform: scale(-1, 1);
  transform: scale(-1, 1);
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -.5em;
}

.dom-spinbox__label--room:before, .dom-spinbox__label--men:before, .dom-spinbox__label--women:before, .domhotel-room-child__trigger:before, .domhotel-room-child__trigger:after, .domhotel-room-child__trigger span:before {
  display: inline-block;
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@font-face {
  font-family: 'jtb-dom';
  src: url("../fonts/jtb-dom-v2.ttf") format("truetype"), url("../fonts/jtb-dom-v2.woff") format("woff"), url("../fonts/jtb-dom-v2.svg#jtb-dom") format("svg");
  font-weight: normal;
  font-style: normal;
}
/* 人数・室数パネル 修正20191101
---------------------------------------------------------- */
.dom-spinbox--room {
  margin-top: 0;
  padding-top: 0;
  border-top: none;
}

.dom-spinbox__label {
  font-weight: bold;
  position: relative;
  padding-left: 2.4rem;
}
.dom-spinbox__label:before {
  font-size: 1.4rem;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -.5em;
  color: #999;
}
.dom-spinbox__label small {
  font-weight: normal;
}
.dom-spinbox__label--room:before {
  content: "";
}
.dom-spinbox__label--men:before {
  content: "";
  font-size: 2rem;
  margin-left: -.3rem;
}
.dom-spinbox__label--women:before {
  content: "";
  font-size: 2rem;
  margin-left: -.3rem;
}
.dom-spinbox__label--room:before {
  content: "";
}

.domhotel-room-child__trigger {
  font-size: 1.4rem;
  font-weight: bold;
  padding-left: 2.4rem;
  position: relative;
  color: #125687;
}
.domhotel-room-child__trigger:before, .domhotel-room-child__trigger:after {
  font-size: 2rem;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -.5em;
}
.domhotel-room-child__trigger:before {
  content: "";
  color: #ddd;
  margin-left: -.3rem;
}
.domhotel-room-child__trigger:after {
  content: "";
  color: #999;
  margin-left: .3rem;
}
.domhotel-room-child__trigger span {
  display: inline-block;
  padding-right: 2rem;
  cursor: pointer;
  position: relative;
}
.domhotel-room-child__trigger span:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -.5em;
  font-size: .8em;
  transition: .2s;
}
.domhotel-room-child__trigger.is-open {
  margin-bottom: 2rem;
}
.domhotel-room-child__trigger.is-open span:before {
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
.domhotel-room-child__content {
  display: none;
}
.domhotel-room-child-link a {
  display: inline-block;
  position: relative;
}
.domhotel-room-child-link a:before {
  content: "";
  display: inline-block;
  width: 11px;
  height: 9px;
  background: url(../../../assets/images/dom/1.0/ico-window.png) no-repeat 0 0;
  background-size: 11px auto;
  margin-right: 5px;
}

.domhotel-room-total__content {
  border-top: 1px solid #d7d7d7;
  padding: 1rem 0 0;
  margin-top: 1rem;
  text-align: center;
  font-weight: bold;
  line-height: 1.5;
}
.domhotel-room-total__content em {
  font-size: 1.8rem;
  font-weight: bold;
  margin: 0 .2em;
}
.domhotel-room-total-count {
  color: #cc0d21;
}

/* キャンペーンリンク付アイコン */
.domhotel-ico-campaign {
  display: inline-block;
  border: 1px solid #125687;
  color: #125687;
  font-size: 1.1rem;
  line-height: 21px;
  font-weight: normal;
  padding: 0 18px 0 5px;
  position: relative;
  position: relative;
}
.domhotel-ico-campaign:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-ico-campaign:hover {
  opacity: .8;
}
.domhotel-ico-campaign:before {
  position: absolute;
  top: 50%;
  right: 5px;
  font-size: 1rem;
  margin-top: -.5em;
}
.domhotel-ico-campaign:hover {
  text-decoration: none;
}

.dom-plan-details__room-type .domhotel-ico-campaign {
  margin-left: .5em;
  vertical-align: middle;
}

.domhotel-plan-details .domhotel-plan-ico-list {
  margin-bottom: 1rem;
}

/* guide
---------------------------------------------------------- */
.domhotel-guide-section {
  background-color: #fff;
  margin-bottom: 20px;
  padding: 25px 20px;
}

.domhotel-guide-block {
  margin-top: 40px;
}
.domhotel-guide-block__item {
  margin-top: 25px;
}

.domhotel-guide-heading-01 {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 1em;
}

.domhotel-guide-heading-02 {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 1em;
}

.domhotel-guide-heading-03 {
  font-size: 1.6rem;
  font-weight: normal;
  line-height: 1.2;
  margin-bottom: .5em;
}

.domhotel-guide-note {
  margin-top: .5em;
  font-size: 1.2rem;
}

.domhotel-guide-tbl-01 {
  width: 100%;
}
.domhotel-guide-tbl-01 th,
.domhotel-guide-tbl-01 td {
  border: 1px solid #d7d7d7;
  padding: 1em;
}
.domhotel-guide-tbl-01 th {
  background-color: #f5f5f5;
  width: 10em;
}

.domhotel-guide-tbl-02 {
  width: 100%;
}
.domhotel-guide-tbl-02 th,
.domhotel-guide-tbl-02 td {
  border: 1px solid #d7d7d7;
  padding: 1em;
}
.domhotel-guide-tbl-02 th {
  text-align: center;
  width: 7%;
  font-family: sans-serif;
}
.domhotel-guide-tbl-02 td {
  width: 43%;
}

/* faq
---------------------------------------------------------- */
.domhotel-faq-section {
  background-color: #fff;
  margin-bottom: 20px;
  padding: 25px 20px;
}

.domhotel-faq-heading-01 {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 1em;
}

.domhotel-faq-list {
  border-top: 1px solid #d7d7d7;
}

.domhotel-faq-item {
  border-bottom: 1px solid #d7d7d7;
}
.domhotel-faq-item__question {
  padding: 10px 45px 10px 5px;
  font-size: 1.6rem;
  transition: opacity .2s;
  cursor: pointer;
  position: relative;
}
.domhotel-faq-item__question:before {
  font-family: 'jtb-dom' !important;
  text-decoration: none;
  content: "";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.domhotel-faq-item__question:before {
  position: absolute;
  top: 50%;
  right: 13px;
  margin-top: -.5em;
  font-size: 1.2rem;
  transition: all .2s;
}
.domhotel-faq-item__question:hover {
  opacity: .8;
}
.domhotel-faq-item__question.is-open:before {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
.domhotel-faq-item__answer {
  display: none;
  padding: 5px 15px 15px;
}