@charset "utf-8";
/*  detail.css
---------------------------------------------- */

/*  pc
---------------------------------------------- */
/*----------------------------
common
 ----------------------------*/
.lower-heading_wrapper .name-prev {
  font-size: inherit !important;
}
.detail-inner {
  width: 78%;
  max-width: 730px;
  margin: 0 auto;
}
.bg_beige .lower-pagination {
  padding-top: 0;
}
#nav_bar1 li.item07 {
  display: none;
}
#nav_bar1 li:nth-last-child(-n + 4) a::before {
  content: "";
  width: 20px;
  height: 20px;
}
.tab-cnt3 li {
  width: calc(100% / 3) !important;
}

/*-------- title --------*/
.detail-h3 {
  position: relative;
  margin-bottom: 40px;
  font-size: 2.4rem;
}
.detail-h3::after {
  content: "";
  position: absolute;
  top: calc(50% + 1px);
  left: 0;
  width: 100%;
  height: 1px;
  background: #d3cbc6;
}
.detail-h3 span {
  position: relative;
  padding-right: 20px;
  background: #fff;
  z-index: 1;
}

/*-------- detail-follow --------*/
.detail-follow {
  position: fixed;
  display: flex;
  top: 70px;
  left: 50%;
  transform: translate(-50%, -140px);
  z-index: 99;
  opacity: 0;
  transition: 0.3s;
}
.detail-follow.fixed {
  opacity: 1;
  transform: translate(-50%, 0);
}
.detail-follow li {
  width: calc(100% / 5);
  height: 45px;
  align-content: center;
  text-align: center;
  background: #a9a9a9;
  color: #fff;
  clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 0 100%, 0 10px);
  cursor: pointer;
  font-size: 18px;
}
.detail-follow li.active {
  background: #3b5d7a;
}

/*-------- detail-favo --------*/
.detail-favo {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 15px;
  font-family: "Noto Sans JP";
}
.detail-favo_icon {
  display: block;
  width: 25px;
  height: 20px;
  cursor: pointer;
}
.detail-favo_icon input[type="checkbox"] {
  display: none;
}
.detail-favo_icon .hidden::before {
  font-family: "Font Awesome 5 Free";
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  font-weight: 400;
  content: "\f004";
  color: #114465;
  font-size: 20px;
}
.detail-favo_icon input[type="checkbox"]:checked + .hidden::before {
  display: none;
}
.detail-favo_icon input[type="checkbox"]:checked + .hidden::after {
  font-family: "Font Awesome 5 Free";
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  font-weight: 600;
  content: "\f004";
  color: #114465;
  font-size: 20px;
}

/*-------- detail-acc --------*/
.detail-acc {
  margin-bottom: 20px;
}
.detail-acc .detail-acc_toggle {
  position: relative;
  height: 45px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 20px;
  border-left: 8px solid #d3cbc6;
  background: #f8f7f5;
  font-size: 2rem;
  cursor: pointer;
}
.detail-acc .detail-acc_toggle::after {
  content: "";
  position: relative;
  width: 10px;
  height: 10px;
  border-top: solid 1px #333;
  border-right: solid 1px #333;
  transform: rotate(135deg);
}
.detail-acc.open .detail-acc_toggle::after {
  transform: rotate(-45deg);
  top: 5px;
}
.detail-acc .detail-acc_cont {
  display: none;
}

/*----------------------------
b-main
 ----------------------------*/
#b-main .detail-favo_txt {
  font-size: 1.4rem;
}
#b-main .main-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 15px 0 20px;
}
#b-main .main-head_icon {
  display: flex;
  align-items: center;
  gap: 10px;
}
#b-main .main-head_icon img {
  height: 25px;
}
#b-main .main-head_item01__map {
  width: 180px;
  height: 45px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  background: #3b5d7a;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  border-radius: 3px;
  font-size: 1.4rem;
  transition: all 0.3s;
}
#b-main .main-head_item01__map:hover {
  background: #2d4b65;
}
#b-main .main-head_item01__map::before {
  content: "";
  width: 14px;
  height: 20px;
  background: url(../common/img/icon_map-white.svg) no-repeat center / contain;
}
#b-main .main-img {
  width: 100%;
}
#b-main .main-detail {
  padding: 70px 0 120px;
}
#b-main .main-detail > *:not(:last-child) {
  margin-bottom: 50px;
}
#b-main .main-detail a,
#b-main .main-detail figure,
#b-main .main-detail img {
  display: block;
  width: 100%;
}
#b-main .main-detail figure figcaption {
  display: block;
  margin-top: 20px;
  font-size: 1.6rem;
  line-height: 1.8em;
}
#b-main .main-detail .acd-head {
  margin-bottom: 30px;
  cursor: pointer;
}
#b-main .main-detail .acd-body {
  display: none;
}
#b-main .main-detail .subimg {
  display: flex;
  flex-wrap: wrap;
  gap: 50px 30px;
  margin-top: 50px;
}
#b-main .main-detail .subimg li {
  width: calc(50% - 15px);
}
#b-main .main-detail .subimg li figcaption {
  display: block;
  margin-top: 20px;
  font-size: 1.6rem;
  line-height: 1.8em;
}
#b-main .main-detail .movie .movie-wrap {
  width: 100%;
  aspect-ratio: 16 / 9;
  position: relative;
}
#b-main .main-detail .movie .movie-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#b-main .main-detail .movie p {
  margin-top: 20px;
}

