.p-homeBanner {
  max-width: 1100px;
  padding: 40px 0 60px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.three{
  max-width: 1300px;
}
@media (max-width: 767px) {
  .p-homeBanner {
    padding-bottom: 40px;
  }
}
.p-homeBanner div {
  width: 48%;
}
.p-homeBanner div:nth-of-type(3),
.p-homeBanner div:nth-of-type(4),
.p-homeBanner div:nth-of-type(5),
.p-homeBanner div:nth-of-type(6),
.p-homeBanner div:nth-of-type(7),
.p-homeBanner div:nth-of-type(8){
  padding-top: 30px;
}
.three div {
  width: 32% !important;
}
@media (max-width: 767px) {
  .p-homeBanner div {
    width: 100%;
    margin-bottom: 20px;
  }
.p-homeBanner div:nth-of-type(3),
.p-homeBanner div:nth-of-type(4),
.p-homeBanner div:nth-of-type(5),
.p-homeBanner div:nth-of-type(6),
.p-homeBanner div:nth-of-type(7),
.p-homeBanner div:nth-of-type(8){
  padding-top: 0;
}
  .three div {
    width: 100% !important;
  } 
}

/* facilities */
.p-facilitiesOption {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  aspect-ratio: 768 / 355;
  padding: 1em;
  background: #209AB7;
  color: #FFF;
}

.p-facilities .p-foodSection__mainTitle {
  text-align: center;
}
.p-facilities .p-foodSection__mainTitle .n_alpha {
  font-family: "futura-pt", sans-serif;
  letter-spacing: 0.04em;
  font-size: 2.5rem;
}
.p-facilities .p-foodSection__mainTitle__caption {
  margin-bottom: 1em;
  color: #08AECE;
  letter-spacing: 0.03em;
  font-weight: 500;
  text-align: center;
}

.p-facilities__main {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 10%;
}
.p-facilities__main .img {
  width: 45%;
}
.p-facilities__main .img p {
  margin-bottom: 1em;
}
.p-facilities__main .txt {
  width: 52%;
  padding: 1em;
  box-sizing: border-box;
}
.p-facilities__main .txt .view_more {
  margin-top: 2em;
}
.p-facilities__main .txt .view_more a {
  display: inline-block;
  padding: 1em 2em;
  background: #08AECE;
  font-family: "futura-pt", sans-serif;
  letter-spacing: 0.04em;
}
.p-facilities__main .txt .view_more a:link, .p-facilities__main .txt .view_more a:visited {
  color: #fff;
}
.p-facilities__main .txt .view_more a:hover {
  opacity: .7;
}
@media (max-width: 767px) {
  .p-facilities__main .img {
    width: 100%;
  }
  .p-facilities__main .txt {
    width: 100%;
  }
}

.s-theater {
  margin-bottom: 10%;
}
.s-theater .p-foodSection__main {
  margin-bottom: 10%;
}

/* bess */
.p-bess_subtitle {
  width: 200px;
  height: 100px;
  border-radius: 0 0 100px 100px;
  background: #209AB7;
  color: #fff;
  font-weight: 900;
  font-family: "futura-pt", sans-serif;
  letter-spacing: 0.04em;
  font-size: 1.6em;
  margin: 0 auto;
}
.p-bess_subtitle span {
  display: block;
  font-size: .4em;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
}

.p-bess__mainimg {
  margin-bottom: 5%;
}

.bess_gallery {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 94%;
  max-width: 1735px;
  margin: 0 auto 10%;
}
.bess_gallery li {
  width: 30%;
}
.bess_gallery li span {
  display: block;
  padding: 1em 0;
  text-align: left;
  font-size: .8em;
}
@media (max-width: 767px) {
  .bess_gallery li {
    width: 48%;
  }
}

.p-bess_reserve {
  background: #209AB7;
}
.p-bess_reserve .p-pageLead__title {
  color: #fff;
  text-align: center;
}
.p-bess_reserve .p-pageLead__text {
  color: #fff;
  text-align: center;
}
.p-bess_reserve .bess_reserveBtn {
  text-align: center;
  margin: 60px 0;
}
.p-bess_reserve .bess_reserveBtn a {
  display: inline-block;
  padding: 1em 2em;
  border: 2px solid #fff;
  background: #08AACA;
}
.p-bess_reserve .bess_reserveBtn a:link, .p-bess_reserve .bess_reserveBtn a:visited {
  color: #fff;
}
.p-bess_reserve .bess_reserveBtn a:hover {
  opacity: .7;
}
@media (min-width: 1024px) {
  .p-bess_reserve .bess_reserveBtn a {
    font-size: 1.5rem;
  }
}

.p-homeOpening__inner{
  padding-bottom: 100px;
}
@media (max-width: 767px) {
.p-homeConcept__inner{
  padding: 60px 0 0;
}
}

.p-homeReserveBtn2 {
    z-index: 10;
    /*top: calc(1100 / 2000 * 100vh);*/
    top: 30.5vh;
    right: 0;
    background: #282828;
}
@media (min-width: 768px){
  .p-homeReserveBtn2 {
    top: 105%;
  }
}
@media (any-hover: hover) {
    .p-homeReserveBtn2 {
        transition: 0.3s #282828;
    }
}


/*plan用*/

@media (max-width: 767px) {
  #planpage .bess_gallery {
    margin: 0 auto 30%;
  }
}

