@charset "UTF-8";
.brand-txt{
  font-size: 12px;  
}
.pg-ttl-container,
.body-p-container{
  margin-bottom: calc(var(--base-s)* 2);
}
.pg-ttl{
  font-weight: 700;
  font-size: 30px;
  line-height: 40px;
  margin-bottom: calc(var(--base-s)* 1);
}
.pg-ttl.upper{
  text-transform: uppercase;
}
.strong{
  font-weight: 700;
}
.lead{
  font-size: 16px;
}
.txt-upper{
  text-transform: uppercase;
}
.pri-hr{
  border-top: 1px solid var(--pri-color);
}
button:hover{
  cursor: pointer;
}
.loading{
  background-repeat: no-repeat;
	background-size: 50px auto;
  background-position: center center;
	background-image: url("../img/common/loader.gif");
}
.btn-pri{
  width: 245px;
  line-height: 58px;
  text-align: center;
  font-size: 16px;
  color: var(--sec-color);
  background-color: var(--btn-pri);
  border: 0px solid var(--btn-pri);
  border-radius: 5px;
  /* box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.32); */
}
.btn-pri:hover{
  /* background-color: var(--btn-pri-hover);
  color: var(--btn-pri); */
}
.btn-sec{
  width: 98px;
  line-height: 32px;
  text-align: center;
  color: var(--btn-pri);
  border: 1px solid var(--btn-pri);
  background-color: var(--white);
}
.btn-sec:hover{
  color: var(--white);
  background-color: var(--btn-pri);
}
.blank-btn{
  background-color: transparent;
  width: 80px;
  line-height: 40px;
  border: 0;
  text-decoration: underline;

  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
}
.btn-wrap{
  padding-top: calc(var(--base-s) * 4);
  text-align: center;
}
.btn-wrap .btn-pri,
.btn-wrap .blank-btn{
  display: block;
  margin: 0 auto calc(var(--base-s) * 2);
}
.btn-wrap .btn-pri .loader.active{
    display: inline-block;
    margin-left: 8px;
    vertical-align: top;
    padding-top: 26px;
}
.zoom:hover img{
  -webkit-transform: scale(1.3); 
      -ms-transform: scale(1.3);
          transform: scale(1.3); 
}
.zoom-tar:hover img.zoom-item{
  -webkit-transform: scale(1.3); 
      -ms-transform: scale(1.3);
          transform: scale(1.3); 
}
.loader{
  width: 30px;
  height: 30px;
  display: none;
  margin:0 auto;

  background-repeat: no-repeat;
	background-size: 30px auto;
  background-position: center center;
	background-image: url("../img/common/loader.gif");  
}
.loader.active{
  display: block;
}
.loader.dark{
	background-image: url("../img/common/loader_dark.gif");  
}

.main-visual{
  font-size: 17px;
}
.main-visual .f-l{
  /* margin-bottom: calc(var(--base-s) * 0.8); */
}
html[lang="zh-Hant-TW"] .main-visual .f-l,
html[lang="ja-JP"] .main-visual .f-l,
html[lang="ko-KR"] .main-visual .f-l{
  margin-bottom: calc(var(--base-s) * 0.5);
}

.main-visual .txt-conts{
  padding-top: calc(var(--base-s) * 2);
  box-sizing: border-box;
}
@media only screen and (min-width: 980px) {
  .main-visual{
    padding-top: 70px;
    flex-direction: row-reverse;
    align-items: center;
  }
  .main-visual .img-wrap{
    width: 36.65%;
  }
  .main-visual .txt-conts{
    padding-top: calc(var(--base-s) * 0);
    padding-right: calc(var(--base-s) * 4);
    width: calc(100% - 36.65%);
  }
}
.search-bar{
  margin-top: calc(var(--base-s) * 2);
  margin-bottom: calc(var(--base-s) * 2);
  position: relative;
}
.search-bar .search-item-wrap{
  border-radius: 5px;
  height: 58px;
  line-height: 58px;
  margin-bottom: calc(var(--base-s) * 2);
  background: white;
}
.search-bar .search-item-wrap.no-bg{
  background: none;
}
.search-bar .search-item-wrap.btn-wrap{
  padding-top: 0;
  height: auto;
  max-width: 245px;
  margin: 0 auto;
}
.search-bar .search-item-wrap.btn-wrap .error-txt{
  line-height: 1.9em;
  color: var(--red);
  display: none;
}
.search-bar .search-item-wrap.btn-wrap .error-txt.active{
  display: block;
}
.search-bar .search-item-wrap .icon.main-icon{
  width: 58px;
  max-width: 58px;
  min-width: 58px;
  height: 100%;
  background-color: var(--pri-color);

}
.search-bar .search-item-wrap .icon.main-icon.icon01{
  border-radius: 5px 0 0 5px;
}
.search-bar .search-item-wrap .icon.main-icon.icon02{
  border-radius: 5px 0 0 5px;
}

