@charset "utf-8";




@media screen and (max-width: 768px) {
  .cover {
    background-color: #896d41; position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 9999;
  }

  #pageHeaderWrap { position: relative; width: 100%; margin: auto; overflow: inherit; }
  #pageHeaderWrap.pageKv { display: flex; flex-flow: column; }
  #pageHeaderWrap::before { content:""; display: block; padding-top: 38.2%; }
  #pageHeaderWrap.pageKv::before { background-size: cover; margin-bottom: 40px; }

  #pageHeaderWrap #pageHeader { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-size: cover; overflow: inherit; }
  #pageHeaderWrap.pageKv #pageHeader { position: relative; height: auto; margin: 0 auto 30px; background: none !important; order: 2; }
  #httWrap #pageHeaderWrap #pageHeader, #httWrap #pageHeaderWrap.pageKv::before { background-image: url(/assets/images/htt/header_bg.jpg); }
  #irisWrap #pageHeaderWrap #pageHeader, #irisWrap #pageHeaderWrap.pageKv::before { background-image: url(/assets/images/iris/header_bg.jpg); }
  #pshWrap #pageHeaderWrap #pageHeader, #pshWrap #pageHeaderWrap.pageKv::before { background-image: url(/assets/images/psh/header_bg.jpg); }
  #wehWrap #pageHeaderWrap.pageKv::before { background-image: url(/assets/images/weh/header_bg.jpg); }
  #uneWrap #pageHeaderWrap.pageKv::before { background-image: url(/assets/images/une/header_bg.jpg?v20250502); }

  #pageHeader h1 { position: absolute; bottom: -40%; left: 0; right: 0; margin: auto; width: auto; height: auto; z-index: 100; }
  #pageHeaderWrap.pageKv #pageHeader h1 { position: relative; bottom: initial; width: max-content; height: auto; }
  #pageHeader h1 img { width: auto; height: 78px; display: none; }
  #pageHeader h1 span { display: block; font-size: 1.8rem; letter-spacing: 0.2rem; margin-top: -8%; }

  #pageNav { width: 100%; margin: 0 auto 60px; order: 1; }
  #pageNav ul { width: 90%; margin: auto; display: grid; grid-template-columns: repeat(2, 1fr); grid-template-rows: repeat(2, 1fr); grid-column-gap: 10px; grid-row-gap: 10px; }
  #pageNav li a { display: block; width: 100%; padding: .8em 0; font-size: 1.3rem; font-weight: bold; line-height: 1; color: #FFF; text-decoration: none; background-color: #6c5d49; }

  .closeday { width: 90%; margin: 30px auto; padding: 15px 20px; font-size: 1.3rem; letter-spacing: 0.2rem; line-height: 2; border: 1px solid #999; background-color: #FFF; }
  .closeday h2 { font-weight: bold; text-align: center; }

  #pageRead { margin: 0 auto 50px; padding: 100px 5% 0; font-size: 1.6rem; letter-spacing: 0.2rem; line-height: 1.8; text-align: justify; }
  #pageHeaderWrap.pageKv + #pageRead { padding: 0 5%; }
  #uneWrap #pageRead { text-align: center; }
  #uneWrap #pageRead .logo { width: 120px; margin: 20px auto 40px; }

  .banquet { display: flex; flex-flow: column; width: 90%; margin: 0 auto 60px; }
  .banquet h2 { margin: 0 auto 30px; }

  .banquet .info { order: 2; text-align: left; position: relative; display: flex; flex-flow: column; }
  .banquet .info .text { order: 1; margin: 0 auto 30px; }
  .banquet .info .text .copy { font-family: "游明朝体", YuMincho, serif; font-size: 1.8rem; line-height: 1.6; color: #6C5D49; margin-bottom: 20px; }
  .banquet .info .text .read { font-size: 1.3rem; }

  .banquet .info .detail { order: 2; }
  .banquet .info .detail h3 { font-size: 1.4rem; line-height: 1.8; border-bottom: 1px solid #6c5d49; margin-bottom: 10px; padding-bottom: 10px; }
  .banquet .info .detail p { font-size: 1.4rem; line-height: 1.4; margin-bottom: 10px; }
  .banquet .info .detail dl { display: flex; font-size: 1.2rem; }
  .banquet .photo { order: 1; margin: 0 auto 20px; }

  #plan { margin: 0 auto 60px; }
  #plan .plan { margin: 0 auto 40px; }
  #plan .plan h3 { display: inline-block; padding: 10px 15px 8px 15px; font-family: 'Reem Kufi', sans-serif; line-height: 1; background-color: #6c5d49; color: #FFF; margin: 0 auto 30px; }
  #plan .copy { font-family: "游明朝体", YuMincho, serif; font-size: 1.8rem; line-height: 1.8; color: #6C5D49; margin: 0 auto 30px; }
  #plan .plan .detail { width: 100%; margin: 0 auto 15px; border-bottom: 1px solid #333; }
  #plan .plan .photo { margin: auto; width: 90%; display: flex; flex-wrap: wrap; justify-content: space-between; }
  #plan .plan .photo li { width: 48%; margin: 0 0 10px; }

  .bq-plan-list { display: grid; grid-template-columns: repeat(2, 1fr); grid-column-gap: 15px; grid-row-gap: 20px; width: 90%; margin: auto; }
  .bq-plan-item { display: flex; flex-flow: column; }
  .bq-plan-item-tt { position: relative; font-size: 1.3rem; font-weight: 600; color: #6c5d49; margin-bottom: 15px; }

  .banquetInfo {
    display: flex;
    width: 90%;
    flex-flow: column;
    margin: 0 auto 50px;
  }
  .banquetInfo .infoMain {
    width: 100%;
    margin: auto;
  }
  .banquetInfo .infoMain h2 {
    font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Times New Roman", serif;
    font-size: 2rem;
    text-align: left;
    line-height: 1.8;
    border-bottom: 1px solid #6c5d49;
    padding-bottom: 5px;
  }
  .banquetInfo .infoMain .detail {
    padding: 15px 0;
  }
  .banquetInfo .infoMain .detail table {
    border-collapse: collapse;
    width: 100%;
  }
  .banquetInfo .infoMain .detail table th,
  .banquetInfo .infoMain .detail table td {
    font-size: 1.3rem;
    text-align: left;
  }
  .banquetInfo .infoMain .detail table th {
    white-space: nowrap;
    padding: 4px 20px 4px 0;
    color: #666;
    font-weight: normal;
    vertical-align: top;
  }
  .banquetInfo .infoMain .detail table td {
    padding: 4px 0;
    line-height: 1.6;
    color: #333;
  }

  .banquetInfo .infoOption {
    width: 100%;
    margin: 0 auto 30px;
    border-bottom: 1px solid #6c5d49;
  }
  .banquetInfo .infoOption h3 {
    display: flex;
    align-items: center;
    font-family: 'Libre Baskerville', serif;
    font-size: 1.6rem;
    color: #6c5d49;
    letter-spacing: 0.1em;
    margin-bottom: 15px;
  }
  .banquetInfo .infoOption h3::before,
  .banquetInfo .infoOption h3::after {
    border-top: 1px solid #6c5d49;
    content: "";
    flex-grow: 1;
  }
  .banquetInfo .infoOption h3::before {
    margin-right: 1rem;
  }
  .banquetInfo .infoOption h3::after {
    margin-left: 1rem;
  }
  .banquetInfo .infoOption ul {
    padding: 10px 0 20px;
  }
  .banquetInfo .infoOption li {
    margin: 0 auto 8px;
    font-size: 1.3rem;
    line-height: 1.6;
    color: #333;
  }
  .banquetInfo .infoOption li.icon {
    border: 1px solid #6c5d49;
    border-radius: 10px;
    padding: 12px 15px;
    font-size: 1.4rem;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
  }
  .banquetInfo .infoOption li.icon i {
    display: inline-block;
    vertical-align: middle;
    line-height: 1;
    margin: 0 10px 0 0;
    font-size: 2.2rem;
    color: #6c5d49;
  }
  .banquetInfo .infoOption li.icon span {
    font-size: 1.1rem;
    display: block;
    width: 100%;
    margin-top: 4px;
    margin-left: 32px;
    color: #666;
  }

  .banquetInfo .btn {
    width: 100%;
    margin: 0 auto 20px;
  }
  .banquetInfo .btn a {
    display: block;
    font-size: 1.6rem;
    padding: 15px 0;
    text-align: center;
    text-decoration: none;
  }

  .banquetInfo .gMap {
    margin-top: 30px;
  }
  .banquetInfo .gMap iframe {
    width: 100%;
    height: 320px;
    display: block;
  }

  
  .bl--wrap {
    width: 90%;
    margin: auto;
    text-align: left;
    border-top: 1px solid #999;
  }
  .bl--item {
    display: flex;
    flex-flow: column;
    padding: 20px 0;
    border-bottom: 1px solid #999;
  }
  .bl--thum {
    width: 100%;
    margin-bottom: 15px;
  }
  .bl--thum img {
    width: 100%;
    height: auto;
    display: block;
  }
  .bl--logo {
    padding: 15px 0 20px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .bl--logo .inner {
    width: 150px;
    margin: auto;
  }
  .bl--logo img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
  }
  #bl--une.bl--item .bl--logo .inner {
    width: 100px;
  }
  #bl--psh.bl--item .bl--logo .inner {
    width: 138px;
  }
  #bl--rkk.bl--item .bl--logo .inner {
    width: 166px;
  }
  #bl--weh.bl--item .bl--logo .inner {
    width: 136px;
  }
  .bl--text {
    display: flex;
    align-items: center;
    font-size: 1.2rem;
  }
  .bl--text .inner {
    width: 100%;
  }
  .bl--text h2 {
    font-size: 1.6rem;
    color: #6c5d49;
    line-height: 1.4;
    margin-bottom: 10px;
  }
  .bl--detail {
    margin-bottom: 15px;
  }
  .bl--detail table {
    width: 100%;
    border-collapse: collapse;
  }
  .bl--detail th {
    white-space: nowrap;
    width: 4.5em;
    padding: 4px 8px 4px 0;
    font-weight: normal;
    color: #666;
    vertical-align: top;
  }
  .bl--detail td {
    padding: 4px 0;
    line-height: 1.6;
    color: #333;
  }
  .bl--tel {
    font-size: 1.3rem;
  }
  .bl--tel span {
    display: inline-block;
    margin-left: 12px;
    font-size: 1.6rem;
    color: #6c5d49;
    font-weight: bold;
  }
}