/*faq*/
.p-faq .view_more {
  margin-top: 2em;
}
.p-faq .view_more a {
  display: inline-block;
  padding: 1em 2em;
  background: #08AECE;
  font-family: "futura-pt", sans-serif;
  letter-spacing: 0.04em;
}
.p-faq .view_more a:link, .p-faq .view_more a:visited {
  color: #fff;
}
.p-faq .view_more a:hover {
  opacity: .7;
}

/*202504 index*/
.p-homePlan .content{
text-align:center; margin:45px 0 0;
}

.flexiblebox {
  display: flex;
  flex-wrap: wrap;
  gap: 20px; /* 間隔調整 */
  justify-content: center;
  padding: 10px;
  box-sizing: border-box;
}

.p-homePlan__slide {
  flex: 1 1 calc(33.333% - 20px); /* デスクトップで3列 */
  box-sizing: border-box;
  max-width: calc(33.333% - 20px);
}

@media screen and (max-width: 768px) {
  .flexiblebox {
    gap: 10px;
  }
  .p-homePlan__slide {
    flex: 1 1 calc(50% - 10px); /* スマホで2列 */
    max-width: calc(50% - 10px);
  }
}

/* 装飾を少し追加（任意） */
.p-homePlan__slide {
  background-color: #f9f9f9;
  /*border: 1px solid #ddd;*/
  padding-bottom: 10px;
  text-align: center;
  border-radius: 8px;
}

.p-homePlan__slide .img {
  width: 100%;
  height: auto;
  border-radius: 4px;
}

.p-homePlan__slide .caption {
  font-weight: bold;
  margin: 10px 0;
  font-size: 0.95rem;
}

.p-homePlan__slide .infomation {
  font-size: 0.9rem;
  color: #555;
  padding: 10px;
  text-align: left;
}

.flexiblebox .view_more {
  margin-top: 1em;
  color: #08AECE;
}
.flexiblebox .view_more a {
  display: inline-block;
  padding: 1em 2em;
  background: #08AECE;
  font-family: "futura-pt", sans-serif;
  letter-spacing: 0.04em;
}
.flexiblebox .view_more a:link, .p-faq .view_more a:visited {
  color: #fff;
}
.flexiblebox .view_more a:hover {
  opacity: .7;
}

.tag {
  display: inline-block;
  background-color: #555;
  color: #ffffff;
  padding: 4px 10px;
  border-radius: 5px;
  font-size: 0.85rem;
  margin-right: 6px;
  line-height: 1.4;
}

.l-main .view_more {
  margin-top: 1em;
  color: #08AECE;
}
.l-main .view_more a {
  display: inline-block;
  padding: 1em 2em;
  background: #08AECE;
  font-family: "futura-pt", sans-serif;
  letter-spacing: 0.04em;
}
.l-main .view_more a:link, .l-main .view_more a:visited {
  color: #fff;
}
.l-main .view_more a:hover {
  opacity: .7;
}


.l-main .view_more.small a {
  font-size: 0.8em;
  padding: 0.5em 2em;
}

.more_btn{
  margin: 0 auto;
  text-align: center;
}
.p-homeExperience__grid{
 margin: 10% auto;
}
section#Charm{
  margin-top: 40px;
  background-color: #e2eced;
  padding-bottom: 40px;
}
#Charm h3{
  margin-top: 15px;
}
@media screen and (max-width: 768px) {
#Charm .flexiblebox{
  flex-direction: column;
}
  #Charm .p-homePlan__slide{
    width: 100% !important;
    max-width: calc(100% - 10px);
  }
#Charm .infomation{
    font-size: 14px;
  }
}