/*----------------------------
b-info
 ----------------------------*/
#b-info {
  padding-bottom: 120px;
}
#b-info .info-tab {
  display: flex;
  gap: 3px;
  font-size: 2rem;
}
#b-info .info-tab li {
  width: calc(100% / 5);
  height: 70px;
  align-content: center;
  text-align: center;
  background: #a9a9a9;
  color: #fff;
  clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 0 100%, 0 10px);
  cursor: pointer;
}
#b-info .info-tab li.active {
  background: #3b5d7a;
}
#b-info .info-wrap {
  padding-bottom: 95px;
  background: #fff;
}
#b-info .info-wrap_item {
  display: none;
}
#b-info .info-wrap_item.active {
  display: block;
}
#b-info .info-head {
  padding-top: 60px;
}
#b-info .info-head_name {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 40px;
  padding: 15px 0;
  border-top: 1px solid #dfdad4;
  border-bottom: 1px solid #dfdad4;
  font-size: 2.8rem;
}
#b-info .bottom-favo {
  margin-top: 40px;
  justify-content: center;
}
#b-info .info-bottom {
  margin-top: 50px;
}

/*----------------------------
b-madori
 ----------------------------*/
#b-madori {
  padding-top: 30px;
}
#b-madori .madori-select01,
#b-madori .madori-select02 {
  font-family: "Noto Sans JP", sans-serif;
}
#b-madori .madori-select01.is-none,
#b-madori .madori-select02.is-none {
  display: none;
}
#b-madori .madori-select01 {
  margin-bottom: 40px;
  display: flex;
  align-items: baseline;
  gap: 20px;
}
#b-madori .madori-select_txt {
  flex: 0 0 auto;
}
#b-madori .madori-select_kukaku {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 5px;
}
#b-madori .madori-select_kukaku_item {
  display: flex;
  align-items: baseline;
  justify-content: center;
  width: 120px;
  height: 45px;
  color: #a9a9a9;
  background: #edebe8;
  cursor: pointer;
  clip-path: polygon(
    7px 0,
    calc(100% - 7px) 0,
    100% 7px,
    100% calc(100% - 7px),
    calc(100% - 7px) 100%,
    7px 100%,
    0 calc(100% - 7px),
    0 7px
  );
}
#b-madori .madori-select_kukaku_item.active {
  color: #fff;
  background: #4ea8a5;
}
#b-madori .madori-select_kukaku_item span {
  font-size: 20px;
  letter-spacing: 0.1em;
}
#b-madori .madori-select02 {
  margin: 0 0 0 auto;
  width: 160px;
  height: 45px;
  position: relative;
  font-size: 16px;
  background: #fbfbfb;
  border: 1px solid #a9a9a9;
}
#b-madori .madori-select02::after {
  content: "";
  width: 10px;
  height: 10px;
  border-top: solid 1px #a9a9a9;
  border-right: solid 1px #a9a9a9;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: rotate(135deg) translateY(100%);
  pointer-events: none;
}
#b-madori .madori-select02 select {
  width: 100%;
  height: 100%;
  text-align: center;
}
#b-madori .madori-change_item {
  display: none;
}
#b-madori .madori-change_item.active {
  display: block;
}
#b-madori .madori-price {
  font-size: 2.8rem;
}
#b-madori .madori-price span {
  font-size: 2rem;
}
#b-madori .madori-info {
  margin: 20px 0 40px;
  padding: 20px 0;
  border-top: 1px solid #dfdad4;
  border-bottom: 1px solid #dfdad4;
  font-size: 1.6rem;
  line-height: 2.3;
}
#b-madori .madori-img {
  position: relative;
}
#b-madori .madori-img_arrow {
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 30px;
  height: 60px;
  transform: translateY(-50%);
  cursor: pointer;
}
#b-madori .madori-img_arrow.prev {
  left: -60px;
}
#b-madori .madori-img_arrow.next {
  right: -60px;
}
#b-madori .madori-img_arrow::before,
#b-madori .madori-img_arrow::after {
  content: "";
  position: absolute;
  top: calc(50% - 2px);
  width: 40px;
  height: 2px;
  border-radius: 20px;
  background-color: #333;
}
#b-madori .madori-img_arrow::before {
  transform: rotate(45deg);
}
#b-madori .madori-img_arrow::after {
  transform: rotate(-45deg);
}
#b-madori .madori-img_arrow.prev::before,
#b-madori .madori-img_arrow.prev::after {
  left: 0;
  transform-origin: 1px 50%;
}
#b-madori .madori-img_arrow.next::before,
#b-madori .madori-img_arrow.next::after {
  right: 0;
  transform-origin: calc(100% - 1px) 50%;
}
#b-madori .madori-swiper_content {
  margin-top: 40px;
}
#b-madori .madori-swiper_content .madori-swiper_inner {
  position: relative;
}
#b-madori .madori-swiper_inner .madori-swiper_main {
  overflow: hidden;
}
#b-madori .madori-swiper .swiper-slide {
  width: 100%;
}
#b-madori .madori-swiper_inner .madori-prev,
#b-madori .madori-swiper_inner .madori-next {
  position: absolute !important;
  top: calc(50% - 2em + 10px);
}
#b-madori .madori-swiper_inner .madori-prev {
  left: -70px;
}
#b-madori .madori-swiper_inner .madori-next {
  right: -70px;
}
#b-madori .madori-swiper_content__img {
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
}
#b-madori .madori-swiper_content__img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#b-madori .madori-swiper_content__txt {
  margin-top: 20px;
  font-size: 1.4rem;
  font-family: "Noto Sans JP", sans-serif;
}
#b-madori .madori-thumbnail {
  margin-top: 40px;
}
#b-madori .madori-thumbnail .img {
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
}
#b-madori .madori-thumbnail .img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#b-madori .madori-view,
#b-madori .madori-feature {
  margin-top: 80px;
}
#b-madori .madori-view .madori-view__cont {
  aspect-ratio: 4 / 3;
}
#b-madori .madori-view .madori-view__cont iframe {
  width: 100%;
  height: 100%;
}
#b-madori .madori-feature_cont {
  margin: 0 auto;
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 20px 15px;
  width: 94%;
  font-family: "Noto Sans JP", sans-serif;
}
#b-madori .madori-feature_cont li {
  width: calc(100% / 7 - 13px);
  min-width: 110px;
}

