/* Front-page key visual: September 2026 PC / SP designs. */
.sense-home { background: #fff; }
.sense-home #wrapper { display: block; }
.mainkv { position: relative; padding-top: 77px; min-height: 800px; background: #fff; color: #050d11; }
.mainkv__visual { position: relative; width: min(64.6875%, 1040px); margin: 0 auto; }
.mainkv__picture { display: block; position: relative; }
.mainkv__picture::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to bottom, transparent 74%, #fff 100%); pointer-events: none; }
.mainkv__photo { display: block; width: 100%; height: auto; }
.mainkv__logo { position: absolute; width: 29.552%; height: auto; top: -8.46%; left: calc(50% + 10px); transform: translateX(-50%); z-index: 1; }
.mainkv__catch { position: absolute; width: 42%; top: 64.5%; left: 30%; height: auto; }
/* The badge SVG includes transparent margins; match the visible gold circle. */
.mainkv__badge { position: absolute; width: 27.568%; max-width: none; bottom: -7.4%; left: -23.17%; height: auto; }
.mainkv__credit { width: min(64.6875%, 1040px); margin: 3px auto 0; text-align: right; font-size: 10px; line-height: 1.8; }
.sense-home .header { height: 77px; padding: 0 20px; background: transparent; }
.sense-home .header.scroll-nav { background: #fff; }
.sense-home .header > .header-nav { padding-right: 108px; }
.sense-home .header .logo, .sense-home .header nav.hidden { display: none; }
.mainkv-header__tagline { font-size: 14px; line-height: 1.35; }
.mainkv-header__nav { display: flex; gap: 24px; font-size: 14px; color: #72787b; }
.sense-home .humb-btn { width: 77px; height: 77px; background: #050d11; }
.sense-home .humb-btn .inner { width: 36px; }
.sense-home .humb-btn span { height: 4px; border-radius: 3px; background: #e3f254; }
.sense-home .fix-sns { right: 30px; top: calc(50% + 38px); color: #a4abb0; }
.sense-home .fix-sns__txt { font-size: 12px; letter-spacing: 0; }
.sense-home .fix-sns__txt::after { background: #a4abb0; width: 1px; }
.sense-home .reservation-float { right: 20px; bottom: 12px; }
.sense-home .fix-btn { width: 135px; height: 135px; margin-bottom: 0; background: #e3f254; color: #050d11; }
.sense-home .fix-btn > .text-xs { display: none; }
.sense-home .fix-btn > .text-base { font-size: 14px; font-weight: 400; }
.mainkv-reserve-icon { font-size: 40px; margin-bottom: 4px; }
@media (min-width: 1600px) { .mainkv { min-height: 960px; } }
@media (max-width: 767px) {
  .mainkv { padding-top: 45px; min-height: 0; padding-bottom: 7px; }
  .mainkv__visual { width: 100%; }
  .mainkv__logo { width: 47.84%; top: -3.97%; left: calc(50% + 8px); }
  .mainkv__catch { width: 82%; top: 60.5%; left: 11%; }
  .mainkv__badge { width: 41.6%; left: -7%; bottom: -5.25%; }
  .mainkv__credit { width: 100%; padding: 0 14px; margin-top: 3px; font-size: clamp(8px, 2.667vw, 12px); white-space: nowrap; }
  .sense-home .header { height: 45px; padding: 0 10px; }
  .sense-home .header > .header-nav { padding: 0; }
  .mainkv-header__tagline, .mainkv-header__nav { display: none; }
  .sense-home .header .header-nav > p { margin: 0; }
  .sense-home .header .header-nav > p span { line-height: 1.2; }
  .sense-home .header .header-nav > nav { flex: none; }
  .sense-home .header .header-nav > nav ul { margin: 0; gap: 17px; }
  .sense-home .header .header-nav > nav li { padding: 0; }
  .sense-home .header .header-nav > nav i { color: #a4abb0; font-size: 21px; }
  .sense-home .footer-nav { height: calc(60px + env(safe-area-inset-bottom)); padding-bottom: env(safe-area-inset-bottom); max-width: none; background: #050d11; }
  .sense-home .footer-nav ul li { width: 20%; height: 60px; padding-top: 12px; }
  .sense-home .footer-nav ul li.toggle { padding-top: 13px; }
  .sense-home .footer-nav ul li.reserve { background: #e3f254; }
  .sense-home .footer-nav i { font-size: 24px; }
  .sense-home #toggle-sidebar i { font-size: 32px; color: #e3f254; }
  .sense-home .footer-nav span { line-height: 1.2; margin-top: 4px; }
}