.search-bar .search-item-wrap .item-child.bdr-left{
  border-left: 1px solid var(--gray07);
}
.search-bar .icon-btn span svg{
  height: 1.4em;
  margin-top: -4px;
}
.search-bar .search-item-wrap .details,
.search-bar .search-item-wrap .date-display{
  padding-left: calc(var(--base-s) * 2);
  padding-right: calc(var(--base-s) * 2);
}
.search-bar .search-item-wrap .details .var-num{
  padding-right: 4px;
}
.search-bar .search-item-wrap button.btn-pri{
  margin:0 auto;
  display: block;
}
@media only screen and (min-width: 980px) {
  .search-bar{
    margin-top: calc(var(--base-s) * 3);
    margin-bottom: calc(var(--base-s) * 3);
  }
  .search-bar .l-bar-wrap{
    width: calc(100% - 180px);
  }
  .search-bar .l-bar-wrap .search-item-wrap{
    width: 65%;
  }
  .search-bar .search-item-wrap.people-box-trigger{
    width: 35%;
  }
  .search-bar .l-bar-wrap .search-item-wrap:first-child{
    border-radius: 5px 0px 0px 5px;
  }
  .search-bar .l-bar-wrap .search-item-wrap:nth-child(2){
    border-radius: 0px;
  }
  .search-bar .r-bar-wrap .search-item-wrap,
  .search-bar .r-bar-wrap .search-item-wrap .btn-pri{
    border-radius: 0px 5px 5px 0px;
  }
  .search-bar .search-item-wrap .icon.main-icon.icon02{
    border-radius:0px;
  }
  .search-bar .search-item-wrap.btn-wrap{
    max-width: 180px;
  }

  .search-bar .r-bar-wrap{
    width: 180px;
  }
  .search-bar .r-bar-wrap .search-item-wrap .btn-pri{
    width: 100%;
  }
}
@media only screen and (min-width: 1280px) {

}
@media only screen and (min-width: 1360px) {
  .search-bar .l-bar-wrap{
    width: calc(100% - 245px);
  }
  .search-bar .l-bar-wrap .search-item-wrap,
  .search-bar .search-item-wrap.people-box-trigger{
    width: 50%;
  }
  .search-bar .r-bar-wrap{
    width: 245px;
  }
  .search-bar .search-item-wrap.btn-wrap{
    max-width: 245px;
  }
}
.property-wrap{
  font-size: 16px;
  width: 100%;
  min-height: 200px;
  padding-top: calc(var(--base-s) * 2);
}
.property-wrap .property{
  box-sizing: border-box;
  border: 1px solid var(--pri-color);
  padding: calc(var(--base-s) * 2);
  margin-bottom: calc(var(--base-s) * 4);
}
.property-wrap .property .swiper-wrap{
  position: relative;
    margin-bottom: calc(var(--base-s) * 2);  
}
.swiper-wrap .img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;             /* crop edges so it looks uniform */
  object-position: center;       /* tweak focal point if needed */
  display: block;
}
.property-wrap .property .property-ttl{
  text-align: center;
}
.swiper-wrap .img-wrap{
  aspect-ratio: 16 / 9;         /* pick your ratio (e.g., 4/3, 3/2) */
  width: 100%;
  overflow: hidden;
}

.enlarge-btn{
  position: absolute;
  z-index: 10;
  top:0;
  right:0;
  width: 40px;
  height: 40px;
  background-color: var(--pri-color);
}
.enlarge-btn a,
.enlarge-btn span{
  color: var(--sec-color);
}
.enlarge-btn .icon-btn span svg{
  height: 1.6em;
}
.enlarge-btn svg path{
  fill: var(--sec-color);
}
.property-wrap .property .property-conts{
  position: relative;
}
.property-wrap .property .property-conts .mid-col,
.property-wrap .property .property-conts .right-col{
    margin-bottom: calc(var(--base-s) * 5);  
}
.property-wrap .property .property-conts .mid-col .col-box-wrap{
  margin-bottom: calc(var(--base-s) * 5);  
}
.property-wrap .property .property-conts .mid-col .col-box-wrap:last-child{
  margin-bottom: calc(var(--base-s) * 0);
}
.property-wrap .property .property-conts .box-ttl{
  font-size: 21px;
  margin-bottom: calc(var(--base-s) * 3);
  text-align: center;
}
.property-wrap .property .property-conts .box-ttl.m-b-x0{
  margin-bottom: calc(var(--base-s) * 0);
}
.property-wrap .property .property-conts .box-href{
  margin-top: calc(var(--base-s) * 3);
}
.property-wrap .property .property-conts a,
.property-wrap .property .property-conts .box-href a{
  text-decoration: underline;
}
.property-wrap .property .property-conts p{
  margin-bottom: calc(var(--base-s) * 2);
}
.property-wrap .property .property-conts p:last-child{
  margin-bottom: calc(var(--base-s) * 0);
}
.property-wrap .property .property-conts ul {
  list-style: none;
  padding-left: 1em;
}
.property-wrap .property .property-conts ul > li::before {
  content: "*";
  display: inline-block;
  width: 1em;
  margin-left: -1em;
}
.property-wrap .property .property-conts ul ul {
  list-style: disc;
}
.property-wrap .property .property-conts ul ul li:before{
  content: "-";
}
.property-wrap .property .popup-link-wrap{
  margin-top: calc(var(--base-s) * 2);
}