/*----------------------------
b-kukaku
 ----------------------------*/
#b-kukaku {
  padding-top: 15px;
}
#b-kukaku .detail-img {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
}
#b-kukaku .detail-img_head {
  font-size: 2rem;
  margin-bottom: 15px;
}
#b-kukaku .detail-img_main {
  overflow: hidden;
}
#b-kukaku .detail-img_main figure {
  display: block;
  margin: auto;
  width: 445px;
}
#b-kukaku .detail-img_main figure img {
  max-width: none;
  max-height: none;
}
#b-kukaku .detail-img_btn {
  position: absolute;
  right: 0;
  bottom: 45px;
}
#b-kukaku .detail-img_btn__item {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  margin-bottom: 3px;
  width: 50px;
  height: 50px;
  text-align: center;
  background: #edebe8;
  font-size: 10px;
  font-weight: 700;
  color: #748696;
}
#b-kukaku .detail-img_btn__item::before {
  content: "";
  width: 20px;
  height: 20px;
}
#b-kukaku .detail-img_btn__item.big::before {
  background: url(../img/bukken/icon_big.svg) no-repeat center / contain;
}
#b-kukaku .detail-img_btn__item.small::before {
  background: url(../img/bukken/icon_small.svg) no-repeat center / contain;
}
#b-kukaku .detail-img_btn__item.reset::before {
  background: url(../img/bukken/icon_reset.svg) no-repeat center / contain;
}
#b-kukaku .kukaku-cmp,
#b-madori .kukaku-cmp {
  padding-top: 80px;
}
#b-kukaku .kukaku-cmp_table,
#b-madori .kukaku-cmp_table {
  width: 100%;
  font-size: 14px;
  font-family: "Noto Sans JP", sans-serif;
}
#b-kukaku .kukaku-cmp_table tr th,
#b-kukaku .kukaku-cmp_table tr td,
#b-madori .kukaku-cmp_table tr th,
#b-madori .kukaku-cmp_table tr td {
  border: 1px solid #fff;
  text-align: center;
  vertical-align: middle;
  line-height: 1.7;
}
#b-kukaku .kukaku-cmp_table tr th,
#b-madori .kukaku-cmp_table tr th {
  background: #edebe8;
  font-weight: 400;
}
#b-kukaku .kukaku-cmp_table thead tr th,
#b-madori .kukaku-cmp_table thead tr th {
  padding: 17px 0;
}
#b-kukaku .kukaku-cmp_table tbody tr th:first-child,
#b-madori .kukaku-cmp_table tbody tr th:first-child {
  width: 10%;
}
#b-kukaku .kukaku-cmp_table tbody tr th:first-child a {
  text-decoration: underline;
}
#b-kukaku .kukaku-cmp_table tr td,
#b-madori .kukaku-cmp_table tr td {
  padding: 25px 0;
  background: #f8f8f5;
}
#b-kukaku .kukaku-cmp_table tr td:last-child,
#b-madori .kukaku-cmp_table tr td:last-child {
  font-weight: 700;
  color: #c62f2f;
}
#b-kukaku .kukaku-cmp_table tr td.text-red {
  color: #c62f2f;
}
#b-kukaku .kukaku-cmp_table tr td.text-blue {
  color: #3b5d7a;
}
#b-kukaku .kukaku-cmp_table tr td.text-black {
  color: #333;
}

