

.tab-content > * {
  display: none;
}

.tab-content > *:first-child {
  display: block;
}

.tab-search-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.tab-search-list li {
  width: 40px;
  height: 40px;
  border-radius: 11px;
  margin-right: 8px;
  cursor: pointer;
}

.tab-search-list li.icon-search-3, .tab-search-list li.icon-search-4 {
  margin-right: 0;
}

.tab-search-list li.icon-search-1 {
  background: url(/stcontents/img/common/icon-seach-list-1.svg) no-repeat center center;
  background-size: 20px;
}

.tab-search-list li.icon-search-2 {
  background: url(/stcontents/img/common/icon-seach-list-2.svg) no-repeat center center;
  background-size: 20px;
}

.tab-search-list li.icon-search-3 {
  background: url(/stcontents/img/common/icon-seach-list-3.svg) no-repeat center center;
  background-size: 20px;
}

.tab-search-list li.icon-search-4 {
  background: url(/stcontents/img/common/icon-seach-list-4.svg) no-repeat center center;
  background-size: 16px;
}

.tab-search-list li.active.icon-search-1 {
  background: #0F0A64 url(/stcontents/img/common/icon-seach-list-1-white.svg) no-repeat center center;
  background-size: 20px;
}

.tab-search-list li.active.icon-search-2 {
  background: #0F0A64 url(/stcontents/img/common/icon-seach-list-2-white.svg) no-repeat center center;
  background-size: 20px;
}

.tab-search-list li.active.icon-search-3 {
  background: #0F0A64 url(/stcontents/img/common/icon-seach-list-3-white.svg) no-repeat center center;
  background-size: 20px;
}

.tab-search-list li.active.icon-search-4 {
  background: #0F0A64 url(/stcontents/img/common/icon-seach-list-4-white.svg) no-repeat center center;
  background-size: 16px;
}

.tab-box.large-style > * {
  font-size: 1.6rem;
  padding-top: 9px;
  padding-bottom: 9px;
}

@media (min-width: 768px) {
  .tab-box > * {
    padding: 13px;
    height: 4.8rem;
  }
}

@media (max-width: 768px) {
  .scroll-line .tab-box.column-3 > *, .scroll-line .tab-box.column-4 > *, .scroll-line .tab-box.column-5 > *, .scroll-line .tab-box.column-6 > *, .scroll-line .tab-box.column-7 > *, .scroll-line .tab-box.column-8 > * {
    width: auto;
    height: auto;
    padding: 10px 10px;
  }
  .tab-box.large-style > * {
    font-size: 1.4rem;
    padding: 9px 2px;
  }
}

.table-basic {
  width: 100%;
  border-bottom: 2px solid #F5F5F5;
}

.table-basic td,
.table-basic th {
  display: block;
  width: 100%;
  padding: 8px 8px;
  vertical-align: top;
  font-size: 1.4rem;
}

.table-basic th {
  background: #F5F5F5;
  min-width: 120px;
  font-weight: bold;
}

.table-basic.bd-none td,
.table-basic.bd-none th {
  border: none;
}

.table-basic.large-style td,
.table-basic.large-style th {
  font-size: 1.6rem;
}

.tableSpVertical {
  width: 100%;
  border: 1px solid #C6C6C6;
  line-height: 1.4;
}

.tableSpVertical th,
.tableSpVertical td {
  border-bottom: 1px solid #C6C6C6;
  padding: 16px;
}

.tableSpVertical th {
  background-color: #F5F5F5;
  font-weight: 900;
}