.hidden-fancybox-links{
  display: none;
}
.total-wrap{}
.total-wrap .type01{
  font-size: 20px;
}
.total-wrap .total{
    font-size: 25px;
    line-height: 30px;
}
.total-wrap .type02{
  font-size: 17px;
}
.total-wrap .btn-wrap{
  padding-top: calc(var(--base-s) * 2);
}
.total-wrap .btn-wrap a,
.total-wrap .btn-wrap button {
  margin: 0 auto;
}
.property-wrap .property .total-wrap p{
  margin-bottom: 0;
}
.property-wrap .property .box-conts.m-t-x2{
  margin-top: calc(var(--base-s) * 2);
}
@media only screen and (min-width: 980px) {
  .property-wrap{
    padding-top: calc(var(--base-s) * 0);
  }
  .property-wrap .property .property-conts .box-ttl{
    text-align: left;
  }
  .property-wrap .property{
    margin-bottom: calc(var(--base-s) * 5);
  }


  .property-wrap .property .property-conts{
    padding-bottom: calc(var(--base-s) * 15);
  }
  .property-wrap .property .l-bar-wrap{
    width: 38%;
  }
  .property-wrap .property .swiper-wrap{
    width: 100%;
  }
  .property-wrap .property .r-bar-wrap{
    width: calc(100% - 38%);
    padding-left: calc(var(--base-s) * 2);
    box-sizing: border-box;
  }
  .property-wrap .property .r-bar-wrap .mid-col{
    width: 60%;
    box-sizing: border-box;
    padding-right: calc(var(--base-s) * 1.5);
  }
  .property-wrap .property .r-bar-wrap .right-col{
    width: 40%;
    box-sizing: border-box;
    padding-left: calc(var(--base-s) * 1.5);
  }
  .property-wrap .property .total-wrap{
    position: absolute;
    bottom:calc(var(--base-s) * 0);
    right:calc(var(--base-s) * 0);
  }
  .property-wrap .property .total-wrap{
    text-align: right;
  }
  .property-wrap .property .total-wrap .btn-wrap .btn-pri{
    margin-left: auto;
    margin-right: 0;
  }
  
}
.calendars-wrap,
.people-wrap{
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.32);
  box-sizing: border-box;
  border:1px solid var(--pri-color);
  position: absolute;
  width: 100%;
  min-height: 100px;
  top: 58px;
  z-index: 99;
  display: none;
  transition: opacity 0.3s ease;
  opacity: 0;
  max-width: 720px;
  background-color: var(--sec-color);
}
.calendars-wrap.active,
.people-wrap.active{
  display: block;
  opacity: 1;
}
.calendars-main-head, 
.people-main-head{
  background-color: var(--pri-color);
  color: var(--sec-color);
  font-size: 16px;
  text-align: center;
  padding: var(--base-s);
  position: relative;
}
.calendars-main-head p, .people-main-head p{
  line-height: 28px;
}

.calendars-main-head .calendar-close-btn, 
.people-main-head .people-close-btn{
  position: absolute;
  right: 16px;
  top: 13px;
}
.people-main-head .people-close-btn{
  top: -3px;
}
.calendars-main-head .calendar-close-btn:hover,
.people-main-head .people-close-btn:hover{
  cursor: pointer;
}
.calendars-main-head .calendar-close-btn svg,
.people-main-head .people-close-btn svg{
  height: 1em;
  width: auto;
}
.calendar-container .calendar-wrap{
  min-height: 480px;
  background-repeat: no-repeat;
	background-size: 50px auto;
  background-position: center center;
	background-image: url("../img/common/loader.gif");
}
.calendar-container.ready .calendar-wrap{
  min-height: auto;
  background-image: none;
}
.people-wrap{
  width: 100%;
  max-width: 480px;
  top: 136px;
  background-color: var(--sec-color);
}
.people-wrap .people-rows{
  padding-left: calc(var(--base-s) * 2);
  padding-right: calc(var(--base-s) * 2);
}
.people-wrap .form-section{
  margin-bottom: 0;
}
.people-wrap .form-group{
  margin-top: calc(var(--base-s) * 2);
}
.people-wrap .form-section .form-group:last-child{
  margin-bottom: calc(var(--base-s) * 2);
}

@media only screen and (min-width: 980px) {
  .pg-ttl-container{
    margin-bottom: calc(var(--base-s) * 3);
  }
  .people-wrap{
    top:58px;
    max-width: 320px;
  }
}
.calendar-container {
  background: var(--sec-color);
  /* overflow: hidden; */
  width: 100%;
  max-width: 480px;
  margin: 0 auto calc(var(--base-s) * 2);
  padding-left: calc(var(--base-s) * 2);
  padding-right: calc(var(--base-s) * 2);
  box-sizing: border-box;
  min-height: 200px;
}

.calendars-nav,
.calendar-header {
  position: relative;
  /* padding-top: calc(var(--base-s)* 0.5); */
  /* padding: calc(var(--base-s)* 0.5) calc(var(--base-s)* 1) calc(var(--base-s)* 0.5); */
  font-weight: 700;
  height: 40px;
  line-height: 40px;
  font-size: 18px;
  text-align: center;
}
.calendars-nav{
  background-color: var(--sec-color);
}
.calendar-header{
  height: 50px;
  line-height: 50px;  
}

.calendars-nav button,
.calendar-header button {
  position: absolute;
  background: none;
  border: none;
  width: 40px;
  height: 40px;
  top:calc(var(--base-s)* 0.5); 
  cursor: pointer;
  background-repeat: no-repeat;
	background-size: 8px auto;
}
.calendars-nav svg{
  height: 0.8em;
  width: auto;
}
.calendars-nav svg path{
  fill:var(--pri-color);
}
.calendars-nav button.prev-month,
.calendar-header button.prev-month{
  left: calc(var(--base-s) * 0.5);
}
.calendars-nav button.next-month,
.calendar-header button.next-month{
  right: calc(var(--base-s) * 0.5);
}
.calendar-body {
  padding-bottom: calc(var(--base-s) * 1);
}

.calendar-week {
  display: flex;
  justify-content: space-between;
  padding-top: calc(var(--base-s) * 1);
  padding-bottom: calc(var(--base-s) * 1);
  /* padding-left: calc(var(--base-s) * 1);
  padding-right: calc(var(--base-s) * 1); */
  /* margin-bottom: calc(var(--base-s) * 0.5); */
  border-top:1px solid var(--pri-color);
  border-bottom:1px solid var(--pri-color);
  box-sizing: border-box;
}