/*----------------------------
b-map
 ----------------------------*/
#b-map {
  padding-top: 35px;
}
#b-map .map-wrap {
  width: 67%;
  margin: 0 auto;
}
#b-map .map-wrap.jc-center {
  display: flex;
  justify-content: center;
}
#b-map .map-wrap_img {
  width: 100%;
}
#b-map .map-wrap_btn {
  width: 245px;
  height: 50px;
  margin-bottom: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  background: #3b5d7a;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  border-radius: 3px;
  font-size: 1.6rem;
  transition: all 0.3s;
}
#b-map .map-wrap_btn:hover {
  background: #2d4b65;
}
#b-map .map-wrap_btn::before {
  content: "";
  width: 15px;
  height: 25px;
  background: url(../common/img/icon_map-white.svg) no-repeat center / contain;
}
#b-map .map-access,
#b-map .map-facility {
  padding-top: 60px;
}
#b-map .map-access_cont {
  margin: 0 auto;
  width: 67%;
}
#b-map .map-access_cont__txt {
  margin-top: 20px;
  font-family: "Noto Sans JP", sans-serif;
}
#b-map .map-facility_block__list {
  padding: 15px 0 25px;
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 30px 15px;
}
#b-map .map-facility_block__list li {
  width: calc(100% / 5 - 12px);
}
#b-map .map-facility_block__list .img {
  width: 100%;
  aspect-ratio: 4 / 3;
}
#b-map .map-facility_block__list .img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#b-map .map-facility_block__list .desc {
  margin-top: 10px;
}
#b-map .map-facility_block__list .desc > p {
  line-height: 1.7;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.3rem;
}

/*----------------------------
b-spec
 ----------------------------*/
#b-spec {
  padding-top: 35px;
}
#b-spec .spec-acc_cont {
  padding-bottom: 40px;
  font-family: "Noto Sans JP", sans-serif;
}
#b-spec .spec-acc_cont .ttl {
  line-height: 1.5;
}
#b-spec .spec-acc_cont .txt {
  margin-top: 5px;
  font-size: 1.4rem;
}
#b-spec .spec-acc_cont__main {
  padding: 40px 0 45px;
}
#b-spec .detail-inner.pattern2,
#b-spec .detail-inner.pattern3,
#b-spec .detail-inner.pattern4 {
  width: 100%;
  max-width: 100%;
}
#b-spec .spec-acc_cont__main.pattern2,
#b-spec .spec-acc_cont__main.pattern3,
#b-spec .spec-acc_cont__main.pattern4 {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
#b-spec .spec-acc_cont__main.pattern2 > div {
  width: calc(100% / 2 - 10px);
}
#b-spec .spec-acc_cont__main.pattern3 > div {
  width: calc(100% / 3 - 14px);
}
#b-spec .spec-acc_cont__main.pattern4 > div {
  width: 460px;
}
#b-spec .spec-acc_cont__main.pattern4 .spec-acc_cont__row {
  width: calc((100% - 500px) / 2);
}
#b-spec .spec-acc_cont__main .img {
  margin-bottom: 20px;
}
#b-spec .spec-acc_cont__main .ttl {
  font-size: 1.8rem;
}
#b-spec .spec-acc_cont__sub {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 40px 20px;
}
#b-spec .spec-acc_cont__sub li {
  width: calc(100% / 4 - 15px);
}
#b-spec .spec-acc_cont__sub li .img {
  margin-bottom: 10px;
}

/*----------------------------
b-summary
 ----------------------------*/
#b-summary {
  padding-top: 60px;
  font-family: "Noto Sans JP", sans-serif;
}
#b-summary .summary-wrap {
  margin-bottom: 20px;
}
#b-summary .summary-wrap_item {
  display: flex;
  margin-bottom: 1px;
}
#b-summary .summary-wrap_item__term,
#b-summary .summary-wrap_item__info {
  padding: 15px 0;
  font-size: 1.6rem;
  line-height: 1.7;
}
#b-summary .summary-wrap_item__term {
  width: 140px;
  background: #edebe8;
  text-align: center;
  align-content: center;
}
#b-summary .summary-wrap_item:not(:last-child) .summary-wrap_item__term {
  align-content: center;
}
#b-summary .summary-wrap_item__info {
  width: calc(100% - 140px);
  padding-right: 10px;
  padding-left: 10px;
}
#b-summary .summary-wrap_item:nth-child(odd) .summary-wrap_item__info {
  background: #f8f8f5;
}
#b-summary .summary-note {
  margin-top: 10px;
  text-align: right;
  font-size: 1.4rem;
}

/*----------------------------
detail-common
 ----------------------------*/
#d-common {
  margin-top: 60px;
}

/*----------------------------
detail-inspect
 ----------------------------*/
