@charset "UTF-8";
/* 各メニューの予約ボタンと対応店舗の表示を統一。 */
.reserve-jump-btn.booking-two-options {
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.booking-two-options .reserve-text-11 {
  grid-column:auto;
  width:auto;
  height:auto;
  min-height:121px;
}
.reserve-jump-btn.booking-course-option {
  grid-template-columns:minmax(0,1fr);
  flex:1;
  width:100%;
  max-width:460px;
}
.booking-course-option .reserve-text-11 {
  grid-column:auto;
  width:100%;
  height:auto;
  min-height:121px;
}
.header-booking-links span {
  white-space:nowrap;
}
.salon-aroma-booking {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  text-align:center;
}
.salon-aroma-booking span {
  font-size:13px;
  line-height:1.7;
  text-decoration:underline;
  text-underline-offset:4px;
}
@media(max-width:479px) {
  .reserve-jump-btn.booking-two-options {
    grid-template-columns:minmax(0,300px);
    gap:10px;
  }
  .booking-two-options .reserve-text-11,
  .booking-course-option .reserve-text-11 {
    min-height:100px;
    padding:12px;
  }
}
.menu-link-btn.service-booking {
  display:grid;
  grid-template-columns:max-content minmax(0,1fr);
  align-items:center;
  gap:20px;
  width:100%;
  margin:0;
}
.menu-store-logos {
  display:flex;
  align-items:center;
  flex-wrap:nowrap;
  gap:16px;
}
.menu-booking-options {
  display:flex;
  align-items:stretch;
  flex-wrap:wrap;
  gap:12px;
  min-width:0;
}
.service-booking.booking-no-store {
  grid-template-columns:minmax(0,1fr);
}
.mini-re-btn.menu-booking-button {
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:3px;
  width:210px;
  min-width:148px;
  min-height:92px;
  height:auto;
  margin:0;
  padding:12px 16px;
}
.menu-booking-name {
  font-size:13px;
  font-weight:500;
}
.menu-booking-store {
  display:block;
  font-size:11px;
  font-weight:400;
  color:var(--muted);
}
.menu-booking-provider {
  font-size:11px;
  color:var(--muted);
}
.menu-booking-action {
  font-size:13px;
}
@media(max-width:640px) {
  .menu-link-btn.service-booking {
    grid-template-columns:minmax(0,1fr);
    gap:14px;
  }
  .menu-store-logos {
    gap:12px;
  }
  .menu-booking-options {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .menu-booking-options.single-provider {
    grid-template-columns:minmax(0,1fr);
  }
  .mini-re-btn.menu-booking-button {
    width:100%;
    min-width:0;
    padding:10px 8px;
  }
  .menu-booking-name,.menu-booking-action {
    font-size:12px;
  }
}
@media(max-width:369px) {
  .menu-booking-options {
    grid-template-columns:minmax(0,1fr);
  }
}
/* エステの２店舗対応メニューは、店舗ごとにロゴと予約ボタンを隣接。 */
.site-inner[data-course="esthetic"] .service-booking.store-booking-paired {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:16px 24px;
}
.store-booking-pair {
  display:grid;
  grid-template-columns:max-content minmax(0,210px);
  align-items:center;
  gap:12px;
}
@media(max-width:640px) {
  .site-inner[data-course="esthetic"] .service-booking.store-booking-paired {
    flex-direction:column;
    align-items:stretch;
    gap:14px;
  }
  .store-booking-pair {
    grid-template-columns:max-content minmax(0,1fr);
    width:100%;
  }
  .store-booking-pair .menu-booking-button {
    width:100%;
    min-width:0;
  }
}