.calendar-week div {
  width: calc(100% / 7);
  text-align: center;
}

.calendar-dates {
  /* padding-left: calc(var(--base-s) * 1);
  padding-right: calc(var(--base-s) * 1); */
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.calendar-dates div {
  width: calc(100% / 7);
  /* margin-bottom: 4px; */
  text-align: center;
  /* padding: 5px; */
  cursor: pointer;
  /* border: 1px solid black; */
  box-sizing: border-box;
}

.calendar-dates .date {
  /* margin-bottom:  calc(var(--base-s) * 1); */
}
.calendar-dates .date-container .date{
  font-weight: 700;
}
.calendar-dates .date-container a{
  color: var(--pri-color);
  padding:  calc(var(--base-s) * 1);
  box-sizing: border-box;
  display: block;
}
.calendar-dates .date-container a:hover,
.calendar-dates .date-container.selected,
.date-container.selected-start,
.date-container.selected-end,
.date-container.in-range{
  background-color: var(--sec-color-light);
}
.calendar-dates .date-container .price{
  font-size: 8px;
  line-height: 11px;
}

.calendar-dates .date.selected {
  background: #4CAF50;
  color: white;
}
.calendar-dates .na{
  width: 100%;
  color: #B4B4B4;
  padding:  calc(var(--base-s) * 1);
}
.calendar-dates .na:hover{
  cursor: default;
}

.calendar-dates div img{
  width: 10px;
  height: auto;
  margin-top: 8px;
}
.flatpickr-calendar {
  font-family: "Open Sans", "Lato", Helvetica, Arial, sans-serif;
}
.flatpickr-current-month input.cur-year,
.flatpickr-current-month .flatpickr-monthDropdown-months{
  font-weight: 400;
}
.flatpickr-calendar.open{
  margin-top: calc(var(--base-s)* 1);
  margin-right: -7px;
}

@media only screen and (min-width: 1084px) {
  .flatpickr-calendar.open{
    margin-left: -5px;
  }
}

@media only screen and (min-width: 980px) {
  .calendar-container{
    flex: 1 0 50%;
    box-sizing: border-box;
    margin: 0 auto calc(var(--base-s)* 5);
  }
  .calendar-container:nth-child(odd){
    /* padding-right:  calc(var(--base-s) * 3.5); */
  }
  .calendar-container:nth-child(even){
    /* padding-left:  calc(var(--base-s) * 3.5); */
  }
}
.step-tab.m-w-560{
  max-width: 560px;
  margin: 0 auto;
}
.form-section {
  width: 100%;
  box-sizing: border-box;
  margin-bottom: calc(var(--base-s) * 4);
}
.form-section.no-shadow{
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.0);
}
.form-section.no-padding{
  padding: 0;
}
.form-section.no-bg-color{
  background-color: transparent;
}
.form-section input:last-child{
  margin-bottom: 0;
}

.form-group {
  font-size: 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: calc(var(--base-s) * 2);
}
.form-group.white-bg{
  background-color: var(--white);
  padding: calc(var(--base-s) * 2);
}
.form-item {
  margin-bottom: calc(var(--base-s) * 2);
}
.form-item.m-b-x0,
.form-item:last-child{
  margin-bottom: 0;
}
.form-group.blk-items{
  display: block;
}
.form-section .form-group:last-child{
  margin-bottom: calc(var(--base-s) * 0);
}

.form-label {
}