@media screen and (min-width: 769px) {
  .cover {
    background-color: #896d41; position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 9999;
  }

  .banquetDetail { padding: 0 0 150px; }

  #pageHeaderWrap { position: relative; width: 100%; min-width:1200px; margin: auto; overflow: inherit; }
  #pageHeaderWrap.pageKv { display: flex; flex-flow: column; }
  #pageHeaderWrap::before { content:""; display: block; padding-top: 38.2%; }
  #pageHeaderWrap.pageKv::before { background-size: cover; margin-bottom: 60px; }

  #pageHeaderWrap #pageHeader { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-size: cover; overflow: inherit; }
  #pageHeaderWrap.pageKv #pageHeader { position: relative; height: auto; background: none !important; order: 2; }
  #httWrap #pageHeaderWrap #pageHeader, #httWrap #pageHeaderWrap.pageKv::before { background-image: url(/assets/images/htt/header_bg.jpg); }
  #irisWrap #pageHeaderWrap #pageHeader, #irisWrap #pageHeaderWrap.pageKv::before { background-image: url(/assets/images/iris/header_bg.jpg); }
  #pshWrap #pageHeaderWrap #pageHeader, #pshWrap #pageHeaderWrap.pageKv::before { background-image: url(/assets/images/psh/header_bg.jpg); }
  #wehWrap #pageHeaderWrap.pageKv::before { background-image: url(/assets/images/weh/header_bg.jpg); }
  #uneWrap #pageHeaderWrap.pageKv::before { background-image: url(/assets/images/une/header_bg.jpg?v20250502); }

  #pageHeader h1 { position: absolute; bottom: -290px; left: 0; right: 0; margin: auto; width: 825px; height: 183px; }
  #pageHeaderWrap.pageKv #pageHeader h1 { position: relative; bottom: initial; width: max-content; height: auto; margin: 0 auto 30px; }
  #pageHeader h1 img { display: none; }
  #pageHeader h1 span { display: block; font-size: 2.8rem; letter-spacing: 0.4rem; margin-top: -58px; }

  #pageNav { margin: 0 auto 60px; order: 1; }
  #pageNav ul { width: 1080px; display: flex; justify-content: center; gap: 0 .5em; }
  #pageNav li { flex: 1; line-height: 1; white-space: nowrap; }
  #pageNav li a { display: block; width: 100%; padding: .5em 0; font-size: 1.3rem; font-weight: bold; color: #FFF; text-decoration: none; background-color: #6c5d49; }

  .closeday { width: max-content; margin: 30px auto; padding: 20px 30px; font-size: 1.3rem; letter-spacing: 0.2rem; line-height: 2; border: 1px solid #999; background-color: #FFF; }
  .closeday h2 { font-weight: bold; }

  #pageRead { margin: 0 auto 100px; padding: 120px 0 0; font-size: 1.6rem; letter-spacing: 0.2rem; line-height: 2; }
  #pageHeaderWrap.pageKv + #pageRead { padding: 0; }
  #uneWrap #pageRead { margin: 0 auto 50px; }
  #uneWrap #pageRead .logo { width: 160px; margin: 20px auto 45px; }

  .banquet { display: flex; flex-flow: column; width: 792px; margin: 0 auto 60px; }
  .banquet h2 { margin: 0 auto 40px; }

  .banquet .info { order: 2; text-align: left; position: relative; }
  #uneWrap .banquet .info { display: flex; flex-flow: column; }
  .banquet .info .text { width: 440px; }
  #uneWrap .banquet .info .text { width: 100%; order: 1; }
  .banquet .info .text .copy { font-family: "游明朝体", YuMincho, serif; font-size: 1.8rem; line-height: 1.8; color: #6C5D49; margin-bottom: 30px; }
  .banquet .info .text .read { font-size: 1.3rem; }

  .banquet .info .detail { float: right; width: 330px; }
  #uneWrap .banquet .info .detail { float: none; width: 100%; order: 2; }
  .banquet .info .detail h3 { font-size: 1.4rem; line-height: 1.8; border-bottom: 1px solid #6c5d49; margin-bottom: 10px; padding-bottom: 10px; }
  .banquet .info .detail p { font-size: 1.4rem; line-height: 1.4; margin-bottom: 10px; }
  .banquet .info .detail dl { display: flex; font-size: 1.4rem; }
  .banquet .photo { order: 1; margin: 0 auto 30px; }

  #plan { margin: 0 auto 180px; }
  #plan .copy { font-family: "游明朝体", YuMincho, serif; font-size: 2.1rem; line-height: 1.8; color: #6C5D49; margin: 0 auto 30px; }
  #plan .plan .detail { width: 520px; margin: 0 auto 15px; border-bottom: 1px solid #333; }
  #plan .plan .photo { margin: auto; width: 976px; }
  #plan .plan .photo li { float: left; width: 234px; margin: 0 5px; }

  .bq-plan-list { display: grid; grid-template-columns: repeat(3, 1fr); grid-column-gap: 30px; grid-row-gap: 40px; width: 870px; margin: auto; }
  .bq-plan-item { display: flex; flex-flow: column; }
  .bq-plan-item-tt { position: relative; font-size: 1.8rem; font-weight: 600; color: #6c5d49; margin-bottom: 24px; }

  .banquetInfo {
    display: flex;
    flex-flow: column;
    margin: 0 auto 150px;
  }
  .banquetInfo .infoMain {
    width: 580px;
    margin: auto;
  }
  .banquetInfo .infoMain h2 {
    font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Times New Roman", serif;
    font-size: 2rem;
    text-align: left;
    line-height: 1.8;
    border-bottom: 1px solid #6c5d49;
    padding-bottom: 5px;
  }
  .banquetInfo .infoMain .detail {
    padding: 15px 0;
  }
  .banquetInfo .infoMain .detail table {
    border-collapse: collapse;
    width: 100%;
  }
  .banquetInfo .infoMain .detail table th,
  .banquetInfo .infoMain .detail table td {
    font-size: 1.6rem;
    text-align: left;
  }
  .banquetInfo .infoMain .detail table th {
    white-space: nowrap;
    padding: 4px 30px 4px 0;
    color: #666;
    font-weight: normal;
    vertical-align: top;
  }
  .banquetInfo .infoMain .detail table td {
    padding: 4px 0;
    line-height: 1.7;
    color: #333;
  }

  .banquetInfo .infoOption {
    width: 580px;
    margin: 0 auto 40px;
    border-bottom: 1px solid #6c5d49;
  }
  .banquetInfo .infoOption h3 {
    display: flex;
    align-items: center;
    font-family: 'Libre Baskerville', serif;
    font-size: 1.8rem;
    color: #6c5d49;
    letter-spacing: 0.1em;
    margin-bottom: 20px;
  }
  .banquetInfo .infoOption h3::before,
  .banquetInfo .infoOption h3::after {
    border-top: 1px solid #6c5d49;
    content: "";
    flex-grow: 1;
  }
  .banquetInfo .infoOption h3::before {
    margin-right: 1.5rem;
  }
  .banquetInfo .infoOption h3::after {
    margin-left: 1.5rem;
  }
  .banquetInfo .infoOption ul {
    padding: 10px 0 25px;
  }
  .banquetInfo .infoOption li {
    margin: 0 auto 10px;
    font-size: 1.5rem;
    line-height: 1.7;
    color: #333;
  }
  .banquetInfo .infoOption li.icon {
    border: 1px solid #6c5d49;
    border-radius: 10px;
    padding: 15px 20px;
    font-size: 1.8rem;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
  }
  .banquetInfo .infoOption li.icon i {
    display: inline-block;
    vertical-align: middle;
    line-height: 1;
    margin: 0 12px 0 0;
    font-size: 2.6rem;
    color: #6c5d49;
  }
  .banquetInfo .infoOption li.icon span {
    font-size: 1.2rem;
    margin-left: 10px;
    color: #666;
  }

  .banquetInfo .btn {
    width: 580px;
    margin: 0 auto 30px;
  }
  .banquetInfo .btn a {
    display: block;
    font-size: 21px;
    padding: 15px 0;
    text-align: center;
    text-decoration: none;
  }

  .banquetInfo .gMap {
    margin-top: 50px;
  }
  .banquetInfo .gMap iframe {
    width: 100%;
    display: block;
  }

  
  .bl--wrap {
    width: 900px;
    margin: auto;
    text-align: left;
    border-top: 1px solid #999;
  }
  .bl--item {
    display: flex;
    padding: 25px 40px;
    border-bottom: 1px solid #999;
    align-items: center;
    gap: 30px;
  }
  .bl--thum {
    width: 210px;
    flex-shrink: 0;
  }
  .bl--thum img {
    width: 100%;
    height: auto;
    display: block;
  }
  .bl--logo {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 240px;
    flex-shrink: 0;
  }
  .bl--logo .inner {
    width: 150px;
  }
  .bl--logo img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
  }
  #bl--une.bl--item .bl--logo .inner {
    width: 100px;
  }
  #bl--psh.bl--item .bl--logo .inner {
    width: 138px;
  }
  #bl--rkk.bl--item .bl--logo .inner {
    width: 166px;
  }
  #bl--weh.bl--item .bl--logo .inner {
    width: 142px;
  }
  .bl--text {
    display: flex;
    align-items: center;
    font-size: 1.3rem;
    flex: 1;
  }
  .bl--text .inner {
    width: 100%;
  }
  .bl--text h2 {
    font-size: 1.7rem;
    color: #6c5d49;
    line-height: 1.4;
    margin-bottom: 10px;
  }
  .bl--detail {
    margin-bottom: 10px;
  }
  .bl--detail table {
    width: 100%;
    border-collapse: collapse;
  }
  .bl--detail th {
    white-space: nowrap;
    width: 4.5em;
    padding: 4px 8px 4px 0;
    font-weight: normal;
    color: #666;
    vertical-align: top;
  }
  .bl--detail td {
    padding: 4px 0;
    line-height: 1.6;
    color: #333;
  }
  .bl--tel {
    font-size: 1.3rem;
  }
  .bl--tel span {
    display: inline-block;
    margin-left: 12px;
    font-size: 1.7rem;
    color: #6c5d49;
    font-weight: bold;
  }
}



