@charset "UTF-8";
@font-face {
  font-family: 'icomoon';
  src: url("fonts/icomoon.ttf?ed8hpa") format("truetype"), url("fonts/icomoon.woff?ed8hpa") format("woff"), url("fonts/icomoon.svg?ed8hpa#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
}
[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-myArrow:before {
  content: "\e90e";
}

.icon-arrow-down:before {
  content: "\e900";
}

.icon-arrow-down-left:before {
  content: "\e901";
}

.icon-arrow-down-right:before {
  content: "\e902";
}

.icon-arrow-left:before {
  content: "\e903";
}

.icon-arrow-right:before {
  content: "\e904";
}

.icon-arrow-up:before {
  content: "\e905";
}

.icon-arrow-up-left:before {
  content: "\e906";
}

.icon-arrow-up-right:before {
  content: "\e907";
}

.icon-check:before {
  content: "\e908";
}

.icon-chevron-down:before {
  content: "\e909";
}

.icon-chevron-left:before {
  content: "\e90a";
}

.icon-chevron-right:before {
  content: "\e90b";
}

.icon-chevron-up:before {
  content: "\e90c";
}

.icon-x:before {
  content: "\e90d";
}

.icon-checkmark:before {
  content: "\ea10";
}

.icon-arrow-up-left2:before {
  content: "\ea39";
}

.icon-arrow-up2:before {
  content: "\ea3a";
}

.icon-arrow-up-right2:before {
  content: "\ea3b";
}

.icon-arrow-right2:before {
  content: "\ea3c";
}

.icon-arrow-down-right2:before {
  content: "\ea3d";
}

.icon-arrow-down2:before {
  content: "\ea3e";
}

.icon-arrow-down-left2:before {
  content: "\ea3f";
}

.icon-arrow-left2:before {
  content: "\ea40";
}

/* variable */
/* color */
/* util */
.detail__content {
  margin: 30px 0;
}

.detailMain {
  width: 960px;
  margin-left: auto;
  margin-right: auto;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 40px;
}
.detailMain__mainImage {
  position: relative;
  box-sizing: border-box;
  width: 600px;
  height: 450px;
  line-height: 0;
  border: 1px solid #ccc;
}
.detailMain__image {
  position: absolute;
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.detailMain__info {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 340px;
}
.detailMain__description {
  line-height: 1.7;
}
.detailMain__iconAnnotation {
  display: block;
  width: 9em;
  margin-left: auto;
  margin-right: 0;
  margin-bottom: 8px;
  padding-bottom: 2px;
  border-bottom: 1px solid #333333;
  line-height: 1;
  color: #333333;
  text-decoration: none !important;
}
.detailMain__iconAnnotation:visited {
  color: inherit;
}
.detailMain__iconAnnotation:hover {
  color: #ebac12;
  border-bottom-color: #ebac12;
}
.detailMain__iconAnnotation::before {
  content: "\e90b";
  font-family: 'icomoon' !important;
  margin-right: .5em;
}
.detailMain__favoriteAnnotation {
  display: block;
  width: 11em;
  margin-left: auto;
  margin-right: 0;
  padding-bottom: 2px;
  border-bottom: 1px solid #333333;
  line-height: 1;
  color: #333333;
  text-decoration: none !important;
}
.detailMain__favoriteAnnotation:visited {
  color: inherit;
}
.detailMain__favoriteAnnotation:hover {
  color: #ebac12;
  border-bottom-color: #ebac12;
}
.detailMain__favoriteAnnotation::before {
  content: "\e90b";
  font-family: 'icomoon' !important;
  margin-right: .5em;
}
.detailIconList {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 8px;
  padding: 10px 6px;
  border-top: 1px solid #dadada;
  border-bottom: 1px solid #dadada;
}
.detailIconList__item {
  margin: 6px 8px;
}
.detailIconList__icon {
  display: block;
  width: auto;
  height: 22px;
}

.detailRecommendedPlan {
  padding: 40px 0;
  margin-bottom: 40px;
  background-color: #f9f8f2;
}
.detailRecommendedPlan__inner {
  width: 960px;
  margin-left: auto;
  margin-right: auto;
}
.detailRecommendedPlan__midashi {
  margin-bottom: 25px;
}
.detailRecommendedPlan__midashi::before {
  display: none;
}
.detailRecommendedPlan__midashi::after {
  content: "Recommended plan";
}

/***
  施設・アメニティのご案内
**************/
.detailFacilities {
  width: 960px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 40px;
}
.detailFacilities__midashi {
  margin-bottom: 25px;
}
.detailFacilities__midashi::before {
  display: none;
}
.detailFacilities__midashi::after {
  content: "Facilities / Amenities";
}

.basicInfo {
  padding: 8px 12px;
  margin-bottom: 20px;
  background-color: #f9f8f2;
  line-height: 2;
  letter-spacing: -.4em;
}
.basicInfo__midashi {
  display: inline-block;
  margin-left: 1.5em;
  margin-bottom: 0;
  letter-spacing: .075em;
}
.basicInfo__midashi:first-child {
  margin-left: 0;
}
.basicInfo__text {
  display: inline-block;
  margin-bottom: 0;
  letter-spacing: 0;
}
.basicInfo__text::before {
  content: "：";
}

.detailDescription {
  margin-bottom: 20px;
}
.detailDescription__midashi {
  margin-bottom: 0;
  background-color: #f1f0ea;
  font-size: 15px;
  padding: 12px;
}
.detailDescription__inner {
  padding: 16px 20px;
  border: 1px solid #f1f0ea;
  border-top: none;
}
.detailDescription__text {
  margin-bottom: 0;
  line-height: 1.7;
}
.detailDescription__annotation {
  margin-bottom: 0;
  line-height: 1.7;
  font-size: 12px;
}

.amenityList {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 0;
  border-left: 1px solid #f1f0ea;
}
.amenityList__item {
  width: 25%;
  display: -ms-flexbox;
  display: flex;
  -ms-align-items: stretch;
  align-items: stretch;
  border-right: 1px solid #f1f0ea;
  border-bottom: 1px solid #f1f0ea;
  line-height: 1;
}
.amenityList__name {
  -ms-flex: 1;
  flex: 1;
  padding: 10px;
  bottom: 0;
  background-color: #f9f8f2;
  font-weight: normal;
}
.amenityList__state {
  width: 45px;
  padding: 10px;
  margin-bottom: 0;
  text-align: center;
  font-family: monospace;
}

/***
  その他
**************/
.detailOther {
  width: 960px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 40px;
}
.detailOther__midashi {
  margin-bottom: 25px;
}
.detailOther__midashi::before {
  display: none;
}
.detailOther__midashi::after {
  content: "Other";
}

/***
  施設のご紹介
**************/
.detailIntroduction {
  padding: 40px 0 20px 0;
  margin-bottom: 40px;
  background-color: #f9f8f2;
}
.detailIntroduction__inner {
  width: 960px;
  margin-left: auto;
  margin-right: auto;
}
.detailIntroduction__midashi {
  margin-bottom: 25px;
}
.detailIntroduction__midashi::before {
  display: none;
}
.detailIntroduction__midashi::after {
  content: "Introduction";
}
.detailIntroduction__subMidashi {
  width: 100%;
  padding: 12px;
  margin-bottom: 20px;
  font-size: 14px;
  color: white;
  line-height: 1.3;
  letter-spacing: .075em;
  background-color: #7e2d51;
}
.detailIntroduction__subsubMidashi {
  width: 100%;
  padding: 12px;
  margin-bottom: 20px;
  font-size: 14px;
  color: white;
  line-height: 1.3;
  letter-spacing: .075em;
  background-color: #7e2d51;
}

.introductionSlider {
  position: relative;
  margin-bottom: 0;
}
.introductionSlider .slick-arrow {
  position: absolute;
  /*display: block;*/
  display: none !important;
  padding: 0;
  margin: 0;
  width: 30px;
  height: 30px;
  top: 135px;
  transform: translateY(-50%);
  border: 1px solid #7e2d51;
  background-color: #7e2d51;
  border-radius: 50%;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  transition: background-color .2s linear 0s;
  z-index: 10;
  cursor: pointer;
}
.introductionSlider .slick-arrow:hover {
  background-color: white;
}
.introductionSlider .slick-arrow:hover::before {
  color: #7e2d51;
}
.introductionSlider .slick-arrow::before {
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  text-indent: 0;
  line-height: 28px;
  font-family: 'icomoon' !important;
  color: white;
  transition: color .2s linear 0s;
}
.introductionSlider .slick-arrow.slick-prev {
  left: 10px;
}
.introductionSlider .slick-arrow.slick-prev::before {
  content: "\e90a";
}
.introductionSlider .slick-arrow.slick-next {
  right: 10px;
}
.introductionSlider .slick-arrow.slick-next::before {
  content: "\e90b";
}

.introductionImageBlock__pict {
  line-height: 0;
  margin-bottom: 6px;
}
.introductionImageBlock__image {
  max-width: 100%;
  height: auto;
}
.introductionImageBlock__caption {
  margin-bottom: 0;
  color: #666666;
  line-height: 1;
  letter-spacing: .075em;
  font-weight: normal;
}

.introductionContentPtn01 {
  margin: 0 0 40px 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.introductionContentPtn01__slider {
  width: 360px;
}
.introductionContentPtn01__image {
  width: 360px;
  margin-right: 0 !important;
  -ms-flex: initial !important;
  flex: initial !important;
}
.introductionContentPtn01__description {
  -ms-flex: 1;
  flex: 1;
  margin-left: 20px;
  line-height: 2;
}
.introductionContentPtn02 {
  margin: 0 0 40px 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.introductionContentPtn03 {
  margin: 0 0 40px 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.introductionContentPtn03__slider {
  width: 360px;
}
.introductionContentPtn03__image {
  width: 360px;
  margin-right: 0 !important;
  -ms-flex: initial !important;
  flex: initial !important;
}
.introductionContentPtn03__description {
  -ms-flex: 1;
  flex: 1;
  margin-left: 20px;
  line-height: 2;
}
.introductionContentPtn04 {
  margin: 0 0 40px 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.introductionContentPtn05 {
  margin: 0 0 40px 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.introductionContent__item {
  -ms-flex: 1;
  flex: 1;
  margin-right: 20px;
  margin-bottom: 0;
}
.introductionContent__item:last-child {
  margin-right: 0;
}
.introductionContent__item_w {
  -ms-flex: 2;
  flex: 2;
}
.introductionContent__text {
  line-height: 1.7;
}

/***
  地図・アクセス
**************/
.detailMap {
  width: 960px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 40px;
}
.detailMap__midashi {
  margin-bottom: 25px;
}
.detailMap__midashi::before {
  display: none;
}
.detailMap__midashi::after {
  content: "Map / Access";
}
.detailMap__inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 25px;
}
.detailMap__gmap {
  width: 360px;
  height: 270px;
}
.detailMap__gmap > iframe {
  width: 100%;
  height: 100%;
}
.detailMap__info {
  -ms-flex: 1;
  flex: 1;
  margin-left: 20px;
}
.detailMap__detail {
  display: block;
  width: 160px;
  margin: 0 auto;
  padding-top: 8px;
  padding-bottom: 8px;
  font-size: 12px;
  text-align: left !important;
}