#d-inspect {
  position: relative;
  padding: 40px 0 80px;
  background: url(../img/bukken/bg_reserve.jpg) no-repeat center bottom / cover;
}
#d-inspect::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(122, 113, 108, 0.9);
  mix-blend-mode: multiply;
}
#d-inspect * {
  position: relative;
  z-index: 1;
}
#d-inspect .inspect-ttl {
  margin-bottom: 30px;
  font-size: 2.4rem;
  color: #fff;
  text-align: center;
}
#d-inspect .inspect-ttl::before {
  content: attr(data-en);
  display: block;
  margin-bottom: 10px;
  color: #d3cbc6;
  font-family: "Cormorant Garamond", serif;
  font-size: 4.6rem;
}
#d-inspect .inspect-txt {
  color: #fff;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
}
#d-inspect .inspect-cont {
  margin-top: 20px;
  padding: 30px 0;
  background: rgba(255, 255, 255, 0.95);
}
#d-inspect .inspect-cont .cal-table_date__week {
  background: #c62f2f;
}
#d-inspect .inspect-cont .end .cal-table_date__week {
  background: #979797;
}
#d-inspect .inspect-cont .cal-table_date__status {
  background: #fff;
}
#d-inspect .inspect-cont .end .cal-table_date__status {
  background: none;
}
#d-inspect .inspect-cont .end .cal-table_date__status .day {
  color: #979797;
}
#d-inspect #detailCalendar .fc-toolbar.fc-header-toolbar {
  margin-bottom: 10px;
}
#d-inspect #detailCalendar .fc-toolbar-title {
  font-size: 1.8rem;
}
#d-inspect #detailCalendar .fc-col-header-cell {
  padding: 3px 0;
  font-size: 1.6rem;
  color: #fff;
  font-weight: normal;
}
#d-inspect #detailCalendar .fc-col-header-cell.fc-day {
  background: #c62f2f;
}
#d-inspect #detailCalendar .fc-col-header-cell.fc-day-disabled {
  background: #979797;
}
#d-inspect #detailCalendar .fc-button-primary {
  padding: 16px 9px;
  background-color: #aea49e;
  border-color: #aea49e;
  border-radius: 0;
}
#d-inspect #detailCalendar .fc-col-header-cell-cushion {
  cursor: default;
}
#d-inspect #detailCalendar .fc-daygrid-day-events,
#d-inspect #detailCalendar .fc-daygrid-day-bg {
  display: none !important;
}
#d-inspect #detailCalendar .fc-daygrid-day-top {
  display: block;
}
#d-inspect #detailCalendar .fc-daygrid-day-number {
  display: block;
  padding: 0;
}
#d-inspect #detailCalendar .fc-daygrid-day.fc-day-today {
  background-color: transparent !important;
}
#d-inspect #detailCalendar .day-cell {
  font-size: 2.2rem;
}
#d-inspect #detailCalendar .day-cell.disabled {
  padding: 10px 0;
  background-color: #f0f0f0;
  cursor: default;
}
#d-inspect #detailCalendar .day-cell a {
  display: block;
  width: 100%;
  height: 100%;
  padding: 16px 0;
}
#d-inspect #detailCalendar .day-cell .date-view,
#d-inspect #detailCalendar .day-cell .availability {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  color: #2d3032;
}
#d-inspect #detailCalendar .day-cell .date-view {
  margin-bottom: 2px;
  font-size: 1.6rem;
}
#d-inspect #detailCalendar .day-cell.disabled .date-view,
#d-inspect #detailCalendar .day-cell.disabled .availability {
  color: #aaa;
}

/*----------------------------
d-contact
 ----------------------------*/
#d-contact {
  margin-top: 20px;
  padding: 60px 0;
  background: #fff;
}
#d-contact .detail-contact_wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8%;
}
#d-contact .detail-contact_wrap__info > p {
  text-align: center;
  line-height: 1;
}
#d-contact .detail-contact_wrap__info .shop {
  font-size: 2rem;
}
#d-contact .detail-contact_wrap__info .tel {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 15px;
  margin: 15px 0 20px;
  font-size: 4.8rem;
}
#d-contact .detail-contact_wrap__info .tel::before {
  content: "";
  margin-top: 5px;
  width: 45px;
  height: 30px;
  background: url(../img/bukken/icon_tel.svg) no-repeat center / contain;
}
#d-contact .detail-contact_wrap__info .time {
  font-family: "Noto Sans JP";
}
#d-contact .detail-contact_wrap__btn {
  position: relative;
  width: 45%;
  max-width: 420px;
  height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #b19e72;
  color: #fff !important;
  font-size: 1.8rem;
  transition: all 0.3s;
}
#d-contact .detail-contact_wrap__btn:hover {
  background: #9a8a66;
}
#d-contact .detail-contact_wrap__btn::after {
  content: "";
  position: absolute;
  right: 20px;
  width: 34px;
  height: 25px;
  background: url(../common/img/icon_contact-white.svg) no-repeat center / contain;
}

/*----------------------------
recommend
 ----------------------------*/