#httWrap.banquetDetail,
#irisWrap.banquetDetail {
  background-color: #fff;
  color: #333;
  font-family: 'Yu Mincho', 'YuMincho', 'Hiragino Mincho ProN', serif;
}


.htt-hero,
.iris-hero,
.une-hero,
.psh-hero,
.weh-hero,
.hg-hero,
.tao-hero {
  position: relative;
  width: 100%;
  margin-bottom: 90px;
}
.htt-hero-image img,
.iris-hero-image img {
  width: 100%;
  height: auto;
  display: block;
}
.htt-cv-box,
.iris-cv-box,
.une-cv-box,
.psh-cv-box,
.weh-cv-box,
.hg-cv-box,
.tao-cv-box {
  width: 90%;
  max-width: 900px;
  margin: -70px auto 0;
  position: relative;
  z-index: 10;
  background: #ffffff;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
  padding: 30px 40px;
  text-align: center;
  box-sizing: border-box;
}
.htt-cv-sub,
.iris-cv-sub,
.une-cv-sub,
.psh-cv-sub,
.weh-cv-sub,
.hg-cv-sub,
.tao-cv-sub {
  font-size: 1.3rem;
  color: #666;
  margin-bottom: 8px;
  letter-spacing: 0.1em;
}
.htt-cv-title,
.iris-cv-title,
.une-cv-title,
.psh-cv-title,
.weh-cv-title,
.hg-cv-title,
.tao-cv-title {
  font-size: 2.2rem;
  font-weight: 500;
  letter-spacing: 0.15em;
  margin-bottom: 25px;
  color: #222;
}
.htt-cv-buttons,
.iris-cv-buttons,
.une-cv-buttons,
.psh-cv-buttons,
.weh-cv-buttons,
.hg-cv-buttons,
.tao-cv-buttons {
  display: flex;
  justify-content: center;
  gap: 15px;
  flex-wrap: wrap;
}