.form-description {
  display: block;
  font-size: 12px;
  color: var(--gray01);
}
.form-section .error-txt{
  margin-top: calc(var(--base-s) * 0.5);
  color: var(--red);
  display: none;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.form-section .error-txt.active{
  display: block;
  opacity: 1;
}
.form-section .field-wrap,
.form-section .select-wrap{
  position: relative;
  box-sizing: border-box;
}
.form-section .narrow-single .field-wrap,
.form-section .narrow-single .select-wrap{
  margin-bottom: calc(var(--base-s) * 2);
}

.form-section .field-wrap:first-child,
.form-section .select-wrap:first-child{
}
.form-section .field-wrap:last-child,
.form-section .select-wrap:last-child{

}
.form-section .combine-fields{}

.form-section .combine-fields .combine-field-wrap{}

.form-section .combine-fields .divider{
  width: 1px;
  height: 30px;
  background-color: var(--placeholder);
  position: absolute;
  top: 10px;
  left: 100px;
  z-index: 10;
}

.form-section .combine-fields .combine-field-wrap.select-wrap{
  width: 100px;
  margin-bottom: 0;
}
.form-section .combine-fields .combine-field-wrap.input-wrap{
  width: calc(100% - 100px);
}
/* .form-section .combine-fields .combine-field-wrap select{
  border-left: 1px solid var(--pri-color);
  border-top: 1px solid var(--pri-color);
  border-bottom: 1px solid var(--pri-color);
  border-right: 0px solid var(--pri-color);
}
.form-section .combine-fields .combine-field-wrap input{
  border-left: 0px solid var(--pri-color);
  border-top: 1px solid var(--pri-color);
  border-bottom: 1px solid var(--pri-color);
  border-right: 1px solid var(--pri-color);
} */
 .form-section .combine-fields{
  border: 1px solid var(--pri-color);
 }
.form-section .combine-fields .combine-field-wrap select{
  border: 0px solid var(--pri-color);
}
.form-section .combine-fields .combine-field-wrap input{
  border: 0px solid var(--pri-color);
}
.form-section .select-wrap .svg-wrap{
  position: absolute;
  right: 16px;
  z-index: 10;
  /* height: 100%; */
  top: 25px;
  margin-top: -14px;
}
.form-section .select-wrap svg{
  height: .6em;
  width: .6em;
  color: var(--placeholder);
}
.form-section .select-wrap svg path{
  fill: var(--placeholder);
}

.form-section .name-wrap{}

.form-section .name-wrap .l-box .select-wrap{
  width: 50%;
  padding-right: calc(var(--base-s) * 1);
  box-sizing: border-box;
}
.form-section .name-wrap .l-box{
  width: 50%;
}
.form-section .name-wrap .l-box .field-wrap{
  /* width: calc(100% - 100px); */
  width: 50%;
}


.form-section .name-wrap .r-box{
  width: 50%;
  padding-left: calc(var(--base-s) * 0.5);
  box-sizing: border-box;
}
.form-section .name-wrap .r-box .field-wrap{
  width: 50%;
  padding-left: calc(var(--base-s) * 0.5);
}
.form-section .name-wrap .r-box .field-wrap:first-child{
  padding-left: calc(var(--base-s) * 1);
  padding-right: calc(var(--base-s) * 0);
}
.details-section{
  background-color: var(--white);
  padding:calc(var(--base-s) * 2);
  border: 0px solid var(--pri-color);
  text-align: center;
  font-size: 18px;
  line-height: 22px;
}
html[lang="zh-Hant-TW"] .details-section{
  font-size: 16px;
}
.details-section .details-conts{
  margin-bottom: calc(var(--base-s) * 2);
}
.details-section .pg-ttl{
  margin-bottom: calc(var(--base-s) * 2);
}
.details-section .th{
  margin-bottom: calc(var(--base-s) * 2);
}
.details-section .btn-wrap{
  padding-top: 0;
}
.details-section .small{
  font-size: 14px;
  line-height: 18px;
  margin-bottom: 10px;
}
.details-section .note-box{
  text-align: left;
}
.note-box ul {
  list-style: none;
  padding-left: 1.2em; /* make space for the asterisk */
}

.note-box ul li::before {
  content: "*";
  position: relative;
  top: 2px;
  margin-left: -1.2em;
  margin-right: 0.5em;
  color: inherit; /* optional: match text color */
}
.box-ttl.checkbox-ttl{
  font-size: 18px;
  line-height: 22px;
  font-weight: 700;
  margin-bottom: calc(var(--base-s) * 2);
}

@media only screen and (min-width: 980px) {
  .main-area{

  }
  .main-area .form-section{
    width: 62%;
    padding-right: calc(var(--base-s) * 2);
    box-sizing: border-box;
  }
  .main-area .details-section{
    width: 38%; 
    box-sizing: border-box;
  }
  .form-section .narrow-single .field-wrap,
  .form-section .narrow-single .select-wrap{
    margin-bottom: calc(var(--base-s) * 0);
  }
  .form-section .field-wrap:first-child,
  .form-section .select-wrap:first-child{
    padding-right: calc(var(--base-s) * 1);
  }
  .form-section .field-wrap:last-child,
  .form-section .select-wrap:last-child{
    padding-left: calc(var(--base-s) * 1);
  }
  .form-section .combine-field-wrap.select-wrap:first-child{
    padding-right: calc(var(--base-s) * 0);
  }
  .form-section .single-field .field-wrap{
    padding-left: calc(var(--base-s) * 0);
    padding-right: calc(var(--base-s) * 0);
  }
  .details-section{
    padding:calc(var(--base-s) * 4);
  }
  .form-section .select-wrap .svg-wrap{
    right: 20px;
  }
  .form-group.white-bg{
    padding: calc(var(--base-s) * 4);
  }
  .form-section .name-wrap .l-box{
    width: 50%;
    box-sizing: border-box;
  }
  .form-section .name-wrap .r-box{
    width: 50%;
    box-sizing: border-box;
    padding-left: calc(var(--base-s) * 0);
  }
  .form-section .name-wrap .l-box .field-wrap{
    padding-right: calc(var(--base-s) * 1);
    padding-left: 0;
  }
  .form-section .name-wrap .l-box .select-wrap{
    width: 100px;
  }
  .form-section .name-wrap .l-box .field-wrap{
    width: calc(100% - 100px);
  }

}


.counter,
.date-picker {
  display: flex;
  align-items: center;
}
.counter.loading {
  color: var(--white);
  background-repeat: no-repeat;
	background-size: 32px auto;
  background-position: center center;
	background-image: url("../img/common/loader.gif");
}
.counter.loading .counter-value,
.counter.loading button{
  visibility: hidden;
}


.counter-btn,
.date-btn {
  background-color: var(--sec-color);
  border: none;
  border-radius: 5px;
  width: 32px;
  height: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  cursor: pointer;
  border:1px solid var(--pri-color);
}
.counter-btn img{
  width: 10px;
  height: auto;
}
.date-btn img{
  width: 12px;
  height: auto;
}

.counter-value {
  margin: 0 calc(var(--base-s) * 2);
  font-size: 16px;
}

hr {
  border: none;
  border-top: 1px dotted var(--gray04);
  margin: calc(var(--base-s) * 2) auto;
}

.date-picker .date-display{
  /* margin-right: calc(var(--base-s) * 2); */
}
.date-picker a.disabled,
button:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}


.datepicker-toggle {
  display: inline-block;
  position: relative;
  width: 30px;
  height: 30px;
}

.datepicker-toggle-button {
  background-color: var(--gray03);
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
	background-size: 12px auto;
  background-image: url('/assets/img/bottom/icon_calendar.png');
}