.table-icon::before {
  content: '';
  background-repeat: no-repeat;
  background-size: 100%;
  padding-left: 1.5em;
  margin-right: 8px;
}
.table-icon.table-icon-address::before {
  background-image: url(/stcontents/img/common/table-icon-address.svg);
}
.table-icon.table-icon-attention::before {
  background-image: url(/stcontents/img/common/table-icon-attention.svg);
}
.table-icon.table-icon-bath::before {
  background-image: url(/stcontents/img/common/table-icon-bath.svg);
}
.table-icon.table-icon-bus::before {
  background-image: url(/stcontents/img/common/table-icon-bus.svg);
}
.table-icon.table-icon-car::before {
  background-image: url(/stcontents/img/common/table-icon-car.svg);
}
.table-icon.table-icon-card::before {
  background-image: url(/stcontents/img/common/table-icon-card.svg);
}
.table-icon.table-icon-cashless::before {
  background-image: url(/stcontents/img/common/table-icon-cashless.svg);
}
.table-icon.table-icon-checkin::before {
  background-image: url(/stcontents/img/common/table-icon-checkin.svg);
}
.table-icon.table-icon-hotel::before {
  background-image: url(/stcontents/img/common/table-icon-hotel.svg);
}
.table-icon.table-icon-info::before {
  background-image: url(/stcontents/img/common/table-icon-info.svg);
}
.table-icon.table-icon-invoice::before {
  background-image: url(/stcontents/img/common/table-icon-invoice.svg);
}
.table-icon.table-icon-other::before {
  background-image: url(/stcontents/img/common/table-icon-other.svg);
}
.table-icon.table-icon-pets::before {
  background-image: url(/stcontents/img/common/table-icon-pets.svg);
}
.table-icon.table-icon-room::before {
  background-image: url(/stcontents/img/common/table-icon-room.svg);
}
.table-icon.table-icon-train::before {
  background-image: url(/stcontents/img/common/table-icon-train.svg);
}
.table-icon.table-icon-restaurant::before {
  background-image: url(/stcontents/img/common/table-icon-restaurant.svg);
}
.table-icon.table-icon-wheelchair::before {
  background-image: url(/stcontents/img/common/table-icon-wheelchair.svg);
}

@media (min-width: 768px) {
  .table-basic {
    border-top: 1px solid #C6C6C6;
    border-bottom: 1px solid #C6C6C6;
  }
  .table-basic td,
  .table-basic th {
    width: auto;
    display: table-cell;
    padding: 16px;
    border-bottom: 1px solid #C6C6C6;
    font-size: 1.6rem;
  }
  .table-basic th {
    width: 25.6%;
  }
}

.input-radio {
  background: url("/stcontents/img/common/icon-radio.svg") no-repeat 0 center;
  background-size: contain;
  width: 24px;
  height: 24px;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  display: inline-block;
  vertical-align: middle;
  margin-top: -2px;
  margin-right: 4px;
}

.input-radio.radio-error {
  background: url("/stcontents/img/common/icon-radio-error.svg") no-repeat 0 center;
  background-size: contain;
}

.input-radio:checked {
  background: url("/stcontents/img/common/icon-radio-on.svg") no-repeat 0 center;
  background-size: contain;
}

.input-radio:disabled {
  background: url("/stcontents/img/common/icon-radio-disabled.svg") no-repeat 0 center;
  background-size: contain;
  width: 24px;
  height: 24px;
}

/* 非活性時、input(radio)の親要素に付与 */
.radio-disabled label {
  color: #C6C6C6;
}

.input-checkbox {
  background: #fff url("/stcontents/img/common/icon-checkbox.svg") no-repeat 0 center;
  background-size: contain;
  width: 24px;
  height: 24px;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  display: inline-block;
  vertical-align: middle;
  margin-top: -2px;
  margin-right: 4px;
}

.input-checkbox:checked {
  background: #fff url("/stcontents/img/common/icon-checkbox-on.svg") no-repeat 0 center;
  background-size: contain;
}

.input-checkbox:disabled {
  background: #f5f5f5;
  cursor: default;
}

.bg-gray .input-checkbox:disabled {
  background: #dfdfdf;
}

.input-checkbox2 input[type="checkbox"] {
  visibility: hidden;
  position: absolute;
  left: -99999px;
}
.input-checkbox2 span {
  padding-left: 28px;
  position: relative;
  font-size: 1.6rem;
  display: block;
  line-height: 1.4;
}
.input-checkbox2 span::before {
  content: '';
  display: block;
  width: 17px;
  height: 17px;
  border: 2px solid #757575;
  border-radius: 2px;
  background-color: #FFFFFF;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.input-checkbox2 span::after {
  content: '';
  display: none;
  width: 10px;
  height: 4px;
  border-left: 2px solid #FFFFFF;
  border-bottom: 2px solid #FFFFFF;
  position: absolute;
  left: 4px;
  top: 0;
  bottom: 0;
  margin: auto;
  transform: rotate(-45deg);
}
.detail-page .facility h3, .detail-page .access h3 {
    margin-top: 40px;
    margin-bottom: 8px;
}