.htt-cv-btn,
.iris-cv-btn,
.une-cv-btn,
.psh-cv-btn,
.weh-cv-btn,
.hg-cv-btn,
.tao-cv-btn {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-width: 250px;
  height: 62px;
  padding: 0 24px;
  text-decoration: none;
  font-family: 'Hiragino Sans', 'Noto Sans JP', sans-serif;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  border-radius: 6px;
  background-color: #85745d;
  color: #ffffff;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  transition: all 0.25s ease;
  box-sizing: border-box;
}
.htt-cv-btn:hover,
.iris-cv-btn:hover {
  background-color: #96846c;
  transform: translateY(-2px);
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.16);
  color: #ffffff;
}
.htt-cv-btn-tel,
.iris-cv-btn-tel,
.une-cv-btn-tel,
.psh-cv-btn-tel,
.weh-cv-btn-tel,
.hg-cv-btn-tel,
.tao-cv-btn-tel {
  background-color: #85745d;
}
.htt-cv-btn-tel .btn-label,
.iris-cv-btn-tel .btn-label {
  font-size: 1.15rem;
  font-weight: 400;
  line-height: 1.3;
  color: rgba(255, 255, 255, 0.92);
  letter-spacing: 0.05em;
  margin-bottom: 2px;
}
.htt-cv-btn-tel .btn-tel,
.iris-cv-btn-tel .btn-tel {
  font-size: 1.9rem;
  font-weight: 500;
  font-family: 'Times New Roman', 'Libre Baskerville', serif;
  letter-spacing: 0.08em;
  line-height: 1.1;
  color: #ffffff;
}
.htt-cv-btn-form,
.iris-cv-btn-form,
.une-cv-btn-form,
.psh-cv-btn-form,
.weh-cv-btn-form,
.hg-cv-btn-form,
.tao-cv-btn-form {
  background-color: #85745d;
}
.htt-cv-btn-pdf,
.iris-cv-btn-pdf,
.une-cv-btn-pdf,
.psh-cv-btn-pdf,
.weh-cv-btn-pdf,
.hg-cv-btn-pdf,
.tao-cv-btn-pdf {
  background-color: #85745d;
}