.datepicker-input {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
  box-sizing: border-box;
}

.datepicker-input::-webkit-calendar-picker-indicator {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  cursor: pointer;
}
.room-cards{
  min-height: 360px;

  background-repeat: no-repeat;
	background-size: 50px auto;
  background-position: center center;
	background-image: url("../img/common/loader.gif");
}
.room-cards.ready{
  background-image: none;
  min-height: auto;
}
.room-cards.flex .room-card{
  flex:1 0 50%;
  max-width: 50%;
  box-sizing: border-box;
  margin-bottom: calc(var(--base-s) * 2);
  display: flex;
  position: relative;  
}
.room-cards .room-card .loading-overlay{
  background-color: var(--white);
  position: absolute;
  width: calc( 100% - var(--base-s) * 1);
  height: 100%;
  top: 0;
  left:calc(var(--base-s) * 1);
  display: none;
  opacity: 0;

  background-repeat: no-repeat;
	background-size: 50px auto;
  background-position: center center;
	background-image: url("../img/common/loader.gif");
}
.room-cards.flex .room-card:nth-child(odd) .loading-overlay{
  left:0;
}

.room-cards .room-card.loading .loading-overlay{
  opacity: 0.5;
  display: block;
}


.room-cards.flex .room-card:nth-child(odd){
  padding-right: calc(var(--base-s) * 1);
}
.room-cards.flex .room-card:nth-child(even){
  padding-left: calc(var(--base-s) * 1);
}
.room-cards .room-card:hover{
  cursor: pointer;
}
.room-cards .room-card-conts{
  width: 100%;
  background-color: var(--white);
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.32);

  display: flex;
  flex-direction: column;
  height: 100%;
}
.room-cards .room-card:hover .room-card-conts{
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.64);
}
.room-cards .room-card.disabled:hover,
.room-cards .room-card.too-many:hover{
  cursor: default;
}
.room-cards .room-card.disabled:hover .room-card-conts,
.room-cards .room-card.too-many:hover .room-card-conts{
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.32);
}
/* .room-cards .room-card-conts .room-card-wrap{
  width: 100%;
  display: flex;
} */
.room-cards .room-card-conts .img-wrap {
  position: relative;
  padding-bottom: 56.25%; /* This maintains a 16:9 aspect ratio, adjust if needed */
  height: 0;
  overflow: hidden;

  flex-shrink: 0;
  width: 100%;
}
.room-cards .room-card-conts .img-wrap img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}