.anchor-link.position-measure.has-dropdown:has(.anchor-dropdown.is-open) {
  padding-bottom: 220px;
  margin-bottom: -220px;
}
.anchor-dropdown .btn-anker.anchor-dropdown-trigger {
  padding-right: 32px!important;
  position: relative;
}
.anchor-dropdown.is-open .btn-anker.anchor-dropdown-trigger {
  background-color: #0F0A64;
  color: #fff;
}
.anchor-dropdown .btn-anker.anchor-dropdown-trigger::after {
  content: '';
  background-color: #0F0A64;
  mask-image: url(/stcontents/img/detail/anchor-dropdown-arrow.svg);
  mask-repeat: no-repeat;
  mask-size: 100%;
  position: absolute;
  right: 8px;
  height: 16px;
  width: 20px;
  transition: transform .3s ease;
}
.anchor-dropdown.is-open .btn-anker.anchor-dropdown-trigger::after,
.anchor-dropdown .btn-anker.anchor-dropdown-trigger.active::after {
  background-color: #fff;
}
.anchor-dropdown.is-open .btn-anker.anchor-dropdown-trigger::after {
  transform: rotate(180deg);
}
.anchor-dropdown .anchor-dropdown-menu {
  background-color: #fff;
  border: 1px solid #C6C6C6;
  border-radius: 8px;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.15);
  max-height: 0;
  overflow: hidden;
  position: fixed;
  transition: max-height .3s ease, visibility 0s .3s;
  visibility: hidden;
  z-index: 30;
}
.anchor-dropdown.is-open .anchor-dropdown-menu {
  max-height: 500px;
  transition: max-height .3s ease, visibility 0s;
  visibility: visible;
}
.anchor-dropdown .anchor-dropdown-menu > li + li a {
  border-top: 1px solid #C6C6C6;
}
.anchor-dropdown .anchor-dropdown-menu a {
  color: #0F0A64;
  display: flex;
  justify-content: center;
  font-size: 1.1rem;
  padding: 8px 15px;
}
.anchor-dropdown .anchor-dropdown-menu a:focus,
.anchor-dropdown .anchor-dropdown-menu a:hover {
  background-color: #EBEBEB;
}
.anchor-dropdown .anchor-dropdown-menu a.active {
  background-color: #F3F8FD;
}
.detail-page .review-title-pc {
  display: none;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 2.25;
  margin: 0;
}
.detail-page .review-title-sp {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.8;
  margin: 0;
}
.mod-dl dt:not(:first-child) {
  margin-top: 8px;
}
.detail-page .characteristic {
  margin-top: 24px;
  margin-bottom: 8px;
}
.detail-page .tag-group {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 0;
}
.detail-page .tag-group > li {
  min-width: 100%;
}
.detail-page .tag-group-name {
  font-size: 1.6rem;
  font-weight: 900;
  line-height: 1.75;
}
.detail-page .tag-list {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.2rem;
  gap: 4px;
  line-height: 2.0834;
}
.detail-page .tag-list > li {
  background-position: 4px 6px;
  background-repeat: no-repeat;
  background-size: 14px 14px;
  padding-left: 25px;
  width: calc(50% - 2px);
}
.detail-page .tag-list > li.circle {
  background-image: url("/stcontents/img/detail/circle.svg");
}
.detail-page .tag-list > li.triangle {
  background-image: url("/stcontents/img/detail/triangle.svg");
}
.detail-page .tag-list > li.cross {
  color: #c6c6c6;
  background-image: url("/stcontents/img/detail/cross.svg");
}
@media (min-width: 1024px) {
  .detail-page .review-title-pc {
    display: block;
  }
  .detail-page .review-title-sp {
    display: none;
  }
}
@media (min-width: 768px) {
  .btn-anker.anchor-dropdown-trigger {
    padding-right: 40px!important;
  }
  .btn-anker.anchor-dropdown-trigger::after {
    right: 16px;
  }
  .detail-page .characteristic {
    margin-top: 40px;
  }
  .detail-page .tag-group {
    flex-wrap: nowrap;
    gap: 0 2.14%;
    justify-content: space-between;
  }
  .detail-page .tag-group > li {
    min-width: 13.125%;
  }
  .detail-page .tag-list {
    display: block;
    font-size: 1.6rem;
    line-height: 1.75;
  }
  .detail-page .tag-list > li {
    background-position-x: 6px;
    background-size: 16px 16px;
    padding-left: 28px;
    width: 100%;
  }
}