.htt-recommend-plan,
.iris-recommend-plan,
.une-recommend-plan,
.psh-recommend-plan,
.weh-recommend-plan,
.hg-recommend-plan,
.tao-recommend-plan {
  max-width: 1040px;
  margin: 0 auto 100px;
  padding: 0 20px;
  text-align: center;
}
.htt-sec-title-en,
.iris-sec-title-en,
.une-sec-title-en,
.psh-sec-title-en,
.weh-sec-title-en,
.hg-sec-title-en,
.tao-sec-title-en {
  font-family: 'Libre Baskerville', 'Times New Roman', serif;
  font-size: 2.4rem;
  letter-spacing: 0.25em;
  color: #8d7658;
  margin-bottom: 40px;
  font-weight: normal;
  text-transform: uppercase;
}
.htt-plan-grid,
.iris-plan-grid,
.une-plan-grid,
.psh-plan-grid,
.weh-plan-grid,
.hg-plan-grid,
.tao-plan-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  margin-bottom: 40px;
}
.htt-plan-card,
.iris-plan-card,
.une-plan-card,
.psh-plan-card,
.weh-plan-card,
.hg-plan-card,
.tao-plan-card {
  text-decoration: none;
  color: inherit;
  display: block;
  transition: transform 0.3s ease;
}
.htt-plan-card:hover,
.iris-plan-card:hover {
  transform: translateY(-4px);
}
.htt-plan-thumb,
.iris-plan-thumb,
.une-plan-thumb,
.psh-plan-thumb,
.weh-plan-thumb,
.hg-plan-thumb,
.tao-plan-thumb {
  width: 100%;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  margin-bottom: 15px;
}
.htt-plan-thumb img,
.iris-plan-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.htt-plan-name,
.iris-plan-name,
.une-plan-name,
.psh-plan-name,
.weh-plan-name,
.hg-plan-name,
.tao-plan-name {
  font-size: 1.3rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
  color: #333;
}
.htt-btn-center,
.iris-btn-center,
.une-btn-center,
.psh-btn-center,
.weh-btn-center,
.hg-btn-center,
.tao-btn-center {
  margin-top: 30px;
}
.htt-btn-outline,
.iris-btn-outline,
.une-btn-outline,
.psh-btn-outline,
.weh-btn-outline,
.hg-btn-outline,
.tao-btn-outline {
  display: inline-block;
  padding: 12px 60px;
  border: 1px solid #705d49;
  background-color: #fff;
  color: #705d49;
  text-decoration: none;
  font-size: 1.4rem;
  font-family: sans-serif;
  letter-spacing: 0.1em;
  transition: all 0.3s ease;
}
.htt-btn-outline:hover,
.iris-btn-outline:hover {
  background-color: #705d49;
  color: #fff;
}
.htt-btn-solid,
.iris-btn-solid {
  display: inline-block;
  padding: 12px 40px;
  background-color: #705d49;
  color: #fff;
  text-decoration: none;
  font-size: 1.4rem;
  font-family: sans-serif;
  letter-spacing: 0.1em;
  transition: opacity 0.3s ease;
}
.htt-btn-solid:hover,
.iris-btn-solid:hover {
  opacity: 0.85;
}