.room-cards .room-card-conts .btm-conts{
  padding: calc(var(--base-s) * 1.5) calc(var(--base-s) * 2) calc(var(--base-s) * 8);
  position: relative;

  flex-grow: 1;

}
.room-cards .room-card-conts .card-ttl{
  font-weight: 700;
  /* margin-bottom: calc(var(--base-s) * 0.5); */
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.room-cards .room-card-conts .price{
  font-size: 12px;
  margin-bottom: calc(var(--base-s) * 0.5);
}
.room-cards .disabled .room-card-conts .price,
.room-cards .too-many .room-card-conts .price{
  color: var(--red);
}

.room-cards .room-card-conts .details{
  font-size: 12px;
  line-height: 18px;
  color: var(--gray05);
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
.room-cards .room-card-conts .btn-sec{
  display: block;
  position: absolute;
  bottom: 16px;
  left: 50%;
  margin-left: -49px;
}

@media only screen and (min-width: 980px) {
  .room-cards{
    margin-left:calc(var(--base-s) * -1.5);
    margin-right: calc(var(--base-s) * -1.5);
  }
  .room-cards.flex .room-card{
    flex:1 0 33.3333%;
    padding-left:calc(var(--base-s) * 1.5);
    padding-right: calc(var(--base-s) * 1.5);
  }
  .room-cards.flex .room-card:nth-child(odd){
    padding-right: calc(var(--base-s) * 1.5);
  }
  .room-cards.flex .room-card:nth-child(even){
    padding-left:calc(var(--base-s) * 1.5);
  }
  .room-cards .room-card.loading .loading-overlay{
    left: 0;
    width: 100%;
  }
}
.selected-overlay{
  position: absolute;
  width: calc( 100% - var(--base-s) * 1);
  height: 100%;
  top: 0;
  left: 0;
  display: none;
  opacity: 0;
}
.room-cards.flex .room-card:nth-child(even) .selected-overlay{
  width: calc( 100% - var(--base-s) * 1);   
  left: calc(var(--base-s) * 1);
}
.selected-overlay.active{
  opacity: 1;
}
.selected-overlay .bg{
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: var(--black);
  opacity: 0.7;
  z-index: 0;
  top: 0;
  left: 0;
}
.selected-overlay .overlay-container{
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
}

.selected-overlay .overlay-conts{
  position: relative;
  text-align: center;
  color: var(--white);
  z-index: 10;
  width: 100%;
}
.selected-overlay .overlay-conts .icon{
  width: 48px;
  margin: 0 auto calc(var(--base-s) * 1);
}
.selected-overlay .overlay-conts .txt{
  font-weight: 700;
  font-size: 16px;

}
.selected-overlay .overlay-conts .blank-btn{
  color: var(--white);
  margin:0 auto;
}
@media only screen and (min-width: 980px) {
  .selected-overlay{
    width: calc( 100% - var(--base-s) * 3);
    left: calc( var(--base-s) * 1.5);
  }
  .room-cards.flex .room-card:nth-child(even) .selected-overlay{
    width: calc( 100% - var(--base-s) * 3);
    left: calc( var(--base-s) * 1.5);
  }
}

.popup-container{
  display: none;
  position: relative;
  padding:calc(var(--base-s) * 2);
}
.popup-container .popup-conts{
  background-color: var(--white);
  max-width:calc(var(--base-s) * 70);
  margin:0 auto calc(var(--base-s) * 10);
}
.popup-container .popup-conts .btm-conts{
  padding: calc(var(--base-s) * 2);
}
.popup-container .popup-conts .btm-conts p{
  font-size: 14px;
  line-height: 22px;
  color: var(--gray05);
  margin-bottom: calc(var(--base-s) * 2);
}
.popup-container .popup-conts .btm-conts .sec-ttl{
  color: var(--black);
  font-weight: 700;
}
.popup-container .popup-conts .btm-conts .card-ttl{
  font-weight: 700;
  color: var(--black);
  font-size: 22px;
  list-style: 26px;
  margin-bottom: 0;
}
.popup-container .popup-conts .btm-conts .price{
  font-size: 14px;
  margin-top: calc(var(--base-s) * 0.8);
  color: var(--black);
}
.popup-container .popup-conts .btm-conts .lead-container{
  margin-bottom: calc(var(--base-s) * 2);
}
.popup-container.style02{
  overflow: visible;
  max-width: 100%;
  height: 100%;
  margin: 0 10px;
  padding: 0 calc(var(--base-s) * 0);
}
.popup-container.style02 .popup-conts{
  background-color: var(--sec-color);
  width: 100%;
  max-width: 660px;
  max-height: 80vh;
  padding: calc(var(--base-s) * 2);
  border: 1px solid var(--pri-color);
  box-sizing: border-box;
  font-size: 16px;
  line-height: 20px;
  overflow: auto;
  /* margin:10vh auto; */

  margin: auto;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
}

.popup-container.style02 p,
.popup-container.style02 table{
  margin-bottom: calc(var(--base-s) * 2);
}
.slide-multiple{
  overflow: hidden;
  position: relative;
  margin-bottom: calc(var(--base-s) * 1);
}
.slide-multiple .swiper-pagination-bullet{
  width: 6px;
  height: 6px;
  background-color: var(--gray04);
  margin: 0  calc(var(--base-s) * 1);
  opacity: 1;
}
.swiper-pagination{
  bottom:0;
  height: 32px;
  line-height: 26px;
}
.swiper-pagination-bullets.swiper-pagination-horizontal{
  bottom: 0;
}

.slide-multiple .swiper-pagination-bullet.swiper-pagination-bullet-active{
  background-color: var(--btn-pri);
}
.fancybox-button{
  position: fixed;
  background-color: transparent;
  /* background-color: var(--btn-pri); */
}
.fancybox-button.style02{
  position: absolute;
  right: -9px;
  top: calc(10vh - 50px);
  outline: none;
}
.fancybox-toolbar{
  right: calc(var(--base-s) * 2);
  top: calc(var(--base-s) * 2);
  opacity: 1;
  visibility: visible;
  width: 44px;
  height: 44px;
}
.fancybox-button--zoom{
  display: none!important;
}

.fancybox-navigation .fancybox-button--arrow_left,
.fancybox-navigation .fancybox-button--arrow_right{
  /* visibility: visible;
  opacity: 1; */
}
.fancybox-navigation .fancybox-button--arrow_left, .fancybox-navigation .fancybox-button--arrow_right{
  padding: 0;
  background-color: transparent;
}
.fancybox-navigation .fancybox-button--arrow_left .svg-wrap{
  margin-top: 40px;
  margin-left: 24px;
}
.fancybox-navigation .fancybox-button--arrow_right .svg-wrap{
  margin-top: 40px;
  margin-left: 24px;
}
.fancybox-close-small{
  display: none;
}
.swiper-button-prev, .swiper-rtl .swiper-button-next{
  left: 0px;
  right: auto;
  width: 40px;
}
.swiper-button-next, .swiper-rtl .swiper-button-prev {
  right: 0px;
  left: auto;
  width: 40px;
}
.swiper-button-next:after, .swiper-button-prev:after{
  display: none;
}
.swiper-button-next:hover,
.swiper-button-prev:hover{
  cursor: pointer;
}
@media only screen and (min-width: 680px) {
  .popup-container.style02{
    margin: 0 auto;
  }
}
@media only screen and (min-width: 980px) {
  .slide-multiple{
    margin-bottom: calc(var(--base-s)* 0);
  }
  .property-wrap .property .property-ttl{
    padding-top: calc(var(--base-s)* 1);
  }
  .popup-container.style02 .popup-conts{
    width: 100%;
    padding: calc(var(--base-s) * 5);
  }
}

.fixed-card{
  position: fixed;
  z-index: 99999;
  bottom:-80px;
  left: 0;
  width: 100%;
  background-color: var(--white);
  filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.32));
}
.fixed-card.active{
  bottom: 0;
}
.fixed-card .inner{
  width: 100%;
  max-width: 560px;
  padding: calc(var(--base-s) * 2);
  box-sizing: border-box;
  margin:0 auto;
}
.fixed-card .card-conts{
  align-items: center;
}
.fixed-card .card-ttl{
  font-weight: 700;
  margin-bottom: calc(var(--base-s) * 0.5);
}
.fixed-card .price{
  font-size: 12px;
}
.fixed-card.disabled .price{
  color: var(--red);
}

.fixed-card .card-ttl #countdown{
  color: var(--orange);
}