.recommend {
  margin: 0 auto !important;
  padding: 120px 0;
}
.recommend .swiper_inner {
  margin: 60px 0 0 !important;
}
.recommend .reco_cont .swiper-wrapper {
  gap: 30px;
}
.recommend .reco_cont .swiper-slide {
  width: calc(100% / 3 - 20px);
}
.recommend .reco_cont .swiper-slide .info {
  height: auto !important;
}
.recommend .swp_btns {
  display: none;
}

/*  mobile & smart phone
---------------------------------------------- */
@media only screen and (max-width: 959px) {
  /*----------------------------
common
 ----------------------------*/
  p {
    font-size: 14px;
  }
  .lower-heading {
    padding-bottom: 20px;
  }
  .lower-heading_wrapper .name-prev {
    font-size: 2.6rem !important;
  }
  .lower-heading .head_ja {
    font-size: 24px;
  }
  .pagination {
    margin-bottom: 30px;
  }
  .detail-inner {
    width: 100% !important;
  }
  #b-kukaku .detail-img_main figure {
    width: 100%;
  }
  #b-kukaku .detail-img_main figure .resize_outframe {
    margin: 0 auto;
  }
  /* .detail-inner,
  #b-kukaku .detail-img_main figure,
  #b-kukaku .detail-img_main figure > div,
  #b-kukaku .detail-img_main figure > div img {
    width: 100%!important;
  } */
   /* #b-kukaku .detail-img_main figure > div,
  #b-kukaku .detail-img_main figure > div img {
    height: 100%!important;
  } */
  #nav_bar1 li.item04 {
    display: none;
  }
  #nav_bar1 li.item05 a {
    background: #c62f2f;
  }
  #nav_bar1 li.item07 {
    display: flex;
  }
  #nav_bar1 li.item07 a {
    background: #748696;
  }
  #nav_bar1 li.item07 a::before {
    background: url(../common/img/icon_tel.svg) no-repeat center / contain;
  }

  /*-------- title --------*/
  .detail-h3 {
    margin-bottom: 30px;
    font-size: 2.3rem;
  }
  .detail-h3 span {
    padding-right: 15px;
  }

  /*-------- detail-follow --------*/
  .detail-follow {
    width: 100%;
    top: 50px;
  }
  .detail-follow li {
    height: 35px;
    line-height: 1.4;
    clip-path: polygon(7px 0, calc(100% - 7px) 0, 100% 7px, 100% 100%, 0 100%, 0 7px);
    cursor: pointer;
    font-size: 11px;
  }

  /*-------- detail-favo --------*/
  .detail-favo {
    gap: 5px;
  }
  .detail-favo_txt {
    font-size: 12px;
  }
  .detail-favo_icon {
    width: 20px;
    height: 16px;
  }
  .detail-favo_icon .hidden::before,
  .detail-favo_icon input[type="checkbox"]:checked + .hidden::after {
    font-size: 18px;
  }

  /*-------- detail-acc --------*/
  .detail-acc {
    margin-bottom: 5px;
  }
  .detail-acc .detail-acc_toggle {
    height: 35px;
    padding: 0 10px;
    font-size: 14px;
    border-left-width: 6px;
  }
  .detail-acc .detail-acc_toggle::after {
    width: 5px;
    height: 5px;
  }

  /*-------- detail-scroll --------*/
  .detail-scroll {
    position: relative;
    overflow-x: scroll;
    font-family: "Noto Sans JP", sans-serif;
  }
  .scroll-hint-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding: 0 !important;
    top: 30px !important;
    left: 50% !important;
    transform: translateX(-50%);
    width: 200px !important;
    height: 145px !important;
    text-align: center;
    background: rgba(0, 0, 0, 0.7) !important;
    transition: opacity 0.3s;
  }
  .scroll-hint-icon:before {
    width: 60px !important;
    height: 50px !important;
    background-image: url(../img/bukken/icon_scroll01.svg) !important;
  }
  .scroll-hint-icon:after {
    margin: 0 !important;
    width: 115px !important;
    height: 25px !important;
    top: 30px !important;
    transform: translateX(-50%);
    background-position: center;
    background-size: contain;
    background-image: url(../img/bukken/icon_scroll02.svg) !important;
  }
  .detail-scroll::-webkit-scrollbar {
    height: 8px;
  }
  .detail-scroll::-webkit-scrollbar-thumb {
    background: #cecece;
    border-radius: 30px;
  }
  .detail-scroll .detail-scroll_main {
    min-width: 940px;
    margin-bottom: 5px;
  }
  .detail-scroll_txt {
    margin-bottom: 10px;
  }

  /*----------------------------
b-main
 ----------------------------*/
  #b-main .detail-favo_txt {
    font-size: 12px;
  }
  #b-main .main-head {
    align-items: flex-end;
    margin-top: 10px;
  }
  #b-main .main-head_icon {
    gap: 5px;
  }
  #b-main .main-head_icon img {
    height: 16px;
  }
  #b-main .main-head_item01__map {
    width: 120px;
    height: 35px;
    gap: 5px;
    font-size: 12px;
  }
  #b-main .main-head_item01__map::before {
    width: 10px;
    height: 15px;
  }
  #b-main .main-detail {
    padding: 40px 0;
  }
  #b-main .main-detail > *:not(:last-child) {
    margin-bottom: 30px;
  }
  #b-main .main-detail figure figcaption {
    font-size: 1.4rem;
    line-height: 1.6em;
  }
  #b-main .main-detail .subimg {
    display: flex;
    flex-wrap: wrap;
    gap: 30px 0;
    margin-top: 30px;
  }
  #b-main .main-detail .subimg li {
    width: 100%;
  }

  /*----------------------------
b-info
 ----------------------------*/
  #b-info {
    width: 100%;
    padding-bottom: 60px;
  }
  #b-info .info-tab {
    gap: 0;
    font-size: 10px;
  }
  #b-info .info-tab li {
    height: 35px;
    line-height: 1.4;
    clip-path: polygon(7px 0, calc(100% - 7px) 0, 100% 7px, 100% 100%, 0 100%, 0 7px);
  }
  #b-info .info-wrap {
    padding-bottom: 60px;
  }
  #b-info .info-head {
    padding-top: 30px;
  }
  #b-info .info-head_name {
    margin-top: 20px;
    padding: 10px 0;
    font-size: 2.4rem;
  }
  #b-info .bottom-favo {
    margin-top: 20px;
  }
  #b-info .info-bottom {
    margin-top: 30px;
  }

  /*----------------------------
  b-madori
 ----------------------------*/
  #b-madori {
    padding-top: 20px;
  }
  #b-madori .madori-select01 {
    display: block;
    margin-bottom: 10px;
  }
  #b-madori .madori-select_kukaku {
    margin-top: 10px;
    gap: 3px;
  }
  #b-madori .madori-select_kukaku_item {
    width: calc(100% / 5 - 3px);
    height: 30px;
    font-size: 10px;
    clip-path: polygon(
      4px 0,
      calc(100% - 4px) 0,
      100% 4px,
      100% calc(100% - 4px),
      calc(100% - 4px) 100%,
      4px 100%,
      0 calc(100% - 4px),
      0 4px
    );
  }
  #b-madori .madori-select_kukaku_item span {
    font-size: 14px;
  }
  #b-madori .madori-select02 {
    width: 130px;
    height: 40px;
    margin-bottom: 20px;
    font-size: 14px;
  }
  #b-madori .madori-select02 select {
    text-align-last: center;
  }
  #b-madori .madori-select02::after {
    width: 5px;
    height: 5px;
  }
  #b-madori .madori-info {
    margin: 5px 0 10px;
    display: block;
    font-size: 12px;
    line-height: 1.7;
  }
  #b-madori .madori-img {
    position: relative;
  }
  #b-madori .madori-img_arrow {
    width: 26px;
    height: 40px;
  }
  #b-madori .madori-img_arrow.prev {
    left: -10px;
  }
  #b-madori .madori-img_arrow.next {
    right: -10px;
  }
  #b-madori .madori-img_arrow::before,
  #b-madori .madori-img_arrow::after {
    top: calc(50% - 2px);
    width: 25px;
    height: 2px;
    border-radius: 20px;
  }
  #b-madori .madori-swiper_content {
    margin-top: 30px;
  }
  #b-madori .madori-swiper_inner .madori-prev,
  #b-madori .madori-swiper_inner .madori-next {
    top: calc(50% - 3em + 10px);
  }
  #b-madori .madori-swiper_inner .madori-prev {
    left: -15px;
  }
  #b-madori .madori-swiper_inner .madori-next {
    right: -15px;
  }
  #b-madori .madori-swiper_content__txt {
    margin-top: 10px;
    font-size: 12px;
    line-height: 1.6;
  }
  #b-madori .madori-thumbnail {
    margin-top: 15px;
  }
  #b-madori .madori-view,
  #b-madori .madori-feature {
    margin-top: 70px;
  }
  #b-madori .madori-view .madori-view__cont {
    aspect-ratio: 1 / 1;
  }
  #b-madori .madori-feature_cont {
    gap: 10px 5px;
    width: 100%;
  }
  #b-madori .madori-feature_cont li {
    width: calc(100% / 6 - 5px);
    min-width: inherit;
  }

  /*----------------------------
b-kukaku
 ----------------------------*/
  #b-kukaku .kukaku-cmp,
  #b-madori .kukaku-cmp {
    padding-top: 60px;
  }
  #b-madori .kukaku-cmp_table tbody tr th:first-child{
    width: 15%;
  }
  #b-madori .detail-scroll_main {
    min-width: 600px;
  }
  #b-kukaku .kukaku-cmp_table tr th:first-child,
  #b-madori .kukaku-cmp_table tr th:first-child{
    position: sticky;
    top: 0;
    left: -1px;
  }
 
  /*----------------------------
b-map
 ----------------------------*/
  #b-map {
    padding-top: 40px;
  }
  #b-map .map-wrap {
    width: 100%;
  }
  #b-map .map-wrap_btn {
    width: 160px;
    height: 45px;
    margin-bottom: 25px;
    gap: 5px;
    font-size: 12px;
  }
  #b-map .map-wrap_btn::before {
    width: 10px;
    height: 15px;
  }
  #b-map .map-access_cont {
    width: 100%;
  }
  #b-map .map-facility {
    padding-top: 40px;
  }
  #b-map .map-facility_block__list {
    max-height: 180px;
    padding: 10px 0 15px;
    justify-content: space-between;
    gap: 20px 10px;
    overflow-y: scroll;
  }
  #b-map .map-facility_block__list li {
    width: calc(100% / 2 - 5px);
  }
  #b-map .map-facility_block__list .desc {
    margin-top: 5px;
  }
  #b-map .map-facility_block__list .desc > p {
    line-height: 1.6;
    font-size: 10px;
  }

  /*----------------------------
b-spec
 ----------------------------*/
  #b-spec .spec-acc_cont {
    padding-bottom: 15px;
  }
  #b-spec .spec-acc_cont .txt {
    font-size: 12px;
    line-height: 1.8;
  }
  #b-spec .spec-acc_cont__main {
    padding: 20px 0 30px;
  }
  #b-spec .spec-acc_cont__main.pattern3 > div {
    width: calc(100% / 2 - 10px);
  }
  #b-spec .spec-acc_cont__main.pattern4 > div {
    width: 100%;
  }
  #b-spec .spec-acc_cont__main.pattern4 .spec-acc_cont__row {
    display: flex;
    gap: 20px;
    order: 2;
    width: 100%;
  }
  #b-spec .spec-acc_cont__main.pattern4 .spec-acc_cont__row > div {
    width: calc(100% / 2 - 10px);
  }
  #b-spec .spec-acc_cont__main .img {
    margin-bottom: 10px;
  }
  #b-spec .spec-acc_cont__sub {
    justify-content: space-between;
    gap: 20px;
  }
  #b-spec .spec-acc_cont__sub li {
    width: calc(100% / 2 - 10px);
  }

  /*----------------------------
b-summary
 ----------------------------*/
  #b-summary {
    padding-top: 40px;
  }
  #b-summary .summary-wrap {
    margin-bottom: 10px;
  }
  #b-summary .summary-wrap_item__term,
  #b-summary .summary-wrap_item__info {
    font-size: 14px;
  }
  #b-summary .summary-wrap_item__term {
    width: 100px;
    position: sticky;
    top: 0;
    left: 0;
  }
  #b-summary .summary-wrap_item__info {
    width: calc(100% - 100px);
  }
  #b-summary .summary-note {
    text-align: left;
  }

  /*----------------------------
detail-common
 ----------------------------*/
  #d-common {
    width: 90%;
    margin: 80px auto 0;
  }

  /*----------------------------
detail-inspect
 ----------------------------*/
  #d-inspect {
    padding-top: 20px;
    background: url(../img/bukken/bg_reserve.jpg) no-repeat right bottom / cover;
  }
  #d-inspect .inspect-ttl {
    margin-bottom: 20px;
  }
  #d-inspect .inspect-ttl::before {
    font-size: 32px;
  }
  #d-inspect .inspect-cont {
    margin-top: 10px;
  }
  #d-inspect #detailCalendar .fc-toolbar-title {
    font-size: 16px;
  }
  #d-inspect .-txt {
    font-size: 12px;
  }
  #d-inspect #detailCalendar .day-cell {
    font-size: 17px;
  }
  #d-inspect #detailCalendar .day-cell .date-view {
    font-size: 12px;
  }
 
  /*----------------------------
#d-contac
 ----------------------------*/
  #d-contact {
    padding: 40px 0;
  }
  #d-contact .detail-contact_wrap {
    flex-direction: column;
    gap: 20px;
  }
  #d-contact .detail-contact_wrap__info .tel {
    margin: 10px 0 20px;
    font-size: 32px;
  }
  #d-contact .detail-contact_wrap__info .tel::before {
    margin-top: 10px;
    width: 30px;
    height: 20px;
  }
  #d-contact .detail-contact_wrap__info .tap {
    margin-bottom: 10px;
    font-size: 12px;
    text-align: center;
    color: #a9a9a9;
    font-family: "Noto Sans JP";
  }
  #d-contact .detail-contact_wrap__btn {
    width: 100%;
    height: 60px;
  }
  #d-contact .detail-contact_wrap__btn::after {
    width: 25px;
    height: 20px;
  }

  /*----------------------------
recommend
 ----------------------------*/
  .recommend {
    padding: 60px 0;
  }
  .recommend .swiper_inner {
    margin: 30px 0 0 !important;
  }
  .recommend .reco_cont .swiper-wrapper {
    align-items: flex-start;
    gap: 0;
  }
  .recommend .swp_btns {
    display: flex;
  }
}