.htt-intro,
.iris-intro,
.une-intro,
.psh-intro,
.weh-intro,
.hg-intro,
.tao-intro {
  max-width: 900px;
  margin: 0 auto 100px;
  padding: 0 20px;
  text-align: center;
}
.htt-intro-logo,
.iris-intro-logo,
.une-intro-logo,
.psh-intro-logo,
.weh-intro-logo,
.hg-intro-logo,
.tao-intro-logo {
  margin-bottom: 25px;
}
.htt-intro-logo img,
.iris-intro-logo img {
  max-width: 220px;
  height: auto;
  margin: 0 auto;
}
.htt-intro-title,
.iris-intro-title,
.une-intro-title,
.psh-intro-title,
.weh-intro-title,
.hg-intro-title,
.tao-intro-title {
  font-size: 1.8rem;
  letter-spacing: 0.2em;
  color: #333;
  margin-bottom: 30px;
  font-weight: normal;
}
.htt-intro-text,
.iris-intro-text,
.une-intro-text,
.psh-intro-text,
.weh-intro-text,
.hg-intro-text,
.tao-intro-text {
  font-size: 1.4rem;
  line-height: 2.2;
  letter-spacing: 0.15em;
  color: #444;
}


.htt-party-room,
.iris-party-room,
.une-party-room,
.psh-party-room,
.weh-party-room,
.hg-party-room,
.tao-party-room {
  max-width: 1040px;
  margin: 0 auto 120px;
  padding: 0 20px;
}
.htt-room-badge,
.iris-room-badge,
.une-room-badge,
.psh-room-badge,
.weh-room-badge,
.hg-room-badge,
.tao-room-badge {
  background-color: #111;
  color: #fff;
  font-family: 'Libre Baskerville', serif;
  font-size: 1.3rem;
  letter-spacing: 0.2em;
  display: block;
  text-align: center;
  padding: 8px 0;
  margin-bottom: 35px;
}
.htt-room-header,
.iris-room-header,
.une-room-header,
.psh-room-header,
.weh-room-header,
.hg-room-header,
.tao-room-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 30px;
  gap: 40px;
  text-align: left;
}
.htt-room-header-left,
.iris-room-header-left,
.une-room-header-left,
.psh-room-header-left,
.weh-room-header-left,
.hg-room-header-left,
.tao-room-header-left {
  flex: 0 0 38%;
}
.htt-room-title,
.iris-room-title,
.une-room-title,
.psh-room-title,
.weh-room-title,
.hg-room-title,
.tao-room-title {
  font-family: 'Libre Baskerville', serif;
  font-size: 2.8rem;
  font-weight: normal;
  color: #222;
  margin-bottom: 12px;
  letter-spacing: 0.05em;
}
.htt-room-copy,
.iris-room-copy,
.une-room-copy,
.psh-room-copy,
.weh-room-copy,
.hg-room-copy,
.tao-room-copy {
  font-size: 1.4rem;
  line-height: 1.6;
  color: #555;
  letter-spacing: 0.08em;
}
.htt-room-desc,
.iris-room-desc,
.une-room-desc,
.psh-room-desc,
.weh-room-desc,
.hg-room-desc,
.tao-room-desc {
  flex: 1;
  font-size: 1.3rem;
  line-height: 1.9;
  color: #555;
  text-align: justify;
}
.htt-room-visuals,
.iris-room-visuals,
.une-room-visuals,
.psh-room-visuals,
.weh-room-visuals,
.hg-room-visuals,
.tao-room-visuals {
  display: flex;
  gap: 20px;
  margin-bottom: 35px;
  align-items: stretch;
}
.htt-room-photo,
.iris-room-photo,
.une-room-photo,
.psh-room-photo,
.weh-room-photo,
.hg-room-photo,
.tao-room-photo {
  flex: 1.3;
}
.htt-room-photo img,
.iris-room-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.htt-room-drawing,
.iris-room-drawing,
.une-room-drawing,
.psh-room-drawing,
.weh-room-drawing,
.hg-room-drawing,
.tao-room-drawing {
  flex: 0.9;
  background-color: #faf9f6;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px;
  box-sizing: border-box;
}
.htt-room-drawing img,
.iris-room-drawing img {
  width: 100%;
  height: auto;
  max-height: 480px;
  object-fit: contain;
  display: block;
}
.htt-room-footer,
.iris-room-footer,
.une-room-footer,
.psh-room-footer,
.weh-room-footer,
.hg-room-footer,
.tao-room-footer {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  border-top: 1px solid #ddd;
  padding-top: 25px;
  margin-bottom: 35px;
  gap: 30px;
  text-align: left;
}
.htt-room-specs h4,
.iris-room-specs h4 {
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 10px;
  color: #333;
}
.htt-room-specs p,
.iris-room-specs p {
  font-size: 1.3rem;
  line-height: 1.8;
  color: #555;
}
.htt-room-actions,
.iris-room-actions,
.une-room-actions,
.psh-room-actions,
.weh-room-actions,
.hg-room-actions,
.tao-room-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 220px;
}
.htt-room-actions a,
.iris-room-actions a {
  text-align: center;
  padding: 10px 20px;
  box-sizing: border-box;
}
.htt-room-gallery,
.iris-room-gallery,
.une-room-gallery,
.psh-room-gallery,
.weh-room-gallery,
.hg-room-gallery,
.tao-room-gallery {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 15px;
}
.htt-room-gallery img,
.iris-room-gallery img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  display: block;
}