.links {
  margin-top: 24px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.links > * {
  margin-right: 24px;
}

.links > *:last-child {
  margin-right: 0;
}

.links .modal-btn {
  background-color: #F5F5F5;
  padding: 14px 48px 14px 16px;
  font-weight: bold;
  text-decoration: none;
  border-radius: 4px;
}

@media screen and (max-width: 767px) {
  .links {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  .links > * {
    margin-right: 0;
    margin-bottom: 24px;
  }
  .links > *:last-child {
    margin-bottom: 0;
  }

  .links {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 768px) {
  .modal-link-black::after {
    right: 16px;
  }
}

.hotel-detail-faq-summary {
  display: block;
  font-weight: 800;
  color: #0F0A64;
  background-color: #F3F8FD;
  padding: 13px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  list-style: none;
}

.hotel-detail-faq-text {
  padding: 13px 13px 5px 13px;
}

.hotel-detail-faq-summary::-webkit-details-marker {
  display: none;
}

.hotel-detail-faq ul li {
  border: 1px solid #899AD6;
  border-radius: 3px;
  margin-bottom: 8px;
}

.hotel-detail-faq-summary {
  border-radius: 3px;
}

.hotel-detail-faq-details[open] .hotel-detail-faq-summary {
  border-radius: 3px 3px 0 0;
}

.hotel-detail-faq-triangle {
  background-color: #0F0A64;
  mask-image: url(/stcontents/img/detail/anchor-dropdown-arrow.svg);
  mask-repeat: no-repeat;
  mask-size: 100%;
  height: 16px;
  width: 20px;
  transition: transform .3s ease;
}

.hotel-detail-faq-details[open] .hotel-detail-faq-triangle {
  transform: rotate(180deg);
}

@media screen and (max-width: 767px) {
  .anchor-dropdown .anchor-dropdown-menu a {
    padding: 10px 15px;
  }
}

@media screen and (min-width: 768px) {
  .anchor-dropdown .anchor-dropdown-menu a {
    font-size: 1.3rem;
  }
}

.room-plan-filter-area {
  margin-bottom: 16px;
}
.room-top-button-area {
  display: flex;
  flex-direction: column;
}
.room-top-button-harf-button-wrap {
  display: flex;
  flex-direction: row;
  margin: 0 0 8px 0;
  margin-bottom: 8px;
}
/* DPãƒ¢ãƒ¼ãƒ€ãƒ«ãƒœã‚¿ãƒ³ */
.dp-agreement-modal-button {
  width: 100%;
  position: relative;
  padding: 0 12px;
  border: solid 1px #4F68C2;
  border-radius: 4px;
  vertical-align: middle;
  height: 40px;
}
.dp-agreement-modal-button-inner-box {
  display: inline-block;
  height: 24px;
}
.dp-agreement-modal-button-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  vertical-align: top;
  text-align: center;
}
.dp-agreement-modal-button-icon img {
  width: 15.83px;
  height: 16.67px;
}
.dp-agreement-modal-button-text {
  display: inline-block;
  color: #4F68C2;
  margin-left: 4px;
  margin-right: 4px;
  font-size: 1.4rem;
  vertical-align: top;
  margin-top: 1px;
}
.dp-agreement-modal-button-arrow {
  display: inline-block;
  width: 20px;
  height: 20px;
  vertical-align: top;
  text-align: center;
}
.dp-agreement-modal-button-arrow img {
  width: 10px;
  height: 18px;
  margin-top: 2px;
}
@media screen and (max-width: 767px) {
  .detail-page .dp-agreement-modal-button {
    width: 100%;
    text-align: left;
    position: relative;
  }
  .dp-agreement-modal-button-arrow {
    position: absolute;
    right: 12px;
  }
}
@media screen and (min-width: 768px) {
  .room-top .frame-flex-base.button-action {
    margin: 0;
  }
  .room-top-button-area .room-top-button-harf-button-wrap {
    flex-direction: row;
  }
  .room-top-button-area .dp-agreement-modal-button {
    margin: 0;
    height: 48px;
  }
  .dp-agreement-modal-button {
    width: auto;
    position: static;
  }
  .room-plan-filter-area {
    display: flex;
    flex-direction: row;
  }
  .room-top-button-area {
    flex-direction: row;
    justify-content: space-between;
  }
  .dp-agreement-modal-button-text {
    color: #4F68C2;
    margin-left: 4px;
    font-size: 1.6rem;
    vertical-align: middle;
    margin-right: 4px;
  }
  .dp-agreement-modal-button-icon {
    display: inline-block;
    width: 21px;
    height: 21px;
    vertical-align: middle;
    line-height: 19px;
  }
  .dp-agreement-modal-button-icon img {
    display: inline-block; 
    width: 21px;
    height: 21px;
    vertical-align: middle;
  }
  .dp-agreement-modal-button-arrow {
    display: inline-block;
    width: 21px;
    height: 21px;
    vertical-align: middle;
    line-height: 19px;
  }
  .dp-agreement-modal-button-arrow img {
    display: inline-block;
    width: 21px;
    height: 21px;
    vertical-align: middle;
  }
}
.modal-container {
  width: 760px;
}
.dp-agreement-modal .modal-container {
  padding: 0;
  border-radius: 16px;
  height: auto;
}
.dp-agreement-modal .btn-block + .btn-block {
  margin: 0;
}
.dp-agreement-modal {
  display: flex;
  flex-direction: row;
}
.room-top-button-area {
  margin-top: 24px;
}

.detail-page .related {
  padding-top: 40px;
}

.related-hotels .related-hotels-type-row,
.related-hotels .related-hotels-ranking-row {
  display: flex;
  width: 100%;
  padding-bottom: 16px;
  flex-wrap: wrap;
}

.related-hotels-station-row {
  display: grid;
  grid-template-columns: 152px 1fr;
}

.related-hotels .related-hotels-type,
.related-hotels .related-hotels-ranking,
.related-hotels .related-hotels-station {
  font-weight: bold;
  font-size: 1.4rem;
  width: 152px;
  height: 29px;
  white-space: nowrap;
  margin-right: 24px;
}

.related-hotels .related-hotels-type-link,
.related-hotels .related-hotels-ranking-link,
.related-hotels .related-hotels-station-link {
  font-weight: 400;
  font-size: 1.4rem;
  display: flex;
}

.related-hotels .related-hotels-station-link {
  margin-left: 24px;
  flex-wrap: wrap;
}

.related-hotels .related-hotels-type-link a,
.related-hotels .related-hotels-ranking-link a,
.related-hotels .related-hotels-station-link a {
  color: #333;
  text-decoration: underline;
  white-space: nowrap;
}

.related-hotels .related-hotels-type-link a:hover,
.related-hotels .related-hotels-ranking-link a:hover,
.related-hotels .related-hotels-station-link a:hover {
  text-decoration: none;
}

.related-hotels .related-hotels-type-link a:not(.no-arrow)::after {
  content: url(/stcontents/img/common/icon-arrow-breadcrumbs.svg);
  display: inline-block;
  vertical-align: middle;
  margin: 0 8px;
}

.related-hotels .related-hotels-station-link a {
  margin-right: 16px;
  margin-bottom: 8px;
}

@media (max-width: 768px) {
  .related-hotels ul {
    flex-wrap: wrap;
    width: 100%;
  }

  .related-hotels .related-hotels-type,
  .related-hotels .related-hotels-ranking,
  .related-hotels .related-hotels-station {
    width: 100%;
    margin-bottom: 8px;
  }

  .related-hotels-station-row {
    display: flex;
  }

  .related-hotels .related-hotels-station-link {
    margin-left: 0px;
  }
}