.fixed-card .fixed-btn-wrap a{
  display: block;
  text-decoration: none;
}
.response-wrap .system-msg-wrap,
.reminder-always-on{
  width: 100%;
  background-color: var(--orange);
  padding: calc(var(--base-s) * 2);
  box-sizing: border-box;
  margin-bottom: calc(var(--base-s) * 2);
}
.response-wrap .system-msg-wrap p,
.reminder-always-on p{
  font-size: 16px;
  line-height: 24px;
  color: white;
  margin-bottom: calc(var(--base-s) * 2);
}
.response-wrap .system-msg-wrap{
  display: none;
}
.response-wrap .system-msg-wrap.active{
  display: block;
}

.response-wrap .system-msg-wrap p:last-child,
.reminder-always-on p:last-child{
  margin-bottom: 0;
}
.reminder-always-on .icon{
  width: 34px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: calc(var(--base-s) * 2);
}
.gray-bdr-box{
  width: 100%;
  border: 1px dotted var(--gray04);
  padding: calc(var(--base-s) * 2);
  margin-bottom: calc(var(--base-s) * 2);
  box-sizing: border-box;
}
.gray-bdr-box .thumb{
  width: 98px;
}
.gray-bdr-box .details-container{
  font-size: 16px;
  width: calc(100% - 98px);
  padding-left: calc(var(--base-s) * 2);
  box-sizing: border-box;
}
.gray-bdr-box .details-container p{
  margin-bottom: calc(var(--base-s) * 0.2);
}
.gray-bdr-box .details-container p:last-child{
  margin-bottom: 0;
}
.gray-bdr-box .details{
  font-size: 14px;
}
.gray-bdr-box .details .var-num{
  padding-left: 2px;
  padding-right: 2px;
}
.response-page #wrap{

}
.response-wrap {
  max-width: 1280px;
  margin: 0 auto;
}
.response-wrap .inner{
    width: 100%;
}
.response-wrap .conts-wrap{

    width: 100%;
    /* display: table; */
}
.response-wrap .response-conts{
	width: 100%;
  margin-bottom: calc(var(--base-s) * 4);
  display: none;
  opacity: 0;
  transition: opacity 0.3s ease;
	/* background-color: var(--white); */

	/* display: table-cell; */
  /* vertical-align: middle; */
}
.response-wrap .response-conts.active{
  display: block;
  opacity: 1;
}
.response-wrap .response-conts .response-details{
	padding: calc(var(--base-s) * 2);
	box-sizing:border-box;
  border: 1px solid var(--pri-color);
}
.response-wrap .response-conts .response-details.white-bg{
  background-color: var(--white);
  border: 0px solid var(--pri-color);
}
.response-wrap .response-conts .response-details .lead{
  font-size: 24px;
  line-height: 32px;
  font-weight: 700;
  text-align: center;
}
.response-wrap .response-conts .response-details .b-num{
  font-size: 24px;
  line-height: 32px;
  text-align: center;
  margin-top: calc(var(--base-s) * 4);
  margin-bottom: calc(var(--base-s) * 4);
}
.response-details p.m-b-x2,
.response-wrap .gray-bdr-box p{
  margin-bottom: calc(var(--base-s) * 2);
}
.response-wrap .gray-bdr-box p:last-child{
  margin-bottom: 0;
}
.response-wrap .memo{

}
.response-wrap .memo p{
  margin-bottom: calc(var(--base-s) * 2);
}
.response-wrap a:hover{
  /* color: var(--btn-pri); */
}
.response-wrap .loading-wrap{
  width: 100%;
  min-height: 400px;
  align-items: center;
  display: none;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.response-wrap .loading-wrap.active{
  display: block;
  opacity: 1;
}

.response-wrap .loading{
  width: 50px;
  height: 50px;
  margin: 0 auto;
}
.api-response-wrap{
  max-width: 590px;
  margin:0 auto calc(var(--base-s) * 2);
  text-align: center;
  background-color: var(--sec-color);
  padding: calc(var(--base-s) * 2);
}
.api-response-wrap .item{
  box-sizing: border-box;
}
.wrap-up-txt{
  margin-top: calc(var(--base-s) * 4);
  margin-bottom: calc(var(--base-s) * 2);
  font-size: 24px;
  line-height: 32px;
  text-align: center;
}
.extra-wrap{
  max-width: 795px;
  margin: 0 auto;
  display: none;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.extra-wrap.active{
  display: block;
  opacity: 1;
}
.extra-conts{}
.extra-conts .extra-detail{
  max-width: 245px;
  margin:0 auto calc(var(--base-s) * 3);
}
.extra-conts .extra-detail .btn-wrap{
  padding-top: calc(var(--base-s) * 1);
}

@media only screen and (min-width: 980px) {
  .response-wrap .response-conts .response-details .lead{
    font-size: 30px;
    line-height: 40px;
  }
  .extra-conts .extra-detail{
    margin:0 calc(var(--base-s) * 1) calc(var(--base-s) * 0);
  }
  .api-response-wrap{
    text-align: left;
  }
  .api-response-wrap .item{
    width: 50%;
  }
}

table {
    max-width: 100%;
    border-collapse: collapse; /* Merges adjacent cell borders */
}

th, td {
    border: 1px solid var(--pri-color);
    padding: calc(var(--base-s) * 0.5) calc(var(--base-s) * 1);
    text-align: center;
}
th {

}

/*///////////////////////////////////////////////////////////// ASTRA THEME ADAPTATION */
.rotate-left{
  display: inline-block;
  transform: rotate(90deg);
}
.rotate-right{
  display: inline-block;
  transform: rotate(-90deg);
}