.htt-cuisine,
.iris-cuisine,
.une-cuisine,
.psh-cuisine,
.weh-cuisine,
.hg-cuisine,
.tao-cuisine {
  max-width: 1040px;
  margin: 0 auto 120px;
  padding: 0 20px;
  text-align: center;
}
.htt-sec-title-ja,
.iris-sec-title-ja,
.une-sec-title-ja,
.psh-sec-title-ja,
.weh-sec-title-ja,
.hg-sec-title-ja,
.tao-sec-title-ja {
  font-size: 1.4rem;
  letter-spacing: 0.2em;
  color: #8d7658;
  margin-top: -30px;
  margin-bottom: 40px;
}
.htt-cuisine-grid,
.iris-cuisine-grid,
.une-cuisine-grid,
.psh-cuisine-grid,
.weh-cuisine-grid,
.hg-cuisine-grid,
.tao-cuisine-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 15px;
  margin-bottom: 50px;
}
.htt-cuisine-item,
.iris-cuisine-item,
.une-cuisine-item,
.psh-cuisine-item,
.weh-cuisine-item,
.hg-cuisine-item,
.tao-cuisine-item {
  aspect-ratio: 4 / 3;
  overflow: hidden;
}
.htt-cuisine-item img,
.iris-cuisine-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.3s ease;
}
.htt-cuisine-item img:hover,
.iris-cuisine-item img:hover {
  transform: scale(1.03);
}
.htt-chef-block,
.iris-chef-block,
.une-chef-block,
.psh-chef-block,
.weh-chef-block,
.hg-chef-block,
.tao-chef-block {
  display: flex;
  max-width: 720px;
  margin: 0 auto;
  align-items: center;
  text-align: left;
  gap: 35px;
  padding: 25px 30px;
  background-color: #faf9f6;
  box-sizing: border-box;
}
.htt-chef-photo,
.iris-chef-photo,
.une-chef-photo,
.psh-chef-photo,
.weh-chef-photo,
.hg-chef-photo,
.tao-chef-photo {
  flex: 0 0 160px;
}
.htt-chef-photo img,
.iris-chef-photo img {
  width: 100%;
  height: auto;
  display: block;
}
.htt-chef-profile,
.iris-chef-profile,
.une-chef-profile,
.psh-chef-profile,
.weh-chef-profile,
.hg-chef-profile,
.tao-chef-profile {
  flex: 1;
}
.htt-chef-en,
.iris-chef-en,
.une-chef-en,
.psh-chef-en,
.weh-chef-en,
.hg-chef-en,
.tao-chef-en {
  font-family: 'Libre Baskerville', serif;
  font-size: 1.1rem;
  letter-spacing: 0.15em;
  color: #8d7658;
  margin-bottom: 6px;
}
.htt-chef-name,
.iris-chef-name,
.une-chef-name,
.psh-chef-name,
.weh-chef-name,
.hg-chef-name,
.tao-chef-name {
  font-size: 1.8rem;
  font-weight: bold;
  color: #333;
  margin-bottom: 12px;
}
.htt-chef-name span,
.iris-chef-name span {
  font-size: 1.1rem;
  font-weight: normal;
  color: #777;
  letter-spacing: 0.1em;
  margin-left: 10px;
}
.htt-chef-text,
.iris-chef-text,
.une-chef-text,
.psh-chef-text,
.weh-chef-text,
.hg-chef-text,
.tao-chef-text {
  font-size: 1.2rem;
  line-height: 1.9;
  color: #555;
}


.htt-floating-bar,
.iris-floating-bar,
.une-floating-bar,
.psh-floating-bar,
.weh-floating-bar,
.hg-floating-bar,
.tao-floating-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.12);
  padding: 12px 20px;
  box-sizing: border-box;
  z-index: 1000;
  transform: translateY(100%);
  opacity: 0;
  visibility: hidden;
  transition: transform 0.35s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.3s ease, visibility 0.35s;
}
.htt-floating-bar.is-active,
.iris-floating-bar.is-active {
  transform: translateY(0);
  opacity: 1;
  visibility: visible;
}
.htt-floating-bar-inner,
.iris-floating-bar-inner,
.une-floating-bar-inner,
.psh-floating-bar-inner,
.weh-floating-bar-inner,
.hg-floating-bar-inner,
.tao-floating-bar-inner {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 15px;
  max-width: 900px;
  margin: 0 auto;
}
.htt-floating-bar .htt-cv-btn,
.iris-floating-bar .iris-cv-btn {
  height: 52px;
  min-width: 220px;
}
.htt-floating-bar .htt-cv-btn-tel .btn-tel,
.iris-floating-bar .iris-cv-btn-tel .btn-tel {
  font-size: 1.7rem;
}


@media screen and (max-width: 768px) {
  .htt-hero,
  .iris-hero {
    margin-bottom: 60px;
  }
  .htt-cv-box,
  .iris-cv-box {
    margin: 15px auto 0;
    width: 92%;
    padding: 20px 15px;
  }
  .htt-cv-title,
  .iris-cv-title {
    font-size: 1.8rem;
  }
  .htt-cv-buttons,
  .iris-cv-buttons {
    flex-direction: column;
    width: 100%;
    gap: 10px;
  }
  .htt-cv-btn,
  .iris-cv-btn {
    width: 100%;
    min-width: auto;
    height: 54px;
  }
  .htt-recommend-plan,
  .iris-recommend-plan {
    margin-bottom: 60px;
  }
  .htt-plan-grid,
  .iris-plan-grid {
    grid-template-columns: 1fr;
    gap: 25px;
  }
  .htt-intro,
  .iris-intro {
    margin-bottom: 60px;
  }
  .htt-intro-text,
  .iris-intro-text {
    font-size: 1.3rem;
    line-height: 2.0;
    text-align: left;
  }
  .htt-party-room,
  .iris-party-room {
    margin-bottom: 70px;
  }
  .htt-room-header,
  .iris-room-header {
    flex-direction: column;
    gap: 15px;
  }
  .htt-room-header-left,
  .iris-room-header-left {
    flex: auto;
  }
  .htt-room-title,
  .iris-room-title {
    font-size: 2.2rem;
  }
  .htt-room-visuals,
  .iris-room-visuals {
    flex-direction: column;
  }
  .htt-room-footer,
  .iris-room-footer {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
  .htt-room-actions,
  .iris-room-actions {
    width: 100%;
  }
  .htt-room-gallery,
  .iris-room-gallery {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
  .htt-cuisine,
  .iris-cuisine {
    margin-bottom: 70px;
  }
  .htt-cuisine-grid,
  .iris-cuisine-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
  .htt-chef-block,
  .iris-chef-block {
    flex-direction: column;
    text-align: center;
    padding: 20px 15px;
  }
  .htt-chef-photo,
  .iris-chef-photo {
    flex: 0 0 140px;
    max-width: 140px;
  }

  
  .htt-floating-bar,
  .iris-floating-bar {
    padding: 8px 10px;
  }
  .htt-floating-bar-inner,
  .iris-floating-bar-inner {
    gap: 8px;
  }
  .htt-floating-bar .htt-cv-btn,
  .iris-floating-bar .iris-cv-btn {
    min-width: auto;
    flex: 1;
    height: 46px;
    padding: 0 6px;
    font-size: 1.15rem;
  }
  .htt-floating-bar .htt-cv-btn-tel .btn-label,
  .iris-floating-bar .iris-cv-btn-tel .btn-label {
    font-size: 0.85rem;
  }
  .htt-floating-bar .htt-cv-btn-tel .btn-tel,
  .iris-floating-bar .iris-cv-btn-tel .btn-tel {
    font-size: 1.25rem;
  }
}



.htt-cv-btn-line,
.iris-cv-btn-line,
.une-cv-btn-line,
.psh-cv-btn-line,
.weh-cv-btn-line,
.hg-cv-btn-line,
.tao-cv-btn-line {
  background: #06c755;
  border-color: #06c755;
}
.htt-cv-btn-line:hover,
.iris-cv-btn-line:hover,
.une-cv-btn-line:hover,
.psh-cv-btn-line:hover,
.weh-cv-btn-line:hover,
.hg-cv-btn-line:hover,
.tao-cv-btn-line:hover {
  background: #05b04c;
  border-color: #05b04c;
}
