/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Sep 19 2026 | 01:38:33 */
/* =========================================================
   SEASIDE GARDEN
   TOP PAGE CSS - INTEGRATED SAFE v1
   Generated from the confirmed PC/SP state through v41.
   Conservative consolidation: removes only confirmed obsolete
   or duplicate blocks while preserving the current cascade.
   ========================================================= */

/* =========================================================
   SEASIDE GARDEN
   Common Styles v12
   ========================================================= */


/* =========================================================
   Design Tokens
   ========================================================= */

:root {
  --sg-navy: #001634;
  --sg-navy-light: #173956;
  --sg-text: #182434;
  --sg-white: #ffffff;
  --sg-ivory: #f9f5ef;
  --sg-accent: #e83e78;

  --sg-content-width: 1200px;

  --sg-radius-sm: 6px;
  --sg-radius-md: 14px;
  --sg-radius-lg: 20px;
  --sg-radius-pill: 999px;

  --sg-transition: 0.25s ease;
}


/* =========================================================
   Base
   ========================================================= */

html,
body {
  overflow-x: clip;
}

body {
  color: var(--sg-text);
  background: var(--sg-ivory);
}

img {
  max-width: 100%;
  height: auto;
}


/* =========================================================
   TOP Page Layout
   ========================================================= */

.home #content,
.home .l-content,
.home .l-content.l-container,
.home .l-mainContent,
.home .l-mainContent__inner,
.home .post_content {
  width: 100% !important;
  max-width: none !important;

  margin-left: 0 !important;
  margin-right: 0 !important;

  padding-left: 0 !important;
  padding-right: 0 !important;
}

.home .l-content {
  margin-top: 0 !important;
  margin-bottom: 0 !important;

  padding-top: 0 !important;
}


/* =========================================================
   Header
   ========================================================= */

.l-header {
  background: var(--sg-navy);
  color: var(--sg-white);
}


/* =========================================================
   Global Navigation
   ========================================================= */

.c-gnav > li > a {
  color: var(--sg-white);

  transition:
    opacity var(--sg-transition),
    background-color var(--sg-transition),
    color var(--sg-transition),
    border-color var(--sg-transition);
}

.c-gnav > li > a:hover {
  opacity: 0.78;
}


/* =========================================================
   Header CTA
   ========================================================= */

.c-gnav > .sg-nav-route,
.c-gnav > .sg-nav-reserve {
  display: flex;
  align-items: center;
  padding: 0 5px;
}

.c-gnav > .sg-nav-route > a,
.c-gnav > .sg-nav-reserve > a {
  width: auto;

  height: 44px;
  min-height: 44px;

  padding: 0 22px;

  display: flex;
  align-items: center;
  justify-content: center;

  line-height: 1;

  border-radius: var(--sg-radius-sm);

  white-space: nowrap;
}


/* ROUTE */

.c-gnav > .sg-nav-route > a {
  border: 1px solid rgba(255, 255, 255, 0.85);

  background: transparent;

  color: var(--sg-white);
}

.c-gnav > .sg-nav-route > a:hover {
  background: var(--sg-white);

  color: var(--sg-navy);

  opacity: 1;
}


/* RESERVATION */

.c-gnav > .sg-nav-reserve > a {
  border: 1px solid var(--sg-accent);

  background: var(--sg-accent);

  color: var(--sg-white);
}

.c-gnav > .sg-nav-reserve > a:hover {
  opacity: 0.86;
}

.c-gnav > .sg-nav-route > a::after,
.c-gnav > .sg-nav-reserve > a::after {
  display: none;
}


/* =========================================================
   Dropdown
   ========================================================= */

.c-gnav .sub-menu {
  background: var(--sg-navy);
}

.c-gnav .sub-menu a {
  color: var(--sg-white);
}

.c-gnav .sub-menu a:hover {
  background: rgba(255, 255, 255, 0.08);
}


/* =========================================================
   TOP HERO
   ========================================================= */

.home .post_content > .sg-home-hero,
.sg-home-hero {
  position: relative;

  width: 100vw !important;
  max-width: 100vw !important;

  margin-top: 0 !important;
  margin-bottom: 0 !important;

  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;

  min-height: clamp(540px, 47vw, 720px);

  display: flex;
  align-items: center;

  padding:
    clamp(72px, 8vw, 120px)
    clamp(24px, 6vw, 80px);

  box-sizing: border-box;

  overflow: hidden;
}


/* HERO Background */

.sg-home-hero img.wp-block-cover__image-background {
  width: 100%;
  height: 100%;

  object-fit: cover;
  object-position: center center;
}


/* HERO Overlay */

.sg-home-hero .wp-block-cover__background {
  background: var(--sg-navy) !important;
  opacity: 0.48 !important;
}


/* HERO Inner */

.sg-home-hero .wp-block-cover__inner-container {
  position: relative;
  z-index: 2;

  width: min(
    calc(100% - 48px),
    var(--sg-content-width)
  );

  margin: 0 auto;

  color: var(--sg-white);
}


/* =========================================================
   HERO Content
   ========================================================= */

.sg-home-hero__content {
  width: min(900px, 100%);

  margin: 0;
  padding: 0;

  background: transparent !important;

  color: var(--sg-white);
}


/* Eyebrow */

.sg-home-hero__eyebrow {
  margin: 0 0 14px;

  color: var(--sg-white);

  font-size: clamp(15px, 1.2vw, 18px);
  font-weight: 600;
  line-height: 1.6;

  letter-spacing: 0.12em;

  text-shadow:
    0 2px 14px
    rgba(0, 0, 0, 0.36);
}


/* H1 */

.sg-home-hero__title {
  margin: 0 0 26px !important;
  padding: 0 !important;

  border: 0 !important;

  background: transparent !important;

  box-shadow: none !important;

  color: var(--sg-white) !important;

  font-size:
    clamp(
      34px,
      3.2vw,
      52px
    ) !important;

  font-weight: 700;

  line-height: 1.15;

  letter-spacing: 0.015em;

  text-shadow:
    0 3px 18px
    rgba(0, 0, 0, 0.4);
}

.sg-home-hero__title::before,
.sg-home-hero__title::after {
  display: none !important;
}


/* Main Copy */

.sg-home-hero__lead {
  max-width: 760px;

  margin: 0 0 22px;

  color: var(--sg-white);

  font-size:
    clamp(
      24px,
      2.25vw,
      36px
    );

  font-weight: 600;

  line-height: 1.55;

  letter-spacing: 0.025em;

  text-shadow:
    0 2px 16px
    rgba(0, 0, 0, 0.4);
}


/* Description */

.sg-home-hero__text {
  max-width: 680px;

  margin: 0;

  color:
    rgba(
      255,
      255,
      255,
      0.97
    );

  font-size:
    clamp(
      15px,
      1.25vw,
      18px
    );

  font-weight: 500;

  line-height: 2;

  letter-spacing: 0.015em;

  text-shadow:
    0 2px 12px
    rgba(0, 0, 0, 0.36);
}

.sg-home-hero__content p:last-child {
  margin-bottom: 0;
}


/* =========================================================
   QUICK NAV
   ========================================================= */

.sg-home-quicknav {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;

  padding:
    clamp(36px, 4vw, 50px)
    clamp(24px, 4vw, 68px);

  background: var(--sg-ivory);
}


/* SWELL Rich Columns */

.sg-home-quicknav .swell-block-columns {
  width: min(
    100%,
    var(--sg-content-width)
  ) !important;

  max-width: var(--sg-content-width) !important;

  margin: 0 auto !important;
}

.sg-home-quicknav .swell-block-columns__inner {
  display: flex !important;

  flex-wrap: nowrap;

  align-items: stretch;

  gap:
    clamp(
      26px,
      2.5vw,
      40px
    ) !important;
}


/* Each Column */

.sg-home-quicknav
.swell-block-column.sg-home-quicknav__item {
  min-width: 0;

  height: auto !important;
  min-height: 0 !important;

  display: grid !important;

  grid-template-rows:
    auto
    auto;

  align-self: stretch;

  padding: 0 !important;

  background: transparent;
}


/* H3 */

.sg-home-quicknav__item h3 {
  position: relative;

  margin:
    0
    0
    24px !important;

  padding:
    0
    0
    16px !important;

  border: 0 !important;

  background: transparent !important;

  color: var(--sg-navy) !important;

  font-size:
    clamp(
      19px,
      1.55vw,
      24px
    );

  font-weight: 700;

  line-height: 1.4;

  letter-spacing: 0.02em;
}

.sg-home-quicknav__item h3::before {
  content: "";

  position: absolute;

  left: 0;
  bottom: 0;

  width: 58px;
  height: 3px;

  background: var(--sg-navy);
}

.sg-home-quicknav__item h3::after {
  content: "";

  position: absolute;

  left: 58px;
  right: 0;
  bottom: 1px;

  height: 1px;

  background:
    rgba(
      0,
      22,
      52,
      0.14
    );
}


/* Quick Nav Buttons */

.sg-home-quicknav__item > .swell-block-button {
  align-self: end;

  width: 100% !important;

  margin: 0 !important;
}

.sg-home-quicknav__item
.swell-block-button__link {
  width: 100% !important;

  min-height: 50px;

  display: flex !important;

  align-items: center;
  justify-content: center;

  padding:
    11px
    16px !important;

  border:
    1px solid
    var(--sg-navy) !important;

  border-radius:
    var(--sg-radius-pill) !important;

  background:
    var(--sg-navy) !important;

  color:
    var(--sg-white) !important;

  box-shadow:
    0
    4px
    10px
    rgba(
      0,
      22,
      52,
      0.12
    );

  font-size: 14px;

  font-weight: 700;

  line-height: 1.4;

  text-align: center;

  text-decoration: none;

  transition:
    background-color var(--sg-transition),
    color var(--sg-transition),
    border-color var(--sg-transition),
    transform var(--sg-transition);
}


/* Seat */

.sg-home-quicknav__seat
.swell-block-button__link {
  border-color:
    var(--sg-accent) !important;

  background:
    var(--sg-accent) !important;
}


/* BBQ */

.sg-home-quicknav__bbq
.swell-block-button__link {
  border-color:
    var(--sg-accent) !important;

  background:
    var(--sg-accent) !important;
}


/* Route */

.sg-home-quicknav__route
.swell-block-button__link {
  border-color:
    var(--sg-navy) !important;

  background:
    transparent !important;

  color:
    var(--sg-navy) !important;

  box-shadow: none;
}


/* =========================================================
   3 USAGE STYLES
   ========================================================= */

.sg-home-styles {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;

  padding:
    clamp(64px, 7vw, 100px)
    clamp(24px, 4vw, 68px);

  background: var(--sg-white);
}


/* =========================================================
   3 Styles : Section Title
   ========================================================= */

.home .post_content
.sg-home-styles
> h2.sg-home-styles__title.wp-block-heading,
.home .post_content
h2.sg-home-styles__title,
.sg-home-styles
> h2.sg-home-styles__title {
  position: relative !important;

  display: block !important;

  width:
    min(
      100%,
      var(--sg-content-width)
    ) !important;

  max-width: var(--sg-content-width) !important;

  margin:
    0
    auto
    18px !important;

  padding:
    0
    0
    16px !important;

  border: 0 !important;

  border-radius: 0 !important;

  background: transparent !important;

  background-color: transparent !important;

  background-image: none !important;

  box-shadow: none !important;

  color: var(--sg-navy) !important;

  font-size:
    clamp(
      27px,
      2.5vw,
      38px
    ) !important;

  font-weight: 700 !important;

  line-height: 1.4 !important;

  text-align: left !important;

  text-shadow: none !important;

  letter-spacing: 0.02em !important;
}


/* Section Title Accent */

.home .post_content
.sg-home-styles
> h2.sg-home-styles__title::before,
.home .post_content
h2.sg-home-styles__title::before {
  content: "";

  position: absolute;

  display: block !important;

  left: 0;
  bottom: 0;

  width: 82px;
  height: 3px;

  background: var(--sg-navy) !important;
}

.home .post_content
.sg-home-styles
> h2.sg-home-styles__title::after,
.home .post_content
h2.sg-home-styles__title::after {
  content: "";

  position: absolute;

  display: block !important;

  left: 82px;
  right: 0;
  bottom: 1px;

  width: auto;
  height: 1px;

  background:
    rgba(
      0,
      22,
      52,
      0.14
    ) !important;
}


/* Intro */

.sg-home-styles__intro {
  width:
    min(
      100%,
      var(--sg-content-width)
    );

  margin:
    0
    auto
    clamp(34px, 4vw, 50px) !important;

  color: var(--sg-text);

  font-size:
    clamp(
      15px,
      1.25vw,
      17px
    );

  line-height: 1.9;
}


/* =========================================================
   3 Styles : Rich Columns
   ========================================================= */

.sg-home-styles
.swell-block-columns {
  display: block !important;

  width:
    min(
      100%,
      var(--sg-content-width)
    ) !important;

  max-width: var(--sg-content-width) !important;

  margin:
    0
    auto !important;

  padding: 0 !important;
}

.sg-home-styles
.swell-block-columns__inner {
  display: grid !important;

  width: 100% !important;

  max-width: none !important;

  grid-template-columns:
    repeat(
      3,
      minmax(0, 1fr)
    ) !important;

  gap:
    clamp(
      24px,
      2.7vw,
      38px
    ) !important;

  align-items: stretch !important;

  margin: 0 !important;

  padding: 0 !important;
}


/* Reset SWELL column-width rules */

.sg-home-styles
.swell-block-columns__inner
> .swell-block-column.sg-home-style-card {
  width: 100% !important;

  min-width: 0 !important;

  max-width: none !important;

  flex: none !important;

  flex-basis: auto !important;

  box-sizing: border-box !important;

  align-self: stretch !important;
}


/* =========================================================
   3 Styles : Card
   Flex layout allows optional text blocks
   ========================================================= */

.sg-home-style-card {
  display: flex !important;

  flex-direction: column !important;

  min-width: 0;

  min-height: 100%;

  overflow: hidden;

  margin: 0 !important;

  padding:
    0
    0
    28px !important;

  border:
    1px solid
    rgba(
      0,
      22,
      52,
      0.09
    );

  border-radius:
    var(--sg-radius-md);

  background: var(--sg-white);

  box-shadow:
    0
    12px
    32px
    rgba(
      0,
      22,
      52,
      0.07
    );
}


/* =========================================================
   3 Styles : Image
   ========================================================= */

.sg-home-style-card__image {
  display: block;

  flex: 0 0 auto;

  width: 100% !important;

  max-width: none !important;

  aspect-ratio: 4 / 3;

  margin:
    0
    0
    22px !important;

  overflow: hidden;

  background: #e9e5df;
}

.sg-home-style-card__image img {
  display: block;

  width: 100% !important;

  height: 100% !important;

  max-width: none !important;

  object-fit: cover;

  transition:
    transform
    0.45s ease;
}

.sg-home-style-card:hover
.sg-home-style-card__image img {
  transform: scale(1.025);
}


/* =========================================================
   3 Styles : Eyebrow
   ========================================================= */

.sg-home-style-card__eyebrow {
  flex: 0 0 auto;

  margin:
    0
    24px
    10px !important;

  color: #657080;

  font-size: 13px;

  font-weight: 600;

  line-height: 1.7;

  letter-spacing: 0.04em;
}


/* =========================================================
   3 Styles : H3
   ========================================================= */

.home .post_content
.sg-home-style-card
h3.sg-home-style-card__title {
  position: relative;

  flex: 0 0 auto;

  margin:
    0
    24px
    18px !important;

  padding:
    0
    0
    13px !important;

  border: 0 !important;

  background: transparent !important;

  color: var(--sg-navy) !important;

  font-size:
    clamp(
      21px,
      1.8vw,
      27px
    );

  font-weight: 700;

  line-height: 1.4;

  word-break: normal;

  overflow-wrap: anywhere;
}

.home .post_content
.sg-home-style-card
h3.sg-home-style-card__title::before {
  content: "";

  position: absolute;

  display: block !important;

  left: 0;
  bottom: 0;

  width: 56px;
  height: 2px;

  background: var(--sg-navy);
}

.home .post_content
.sg-home-style-card
h3.sg-home-style-card__title::after {
  display: none !important;
}


/* =========================================================
   3 Styles : Text
   ========================================================= */

.sg-home-style-card__text {
  flex: 0 0 auto;

  margin:
    0
    24px
    26px !important;

  color: var(--sg-text);

  font-size: 15px;

  line-height: 1.9;

  word-break: normal;
}


/* =========================================================
   3 Styles : Buttons
   Button always stays at bottom
   ========================================================= */

.sg-home-style-card
> .swell-block-button {
  flex: 0 0 auto;

  width:
    calc(100% - 48px) !important;

  max-width: none !important;

  margin:
    auto
    24px
    0 !important;
}

.sg-home-style-card
.swell-block-button__link {
  width: 100% !important;

  min-height: 50px;

  display: flex !important;

  align-items: center;

  justify-content: center;

  padding:
    11px
    18px !important;

  border:
    1px solid
    var(--sg-navy) !important;

  border-radius:
    var(--sg-radius-pill) !important;

  background:
    var(--sg-navy) !important;

  color:
    var(--sg-white) !important;

  box-shadow: none;

  font-size: 14px;

  font-weight: 700;

  line-height: 1.45;

  text-align: center;

  text-decoration: none;

  white-space: normal;

  transition:
    transform var(--sg-transition),
    background-color var(--sg-transition),
    color var(--sg-transition),
    border-color var(--sg-transition);
}

.sg-home-style-card
.swell-block-button__link:hover {
  transform: translateY(-2px);

  background: var(--sg-white) !important;

  color: var(--sg-navy) !important;
}


/* Seat / BBQ */

.sg-home-style-card--seat
.swell-block-button__link,
.sg-home-style-card--bbq
.swell-block-button__link {
  border-color:
    var(--sg-accent) !important;

  background:
    var(--sg-accent) !important;

  color:
    var(--sg-white) !important;
}

.sg-home-style-card--seat
.swell-block-button__link:hover,
.sg-home-style-card--bbq
.swell-block-button__link:hover {
  background:
    var(--sg-white) !important;

  color:
    var(--sg-accent) !important;
}


/* =========================================================
   BUSINESS STATUS
   ========================================================= */

.sg-home-status {
  width: 100% !important;

  max-width: none !important;

  margin: 0 !important;

  padding:
    clamp(
      58px,
      6vw,
      86px
    )
    clamp(
      24px,
      4vw,
      68px
    );

  background: var(--sg-white);
}


/* =========================================================
   Business Status Title
   ========================================================= */

.home .post_content
.sg-home-status
> h2.sg-home-status__title.wp-block-heading,
.home .post_content
h2.sg-home-status__title,
.sg-home-status
> h2.sg-home-status__title {
  position: relative !important;

  display: block !important;

  width:
    min(
      100%,
      var(--sg-content-width)
    ) !important;

  max-width: var(--sg-content-width) !important;

  margin:
    0
    auto
    32px !important;

  padding:
    0
    0
    16px !important;

  border: 0 !important;

  border-radius: 0 !important;

  background: transparent !important;

  background-color: transparent !important;

  background-image: none !important;

  box-shadow: none !important;

  color: var(--sg-navy) !important;

  font-size:
    clamp(
      25px,
      2.4vw,
      34px
    ) !important;

  font-weight: 700 !important;

  line-height: 1.4 !important;

  text-align: left !important;

  text-shadow: none !important;

  letter-spacing: 0.02em !important;
}


/* Status Title Lines */

.home .post_content
.sg-home-status
> h2.sg-home-status__title::before,
.home .post_content
h2.sg-home-status__title::before {
  content: "";

  position: absolute;

  display: block !important;

  left: 0;
  bottom: 0;

  width: 80px;

  height: 3px;

  background: var(--sg-navy) !important;
}

.home .post_content
.sg-home-status
> h2.sg-home-status__title::after,
.home .post_content
h2.sg-home-status__title::after {
  content: "";

  position: absolute;

  display: block !important;

  left: 80px;

  right: 0;

  bottom: 1px;

  height: 1px;

  background:
    rgba(
      0,
      22,
      52,
      0.14
    ) !important;
}


/* =========================================================
   Business Status Card
   ========================================================= */

.sg-home-status
.luxbc-status-card {
  width:
    min(
      100%,
      var(--sg-content-width)
    );

  margin:
    0
    auto;

  padding:
    clamp(
      28px,
      4vw,
      44px
    );

  border:
    1px solid
    rgba(
      255,
      255,
      255,
      0.1
    );

  border-radius:
    var(--sg-radius-lg);

  background:
    linear-gradient(
      135deg,
      var(--sg-navy),
      var(--sg-navy-light)
    );

  color: var(--sg-white);

  box-shadow:
    0
    18px
    40px
    rgba(
      0,
      22,
      52,
      0.13
    );
}


/* Badge */

.sg-home-status
.luxbc-status-card__badge {
  margin-bottom: 14px;

  border-color:
    rgba(
      255,
      255,
      255,
      0.2
    );

  background:
    rgba(
      255,
      255,
      255,
      0.08
    );
}


/* Date */

.sg-home-status
.luxbc-status-card__date {
  margin-bottom: 10px;

  color:
    rgba(
      255,
      255,
      255,
      0.75
    );

  font-size: 13px;
}


/* Dynamic Title */

.sg-home-status
.luxbc-status-card h2 {
  margin:
    0
    0
    14px !important;

  padding:
    0 !important;

  border: 0 !important;

  background: transparent !important;

  color: var(--sg-white) !important;

  box-shadow: none !important;

  font-size:
    clamp(
      25px,
      3vw,
      36px
    ) !important;

  line-height: 1.4 !important;
}

.sg-home-status
.luxbc-status-card h2::before,
.sg-home-status
.luxbc-status-card h2::after {
  display: none !important;
}


/* Status Text */

.sg-home-status
.luxbc-status-card p {
  color:
    rgba(
      255,
      255,
      255,
      0.88
    );

  font-size:
    clamp(
      14px,
      1.2vw,
      16px
    );

  line-height: 1.75;
}


/* Next Opening */

.sg-home-status
.luxbc-status-card__next {
  margin-top: 8px;

  color: var(--sg-white);

  font-weight: 700;
}


/* Actions */

.sg-home-status
.luxbc-actions {
  gap: 12px;

  margin-top: 24px;
}

.sg-home-status
.luxbc-button {
  min-height: 44px;

  padding:
    10px
    22px;

  border-radius: var(--sg-radius-pill);

  font-size: 14px;
}

.sg-home-status
.luxbc-button.is-primary {
  background: var(--sg-accent);

  color: var(--sg-white);
}

.sg-home-status
.luxbc-button.is-secondary {
  border-color:
    rgba(
      255,
      255,
      255,
      0.45
    );

  background:
    rgba(
      255,
      255,
      255,
      0.08
    );

  color: var(--sg-white);
}

.sg-home-status
.luxbc-button.is-text {
  color: var(--sg-white);
}

.sg-home-status
.luxbc-phone-hours {
  color:
    rgba(
      255,
      255,
      255,
      0.7
    );
}


/* =========================================================
   Tablet
   ========================================================= */

@media (max-width: 959px) {

  .sg-home-hero {
    min-height:
      clamp(
        520px,
        70vw,
        650px
      );

    padding:
      70px
      32px;
  }

  .sg-home-hero
  .wp-block-cover__inner-container {
    width: 100%;
  }


  /* Quick Nav */

  .sg-home-quicknav {
    padding:
      40px
      30px;
  }

  .sg-home-quicknav
  .swell-block-columns__inner {
    flex-wrap:
      wrap !important;

    gap:
      34px
      28px !important;
  }

  .sg-home-quicknav
  .swell-block-column.sg-home-quicknav__item {
    flex:
      0
      0
      calc(50% - 14px) !important;

    width:
      calc(50% - 14px) !important;
  }


  /* 3 Styles : 2 columns */

  .sg-home-styles
  .swell-block-columns__inner {
    grid-template-columns:
      repeat(
        2,
        minmax(0, 1fr)
      ) !important;
  }

  .sg-home-styles
  .swell-block-columns__inner
  > .swell-block-column.sg-home-style-card {
    width: 100% !important;

    max-width: none !important;
  }

  .sg-home-style-card--bbq {
    grid-column:
      1 / -1;
  }
}


/* =========================================================
   Mobile
   ========================================================= */

@media (max-width: 599px) {

  /* HERO */

  .sg-home-hero {
    min-height: 570px;

    align-items: flex-end;

    padding:
      68px
      20px
      52px;
  }

  .sg-home-hero
  .wp-block-cover__background {
    opacity:
      0.56 !important;
  }

  .sg-home-hero
  .wp-block-cover__inner-container {
    width: 100%;
  }

  .sg-home-hero__content {
    width: 100%;
  }

  .sg-home-hero__eyebrow {
    margin-bottom: 10px;

    font-size: 14px;
  }

  .sg-home-hero__title {
    margin-bottom:
      20px !important;

    font-size:
      clamp(
        29px,
        8vw,
        40px
      ) !important;
  }

  .sg-home-hero__lead {
    margin-bottom: 18px;

    font-size:
      clamp(
        22px,
        6.3vw,
        29px
      );
  }

  .sg-home-hero__text {
    font-size: 15px;

    line-height: 1.9;
  }


  /* Quick Nav */

  .sg-home-quicknav {
    padding:
      30px
      20px
      36px;
  }

  .sg-home-quicknav
  .swell-block-columns__inner {
    display: block !important;
  }

  .sg-home-quicknav
  .swell-block-column.sg-home-quicknav__item {
    width: 100% !important;

    margin:
      0
      0
      28px !important;

    padding:
      0
      0
      28px !important;

    display: block !important;

    border-bottom:
      1px solid
      rgba(
        0,
        22,
        52,
        0.12
      );
  }

  .sg-home-quicknav
  .swell-block-column.sg-home-quicknav__item:last-child {
    margin-bottom:
      0 !important;

    padding-bottom:
      0 !important;

    border-bottom: 0;
  }


  /* 3 Styles */

  .sg-home-styles {
    padding:
      52px
      20px
      60px;
  }

  .home .post_content
  .sg-home-styles
  > h2.sg-home-styles__title {
    font-size:
      26px !important;

    margin-bottom:
      16px !important;
  }

  .sg-home-styles__intro {
    margin-bottom:
      30px !important;
  }

  .sg-home-styles
  .swell-block-columns__inner {
    grid-template-columns:
      minmax(0, 1fr) !important;

    gap:
      26px !important;
  }

  .sg-home-styles
  .swell-block-columns__inner
  > .swell-block-column.sg-home-style-card {
    width: 100% !important;

    max-width: none !important;

    grid-column:
      auto !important;
  }

  .sg-home-style-card__image {
    aspect-ratio:
      16 / 10;
  }

  .sg-home-style-card__eyebrow {
    margin-left:
      20px !important;

    margin-right:
      20px !important;
  }

  .home .post_content
  .sg-home-style-card
  h3.sg-home-style-card__title {
    margin-left:
      20px !important;

    margin-right:
      20px !important;
  }

  .sg-home-style-card__text {
    margin-left:
      20px !important;

    margin-right:
      20px !important;
  }

  .sg-home-style-card
  > .swell-block-button {
    width:
      calc(100% - 40px) !important;

    margin-left:
      20px !important;

    margin-right:
      20px !important;
  }


  /* Business Status */

  .sg-home-status {
    padding:
      44px
      20px
      52px;
  }

  .home .post_content
  .sg-home-status
  > h2.sg-home-status__title {
    margin-bottom:
      24px !important;

    font-size:
      25px !important;
  }

  .sg-home-status
  .luxbc-status-card {
    padding:
      26px
      22px;

    border-radius:
      16px;
  }

  .sg-home-status
  .luxbc-status-card h2 {
    font-size:
      25px !important;
  }

  .sg-home-status
  .luxbc-actions {
    align-items: stretch;

    flex-direction: column;
  }

  .sg-home-status
  .luxbc-button {
    width: 100%;

    box-sizing: border-box;
  }

  .sg-home-status
  .luxbc-phone-action {
    width: 100%;
  }
}


/* =========================================================
   Accessibility
   ========================================================= */

a:focus-visible,
button:focus-visible {
  outline-offset: 3px;
}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v14
   TOP upper section refinement
   ========================================================= */


/* =========================================================
   MASTER DESIGN TOKENS
   ========================================================= */

:root {
  --sg-midnight: #071B3A;
  --sg-pink: #D62F6B;
  --sg-pink-dark: #C6205A;
  --sg-bg: #F7F1E8;
  --sg-text: #18243B;
  --sg-muted: #5F6673;
  --sg-gold: #9B7A44;
  --sg-white: #FFFFFF;

  /* 既存CSSとの互換 */
  --sg-navy: var(--sg-midnight);
  --sg-navy-light: #173956;
  --sg-accent: var(--sg-pink);
  --sg-ivory: var(--sg-bg);

  --sg-content-width: 1180px;
}


/* =========================================================
   共通セクション英字ラベル
   ========================================================= */

.sg-home-status > .sg-section-eyebrow,
.sg-home-styles > .sg-section-eyebrow,
.sg-home-scenes > .sg-section-eyebrow {
  display: block;

  width: min(100%, var(--sg-content-width));

  margin:
    0
    auto
    8px !important;

  padding: 0 !important;

  color: var(--sg-gold) !important;

  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;

  letter-spacing: 0.16em;

  text-transform: uppercase;
}


/* =========================================================
   共通セクションH2
   英字ラベル＋日本語見出し＋短いピンク線
   ========================================================= */

.home .post_content
.sg-home-status
> h2.sg-home-status__title,

.home .post_content
.sg-home-styles
> h2.sg-home-styles__title,

.home .post_content
.sg-home-scenes
> h2.sg-home-scenes__title {
  position: relative !important;

  width:
    min(
      100%,
      var(--sg-content-width)
    ) !important;

  max-width:
    var(--sg-content-width) !important;

  margin:
    0
    auto
    34px !important;

  padding:
    0
    0
    17px !important;

  border: 0 !important;

  background:
    transparent !important;

  box-shadow:
    none !important;

  color:
    var(--sg-midnight) !important;

  font-size:
    clamp(
      27px,
      2.25vw,
      36px
    ) !important;

  font-weight:
    700 !important;

  line-height:
    1.35 !important;

  letter-spacing:
    0.015em !important;
}


/* ピンクの短線 */

.home .post_content
.sg-home-status
> h2.sg-home-status__title::before,

.home .post_content
.sg-home-styles
> h2.sg-home-styles__title::before,

.home .post_content
.sg-home-scenes
> h2.sg-home-scenes__title::before {
  content: "" !important;

  position: absolute !important;

  display: block !important;

  left: 0 !important;
  bottom: 0 !important;

  width: 56px !important;
  height: 3px !important;

  background:
    var(--sg-pink) !important;
}


/* v12/v13の長い水平線を解除 */

.home .post_content
.sg-home-status
> h2.sg-home-status__title::after,

.home .post_content
.sg-home-styles
> h2.sg-home-styles__title::after,

.home .post_content
.sg-home-scenes
> h2.sg-home-scenes__title::after {
  display:
    none !important;
}


/* =========================================================
   HERO
   ========================================================= */

.home .post_content > .sg-home-hero,
.sg-home-hero {
  min-height:
    clamp(
      550px,
      43vw,
      660px
    );

  padding:
    clamp(72px, 7vw, 110px)
    clamp(24px, 5vw, 64px);
}


.sg-home-hero
.wp-block-cover__inner-container {
  width:
    min(
      calc(100% - 40px),
      var(--sg-content-width)
    );
}


.sg-home-hero__content {
  width:
    min(
      780px,
      100%
    );
}


.sg-home-hero__eyebrow {
  margin-bottom:
    16px;

  font-size:
    clamp(
      14px,
      1vw,
      17px
    );

  letter-spacing:
    0.14em;
}


.sg-home-hero__title {
  margin-bottom:
    28px !important;

  font-size:
    clamp(
      38px,
      3.7vw,
      58px
    ) !important;

  line-height:
    1.1 !important;
}


.sg-home-hero__lead {
  margin-bottom:
    24px;

  font-size:
    clamp(
      25px,
      2.25vw,
      35px
    );

  line-height:
    1.55;
}


.sg-home-hero__text {
  max-width:
    650px;

  font-size:
    clamp(
      14px,
      1.1vw,
      17px
    );

  line-height:
    1.95;
}


/* =========================================================
   QUICK NAV
   ========================================================= */

.sg-home-quicknav {
  padding:
    clamp(30px, 3.5vw, 42px)
    clamp(24px, 4vw, 56px);

  background:
    var(--sg-bg);
}


.sg-home-quicknav
.swell-block-columns {
  max-width:
    var(--sg-content-width) !important;
}


.sg-home-quicknav
.swell-block-columns__inner {
  gap:
    clamp(
      24px,
      2.4vw,
      34px
    ) !important;
}


.sg-home-quicknav__item h3 {
  margin-bottom:
    18px !important;

  padding-bottom:
    13px !important;

  font-size:
    clamp(
      18px,
      1.4vw,
      22px
    );

  line-height:
    1.35;
}


/* クイック導線もピンク短線へ */

.sg-home-quicknav__item h3::before {
  width:
    44px !important;

  height:
    2px !important;

  background:
    var(--sg-pink) !important;
}


.sg-home-quicknav__item h3::after {
  display:
    none !important;
}


.sg-home-quicknav__item
.swell-block-button__link {
  min-height:
    46px;

  padding:
    10px
    15px !important;

  font-size:
    13px;

  box-shadow:
    0
    4px
    12px
    rgba(7, 27, 58, 0.10);
}


/* =========================================================
   営業状況
   ========================================================= */

.sg-home-status {
  padding:
    clamp(58px, 5.5vw, 78px)
    clamp(24px, 4vw, 56px)
    clamp(64px, 6vw, 86px);

  background:
    var(--sg-white);
}


.sg-home-status
.luxbc-status-card {
  max-width:
    var(--sg-content-width);

  padding:
    clamp(
      30px,
      3.5vw,
      40px
    );

  border-radius:
    16px;

  background:
    linear-gradient(
      135deg,
      var(--sg-midnight),
      #173956
    );

  box-shadow:
    0
    14px
    34px
    rgba(
      7,
      27,
      58,
      0.10
    );
}


.sg-home-status
.luxbc-status-card h2 {
  font-size:
    clamp(
      25px,
      2.6vw,
      34px
    ) !important;
}


/* =========================================================
   3つのご利用スタイル
   ========================================================= */

.sg-home-styles {
  padding:
    clamp(60px, 6vw, 84px)
    clamp(24px, 4vw, 56px)
    clamp(72px, 7vw, 96px);

  background:
    var(--sg-white);
}


.sg-home-styles__intro {
  max-width:
    var(--sg-content-width);

  margin-bottom:
    clamp(
      32px,
      3.8vw,
      46px
    ) !important;

  color:
    var(--sg-muted);
}


.sg-home-styles
.swell-block-columns__inner {
  gap:
    clamp(
      22px,
      2.5vw,
      30px
    ) !important;
}


.sg-home-style-card {
  border-radius:
    16px;

  border:
    1px solid
    rgba(
      7,
      27,
      58,
      0.08
    );

  box-shadow:
    0
    10px
    28px
    rgba(
      7,
      27,
      58,
      0.07
    );
}


/* 写真をカンプ寄りの横長へ */

.sg-home-style-card__image {
  aspect-ratio:
    16 / 10;

  margin-bottom:
    22px !important;
}


/* 小ラベル */

.sg-home-style-card__eyebrow {
  color:
    var(--sg-muted);

  font-size:
    12px;

  letter-spacing:
    0.035em;
}


/* カード見出し */

.home .post_content
.sg-home-style-card
h3.sg-home-style-card__title {
  color:
    var(--sg-midnight) !important;

  font-size:
    clamp(
      20px,
      1.65vw,
      25px
    );
}


.home .post_content
.sg-home-style-card
h3.sg-home-style-card__title::before {
  background:
    var(--sg-pink) !important;
}


/* 本文 */

.sg-home-style-card__text {
  color:
    var(--sg-text);

  font-size:
    14px;

  line-height:
    1.85;
}


/* CTA */

.sg-home-style-card
.swell-block-button__link {
  min-height:
    46px;

  font-size:
    13px;
}


/* =========================================================
   SEASIDE GARDENの魅力
   ========================================================= */

.sg-home-scenes {
  padding:
    clamp(60px, 6vw, 82px)
    clamp(24px, 4vw, 56px)
    clamp(68px, 7vw, 92px);

  background:
    var(--sg-bg);
}


/* 仮アイコンを少し軽く */

.sg-home-scene-card__image {
  width:
    min(
      100%,
      170px
    ) !important;

  max-width:
    170px !important;

  margin-bottom:
    17px !important;

  border-radius:
    16px;

  box-shadow:
    0
    8px
    22px
    rgba(
      7,
      27,
      58,
      0.06
    );
}


.home .post_content
.sg-home-scene-card
h3.sg-home-scene-card__title {
  color:
    var(--sg-midnight) !important;

  font-size:
    clamp(
      16px,
      1.25vw,
      19px
    );
}


.home .post_content
.sg-home-scene-card
h3.sg-home-scene-card__title::before {
  width:
    34px;

  background:
    var(--sg-pink);
}


/* =========================================================
   PCでセクション間のリズムを統一
   ========================================================= */

.sg-home-status,
.sg-home-styles,
.sg-home-scenes {
  box-sizing:
    border-box;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 959px) {

  .sg-home-hero {
    min-height:
      560px;

    padding:
      68px
      30px;
  }


  .sg-home-hero__title {
    font-size:
      clamp(
        34px,
        5vw,
        46px
      ) !important;
  }


  .sg-home-scene-card__image {
    max-width:
      150px !important;
  }
}


/* =========================================================
   MOBILE
   最新ワイヤー：3利用方法＋独立ルート
   ========================================================= */

@media (max-width: 599px) {

  /* HERO */

  .sg-home-hero {
    min-height:
      560px;

    padding:
      62px
      18px
      44px;
  }


  .sg-home-hero__title {
    font-size:
      clamp(
        28px,
        8vw,
        36px
      ) !important;
  }


  .sg-home-hero__lead {
    font-size:
      clamp(
        21px,
        6vw,
        27px
      );
  }


  /* 英字ラベル */

  .sg-home-status > .sg-section-eyebrow,
  .sg-home-styles > .sg-section-eyebrow,
  .sg-home-scenes > .sg-section-eyebrow {
    margin-bottom:
      6px !important;

    font-size:
      10px;

    letter-spacing:
      0.14em;
  }


  /* 共通H2 */

  .home .post_content
  .sg-home-status
  > h2.sg-home-status__title,

  .home .post_content
  .sg-home-styles
  > h2.sg-home-styles__title,

  .home .post_content
  .sg-home-scenes
  > h2.sg-home-scenes__title {
    margin-bottom:
      28px !important;

    padding-bottom:
      13px !important;

    font-size:
      24px !important;
  }


  /* -------------------------
     QUICK NAV
     3列＋ルート1列
     ------------------------- */

  .sg-home-quicknav {
    padding:
      26px
      16px
      32px;
  }


  .sg-home-quicknav
  .swell-block-columns__inner {
    display:
      grid !important;

    grid-template-columns:
      repeat(
        3,
        minmax(0, 1fr)
      ) !important;

    gap:
      10px !important;
  }


  .sg-home-quicknav
  .swell-block-column.sg-home-quicknav__item {
    display:
      flex !important;

    flex-direction:
      column;

    width:
      100% !important;

    min-width:
      0 !important;

    margin:
      0 !important;

    padding:
      0 !important;

    border:
      0 !important;
  }


  .sg-home-quicknav__item h3 {
    margin:
      0
      0
      10px !important;

    padding:
      0
      0
      8px !important;

    font-size:
      12px;

    text-align:
      center;

    line-height:
      1.4;
  }


  .sg-home-quicknav__item h3::before {
    left:
      50%;

    width:
      30px !important;

    transform:
      translateX(-50%);
  }


  .sg-home-quicknav__item
  .swell-block-button__link {
    min-height:
      44px;

    padding:
      7px
      6px !important;

    font-size:
      10.5px;

    line-height:
      1.35;
  }


  /* ルートは3カードの下 */

  .sg-home-quicknav__route {
    grid-column:
      1 / -1 !important;

    margin-top:
      4px !important;
  }


  .sg-home-quicknav__route h3 {
    display:
      none !important;
  }


  .sg-home-quicknav__route
  .swell-block-button__link {
    width:
      100% !important;

    min-height:
      48px;

    font-size:
      13px;
  }


  /* -------------------------
     STATUS
     ------------------------- */

  .sg-home-status {
    padding:
      48px
      18px
      58px;
  }


  .sg-home-status
  .luxbc-status-card {
    padding:
      24px
      20px;

    border-radius:
      14px;
  }


  /* -------------------------
     3 STYLES
     ------------------------- */

  .sg-home-styles {
    padding:
      50px
      18px
      62px;
  }


  .sg-home-style-card__image {
    aspect-ratio:
      16 / 10;
  }


  /* -------------------------
     SCENES
     2列×3段
     ------------------------- */

  .sg-home-scenes {
    padding:
      50px
      18px
      58px;
  }


  .sg-home-scene-card__image {
    width:
      min(
        100%,
        132px
      ) !important;

    max-width:
      132px !important;
  }
}


/* =========================================================
   Reduced Motion
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  *,
  *::before,
  *::after {
    scroll-behavior:
      auto !important;

    transition-duration:
      0.01ms !important;

    animation-duration:
      0.01ms !important;
  }
}


/* =========================================================
   Focus
   ========================================================= */

a:focus-visible,
button:focus-visible {
  outline:
    3px solid
    var(--sg-pink);

  outline-offset:
    3px;
}

/* =========================================================
   SEASIDE GARDEN
   v14.1 - Section Heading Fix
   ========================================================= */


/* 英字ラベル：階層に関係なく確実に表示 */

.sg-home-status .sg-section-eyebrow,
.sg-home-styles .sg-section-eyebrow,
.sg-home-scenes .sg-section-eyebrow {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;

  width: min(100%, var(--sg-content-width)) !important;

  margin:
    0
    auto
    8px !important;

  padding: 0 !important;

  color: var(--sg-gold) !important;

  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;

  letter-spacing: 0.16em !important;

  text-transform: uppercase;
}


/* H2本体 */

.home .post_content .sg-home-status h2.sg-home-status__title,
.home .post_content .sg-home-styles h2.sg-home-styles__title,
.home .post_content .sg-home-scenes h2.sg-home-scenes__title {
  margin:
    0
    auto
    34px !important;

  padding:
    0
    0
    16px !important;

  border: 0 !important;
  border-top: 0 !important;
  border-bottom: 0 !important;

  background: transparent !important;

  box-shadow: none !important;
}


/* 既存SWELL・旧CSSの位置指定を完全解除 */

.home .post_content .sg-home-status h2.sg-home-status__title::before,
.home .post_content .sg-home-styles h2.sg-home-styles__title::before,
.home .post_content .sg-home-scenes h2.sg-home-scenes__title::before {
  content: "" !important;

  position: absolute !important;

  top: auto !important;
  right: auto !important;

  left: 0 !important;
  bottom: 0 !important;

  width: 56px !important;
  height: 3px !important;

  margin: 0 !important;

  border: 0 !important;

  background: var(--sg-pink) !important;

  transform: none !important;
}


/* 長い線・SWELL標準装飾は消す */

.home .post_content .sg-home-status h2.sg-home-status__title::after,
.home .post_content .sg-home-styles h2.sg-home-styles__title::after,
.home .post_content .sg-home-scenes h2.sg-home-scenes__title::after {
  content: none !important;

  display: none !important;
}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v15
   Sister Shop / Story Section
   ========================================================= */


/* =========================================================
   STORY SECTION
   ========================================================= */

.sg-home-story {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;

  padding:
    clamp(68px, 7vw, 100px)
    clamp(24px, 4vw, 56px);

  background: var(--sg-white);

  box-sizing: border-box;
}


/* =========================================================
   STORY : English Eyebrow
   ========================================================= */

.sg-home-story .sg-section-eyebrow {
  display: block !important;

  width:
    min(
      100%,
      var(--sg-content-width)
    ) !important;

  margin:
    0
    auto
    8px !important;

  padding: 0 !important;

  color:
    var(--sg-gold) !important;

  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;

  letter-spacing:
    0.16em !important;

  text-transform: uppercase;
}


/* =========================================================
   STORY : H2
   SWELL標準の濃紺帯を解除
   ========================================================= */

.home .post_content
.sg-home-story
h2.sg-home-story__title {
  position: relative !important;

  display: block !important;

  width:
    min(
      100%,
      var(--sg-content-width)
    ) !important;

  max-width:
    var(--sg-content-width) !important;

  margin:
    0
    auto
    clamp(36px, 4vw, 48px) !important;

  padding:
    0
    0
    17px !important;

  border: 0 !important;
  border-radius: 0 !important;

  background:
    transparent !important;

  background-color:
    transparent !important;

  background-image:
    none !important;

  box-shadow:
    none !important;

  color:
    var(--sg-midnight) !important;

  font-size:
    clamp(
      27px,
      2.4vw,
      36px
    ) !important;

  font-weight:
    700 !important;

  line-height:
    1.45 !important;

  letter-spacing:
    0.015em !important;

  text-align:
    left !important;
}


/* ピンクアクセント */

.home .post_content
.sg-home-story
h2.sg-home-story__title::before {
  content: "" !important;

  position: absolute !important;

  display: block !important;

  left: 0 !important;
  bottom: 0 !important;

  top: auto !important;

  width: 56px !important;
  height: 3px !important;

  margin: 0 !important;

  background:
    var(--sg-pink) !important;

  transform: none !important;
}


/* SWELL標準装飾を解除 */

.home .post_content
.sg-home-story
h2.sg-home-story__title::after {
  content: none !important;

  display: none !important;
}


/* =========================================================
   STORY : 2 Columns
   ========================================================= */

.sg-home-story
.swell-block-columns {
  width:
    min(
      100%,
      var(--sg-content-width)
    ) !important;

  max-width:
    var(--sg-content-width) !important;

  margin:
    0
    auto !important;
}


.sg-home-story
.swell-block-columns__inner {
  display: grid !important;

  grid-template-columns:
    minmax(0, 1.15fr)
    minmax(0, 0.85fr) !important;

  align-items:
    stretch !important;

  gap:
    clamp(
      34px,
      4.5vw,
      64px
    ) !important;

  width:
    100% !important;

  margin:
    0 !important;

  padding:
    0 !important;
}


.sg-home-story
.swell-block-column {
  width:
    100% !important;

  min-width:
    0 !important;

  max-width:
    none !important;

  margin:
    0 !important;
}


/* =========================================================
   STORY : Image
   ========================================================= */

.sg-home-story__image {
  width:
    100% !important;

  height:
    100%;

  min-height:
    390px;

  margin:
    0 !important;

  overflow:
    hidden;

  border-radius:
    18px;

  background:
    #e8e6e2;

  box-shadow:
    0
    14px
    34px
    rgba(
      7,
      27,
      58,
      0.09
    );
}


.sg-home-story__image img {
  display:
    block;

  width:
    100% !important;

  height:
    100% !important;

  min-height:
    390px;

  object-fit:
    cover;

  object-position:
    center;

  border-radius:
    inherit;
}


/* =========================================================
   STORY : Text Card
   ========================================================= */

.sg-home-story__content {
  display:
    flex !important;

  flex-direction:
    column;

  justify-content:
    center;

  min-height:
    100%;

  margin:
    0 !important;

  padding:
    clamp(
      28px,
      3.5vw,
      44px
    ) !important;

  border:
    1px solid
    rgba(
      7,
      27,
      58,
      0.07
    );

  border-radius:
    18px;

  background:
    var(--sg-bg);

  box-shadow:
    0
    10px
    26px
    rgba(
      7,
      27,
      58,
      0.05
    );
}


.sg-home-story__text {
  margin:
    0
    0
    18px !important;

  color:
    var(--sg-text);

  font-size:
    clamp(
      14px,
      1.15vw,
      16px
    );

  line-height:
    2;

  letter-spacing:
    0.015em;
}


.sg-home-story__text:last-of-type {
  margin-bottom:
    28px !important;
}


/* =========================================================
   STORY : CTA
   ========================================================= */

.sg-home-story__content
.sg-home-story__button {
  margin:
    auto
    0
    0 !important;
}


.sg-home-story__button
.swell-block-button__link,
.sg-home-story__content
.swell-block-button__link {
  min-width:
    210px;

  min-height:
    48px;

  display:
    inline-flex !important;

  align-items:
    center;

  justify-content:
    center;

  padding:
    11px
    26px !important;

  border:
    1px solid
    var(--sg-midnight) !important;

  border-radius:
    999px !important;

  background:
    var(--sg-midnight) !important;

  color:
    var(--sg-white) !important;

  font-size:
    14px;

  font-weight:
    700;

  line-height:
    1.4;

  text-decoration:
    none;

  box-shadow:
    0
    5px
    14px
    rgba(
      7,
      27,
      58,
      0.12
    );

  transition:
    background-color
    var(--sg-transition),
    color
    var(--sg-transition),
    transform
    var(--sg-transition);
}


.sg-home-story__button
.swell-block-button__link:hover,
.sg-home-story__content
.swell-block-button__link:hover {
  background:
    var(--sg-white) !important;

  color:
    var(--sg-midnight) !important;

  transform:
    translateY(-2px);
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 959px) {

  .sg-home-story {
    padding:
      60px
      30px
      72px;
  }


  .sg-home-story
  .swell-block-columns__inner {
    grid-template-columns:
      1fr
      1fr !important;

    gap:
      30px !important;
  }


  .sg-home-story__image,
  .sg-home-story__image img {
    min-height:
      330px;
  }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 599px) {

  .sg-home-story {
    padding:
      50px
      18px
      60px;
  }


  .sg-home-story .sg-section-eyebrow {
    margin-bottom:
      6px !important;

    font-size:
      10px !important;
  }


  .home .post_content
  .sg-home-story
  h2.sg-home-story__title {
    margin-bottom:
      28px !important;

    padding-bottom:
      13px !important;

    font-size:
      24px !important;
  }


  .sg-home-story
  .swell-block-columns__inner {
    grid-template-columns:
      1fr !important;

    gap:
      22px !important;
  }


  .sg-home-story__image,
  .sg-home-story__image img {
    min-height:
      230px;

    aspect-ratio:
      16 / 10;
  }


  .sg-home-story__content {
    padding:
      24px
      20px !important;

    border-radius:
      14px;
  }


  .sg-home-story__text {
    font-size:
      14px;

    line-height:
      1.9;
  }


  .sg-home-story__button,
  .sg-home-story__content
  .swell-block-button {
    width:
      100% !important;
  }


  .sg-home-story__button
  .swell-block-button__link,
  .sg-home-story__content
  .swell-block-button__link {
    width:
      100% !important;

    min-width:
      0;
  }
}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v16
   Mail / Stay in Touch Section
   ========================================================= */


/* =========================================================
   MAIL SECTION
   ========================================================= */

.sg-home-mail {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;

  padding:
    clamp(72px, 7vw, 104px)
    clamp(24px, 4vw, 56px);

  box-sizing: border-box;

  background:
    linear-gradient(
      135deg,
      var(--sg-midnight, #071b3a) 0%,
      #102f4f 100%
    ) !important;

  color: #fff;
}


/* =========================================================
   Inner width
   ========================================================= */

.sg-home-mail > * {
  width:
    min(
      100%,
      var(--sg-content-width, 1180px)
    );

  max-width:
    var(--sg-content-width, 1180px);

  margin-left: auto;
  margin-right: auto;
}


/* =========================================================
   English Eyebrow
   ========================================================= */

.sg-home-mail .sg-section-eyebrow {
  display: block !important;

  margin:
    0
    auto
    8px !important;

  padding: 0 !important;

  color:
    #d5b16a !important;

  font-size:
    12px !important;

  font-weight:
    700 !important;

  line-height:
    1.4 !important;

  letter-spacing:
    0.16em !important;

  text-transform:
    uppercase;
}


/* =========================================================
   Section H2
   SWELL標準装飾を解除
   ========================================================= */

.home .post_content
.sg-home-mail
h2.sg-home-mail__title {
  position:
    relative !important;

  display:
    block !important;

  width:
    min(
      100%,
      var(--sg-content-width, 1180px)
    ) !important;

  max-width:
    var(--sg-content-width, 1180px) !important;

  margin:
    0
    auto
    24px !important;

  padding:
    0
    0
    18px !important;

  border:
    0 !important;

  border-radius:
    0 !important;

  background:
    transparent !important;

  background-color:
    transparent !important;

  background-image:
    none !important;

  box-shadow:
    none !important;

  color:
    #fff !important;

  font-size:
    clamp(
      28px,
      2.5vw,
      38px
    ) !important;

  font-weight:
    700 !important;

  line-height:
    1.45 !important;

  letter-spacing:
    0.015em !important;

  text-align:
    left !important;
}


/* ピンクの短線 */

.home .post_content
.sg-home-mail
h2.sg-home-mail__title::before {
  content:
    "" !important;

  position:
    absolute !important;

  display:
    block !important;

  left:
    0 !important;

  bottom:
    0 !important;

  top:
    auto !important;

  width:
    56px !important;

  height:
    3px !important;

  margin:
    0 !important;

  background:
    var(--sg-pink, #d62f6b) !important;

  transform:
    none !important;
}


/* SWELL標準の別装飾を解除 */

.home .post_content
.sg-home-mail
h2.sg-home-mail__title::after {
  content:
    none !important;

  display:
    none !important;
}


/* =========================================================
   Lead
   ========================================================= */

.sg-home-mail__lead {
  margin:
    0
    auto
    clamp(36px, 4vw, 48px) !important;

  color:
    rgba(
      255,
      255,
      255,
      0.82
    ) !important;

  font-size:
    clamp(
      14px,
      1.15vw,
      16px
    );

  line-height:
    1.95;

  letter-spacing:
    0.015em;
}


/* =========================================================
   2 Columns
   ========================================================= */

.sg-home-mail
.swell-block-columns {
  width:
    min(
      100%,
      var(--sg-content-width, 1180px)
    ) !important;

  max-width:
    var(--sg-content-width, 1180px) !important;

  margin:
    0
    auto !important;
}


.sg-home-mail
.swell-block-columns__inner {
  display:
    grid !important;

  grid-template-columns:
    minmax(0, 1.1fr)
    minmax(320px, 0.9fr) !important;

  align-items:
    center !important;

  gap:
    clamp(
      38px,
      5vw,
      72px
    ) !important;

  width:
    100% !important;

  margin:
    0 !important;

  padding:
    0 !important;
}


.sg-home-mail
.swell-block-column {
  width:
    100% !important;

  min-width:
    0 !important;

  max-width:
    none !important;

  margin:
    0 !important;
}


/* =========================================================
   Left text
   ========================================================= */

.sg-home-mail__text {
  max-width:
    560px;

  margin:
    0 !important;

  color:
    rgba(
      255,
      255,
      255,
      0.9
    ) !important;

  font-size:
    clamp(
      15px,
      1.2vw,
      17px
    );

  line-height:
    2;

  letter-spacing:
    0.015em;
}


/* =========================================================
   Registration Card
   ========================================================= */

.sg-home-mail__card {
  position:
    relative;

  margin:
    0 !important;

  padding:
    clamp(
      30px,
      3.8vw,
      46px
    ) !important;

  overflow:
    hidden;

  border:
    1px solid
    rgba(
      255,
      255,
      255,
      0.16
    );

  border-radius:
    18px;

  background:
    #fffaf2 !important;

  box-shadow:
    0
    18px
    42px
    rgba(
      0,
      0,
      0,
      0.18
    );

  color:
    var(--sg-midnight, #071b3a);
}


/* カード右上の薄い装飾 */

.sg-home-mail__card::before {
  content:
    "";

  position:
    absolute;

  top:
    -70px;

  right:
    -70px;

  width:
    170px;

  height:
    170px;

  border:
    1px solid
    rgba(
      7,
      27,
      58,
      0.08
    );

  border-radius:
    50%;
}


/* =========================================================
   Card H3
   ========================================================= */

.home .post_content
.sg-home-mail__card
h3.sg-home-mail__card-title {
  position:
    relative;

  margin:
    0
    0
    22px !important;

  padding:
    0
    0
    13px !important;

  border:
    0 !important;

  background:
    transparent !important;

  box-shadow:
    none !important;

  color:
    var(--sg-midnight, #071b3a) !important;

  font-size:
    clamp(
      21px,
      1.8vw,
      27px
    );

  font-weight:
    700;

  line-height:
    1.4;

  letter-spacing:
    0.015em;
}


.home .post_content
.sg-home-mail__card
h3.sg-home-mail__card-title::before {
  content:
    "";

  position:
    absolute;

  left:
    0;

  bottom:
    0;

  width:
    42px;

  height:
    2px;

  background:
    var(--sg-pink, #d62f6b);
}


.home .post_content
.sg-home-mail__card
h3.sg-home-mail__card-title::after {
  display:
    none !important;
}


/* =========================================================
   Card text
   ========================================================= */

.sg-home-mail__card-text {
  margin:
    0
    0
    26px !important;

  color:
    #515b6c !important;

  font-size:
    14px;

  line-height:
    1.85;
}


/* =========================================================
   Mail CTA
   ========================================================= */

.sg-home-mail__button {
  margin:
    0 !important;
}


.sg-home-mail__button
.swell-block-button__link {
  display:
    inline-flex !important;

  align-items:
    center;

  justify-content:
    center;

  width:
    100% !important;

  min-height:
    50px;

  padding:
    12px
    24px !important;

  border:
    1px solid
    var(--sg-pink, #d62f6b) !important;

  border-radius:
    999px !important;

  background:
    var(--sg-pink, #d62f6b) !important;

  color:
    #fff !important;

  font-size:
    14px;

  font-weight:
    700;

  line-height:
    1.4;

  text-decoration:
    none !important;

  box-shadow:
    0
    7px
    18px
    rgba(
      214,
      47,
      107,
      0.22
    );

  transition:
    transform
    0.25s ease,
    background-color
    0.25s ease,
    box-shadow
    0.25s ease;
}


.sg-home-mail__button
.swell-block-button__link:hover {
  background:
    #bf275d !important;

  border-color:
    #bf275d !important;

  color:
    #fff !important;

  transform:
    translateY(-2px);

  box-shadow:
    0
    10px
    24px
    rgba(
      214,
      47,
      107,
      0.28
    );
}


/* =========================================================
   Tablet
   ========================================================= */

@media (max-width: 959px) {

  .sg-home-mail {
    padding:
      62px
      30px
      74px;
  }


  .sg-home-mail
  .swell-block-columns__inner {
    grid-template-columns:
      1fr
      1fr !important;

    gap:
      30px !important;
  }


  .sg-home-mail__card {
    padding:
      30px !important;
  }
}


/* =========================================================
   Mobile
   ========================================================= */

@media (max-width: 599px) {

  .sg-home-mail {
    padding:
      52px
      18px
      60px;
  }


  .sg-home-mail .sg-section-eyebrow {
    margin-bottom:
      6px !important;

    font-size:
      10px !important;
  }


  .home .post_content
  .sg-home-mail
  h2.sg-home-mail__title {
    margin-bottom:
      20px !important;

    padding-bottom:
      14px !important;

    font-size:
      24px !important;

    line-height:
      1.5 !important;
  }


  .sg-home-mail__lead {
    margin-bottom:
      30px !important;

    font-size:
      14px;
  }


  .sg-home-mail
  .swell-block-columns__inner {
    grid-template-columns:
      1fr !important;

    gap:
      28px !important;
  }


  .sg-home-mail__text {
    font-size:
      14px;

    line-height:
      1.9;
  }


  .sg-home-mail__card {
    padding:
      26px
      22px !important;

    border-radius:
      15px;
  }


  .home .post_content
  .sg-home-mail__card
  h3.sg-home-mail__card-title {
    font-size:
      21px;
  }


  .sg-home-mail__button
  .swell-block-button__link {
    min-height:
      50px;

    font-size:
      14px;
  }
}
/* =========================================================
   SEASIDE GARDEN
   v16.1 Mail Section Spacing Adjustment
   ========================================================= */

.sg-home-mail__lead {
  margin-bottom: 28px !important;
}

.sg-home-mail
.swell-block-columns__inner {
  align-items: start !important;
}

.sg-home-mail__text {
  padding-top: 12px;
}

.sg-home-mail__card {
  margin-top: 0 !important;
}

@media (max-width: 599px) {

  .sg-home-mail__lead {
    margin-bottom: 24px !important;
  }

  .sg-home-mail__text {
    padding-top: 0;
  }
}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v18
   NEWS Section
   ========================================================= */


/* =========================================================
   NEWS SECTION
   ========================================================= */

.sg-home-news {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;

  padding:
    clamp(70px, 7vw, 100px)
    clamp(24px, 4vw, 56px)
    clamp(78px, 7.5vw, 108px);

  box-sizing: border-box;

  background: #ffffff !important;
}


/* 内側最大幅 */

.sg-home-news > * {
  width:
    min(
      100%,
      var(--sg-content-width, 1180px)
    );

  max-width:
    var(--sg-content-width, 1180px);

  margin-left: auto;
  margin-right: auto;
}


/* =========================================================
   EYEBROW
   ========================================================= */

.sg-home-news .sg-section-eyebrow {
  display: block !important;

  margin:
    0
    auto
    8px !important;

  padding: 0 !important;

  color:
    var(--sg-gold, #9b7a44) !important;

  font-size:
    12px !important;

  font-weight:
    700 !important;

  line-height:
    1.4 !important;

  letter-spacing:
    0.16em !important;

  text-transform:
    uppercase;
}


/* =========================================================
   H2
   SWELL標準の濃紺帯を解除
   ========================================================= */

.home .post_content
.sg-home-news
h2.sg-home-news__title {
  position: relative !important;

  display: block !important;

  margin:
    0
    auto
    clamp(34px, 4vw, 46px) !important;

  padding:
    0
    0
    17px !important;

  border: 0 !important;
  border-radius: 0 !important;

  background:
    transparent !important;

  background-color:
    transparent !important;

  background-image:
    none !important;

  box-shadow:
    none !important;

  color:
    var(--sg-midnight, #071b3a) !important;

  font-size:
    clamp(
      28px,
      2.5vw,
      38px
    ) !important;

  font-weight:
    700 !important;

  line-height:
    1.4 !important;

  text-align:
    left !important;
}


/* ピンクアクセント */

.home .post_content
.sg-home-news
h2.sg-home-news__title::before {
  content: "" !important;

  position: absolute !important;

  left: 0 !important;
  bottom: 0 !important;
  top: auto !important;

  width: 56px !important;
  height: 3px !important;

  margin: 0 !important;

  background:
    var(--sg-pink, #d62f6b) !important;

  transform: none !important;
}


.home .post_content
.sg-home-news
h2.sg-home-news__title::after {
  content: none !important;
  display: none !important;
}


/* =========================================================
   SWELL POST LIST
   ========================================================= */

.sg-home-news__list {
  margin:
    0
    auto
    34px !important;
}


/* 3件時は横3カード */

.sg-home-news__list .p-postList {
  display: grid !important;

  grid-template-columns:
    repeat(3, minmax(0, 1fr)) !important;

  gap:
    clamp(20px, 2.4vw, 30px) !important;
}


/* 各記事 */

.sg-home-news__list .p-postList__item {
  width: 100% !important;
  margin: 0 !important;

  overflow: hidden;

  border:
    1px solid
    rgba(7, 27, 58, 0.08);

  border-radius:
    16px;

  background:
    #ffffff;

  box-shadow:
    0
    9px
    26px
    rgba(7, 27, 58, 0.07);

  transition:
    transform .25s ease,
    box-shadow .25s ease;
}


.sg-home-news__list .p-postList__item:hover {
  transform:
    translateY(-3px);

  box-shadow:
    0
    14px
    32px
    rgba(7, 27, 58, 0.11);
}


/* リンク */

.sg-home-news__list .p-postList__link {
  display: flex !important;
  flex-direction: column;

  height: 100%;

  color:
    var(--sg-text, #18243b) !important;

  text-decoration:
    none !important;
}


/* アイキャッチ */

.sg-home-news__list .p-postList__thumb {
  width: 100% !important;

  aspect-ratio:
    16 / 10;

  overflow:
    hidden;

  background:
    #ebe8e2;
}


.sg-home-news__list .p-postList__thumb img {
  width: 100% !important;
  height: 100% !important;

  object-fit:
    cover;

  transition:
    transform .35s ease;
}


.sg-home-news__list .p-postList__item:hover
.p-postList__thumb img {
  transform:
    scale(1.025);
}


/* 本文 */

.sg-home-news__list .p-postList__body {
  display: flex;
  flex-direction: column;

  flex: 1;

  padding:
    20px
    20px
    22px !important;
}


/* タイトル */

.sg-home-news__list .p-postList__title {
  margin:
    0
    0
    12px !important;

  color:
    var(--sg-midnight, #071b3a) !important;

  font-size:
    clamp(17px, 1.35vw, 20px);

  font-weight:
    700;

  line-height:
    1.55;
}


/* 抜粋 */

.sg-home-news__list .p-postList__excerpt {
  margin:
    0
    0
    16px !important;

  color:
    #616978;

  font-size:
    13px;

  line-height:
    1.8;
}


/* 日付など */

.sg-home-news__list .p-postList__meta {
  margin-top:
    auto;

  color:
    #858c98;

  font-size:
    11px;
}


/* カテゴリー */

.sg-home-news__list .c-postThumb__cat {
  background:
    var(--sg-midnight, #071b3a) !important;

  color:
    #ffffff !important;

  font-size:
    10px;
}


/* =========================================================
   LIST BUTTON
   ========================================================= */

.sg-home-news__button {
  margin:
    36px
    auto
    0 !important;

  text-align:
    center;
}


.sg-home-news__button
.swell-block-button__link {
  min-width:
    230px;

  min-height:
    48px;

  display:
    inline-flex !important;

  align-items:
    center;

  justify-content:
    center;

  padding:
    11px
    28px !important;

  border:
    1px solid
    var(--sg-midnight, #071b3a) !important;

  border-radius:
    999px !important;

  background:
    var(--sg-midnight, #071b3a) !important;

  color:
    #ffffff !important;

  font-size:
    14px;

  font-weight:
    700;

  box-shadow:
    0
    5px
    14px
    rgba(7, 27, 58, 0.12);

  transition:
    transform .25s ease,
    background-color .25s ease;
}


.sg-home-news__button
.swell-block-button__link:hover {
  background:
    #ffffff !important;

  color:
    var(--sg-midnight, #071b3a) !important;

  transform:
    translateY(-2px);
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 959px) {

  .sg-home-news {
    padding:
      62px
      30px
      74px;
  }


  .sg-home-news__list .p-postList {
    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;
  }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 599px) {

  .sg-home-news {
    padding:
      52px
      18px
      60px;
  }


  .sg-home-news
  .sg-section-eyebrow {
    margin-bottom:
      6px !important;

    font-size:
      10px !important;
  }


  .home .post_content
  .sg-home-news
  h2.sg-home-news__title {
    margin-bottom:
      28px !important;

    padding-bottom:
      14px !important;

    font-size:
      24px !important;
  }


  .sg-home-news__list
  .p-postList {
    grid-template-columns:
      1fr !important;

    gap:
      18px !important;
  }


  .sg-home-news__list
  .p-postList__body {
    padding:
      18px
      18px
      20px !important;
  }


  .sg-home-news__button,
  .sg-home-news__button
  .swell-block-button__link {
    width:
      100% !important;
  }


  .sg-home-news__button
  .swell-block-button__link {
    min-width:
      0;
  }
}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v19
   COLUMN Section
   ========================================================= */


/* =========================================================
   COLUMN SECTION
   ========================================================= */

.sg-home-column {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;

  padding:
    clamp(70px, 7vw, 100px)
    clamp(24px, 4vw, 56px)
    clamp(78px, 7.5vw, 108px);

  box-sizing: border-box;

  background:
    var(--sg-bg, #f7f1e8) !important;
}


/* =========================================================
   INNER WIDTH
   ========================================================= */

.sg-home-column > * {
  width:
    min(
      100%,
      var(--sg-content-width, 1180px)
    );

  max-width:
    var(--sg-content-width, 1180px);

  margin-left: auto;
  margin-right: auto;
}


/* =========================================================
   EYEBROW
   ========================================================= */

.sg-home-column .sg-section-eyebrow {
  display: block !important;

  margin:
    0
    auto
    8px !important;

  padding: 0 !important;

  color:
    var(--sg-gold, #9b7a44) !important;

  font-size:
    12px !important;

  font-weight:
    700 !important;

  line-height:
    1.4 !important;

  letter-spacing:
    0.16em !important;

  text-transform:
    uppercase;
}


/* =========================================================
   H2
   SWELL標準装飾解除
   ========================================================= */

.home .post_content
.sg-home-column
h2.sg-home-column__title {
  position:
    relative !important;

  display:
    block !important;

  margin:
    0
    auto
    20px !important;

  padding:
    0
    0
    17px !important;

  border:
    0 !important;

  border-radius:
    0 !important;

  background:
    transparent !important;

  background-color:
    transparent !important;

  background-image:
    none !important;

  box-shadow:
    none !important;

  color:
    var(--sg-midnight, #071b3a) !important;

  font-size:
    clamp(
      28px,
      2.5vw,
      38px
    ) !important;

  font-weight:
    700 !important;

  line-height:
    1.4 !important;

  text-align:
    left !important;
}


/* ピンク短線 */

.home .post_content
.sg-home-column
h2.sg-home-column__title::before {
  content:
    "" !important;

  position:
    absolute !important;

  left:
    0 !important;

  bottom:
    0 !important;

  top:
    auto !important;

  width:
    56px !important;

  height:
    3px !important;

  margin:
    0 !important;

  background:
    var(--sg-pink, #d62f6b) !important;

  transform:
    none !important;
}


.home .post_content
.sg-home-column
h2.sg-home-column__title::after {
  content:
    none !important;

  display:
    none !important;
}


/* =========================================================
   INTRO
   ========================================================= */

.sg-home-column__intro {
  margin:
    0
    auto
    clamp(34px, 4vw, 46px) !important;

  color:
    #5f6673 !important;

  font-size:
    clamp(
      14px,
      1.15vw,
      16px
    );

  line-height:
    1.95;

  letter-spacing:
    0.015em;
}


/* =========================================================
   POST LIST
   ========================================================= */

.sg-home-column__list {
  margin:
    0
    auto
    34px !important;
}


.sg-home-column__list .p-postList {
  display:
    grid !important;

  grid-template-columns:
    repeat(
      3,
      minmax(0, 1fr)
    ) !important;

  gap:
    clamp(
      20px,
      2.4vw,
      30px
    ) !important;
}


/* 各カード */

.sg-home-column__list .p-postList__item {
  width:
    100% !important;

  margin:
    0 !important;

  overflow:
    hidden;

  border:
    1px solid
    rgba(
      7,
      27,
      58,
      0.07
    );

  border-radius:
    16px;

  background:
    #ffffff;

  box-shadow:
    0
    9px
    26px
    rgba(
      7,
      27,
      58,
      0.06
    );

  transition:
    transform
    .25s ease,
    box-shadow
    .25s ease;
}


.sg-home-column__list
.p-postList__item:hover {
  transform:
    translateY(-3px);

  box-shadow:
    0
    14px
    32px
    rgba(
      7,
      27,
      58,
      0.10
    );
}


/* リンク */

.sg-home-column__list
.p-postList__link {
  display:
    flex !important;

  flex-direction:
    column;

  height:
    100%;

  color:
    var(--sg-text, #18243b) !important;

  text-decoration:
    none !important;
}


/* アイキャッチ */

.sg-home-column__list
.p-postList__thumb {
  width:
    100% !important;

  aspect-ratio:
    16 / 10;

  overflow:
    hidden;

  background:
    #e6e1d8;
}


.sg-home-column__list
.p-postList__thumb img {
  width:
    100% !important;

  height:
    100% !important;

  object-fit:
    cover;

  transition:
    transform
    .35s ease;
}


.sg-home-column__list
.p-postList__item:hover
.p-postList__thumb img {
  transform:
    scale(1.025);
}


/* 本文 */

.sg-home-column__list
.p-postList__body {
  display:
    flex;

  flex-direction:
    column;

  flex:
    1;

  padding:
    20px
    20px
    22px !important;
}


/* タイトル */

.sg-home-column__list
.p-postList__title {
  margin:
    0
    0
    12px !important;

  color:
    var(--sg-midnight, #071b3a) !important;

  font-size:
    clamp(
      17px,
      1.35vw,
      20px
    );

  font-weight:
    700;

  line-height:
    1.55;
}


/* 抜粋 */

.sg-home-column__list
.p-postList__excerpt {
  margin:
    0
    0
    16px !important;

  color:
    #616978;

  font-size:
    13px;

  line-height:
    1.8;
}


/* 日付 */

.sg-home-column__list
.p-postList__meta {
  margin-top:
    auto;

  color:
    #858c98;

  font-size:
    11px;
}


/* カテゴリー */

.sg-home-column__list
.c-postThumb__cat {
  background:
    var(--sg-gold, #9b7a44) !important;

  color:
    #ffffff !important;

  font-size:
    10px;
}


/* =========================================================
   LIST BUTTON
   ========================================================= */

.sg-home-column__button {
  margin:
    36px
    auto
    0 !important;

  text-align:
    center;
}


.sg-home-column__button
.swell-block-button__link {
  display:
    inline-flex !important;

  align-items:
    center;

  justify-content:
    center;

  min-width:
    230px;

  min-height:
    48px;

  padding:
    11px
    28px !important;

  border:
    1px solid
    var(--sg-midnight, #071b3a) !important;

  border-radius:
    999px !important;

  background:
    transparent !important;

  color:
    var(--sg-midnight, #071b3a) !important;

  font-size:
    14px;

  font-weight:
    700;

  box-shadow:
    none;

  transition:
    transform
    .25s ease,
    background-color
    .25s ease,
    color
    .25s ease;
}


.sg-home-column__button
.swell-block-button__link:hover {
  background:
    var(--sg-midnight, #071b3a) !important;

  color:
    #ffffff !important;

  transform:
    translateY(-2px);
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 959px) {

  .sg-home-column {
    padding:
      62px
      30px
      74px;
  }


  .sg-home-column__list
  .p-postList {
    grid-template-columns:
      repeat(
        2,
        minmax(0, 1fr)
      ) !important;
  }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 599px) {

  .sg-home-column {
    padding:
      52px
      18px
      60px;
  }


  .sg-home-column
  .sg-section-eyebrow {
    margin-bottom:
      6px !important;

    font-size:
      10px !important;
  }


  .home .post_content
  .sg-home-column
  h2.sg-home-column__title {
    margin-bottom:
      18px !important;

    padding-bottom:
      14px !important;

    font-size:
      24px !important;
  }


  .sg-home-column__intro {
    margin-bottom:
      28px !important;

    font-size:
      14px;
  }


  .sg-home-column__list
  .p-postList {
    grid-template-columns:
      1fr !important;

    gap:
      18px !important;
  }


  .sg-home-column__list
  .p-postList__body {
    padding:
      18px
      18px
      20px !important;
  }


  .sg-home-column__button,
  .sg-home-column__button
  .swell-block-button__link {
    width:
      100% !important;
  }


  .sg-home-column__button
  .swell-block-button__link {
    min-width:
      0;
  }
}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v20
   ACCESS Section
   ========================================================= */


/* =========================================================
   ACCESS SECTION
   ========================================================= */

.sg-home-access {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;

  padding:
    clamp(70px, 7vw, 100px)
    clamp(24px, 4vw, 56px)
    clamp(78px, 7.5vw, 108px);

  box-sizing: border-box;

  background: #ffffff !important;
}


/* =========================================================
   INNER WIDTH
   ========================================================= */

.sg-home-access > * {
  width:
    min(
      100%,
      var(--sg-content-width, 1180px)
    );

  max-width:
    var(--sg-content-width, 1180px);

  margin-left: auto;
  margin-right: auto;
}


/* =========================================================
   EYEBROW
   ========================================================= */

.sg-home-access .sg-section-eyebrow {
  display: block !important;

  margin:
    0
    auto
    8px !important;

  padding: 0 !important;

  color:
    var(--sg-gold, #9b7a44) !important;

  font-size:
    12px !important;

  font-weight:
    700 !important;

  line-height:
    1.4 !important;

  letter-spacing:
    0.16em !important;

  text-transform:
    uppercase;
}


/* =========================================================
   H2
   ========================================================= */

.home .post_content
.sg-home-access
h2.sg-home-access__title {
  position: relative !important;

  display: block !important;

  margin:
    0
    auto
    20px !important;

  padding:
    0
    0
    17px !important;

  border: 0 !important;
  border-radius: 0 !important;

  background:
    transparent !important;

  background-color:
    transparent !important;

  background-image:
    none !important;

  box-shadow:
    none !important;

  color:
    var(--sg-midnight, #071b3a) !important;

  font-size:
    clamp(
      28px,
      2.5vw,
      38px
    ) !important;

  font-weight:
    700 !important;

  line-height:
    1.4 !important;

  text-align:
    left !important;
}


/* ピンク短線 */

.home .post_content
.sg-home-access
h2.sg-home-access__title::before {
  content: "" !important;

  position: absolute !important;

  left: 0 !important;
  bottom: 0 !important;
  top: auto !important;

  width: 56px !important;
  height: 3px !important;

  margin: 0 !important;

  background:
    var(--sg-pink, #d62f6b) !important;

  transform: none !important;
}


.home .post_content
.sg-home-access
h2.sg-home-access__title::after {
  content: none !important;
  display: none !important;
}


/* =========================================================
   LEAD
   ========================================================= */

.sg-home-access__lead {
  margin:
    0
    auto
    clamp(34px, 4vw, 46px) !important;

  color:
    #5f6673 !important;

  font-size:
    clamp(
      14px,
      1.15vw,
      16px
    );

  line-height:
    1.95;
}


/* =========================================================
   2 COLUMNS
   ========================================================= */

.sg-home-access
.swell-block-columns {
  width:
    min(
      100%,
      var(--sg-content-width, 1180px)
    ) !important;

  max-width:
    var(--sg-content-width, 1180px) !important;

  margin:
    0
    auto !important;
}


.sg-home-access
.swell-block-columns__inner {
  display:
    grid !important;

  grid-template-columns:
    minmax(0, 0.85fr)
    minmax(0, 1.15fr) !important;

  gap:
    clamp(
      30px,
      4vw,
      52px
    ) !important;

  align-items:
    stretch !important;
}


.sg-home-access
.swell-block-column {
  width: 100% !important;
  min-width: 0 !important;

  margin: 0 !important;
}


/* =========================================================
   INFO CARD
   ========================================================= */

.sg-home-access__info {
  display: flex !important;

  flex-direction: column;

  justify-content: center;

  height: 100%;

  margin: 0 !important;

  padding:
    clamp(
      30px,
      3.8vw,
      46px
    ) !important;

  border:
    1px solid
    rgba(
      7,
      27,
      58,
      0.07
    );

  border-radius:
    18px;

  background:
    var(--sg-bg, #f7f1e8);

  box-shadow:
    0
    10px
    28px
    rgba(
      7,
      27,
      58,
      0.06
    );
}


/* 店名 */

.home .post_content
.sg-home-access
h3.sg-home-access__shop {
  position: relative;

  margin:
    0
    0
    26px !important;

  padding:
    0
    0
    14px !important;

  border: 0 !important;

  background:
    transparent !important;

  color:
    var(--sg-midnight, #071b3a) !important;

  font-size:
    clamp(
      21px,
      1.8vw,
      27px
    );

  font-weight: 700;

  line-height: 1.4;
}


.home .post_content
.sg-home-access
h3.sg-home-access__shop::before {
  content: "";

  position: absolute;

  left: 0;
  bottom: 0;

  width: 44px;
  height: 2px;

  background:
    var(--sg-pink, #d62f6b);
}


.home .post_content
.sg-home-access
h3.sg-home-access__shop::after {
  display: none !important;
}


/* 住所 */

.sg-home-access__address {
  margin:
    0
    0
    20px !important;

  color:
    var(--sg-text, #18243b);

  font-size:
    clamp(
      14px,
      1.1vw,
      16px
    );

  line-height:
    1.85;
}


/* TEL */

.sg-home-access__tel {
  margin:
    0
    0
    30px !important;

  color:
    var(--sg-midnight, #071b3a);

  font-size:
    clamp(
      17px,
      1.5vw,
      21px
    );

  font-weight:
    700;

  letter-spacing:
    0.04em;
}


/* =========================================================
   ROUTE BUTTON
   ========================================================= */

.sg-home-access__route-button {
  margin:
    auto
    0
    0 !important;
}


.sg-home-access__route-button
.swell-block-button__link {
  display:
    inline-flex !important;

  align-items:
    center;

  justify-content:
    center;

  width:
    100% !important;

  min-height:
    50px;

  padding:
    12px
    24px !important;

  border:
    1px solid
    var(--sg-midnight, #071b3a) !important;

  border-radius:
    999px !important;

  background:
    var(--sg-midnight, #071b3a) !important;

  color:
    #ffffff !important;

  font-size:
    14px;

  font-weight:
    700;

  text-decoration:
    none !important;

  box-shadow:
    0
    6px
    16px
    rgba(
      7,
      27,
      58,
      0.13
    );

  transition:
    transform .25s ease,
    background-color .25s ease;
}


.sg-home-access__route-button
.swell-block-button__link:hover {
  background:
    #ffffff !important;

  color:
    var(--sg-midnight, #071b3a) !important;

  transform:
    translateY(-2px);
}


/* =========================================================
   MAP AREA
   ========================================================= */

.sg-home-access__map {
  position: relative;

  display: flex !important;

  flex-direction: column;

  align-items: center;

  justify-content: center;

  min-height:
    390px;

  margin:
    0 !important;

  padding:
    36px !important;

  overflow:
    hidden;

  border:
    1px solid
    rgba(
      7,
      27,
      58,
      0.10
    );

  border-radius:
    18px;

  background:
    linear-gradient(
      135deg,
      #e8edf0 0%,
      #dce4e7 100%
    );

  box-shadow:
    0
    10px
    28px
    rgba(
      7,
      27,
      58,
      0.06
    );

  text-align:
    center;
}


/* 仮マップ背景装飾 */

.sg-home-access__map::before,
.sg-home-access__map::after {
  content: "";

  position: absolute;

  border:
    1px solid
    rgba(
      7,
      27,
      58,
      0.08
    );

  border-radius:
    50%;
}


.sg-home-access__map::before {
  width: 280px;
  height: 280px;

  top: -120px;
  right: -80px;
}


.sg-home-access__map::after {
  width: 190px;
  height: 190px;

  bottom: -90px;
  left: -60px;
}


/* MAP */

.sg-home-access__map-label {
  position: relative;
  z-index: 2;

  margin:
    0
    0
    12px !important;

  color:
    var(--sg-gold, #9b7a44);

  font-size:
    12px;

  font-weight:
    700;

  letter-spacing:
    0.16em;
}


/* 地図・ルート案内 */

.sg-home-access__map-placeholder {
  position: relative;
  z-index: 2;

  margin:
    0 !important;

  color:
    var(--sg-midnight, #071b3a);

  font-size:
    clamp(
      22px,
      2vw,
      30px
    );

  font-weight:
    700;

  line-height:
    1.5;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 959px) {

  .sg-home-access {
    padding:
      62px
      30px
      74px;
  }


  .sg-home-access
  .swell-block-columns__inner {
    grid-template-columns:
      1fr
      1fr !important;

    gap:
      28px !important;
  }


  .sg-home-access__map {
    min-height:
      330px;
  }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 599px) {

  .sg-home-access {
    padding:
      52px
      18px
      60px;
  }


  .sg-home-access
  .sg-section-eyebrow {
    margin-bottom:
      6px !important;

    font-size:
      10px !important;
  }


  .home .post_content
  .sg-home-access
  h2.sg-home-access__title {
    margin-bottom:
      18px !important;

    padding-bottom:
      14px !important;

    font-size:
      24px !important;
  }


  .sg-home-access__lead {
    margin-bottom:
      28px !important;

    font-size:
      14px;
  }


  .sg-home-access
  .swell-block-columns__inner {
    grid-template-columns:
      1fr !important;

    gap:
      22px !important;
  }


  .sg-home-access__info {
    padding:
      25px
      21px !important;

    border-radius:
      14px;
  }


  .home .post_content
  .sg-home-access
  h3.sg-home-access__shop {
    font-size:
      21px;
  }


  .sg-home-access__map {
    min-height:
      250px;

    padding:
      28px
      20px !important;

    border-radius:
      14px;
  }


  .sg-home-access__map-placeholder {
    font-size:
      22px;
  }


  .sg-home-access__route-button,
  .sg-home-access__route-button
  .swell-block-button__link {
    width:
      100% !important;
  }
}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v21
   FINAL CTA Section
   ========================================================= */


/* =========================================================
   FINAL CTA
   ========================================================= */

.sg-home-finalcta {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;

  padding:
    clamp(72px, 7vw, 104px)
    clamp(24px, 4vw, 56px)
    clamp(78px, 7.5vw, 108px);

  box-sizing: border-box;

  background:
    linear-gradient(
      135deg,
      var(--sg-midnight, #071b3a) 0%,
      #113554 100%
    ) !important;

  color: #ffffff;
}


/* =========================================================
   INNER WIDTH
   ========================================================= */

.sg-home-finalcta > * {
  width:
    min(
      100%,
      var(--sg-content-width, 1180px)
    );

  max-width:
    var(--sg-content-width, 1180px);

  margin-left: auto;
  margin-right: auto;
}


/* =========================================================
   EYEBROW
   ========================================================= */

.sg-home-finalcta .sg-section-eyebrow {
  display: block !important;

  margin:
    0
    auto
    8px !important;

  padding: 0 !important;

  color:
    #d5b16a !important;

  font-size:
    12px !important;

  font-weight:
    700 !important;

  line-height:
    1.4 !important;

  letter-spacing:
    0.16em !important;

  text-transform:
    uppercase;
}


/* =========================================================
   H2
   SWELL標準の濃紺帯を解除
   ========================================================= */

.home .post_content
.sg-home-finalcta
h2.sg-home-finalcta__title {
  position: relative !important;

  display: block !important;

  margin:
    0
    auto
    22px !important;

  padding:
    0
    0
    18px !important;

  border: 0 !important;
  border-radius: 0 !important;

  background:
    transparent !important;

  background-color:
    transparent !important;

  background-image:
    none !important;

  box-shadow:
    none !important;

  color:
    #ffffff !important;

  font-size:
    clamp(
      29px,
      2.6vw,
      40px
    ) !important;

  font-weight:
    700 !important;

  line-height:
    1.45 !important;

  letter-spacing:
    0.015em !important;

  text-align:
    left !important;
}


/* ピンク短線 */

.home .post_content
.sg-home-finalcta
h2.sg-home-finalcta__title::before {
  content: "" !important;

  position: absolute !important;

  left: 0 !important;
  bottom: 0 !important;
  top: auto !important;

  width: 56px !important;
  height: 3px !important;

  margin: 0 !important;

  background:
    var(--sg-pink, #d62f6b) !important;

  transform: none !important;
}


.home .post_content
.sg-home-finalcta
h2.sg-home-finalcta__title::after {
  content: none !important;
  display: none !important;
}


/* =========================================================
   LEAD
   ========================================================= */

.sg-home-finalcta__lead {
  margin:
    0
    auto
    clamp(36px, 4vw, 48px) !important;

  color:
    rgba(
      255,
      255,
      255,
      0.82
    ) !important;

  font-size:
    clamp(
      14px,
      1.15vw,
      16px
    );

  line-height:
    1.95;

  letter-spacing:
    0.015em;
}


/* =========================================================
   3 COLUMNS
   ========================================================= */

.sg-home-finalcta
.swell-block-columns {
  width:
    min(
      100%,
      var(--sg-content-width, 1180px)
    ) !important;

  max-width:
    var(--sg-content-width, 1180px) !important;

  margin:
    0
    auto !important;
}


.sg-home-finalcta
.swell-block-columns__inner {
  display: grid !important;

  grid-template-columns:
    repeat(3, minmax(0, 1fr)) !important;

  align-items:
    stretch !important;

  gap:
    clamp(
      18px,
      2.5vw,
      30px
    ) !important;

  width: 100% !important;

  margin: 0 !important;

  padding: 0 !important;
}


/* =========================================================
   CTA CARD
   ========================================================= */

.sg-home-finalcta__item {
  display:
    flex !important;

  flex-direction:
    column;

  min-height:
    100%;

  margin:
    0 !important;

  padding:
    clamp(
      26px,
      3vw,
      36px
    ) !important;

  border:
    1px solid
    rgba(
      255,
      255,
      255,
      0.14
    );

  border-radius:
    18px;

  background:
    rgba(
      255,
      255,
      255,
      0.07
    );

  box-shadow:
    0
    12px
    30px
    rgba(
      0,
      0,
      0,
      0.12
    );

  backdrop-filter:
    blur(2px);
}


/* =========================================================
   CARD H3
   SWELL装飾解除
   ========================================================= */

.home .post_content
.sg-home-finalcta
h3.sg-home-finalcta__item-title {
  position:
    relative;

  margin:
    0
    0
    24px !important;

  padding:
    0
    0
    14px !important;

  border:
    0 !important;

  background:
    transparent !important;

  color:
    #ffffff !important;

  font-size:
    clamp(
      20px,
      1.7vw,
      25px
    );

  font-weight:
    700;

  line-height:
    1.45;
}


.home .post_content
.sg-home-finalcta
h3.sg-home-finalcta__item-title::before {
  content:
    "";

  position:
    absolute;

  left:
    0;

  bottom:
    0;

  width:
    42px;

  height:
    2px;

  background:
    var(--sg-pink, #d62f6b);
}


.home .post_content
.sg-home-finalcta
h3.sg-home-finalcta__item-title::after {
  display:
    none !important;
}


/* =========================================================
   CARD TEXT
   ========================================================= */

.sg-home-finalcta__item-text {
  margin:
    0
    0
    28px !important;

  color:
    rgba(
      255,
      255,
      255,
      0.82
    ) !important;

  font-size:
    14px;

  line-height:
    1.9;
}


/* ボタンを下端へ揃える */

.sg-home-finalcta__item
.swell-block-button {
  width:
    100% !important;

  margin:
    auto
    0
    0 !important;
}


/* =========================================================
   BUTTON COMMON
   ========================================================= */

.sg-home-finalcta
.swell-block-button__link {
  display:
    inline-flex !important;

  align-items:
    center;

  justify-content:
    center;

  width:
    100% !important;

  min-height:
    50px;

  padding:
    12px
    20px !important;

  border-radius:
    999px !important;

  font-size:
    14px;

  font-weight:
    700;

  line-height:
    1.4;

  text-decoration:
    none !important;

  transition:
    transform
    .25s ease,
    background-color
    .25s ease,
    color
    .25s ease,
    box-shadow
    .25s ease;
}


/* =========================================================
   FOOD BUTTON
   ========================================================= */

.sg-home-finalcta__food-button
.swell-block-button__link {
  border:
    1px solid
    rgba(
      255,
      255,
      255,
      0.8
    ) !important;

  background:
    #ffffff !important;

  color:
    var(--sg-midnight, #071b3a) !important;

  box-shadow:
    none;
}


.sg-home-finalcta__food-button
.swell-block-button__link:hover {
  background:
    transparent !important;

  color:
    #ffffff !important;

  transform:
    translateY(-2px);
}


/* =========================================================
   SEAT + BBQ BUTTON
   ========================================================= */

.sg-home-finalcta__seat-button
.swell-block-button__link,
.sg-home-finalcta__bbq-button
.swell-block-button__link {
  border:
    1px solid
    var(--sg-pink, #d62f6b) !important;

  background:
    var(--sg-pink, #d62f6b) !important;

  color:
    #ffffff !important;

  box-shadow:
    0
    7px
    18px
    rgba(
      214,
      47,
      107,
      0.22
    );
}


.sg-home-finalcta__seat-button
.swell-block-button__link:hover,
.sg-home-finalcta__bbq-button
.swell-block-button__link:hover {
  background:
    #bf275d !important;

  border-color:
    #bf275d !important;

  color:
    #ffffff !important;

  transform:
    translateY(-2px);

  box-shadow:
    0
    10px
    24px
    rgba(
      214,
      47,
      107,
      0.28
    );
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 959px) {

  .sg-home-finalcta {
    padding:
      62px
      30px
      74px;
  }


  .sg-home-finalcta
  .swell-block-columns__inner {
    grid-template-columns:
      repeat(3, minmax(0, 1fr)) !important;

    gap:
      18px !important;
  }


  .sg-home-finalcta__item {
    padding:
      25px
      20px !important;
  }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 599px) {

  .sg-home-finalcta {
    padding:
      52px
      18px
      60px;
  }


  .sg-home-finalcta
  .sg-section-eyebrow {
    margin-bottom:
      6px !important;

    font-size:
      10px !important;
  }


  .home .post_content
  .sg-home-finalcta
  h2.sg-home-finalcta__title {
    margin-bottom:
      18px !important;

    padding-bottom:
      14px !important;

    font-size:
      24px !important;
  }


  .sg-home-finalcta__lead {
    margin-bottom:
      28px !important;

    font-size:
      14px;
  }


  .sg-home-finalcta
  .swell-block-columns__inner {
    grid-template-columns:
      1fr !important;

    gap:
      16px !important;
  }


  .sg-home-finalcta__item {
    padding:
      24px
      20px !important;

    border-radius:
      14px;
  }


  .home .post_content
  .sg-home-finalcta
  h3.sg-home-finalcta__item-title {
    margin-bottom:
      18px !important;

    font-size:
      20px;
  }


  .sg-home-finalcta__item-text {
    margin-bottom:
      22px !important;
  }
}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v21.1
   FINAL CTA / SWELL Column Width Fix
   ========================================================= */


/* SWELL側に残っているカラム幅指定を解除 */
.sg-home-finalcta
.swell-block-columns__inner
> .swell-block-column {

  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;

  flex: none !important;
  flex-basis: auto !important;

  margin: 0 !important;

  --clmn-w--pc: 100% !important;
  --clmn-w--tab: 100% !important;
  --clmn-w--mobile: 100% !important;

  box-sizing: border-box;
}


/* 3列を確実に均等配置 */
.sg-home-finalcta
.swell-block-columns__inner {

  display: grid !important;

  grid-template-columns:
    repeat(3, minmax(0, 1fr)) !important;

  gap:
    clamp(18px, 2.5vw, 30px) !important;

  align-items: stretch !important;
}


/* 各CTAカードを列いっぱいに広げる */
.sg-home-finalcta__item {

  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;

  height: 100%;

  box-sizing: border-box;
}


/* 見出しが縦書きのようになるのを防止 */
.sg-home-finalcta__item-title {

  width: 100% !important;

  word-break: normal !important;
  overflow-wrap: normal !important;

  writing-mode: horizontal-tb !important;
  white-space: normal !important;
}


/* 本文も通常の横書きへ */
.sg-home-finalcta__item-text {

  width: 100% !important;

  word-break: normal !important;
  overflow-wrap: break-word !important;

  writing-mode: horizontal-tb !important;
}


/* ボタン幅をカード内に収める */
.sg-home-finalcta__item
.swell-block-button {

  width: 100% !important;
  max-width: none !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 959px) {

  .sg-home-finalcta
  .swell-block-columns__inner {

    grid-template-columns:
      repeat(3, minmax(0, 1fr)) !important;
  }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 599px) {

  .sg-home-finalcta
  .swell-block-columns__inner {

    grid-template-columns:
      1fr !important;
  }
}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v21.2
   FINAL CTA / Card Unification
   ========================================================= */


/* 3つのカラム項目すべてを同じカードとして扱う */
.sg-home-finalcta
.swell-block-columns__inner
> .swell-block-column {

  display: flex !important;
  flex-direction: column !important;

  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;

  min-height: 100% !important;

  margin: 0 !important;

  padding:
    clamp(26px, 3vw, 36px) !important;

  box-sizing: border-box !important;

  border:
    1px solid
    rgba(255, 255, 255, 0.14) !important;

  border-radius:
    18px !important;

  background:
    rgba(255, 255, 255, 0.07) !important;

  box-shadow:
    0 12px 30px
    rgba(0, 0, 0, 0.12) !important;
}


/* 3枚の見出し幅も統一 */
.sg-home-finalcta
.swell-block-columns__inner
> .swell-block-column
.sg-home-finalcta__item-title {

  width: 100% !important;
}


/* ボタン位置を3枚とも下端へ揃える */
.sg-home-finalcta
.swell-block-columns__inner
> .swell-block-column
.swell-block-button {

  width: 100% !important;

  margin:
    auto
    0
    0 !important;
}


/* スマホ */
@media (max-width: 599px) {

  .sg-home-finalcta
  .swell-block-columns__inner
  > .swell-block-column {

    padding:
      24px
      20px !important;

    border-radius:
      14px !important;
  }
}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v21.4
   FINAL CTA / Strong H3 Reset
   ========================================================= */

.home .post_content
.sg-home-finalcta
h3.wp-block-heading,
.home .post_content
.sg-home-finalcta
.sg-home-finalcta__item-title {

  display: block !important;
  position: relative !important;

  width: 100% !important;
  max-width: none !important;

  margin: 0 0 24px !important;
  padding: 0 0 14px !important;

  border: none !important;
  border-top: none !important;
  border-right: none !important;
  border-bottom: none !important;
  border-left: none !important;

  outline: none !important;

  background: none !important;
  background-color: transparent !important;
  background-image: none !important;

  box-shadow: none !important;

  color: #fff !important;

  font-size: clamp(20px, 1.7vw, 25px) !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;

  text-align: left !important;
}


/* SWELLの装飾を完全解除 */

.home .post_content
.sg-home-finalcta
h3.wp-block-heading::before,
.home .post_content
.sg-home-finalcta
.sg-home-finalcta__item-title::before {

  content: "" !important;

  position: absolute !important;

  left: 0 !important;
  right: auto !important;
  top: auto !important;
  bottom: 0 !important;

  display: block !important;

  width: 42px !important;
  height: 2px !important;

  margin: 0 !important;

  border: none !important;

  background: var(--sg-pink, #d62f6b) !important;

  transform: none !important;
}


.home .post_content
.sg-home-finalcta
h3.wp-block-heading::after,
.home .post_content
.sg-home-finalcta
.sg-home-finalcta__item-title::after {

  content: none !important;
  display: none !important;
}


/* 見出し周辺にSWELL由来の装飾が残るケースを補正 */

.sg-home-finalcta__item > h3,
.sg-home-finalcta
.swell-block-column > h3 {

  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v22
   PC Final Refinement
   ---------------------------------------------------------
   ・PC表示のみ最終調整
   ・既存セクション構造は変更しない
   ・デザインカンプ寄りの余白 / 密度 / 統一感
   ========================================================= */


/* =========================================================
   DESIGN TOKENS
   ========================================================= */

:root {
  --sg-v22-navy: #071f43;
  --sg-v22-navy-deep: #041936;
  --sg-v22-pink: #e52d6f;
  --sg-v22-gold: #b38a49;
  --sg-v22-ivory: #f8f3ea;
  --sg-v22-text: #162640;
  --sg-v22-muted: #667080;

  --sg-v22-width: 1180px;
  --sg-v22-radius: 16px;

  --sg-v22-shadow:
    0 12px 34px rgba(7, 31, 67, 0.08);
}


/* =========================================================
   PC ONLY
   ========================================================= */

@media (min-width: 960px) {


  /* =======================================================
     01. GLOBAL SECTION RHYTHM
     ======================================================= */

  .sg-home-status,
  .sg-home-styles,
  .sg-home-story,
  .sg-home-bbq,
  .sg-home-mail,
  .sg-home-news,
  .sg-home-column,
  .sg-home-access,
  .sg-home-finalcta {
    box-sizing: border-box;
  }


  /*
   * 白背景セクションの上下余白を統一。
   * 既存CSSより少し落ち着いた縦リズムにする。
   */

  .sg-home-status,
  .sg-home-styles,
  .sg-home-story,
  .sg-home-news,
  .sg-home-access {
    padding-top: 88px !important;
    padding-bottom: 96px !important;
  }


  /*
   * 色面を使うセクションは少し余白を厚くする。
   */

  .sg-home-bbq,
  .sg-home-mail,
  .sg-home-column,
  .sg-home-finalcta {
    padding-top: 92px !important;
    padding-bottom: 100px !important;
  }


  /* =======================================================
     02. COMMON CONTENT WIDTH
     ======================================================= */

  .sg-home-status > *,
  .sg-home-styles > *,
  .sg-home-story > *,
  .sg-home-bbq > *,
  .sg-home-mail > *,
  .sg-home-news > *,
  .sg-home-column > *,
  .sg-home-access > *,
  .sg-home-finalcta > * {
    width: min(100%, var(--sg-v22-width)) !important;
    max-width: var(--sg-v22-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }


  /* =======================================================
     03. SECTION EYEBROW
     ======================================================= */

  .home .post_content .sg-section-eyebrow {
    margin-bottom: 9px !important;

    color: var(--sg-v22-gold) !important;

    font-size: 11px !important;
    font-weight: 700 !important;

    line-height: 1.4 !important;

    letter-spacing: 0.18em !important;
  }


  /* =======================================================
     04. SECTION TITLES
     -------------------------------------------------------
     これまで一部に出ていた
     「ピンク＋ネイビー二重線」を整理
     ======================================================= */

  .home .post_content
  :is(
    .sg-home-status__title,
    .sg-home-styles__title,
    .sg-home-story__title,
    .sg-home-bbq__title,
    .sg-home-mail__title,
    .sg-home-news__title,
    .sg-home-column__title,
    .sg-home-access__title,
    .sg-home-finalcta__title
  ) {
    position: relative !important;

    padding-bottom: 18px !important;

    border: none !important;

    background: transparent !important;
    background-image: none !important;

    box-shadow: none !important;
  }


  .home .post_content
  :is(
    .sg-home-status__title,
    .sg-home-styles__title,
    .sg-home-story__title,
    .sg-home-bbq__title,
    .sg-home-mail__title,
    .sg-home-news__title,
    .sg-home-column__title,
    .sg-home-access__title,
    .sg-home-finalcta__title
  )::before {
    content: "" !important;

    position: absolute !important;

    left: 0 !important;
    right: auto !important;

    top: auto !important;
    bottom: 0 !important;

    display: block !important;

    width: 52px !important;
    height: 3px !important;

    margin: 0 !important;

    border: 0 !important;

    background:
      var(--sg-v22-pink) !important;

    transform: none !important;
  }


  .home .post_content
  :is(
    .sg-home-status__title,
    .sg-home-styles__title,
    .sg-home-story__title,
    .sg-home-bbq__title,
    .sg-home-mail__title,
    .sg-home-news__title,
    .sg-home-column__title,
    .sg-home-access__title,
    .sg-home-finalcta__title
  )::after {
    content: none !important;
    display: none !important;
  }


  /* =======================================================
     05. HERO
     -------------------------------------------------------
     現在の構造を維持したまま、
     カンプ寄りに文字位置と密度を調整
     ======================================================= */

  .home .post_content
  .wp-block-cover:has(.sg-home-hero__content) {
    min-height: 570px !important;

    padding-left:
      clamp(60px, 9vw, 150px) !important;

    padding-right:
      clamp(60px, 9vw, 150px) !important;
  }


  .home .post_content
  .wp-block-cover:has(.sg-home-hero__content)
  .wp-block-cover__inner-container {
    width: 100% !important;

    max-width: var(--sg-v22-width) !important;

    margin:
      0
      auto !important;
  }


  .sg-home-hero__content {
    max-width: 920px !important;

    margin:
      0 !important;

    padding:
      0 !important;
  }


  .sg-home-hero__eyebrow {
    margin-bottom:
      18px !important;

    font-size:
      14px !important;

    font-weight:
      700 !important;

    letter-spacing:
      0.08em !important;
  }


  .sg-home-hero__title {
    margin:
      0
      0
      30px !important;

    font-size:
      clamp(44px, 4vw, 66px) !important;

    font-weight:
      700 !important;

    line-height:
      1.12 !important;

    letter-spacing:
      0.025em !important;
  }


  .sg-home-hero__lead {
    margin:
      0
      0
      26px !important;

    font-size:
      clamp(25px, 2.1vw, 34px) !important;

    font-weight:
      700 !important;

    line-height:
      1.65 !important;
  }


  .sg-home-hero__text {
    max-width:
      720px;

    margin:
      0 !important;

    font-size:
      15px !important;

    line-height:
      1.95 !important;
  }


  /* =======================================================
     06. QUICK NAV
     ======================================================= */

  .wp-block-group.sg-home-quicknav {
    padding:
      34px
      40px
      38px !important;
  }


  .wp-block-group.sg-home-quicknav
  > .swell-block-columns {
    width:
      min(100%, var(--sg-v22-width)) !important;

    max-width:
      var(--sg-v22-width) !important;

    margin:
      0
      auto !important;
  }


  .wp-block-group.sg-home-quicknav
  .swell-block-columns__inner {
    gap:
      34px !important;
  }


  .wp-block-group.sg-home-quicknav
  h3 {
    margin-bottom:
      22px !important;

    font-size:
      20px !important;
  }


  .wp-block-group.sg-home-quicknav
  .swell-block-button__link {
    min-height:
      48px !important;
  }


  /* =======================================================
     07. BUSINESS STATUS
     ======================================================= */

  .sg-home-status__title {
    margin-bottom:
      42px !important;
  }


  /*
   * 営業状況ショートコード本体が
   * セクション幅いっぱいになり過ぎないよう統一。
   */

  .sg-home-status
  > .lux-business-status,
  .sg-home-status
  > [class*="business-status"] {
    border-radius:
      var(--sg-v22-radius) !important;
  }


  /* =======================================================
     08. THREE WAYS / STYLE CARDS
     ======================================================= */

  .sg-home-styles__intro {
    margin-bottom:
      44px !important;
  }


  .sg-home-styles
  .swell-block-columns__inner {
    gap:
      26px !important;

    align-items:
      stretch !important;
  }


  .sg-home-styles
  .swell-block-column {
    overflow:
      hidden;

    border:
      1px solid rgba(7,31,67,.07);

    border-radius:
      var(--sg-v22-radius);

    background:
      #ffffff;

    box-shadow:
      var(--sg-v22-shadow);
  }


  .sg-home-style-card__image {
    overflow:
      hidden;

    aspect-ratio:
      16 / 10;

    margin:
      0 !important;
  }


  .sg-home-style-card__image img {
    width:
      100% !important;

    height:
      100% !important;

    object-fit:
      cover;
  }


  .sg-home-styles
  .swell-block-column
  > :not(.sg-home-style-card__image) {
    margin-left:
      22px !important;

    margin-right:
      22px !important;
  }


  .sg-home-styles
  .swell-block-button {
    margin-bottom:
      24px !important;
  }


  /* =======================================================
     09. SISTER SHOP STORY
     ======================================================= */

  .sg-home-story__title {
    margin-bottom:
      42px !important;
  }


  .sg-home-story__content
  .swell-block-columns__inner {
    gap:
      44px !important;

    align-items:
      stretch !important;
  }


  .sg-home-story__image,
  .sg-home-story__image img {
    height:
      100% !important;

    min-height:
      410px;
  }


  .sg-home-story__image {
    margin:
      0 !important;

    overflow:
      hidden;

    border-radius:
      var(--sg-v22-radius);

    box-shadow:
      var(--sg-v22-shadow);
  }


  .sg-home-story__image img {
    object-fit:
      cover;
  }


  .sg-home-story__text {
    border-radius:
      var(--sg-v22-radius) !important;
  }


  /* =======================================================
     10. BBQ
     ======================================================= */

  .sg-home-bbq__lead {
    max-width:
      760px !important;

    margin-left:
      0 !important;

    margin-right:
      auto !important;
  }


  .sg-home-bbq
  .swell-block-columns__inner {
    gap:
      48px !important;
  }


  .sg-home-bbq
  .wp-block-image {
    border-radius:
      var(--sg-v22-radius) !important;

    box-shadow:
      var(--sg-v22-shadow) !important;
  }


  /* =======================================================
     11. MAIL
     ======================================================= */

  .sg-home-mail {
    background:
      linear-gradient(
        135deg,
        #071f43 0%,
        #123858 100%
      ) !important;
  }


  .sg-home-mail__lead {
    max-width:
      760px;

    margin-left:
      0 !important;

    margin-right:
      auto !important;
  }


  .sg-home-mail
  .swell-block-columns__inner {
    gap:
      58px !important;
  }


  .sg-home-mail__card {
    border-radius:
      var(--sg-v22-radius) !important;
  }


  /* =======================================================
     12. NEWS / COLUMN
     ======================================================= */

  .sg-home-news__list,
  .sg-home-column__list {
    margin-top:
      10px !important;

    margin-bottom:
      38px !important;
  }


  .sg-home-news__list
  .p-postList,
  .sg-home-column__list
  .p-postList {
    gap:
      26px !important;
  }


  .sg-home-news__list
  .p-postList__item,
  .sg-home-column__list
  .p-postList__item {
    border-radius:
      var(--sg-v22-radius) !important;

    box-shadow:
      var(--sg-v22-shadow) !important;
  }


  /*
   * 投稿が1件しかない開発中でも、
   * カードが巨大化しない。
   */

  .sg-home-news__list
  .p-postList__item:only-child,
  .sg-home-column__list
  .p-postList__item:only-child {
    max-width:
      360px !important;
  }


  /* =======================================================
     13. ACCESS
     ======================================================= */

  .sg-home-access__lead {
    margin-bottom:
      42px !important;
  }


  .sg-home-access
  .swell-block-columns__inner {
    gap:
      42px !important;
  }


  .sg-home-access__info,
  .sg-home-access__map {
    min-height:
      390px !important;

    border-radius:
      var(--sg-v22-radius) !important;
  }


  .sg-home-access__info {
    padding:
      42px !important;
  }


  /* =======================================================
     14. FINAL CTA
     ======================================================= */

  .sg-home-finalcta {
    background:
      linear-gradient(
        135deg,
        #071f43 0%,
        #123858 100%
      ) !important;
  }


  .sg-home-finalcta__lead {
    margin-bottom:
      52px !important;
  }


  .sg-home-finalcta
  .swell-block-columns__inner {
    gap:
      30px !important;
  }


  .sg-home-finalcta__item {
    min-height:
      310px !important;

    padding:
      34px !important;

    border-radius:
      var(--sg-v22-radius) !important;
  }


  .sg-home-finalcta__item-title {
    margin-bottom:
      26px !important;
  }


  .sg-home-finalcta__item-text {
    margin-bottom:
      30px !important;
  }


  /* =======================================================
     15. BUTTON CONSISTENCY
     ======================================================= */

  .home .post_content
  .swell-block-button__link {
    min-height:
      48px;

    font-weight:
      700;

    letter-spacing:
      0.025em;
  }


  /*
   * 不自然に太すぎる影は抑える。
   */

  .home .post_content
  .swell-block-button__link {
    box-shadow:
      0 5px 14px
      rgba(7,31,67,.10);
  }


  .home .post_content
  [class*="seat-button"]
  .swell-block-button__link,
  .home .post_content
  [class*="bbq-button"]
  .swell-block-button__link,
  .home .post_content
  .sg-home-mail__button
  .swell-block-button__link {
    box-shadow:
      0 7px 18px
      rgba(229,45,111,.18);
  }


  /* =======================================================
     16. IMAGE QUALITY / CROPPING
     ======================================================= */

  .home .post_content img {
    image-rendering:
      auto;
  }


  .sg-home-styles img,
  .sg-home-story img,
  .sg-home-bbq img {
    object-position:
      center center;
  }


  /* =======================================================
     17. REMOVE STRAY EMPTY PARAGRAPH SPACING
     ======================================================= */

  .home .post_content
  > p:empty,
  .home .post_content
  .wp-block-group
  > p:empty {
    display:
      none !important;

    margin:
      0 !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v22.1
   HERO PC Final Adjustment
   ========================================================= */

@media (min-width: 960px) {

  .sg-home-hero__content {
    max-width: 1100px !important;
  }

  .sg-home-hero__title {
    width: max-content !important;
    max-width: 100% !important;

    font-size:
      clamp(42px, 3.5vw, 58px) !important;

    white-space: nowrap !important;
  }
}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v24
   PC Visual Polish
   ========================================================= */

@media (min-width: 960px) {


  /* =======================================================
     01. WHY SEASIDE GARDEN
     6アイコンの存在感をアップ
     ======================================================= */

  .sg-home-features,
  .sg-home-attractions,
  .sg-home-charm {
    padding-top: 94px !important;
    padding-bottom: 100px !important;
  }


  /*
   * 「魅力」セクション内の画像が小さすぎる場合に拡大。
   * クラス名に依存しすぎず、該当セクション内画像へ限定。
   */

  .sg-home-features img,
  .sg-home-attractions img,
  .sg-home-charm img {
    width: 118px !important;
    height: 118px !important;

    object-fit: cover;

    border-radius: 14px;

    box-shadow:
      0 8px 22px rgba(7,31,67,.10);
  }


  /* もし現在の「魅力」グループが別クラスでも効く補助指定 */

  .home .post_content
  .wp-block-group:has(> .sg-section-eyebrow)
  img[src*="2026/09"] {
    transition:
      transform .25s ease,
      box-shadow .25s ease;
  }


  /* =======================================================
     02. SISTER SHOP STORY
     写真と文章カードを少し堂々と
     ======================================================= */

  .sg-home-story__content
  .swell-block-columns__inner {
    grid-template-columns:
      minmax(0, 1.15fr)
      minmax(0, .85fr) !important;

    gap: 48px !important;
  }


  .sg-home-story__image,
  .sg-home-story__image img {
    min-height: 430px !important;
  }


  .sg-home-story__text {
    display: flex !important;

    flex-direction: column;

    justify-content: center;

    padding:
      42px !important;
  }


  /* =======================================================
     03. BBQ
     写真をやや主役寄りに
     ======================================================= */

  .sg-home-bbq
  .swell-block-columns__inner {
    grid-template-columns:
      minmax(0, 1.1fr)
      minmax(0, .9fr) !important;

    gap: 52px !important;
  }


  .sg-home-bbq
  .wp-block-image,
  .sg-home-bbq
  .wp-block-image img {
    min-height: 440px !important;
  }


  .sg-home-bbq
  .swell-block-column:nth-child(2) {
    padding:
      40px !important;
  }


  /* =======================================================
     04. MAIL SECTION
     左右の視覚バランス
     ======================================================= */

  .sg-home-mail
  .swell-block-columns__inner {
    align-items: center !important;
  }


  .sg-home-mail__card {
    max-width: 430px !important;

    margin-left: auto !important;
  }


  /* =======================================================
     05. NEWS / COLUMN
     投稿が1件だけの開発中表示を自然に
     ※3件になれば通常グリッドへ戻る
     ======================================================= */

  .sg-home-news__list
  .p-postList:has(.p-postList__item:only-child),
  .sg-home-column__list
  .p-postList:has(.p-postList__item:only-child) {
    grid-template-columns:
      360px !important;

    justify-content:
      start !important;
  }


  /* =======================================================
     06. ACCESS
     左右高さと余白を微調整
     ======================================================= */

  .sg-home-access__info,
  .sg-home-access__map {
    min-height:
      405px !important;
  }


  .sg-home-access__info {
    padding:
      44px !important;
  }


  /* =======================================================
     07. FINAL CTA
     仕上がっているので軽微な調整のみ
     ======================================================= */

  .sg-home-finalcta
  .swell-block-columns__inner {
    gap:
      28px !important;
  }


  .sg-home-finalcta__item {
    min-height:
      305px !important;

    transition:
      transform .25s ease,
      border-color .25s ease,
      background-color .25s ease;
  }


  .sg-home-finalcta__item:hover {
    transform:
      translateY(-3px);

    border-color:
      rgba(255,255,255,.23) !important;

    background:
      rgba(255,255,255,.09) !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v25
   HERO QUICK NAV / Design Comp Style
   ========================================================= */


/* =========================================================
   SECTION
   ========================================================= */

.sg-home-quicknav {
  position: relative !important;
  z-index: 10 !important;

  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;

  padding:
    0
    clamp(20px, 4vw, 52px)
    clamp(40px, 4.5vw, 58px) !important;

  box-sizing: border-box;

  background:
    var(--sg-v22-ivory, #f8f3ea) !important;

  overflow: visible !important;
}


/* =========================================================
   COLUMNS
   ========================================================= */

.sg-home-quicknav
.sg-home-quicknav__columns {
  width:
    min(100%, 1180px) !important;

  max-width:
    1180px !important;

  margin:
    -48px
    auto
    0 !important;

  overflow:
    visible !important;
}


.sg-home-quicknav
.sg-home-quicknav__columns
> .swell-block-columns__inner {
  display: grid !important;

  grid-template-columns:
    repeat(4, minmax(0, 1fr)) !important;

  gap:
    14px !important;

  align-items:
    stretch !important;

  margin: 0 !important;
}


/* =========================================================
   CARD COMMON
   ========================================================= */

.sg-home-quicknav
.sg-home-quicknav__item {
  display: flex !important;

  flex-direction: column !important;

  align-items: center !important;

  justify-content: center !important;

  width: 100% !important;
  min-width: 0 !important;
  min-height: 176px !important;

  margin: 0 !important;

  padding:
    22px
    18px
    18px !important;

  box-sizing: border-box !important;

  border:
    1px solid
    rgba(7,31,67,.12) !important;

  border-radius:
    12px !important;

  background:
    rgba(255,255,255,.96) !important;

  box-shadow:
    0 9px 25px
    rgba(7,31,67,.08) !important;

  text-align:
    center !important;

  transition:
    transform .25s ease,
    box-shadow .25s ease,
    border-color .25s ease;
}


.sg-home-quicknav
.sg-home-quicknav__item:hover {
  transform:
    translateY(-3px);

  border-color:
    rgba(7,31,67,.19) !important;

  box-shadow:
    0 14px 32px
    rgba(7,31,67,.12) !important;
}


/* =========================================================
   ICON
   ========================================================= */

.sg-home-quicknav__icon {
  display: flex;

  align-items: center;
  justify-content: center;

  width: 48px;
  height: 48px;

  margin:
    0
    auto
    8px;
}


.sg-home-quicknav__icon svg {
  width: 42px;
  height: 42px;

  fill: none;

  stroke:
    var(--sg-v22-navy, #071f43);

  stroke-width: 2.2;

  stroke-linecap: round;
  stroke-linejoin: round;
}


/* =========================================================
   H3 RESET
   ========================================================= */

.home .post_content
.sg-home-quicknav
h3.sg-home-quicknav__title {
  position: relative !important;

  width: 100% !important;

  margin:
    0
    0
    7px !important;

  padding:
    0 !important;

  border:
    0 !important;

  background:
    transparent !important;

  background-image:
    none !important;

  box-shadow:
    none !important;

  color:
    var(--sg-v22-navy, #071f43) !important;

  font-size:
    17px !important;

  font-weight:
    700 !important;

  line-height:
    1.45 !important;

  text-align:
    center !important;
}


.home .post_content
.sg-home-quicknav
h3.sg-home-quicknav__title::before,
.home .post_content
.sg-home-quicknav
h3.sg-home-quicknav__title::after {
  content:
    none !important;

  display:
    none !important;
}


/* =========================================================
   BUTTON RESET → TEXT LINK
   ========================================================= */

.sg-home-quicknav
.sg-home-quicknav__link {
  width:
    auto !important;

  margin:
    auto
    0
    0 !important;
}


.sg-home-quicknav
.sg-home-quicknav__link
.swell-block-button__link {
  display:
    inline-flex !important;

  align-items:
    center;

  justify-content:
    center;

  width:
    auto !important;

  min-width:
    0 !important;

  min-height:
    0 !important;

  padding:
    4px
    10px !important;

  border:
    0 !important;

  border-radius:
    0 !important;

  background:
    transparent !important;

  box-shadow:
    none !important;

  color:
    var(--sg-v22-navy, #071f43) !important;

  font-size:
    12px !important;

  font-weight:
    700 !important;

  line-height:
    1.5 !important;

  letter-spacing:
    .02em !important;

  text-decoration:
    none !important;
}


.sg-home-quicknav
.sg-home-quicknav__link
.swell-block-button__link span::after {
  content:
    " →";

  margin-left:
    5px;

  transition:
    transform .2s ease;
}


.sg-home-quicknav
.sg-home-quicknav__item:hover
.sg-home-quicknav__link
.swell-block-button__link span::after {
  display:
    inline-block;

  transform:
    translateX(3px);
}


/* =========================================================
   ROUTE CARD
   ========================================================= */

.sg-home-quicknav
.sg-home-quicknav__route {
  border-color:
    var(--sg-v22-navy, #071f43) !important;

  background:
    var(--sg-v22-navy, #071f43) !important;

  box-shadow:
    0 12px 28px
    rgba(7,31,67,.18) !important;
}


.sg-home-quicknav
.sg-home-quicknav__route
.sg-home-quicknav__icon svg {
  stroke:
    #ffffff !important;
}


.home .post_content
.sg-home-quicknav
.sg-home-quicknav__route
h3.sg-home-quicknav__title {
  color:
    #ffffff !important;
}


.sg-home-quicknav__route-note {
  margin:
    0
    0
    5px !important;

  color:
    rgba(255,255,255,.72) !important;

  font-size:
    10px !important;

  line-height:
    1.5 !important;
}


.sg-home-quicknav
.sg-home-quicknav__route
.sg-home-quicknav__link
.swell-block-button__link {
  color:
    #ffffff !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 959px) {

  .sg-home-quicknav {
    padding:
      0
      24px
      40px !important;
  }


  .sg-home-quicknav
  .sg-home-quicknav__columns {
    margin-top:
      -32px !important;
  }


  .sg-home-quicknav
  .sg-home-quicknav__columns
  > .swell-block-columns__inner {
    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;

    gap:
      12px !important;
  }


  .sg-home-quicknav
  .sg-home-quicknav__item {
    min-height:
      160px !important;
  }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 599px) {

  .sg-home-quicknav {
    padding:
      0
      14px
      32px !important;
  }


  .sg-home-quicknav
  .sg-home-quicknav__columns {
    margin-top:
      -20px !important;
  }


  .sg-home-quicknav
  .sg-home-quicknav__columns
  > .swell-block-columns__inner {
    grid-template-columns:
      repeat(3, minmax(0, 1fr)) !important;

    gap:
      8px !important;
  }


  /*
   * モバイルは
   * 上3カード＋ルート1枚を全幅
   * カンプのスマホ構成へ寄せる
   */

  .sg-home-quicknav
  .sg-home-quicknav__route {
    grid-column:
      1 / -1;
  }


  .sg-home-quicknav
  .sg-home-quicknav__item {
    min-height:
      132px !important;

    padding:
      16px
      8px
      13px !important;

    border-radius:
      9px !important;
  }


  .sg-home-quicknav__icon {
    width:
      38px;

    height:
      38px;

    margin-bottom:
      5px;
  }


  .sg-home-quicknav__icon svg {
    width:
      32px;

    height:
      32px;
  }


  .home .post_content
  .sg-home-quicknav
  h3.sg-home-quicknav__title {
    font-size:
      13px !important;
  }


  .sg-home-quicknav
  .sg-home-quicknav__link
  .swell-block-button__link {
    padding:
      2px
      3px !important;

    font-size:
      9px !important;
  }


  .sg-home-quicknav
  .sg-home-quicknav__route {
    min-height:
      64px !important;

    flex-direction:
      row !important;

    gap:
      10px;

    padding:
      10px
      14px !important;
  }


  .sg-home-quicknav
  .sg-home-quicknav__route
  .sg-home-quicknav__icon {
    width:
      28px;

    height:
      28px;

    margin:
      0 !important;
  }


  .sg-home-quicknav
  .sg-home-quicknav__route
  .sg-home-quicknav__icon svg {
    width:
      26px;

    height:
      26px;
  }


  .sg-home-quicknav
  .sg-home-quicknav__route
  h3.sg-home-quicknav__title {
    width:
      auto !important;

    margin:
      0 !important;
  }


  .sg-home-quicknav__route-note {
    display:
      none !important;
  }


  .sg-home-quicknav
  .sg-home-quicknav__route
  .sg-home-quicknav__link {
    margin:
      0 !important;
  }
}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v26
   SCENES / Design Comp Style
   ========================================================= */


/* =========================================================
   SECTION
   ========================================================= */

.sg-home-scenes {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;

  padding:
    clamp(68px, 6.5vw, 94px)
    clamp(24px, 4vw, 56px)
    clamp(72px, 7vw, 100px) !important;

  box-sizing: border-box;

  background:
    var(--sg-v22-ivory, #f8f3ea) !important;
}


/* =========================================================
   INNER WIDTH
   ========================================================= */

.sg-home-scenes > * {
  width:
    min(100%, 1180px) !important;

  max-width:
    1180px !important;

  margin-left:
    auto !important;

  margin-right:
    auto !important;
}


/* =========================================================
   EYEBROW
   ========================================================= */

.sg-home-scenes
.sg-section-eyebrow {
  margin:
    0
    auto
    8px !important;

  color:
    var(--sg-v22-gold, #b38a49) !important;

  font-size:
    11px !important;

  font-weight:
    700 !important;

  line-height:
    1.4 !important;

  letter-spacing:
    .18em !important;

  text-align:
    center !important;

  text-transform:
    uppercase;
}


/* =========================================================
   TITLE
   ========================================================= */

.home .post_content
.sg-home-scenes
h2.sg-home-scenes__title {
  position:
    relative !important;

  margin:
    0
    auto
    52px !important;

  padding:
    0
    0
    19px !important;

  border:
    0 !important;

  background:
    transparent !important;

  background-image:
    none !important;

  box-shadow:
    none !important;

  color:
    var(--sg-v22-navy, #071f43) !important;

  font-size:
    clamp(27px, 2.3vw, 36px) !important;

  font-weight:
    700 !important;

  line-height:
    1.4 !important;

  text-align:
    center !important;
}


/* カンプに合わせて中央に短いピンク線 */

.home .post_content
.sg-home-scenes
h2.sg-home-scenes__title::before {
  content:
    "" !important;

  position:
    absolute !important;

  left:
    50% !important;

  right:
    auto !important;

  top:
    auto !important;

  bottom:
    0 !important;

  width:
    48px !important;

  height:
    2px !important;

  margin:
    0 !important;

  background:
    var(--sg-v22-pink, #e52d6f) !important;

  transform:
    translateX(-50%) !important;
}


.home .post_content
.sg-home-scenes
h2.sg-home-scenes__title::after {
  content:
    none !important;

  display:
    none !important;
}


/* =========================================================
   SIX COLUMNS
   ========================================================= */

.sg-home-scenes
.sg-home-scenes__columns {
  width:
    min(100%, 1100px) !important;

  max-width:
    1100px !important;

  margin:
    0
    auto !important;
}


.sg-home-scenes
.sg-home-scenes__columns
> .swell-block-columns__inner {
  display:
    grid !important;

  grid-template-columns:
    repeat(6, minmax(0, 1fr)) !important;

  gap:
    clamp(18px, 2.3vw, 34px) !important;

  align-items:
    start !important;

  margin:
    0 !important;

  padding:
    0 !important;
}


/* =========================================================
   SCENE ITEM
   カードではなく、カンプの軽いアイコン型
   ========================================================= */

.sg-home-scenes
.sg-home-scene-card {
  display:
    flex !important;

  flex-direction:
    column !important;

  align-items:
    center !important;

  justify-content:
    flex-start !important;

  width:
    100% !important;

  min-width:
    0 !important;

  margin:
    0 !important;

  padding:
    0 !important;

  border:
    0 !important;

  border-radius:
    0 !important;

  background:
    transparent !important;

  box-shadow:
    none !important;

  text-align:
    center !important;
}


/* =========================================================
   ICON
   ========================================================= */

.sg-home-scene-card__icon {
  display:
    flex;

  align-items:
    center;

  justify-content:
    center;

  width:
    68px;

  height:
    68px;

  margin:
    0
    auto
    14px;
}


.sg-home-scene-card__icon svg {
  width:
    52px;

  height:
    52px;

  fill:
    none;

  stroke:
    var(--sg-v22-navy, #071f43);

  stroke-width:
    2;

  stroke-linecap:
    round;

  stroke-linejoin:
    round;

  overflow:
    visible;

  transition:
    transform .25s ease,
    stroke .25s ease;
}


.sg-home-scene-card:hover
.sg-home-scene-card__icon svg {
  transform:
    translateY(-3px);

  stroke:
    #0c4472;
}


/* =========================================================
   ITEM TITLE
   ========================================================= */

.home .post_content
.sg-home-scenes
h3.sg-home-scene-card__title {
  position:
    relative !important;

  width:
    100% !important;

  margin:
    0 !important;

  padding:
    0 !important;

  border:
    0 !important;

  background:
    transparent !important;

  background-image:
    none !important;

  box-shadow:
    none !important;

  color:
    var(--sg-v22-navy, #071f43) !important;

  font-size:
    14px !important;

  font-weight:
    700 !important;

  line-height:
    1.55 !important;

  text-align:
    center !important;
}


.home .post_content
.sg-home-scenes
h3.sg-home-scene-card__title::before,
.home .post_content
.sg-home-scenes
h3.sg-home-scene-card__title::after {
  content:
    none !important;

  display:
    none !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 959px) {

  .sg-home-scenes {
    padding:
      62px
      26px
      72px !important;
  }


  .sg-home-scenes
  .sg-home-scenes__columns
  > .swell-block-columns__inner {
    grid-template-columns:
      repeat(3, minmax(0, 1fr)) !important;

    row-gap:
      38px !important;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 599px) {

  .sg-home-scenes {
    padding:
      52px
      18px
      60px !important;
  }


  .sg-home-scenes
  .sg-section-eyebrow {
    font-size:
      10px !important;
  }


  .home .post_content
  .sg-home-scenes
  h2.sg-home-scenes__title {
    margin-bottom:
      36px !important;

    font-size:
      24px !important;
  }


  .sg-home-scenes
  .sg-home-scenes__columns
  > .swell-block-columns__inner {
    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;

    column-gap:
      18px !important;

    row-gap:
      32px !important;
  }


  .sg-home-scene-card__icon {
    width:
      58px;

    height:
      58px;

    margin-bottom:
      10px;
  }


  .sg-home-scene-card__icon svg {
    width:
      44px;

    height:
      44px;
  }


  .home .post_content
  .sg-home-scenes
  h3.sg-home-scene-card__title {
    font-size:
      13px !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v27
   TERRACE BBQ / Design Comp Style
   ========================================================= */


/* =========================================================
   SECTION
   ========================================================= */

.sg-home-bbq {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;

  padding:
    clamp(76px, 7vw, 104px)
    clamp(24px, 4vw, 56px)
    clamp(82px, 7.5vw, 110px) !important;

  box-sizing: border-box;

  background:
    var(--sg-v22-ivory, #f8f3ea) !important;
}


.sg-home-bbq > * {
  width:
    min(100%, 1180px) !important;

  max-width:
    1180px !important;

  margin-left:
    auto !important;

  margin-right:
    auto !important;
}


/* =========================================================
   EYEBROW
   ========================================================= */

.sg-home-bbq
.sg-section-eyebrow {
  margin:
    0
    auto
    8px !important;

  color:
    var(--sg-v22-gold, #b38a49) !important;

  font-size:
    11px !important;

  font-weight:
    700 !important;

  letter-spacing:
    .18em !important;
}


/* =========================================================
   TITLE
   ========================================================= */

.home .post_content
.sg-home-bbq
h2.sg-home-bbq__title {
  position:
    relative !important;

  margin:
    0
    auto
    22px !important;

  padding:
    0
    0
    18px !important;

  border:
    0 !important;

  background:
    transparent !important;

  background-image:
    none !important;

  box-shadow:
    none !important;

  color:
    var(--sg-v22-navy, #071f43) !important;

  font-size:
    clamp(29px, 2.6vw, 40px) !important;

  font-weight:
    700 !important;

  line-height:
    1.45 !important;

  text-align:
    left !important;
}


.home .post_content
.sg-home-bbq
h2.sg-home-bbq__title::before {
  content:
    "" !important;

  position:
    absolute !important;

  left:
    0 !important;

  bottom:
    0 !important;

  width:
    54px !important;

  height:
    3px !important;

  background:
    var(--sg-v22-pink, #e52d6f) !important;
}


.home .post_content
.sg-home-bbq
h2.sg-home-bbq__title::after {
  content:
    none !important;

  display:
    none !important;
}


/* =========================================================
   LEAD
   ========================================================= */

.sg-home-bbq__lead {
  max-width:
    760px !important;

  margin:
    0
    auto
    42px
    0 !important;

  color:
    var(--sg-v22-text, #162640) !important;

  font-size:
    15px !important;

  line-height:
    1.9 !important;
}


/* =========================================================
   MAIN LAYOUT
   ========================================================= */

.sg-home-bbq
.sg-home-bbq__main {
  width:
    min(100%, 1180px) !important;

  max-width:
    1180px !important;

  margin:
    0
    auto !important;
}


.sg-home-bbq
.sg-home-bbq__main
> .swell-block-columns__inner {
  display:
    grid !important;

  grid-template-columns:
    minmax(0, 1.08fr)
    minmax(0, .92fr) !important;

  gap:
    clamp(34px, 4vw, 52px) !important;

  align-items:
    stretch !important;
}


/* 以前のBBQ CSSによるpaddingを解除 */

.sg-home-bbq
.sg-home-bbq__main
.sg-home-bbq__visual-column,
.sg-home-bbq
.sg-home-bbq__main
.sg-home-bbq__panel-column {
  width:
    100% !important;

  min-width:
    0 !important;

  margin:
    0 !important;

  padding:
    0 !important;
}


/* =========================================================
   LARGE IMAGE
   ========================================================= */

.sg-home-bbq
.sg-home-bbq__hero-image {
  width:
    100% !important;

  height:
    100% !important;

  min-height:
    520px !important;

  margin:
    0 !important;

  overflow:
    hidden;

  border-radius:
    18px !important;

  box-shadow:
    0 14px 34px
    rgba(7,31,67,.10) !important;
}


.sg-home-bbq
.sg-home-bbq__hero-image img {
  display:
    block;

  width:
    100% !important;

  height:
    100% !important;

  min-height:
    520px !important;

  object-fit:
    cover !important;

  object-position:
    center center !important;
}


/* =========================================================
   PLAN PANEL
   ========================================================= */

.sg-home-bbq__panel {
  display:
    flex !important;

  flex-direction:
    column !important;

  height:
    100%;

  margin:
    0 !important;

  padding:
    clamp(28px, 3vw, 38px) !important;

  box-sizing:
    border-box;

  border:
    1px solid
    rgba(7,31,67,.08);

  border-radius:
    18px;

  background:
    #ffffff;

  box-shadow:
    0 12px 32px
    rgba(7,31,67,.08);
}


/* =========================================================
   PANEL EYEBROW
   ========================================================= */

.sg-home-bbq__panel-eyebrow {
  margin:
    0
    0
    7px !important;

  color:
    var(--sg-v22-gold, #b38a49) !important;

  font-size:
    10px !important;

  font-weight:
    700 !important;

  letter-spacing:
    .17em !important;
}


/* =========================================================
   PANEL TITLE
   ========================================================= */

.home .post_content
.sg-home-bbq
h3.sg-home-bbq__panel-title {
  position:
    relative !important;

  margin:
    0
    0
    20px !important;

  padding:
    0
    0
    14px !important;

  border:
    0 !important;

  background:
    transparent !important;

  box-shadow:
    none !important;

  color:
    var(--sg-v22-navy, #071f43) !important;

  font-size:
    clamp(20px, 1.75vw, 26px) !important;

  font-weight:
    700 !important;

  line-height:
    1.5 !important;
}


.home .post_content
.sg-home-bbq
h3.sg-home-bbq__panel-title::before {
  content:
    "";

  position:
    absolute;

  left:
    0;

  bottom:
    0;

  width:
    42px;

  height:
    2px;

  background:
    var(--sg-v22-pink, #e52d6f);
}


.home .post_content
.sg-home-bbq
h3.sg-home-bbq__panel-title::after {
  content:
    none !important;

  display:
    none !important;
}


.sg-home-bbq__panel-text {
  margin:
    0
    0
    25px !important;

  color:
    var(--sg-v22-text, #162640);

  font-size:
    13px;

  line-height:
    1.85;
}


/* =========================================================
   PLAN GRID
   ========================================================= */

.sg-home-bbq
.sg-home-bbq__plans {
  width:
    100% !important;

  max-width:
    none !important;

  margin:
    0
    0
    22px !important;
}


.sg-home-bbq
.sg-home-bbq__plans
> .swell-block-columns__inner {
  display:
    grid !important;

  grid-template-columns:
    repeat(3, minmax(0, 1fr)) !important;

  gap:
    10px !important;

  align-items:
    stretch !important;
}


/* 過去の nth-child 指定を完全解除 */

.sg-home-bbq
.sg-home-bbq__plans
.swell-block-column {
  width:
    100% !important;

  min-width:
    0 !important;

  margin:
    0 !important;

  padding:
    0 !important;
}


/* =========================================================
   PLAN CARD
   ========================================================= */

.sg-home-bbq-plan {
  overflow:
    hidden !important;

  border:
    1px solid
    rgba(7,31,67,.10) !important;

  border-radius:
    10px !important;

  background:
    var(--sg-v22-ivory, #f8f3ea) !important;

  box-shadow:
    none !important;
}


/* =========================================================
   PLAN IMAGE
   ========================================================= */

.sg-home-bbq
.sg-home-bbq-plan__image {
  width:
    100% !important;

  height:
    116px !important;

  min-height:
    0 !important;

  margin:
    0 !important;

  overflow:
    hidden;

  border-radius:
    0 !important;

  box-shadow:
    none !important;
}


.sg-home-bbq
.sg-home-bbq-plan__image img {
  display:
    block;

  width:
    100% !important;

  height:
    116px !important;

  min-height:
    0 !important;

  object-fit:
    cover !important;
}


/* 同じ写真でも仮段階で違うクロップにする */

.sg-home-bbq-plan__image--01 img {
  object-position:
    left center !important;
}


.sg-home-bbq-plan__image--02 img {
  object-position:
    center center !important;
}


.sg-home-bbq-plan__image--03 img {
  object-position:
    right center !important;
}


/* =========================================================
   PLAN CONTENT
   ========================================================= */

.sg-home-bbq-plan__number {
  margin:
    12px
    12px
    4px !important;

  color:
    var(--sg-v22-gold, #b38a49) !important;

  font-size:
    9px !important;

  font-weight:
    700 !important;

  letter-spacing:
    .14em;
}


.home .post_content
.sg-home-bbq
h4.sg-home-bbq-plan__title {
  margin:
    0
    12px
    8px !important;

  padding:
    0 !important;

  border:
    0 !important;

  background:
    transparent !important;

  color:
    var(--sg-v22-navy, #071f43) !important;

  font-size:
    12px !important;

  font-weight:
    700 !important;

  line-height:
    1.5 !important;
}


.home .post_content
.sg-home-bbq
h4.sg-home-bbq-plan__title::before,
.home .post_content
.sg-home-bbq
h4.sg-home-bbq-plan__title::after {
  content:
    none !important;

  display:
    none !important;
}


.sg-home-bbq-plan__status {
  margin:
    0
    12px
    14px !important;

  color:
    #6b7280 !important;

  font-size:
    10px !important;

  line-height:
    1.65 !important;
}


/* =========================================================
   NOTICE
   ========================================================= */

.sg-home-bbq__notice {
  margin:
    0
    0
    22px !important;

  padding:
    11px
    13px !important;

  border-left:
    3px solid
    var(--sg-v22-gold, #b38a49);

  background:
    var(--sg-v22-ivory, #f8f3ea);

  color:
    #6d685f !important;

  font-size:
    10px !important;

  line-height:
    1.7 !important;
}


/* =========================================================
   ACTIONS
   ========================================================= */

.sg-home-bbq__actions {
  display:
    grid !important;

  grid-template-columns:
    1fr
    1fr;

  gap:
    10px;

  width:
    100% !important;

  margin:
    auto
    0
    0 !important;

  padding:
    0 !important;
}


.sg-home-bbq__actions
.swell-block-button {
  width:
    100% !important;

  margin:
    0 !important;
}


.sg-home-bbq__actions
.swell-block-button__link {
  display:
    flex !important;

  align-items:
    center;

  justify-content:
    center;

  width:
    100% !important;

  min-height:
    48px !important;

  padding:
    11px
    16px !important;

  border-radius:
    999px !important;

  font-size:
    12px !important;

  font-weight:
    700 !important;
}


/* PLAN DETAIL */

.sg-home-bbq__detail-button
.swell-block-button__link {
  border:
    1px solid
    var(--sg-v22-navy, #071f43) !important;

  background:
    #ffffff !important;

  color:
    var(--sg-v22-navy, #071f43) !important;

  box-shadow:
    none !important;
}


/* RESERVATION */

.sg-home-bbq__reserve-button
.swell-block-button__link {
  border:
    1px solid
    var(--sg-v22-pink, #e52d6f) !important;

  background:
    var(--sg-v22-pink, #e52d6f) !important;

  color:
    #ffffff !important;

  box-shadow:
    0 7px 18px
    rgba(229,45,111,.20) !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 959px) {

  .sg-home-bbq {
    padding:
      64px
      26px
      76px !important;
  }


  .sg-home-bbq
  .sg-home-bbq__main
  > .swell-block-columns__inner {
    grid-template-columns:
      1fr !important;

    gap:
      28px !important;
  }


  .sg-home-bbq
  .sg-home-bbq__hero-image,
  .sg-home-bbq
  .sg-home-bbq__hero-image img {
    min-height:
      420px !important;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 599px) {

  .sg-home-bbq {
    padding:
      52px
      18px
      62px !important;
  }


  .home .post_content
  .sg-home-bbq
  h2.sg-home-bbq__title {
    font-size:
      24px !important;
  }


  .sg-home-bbq__lead {
    margin-bottom:
      28px !important;

    font-size:
      14px !important;
  }


  .sg-home-bbq
  .sg-home-bbq__hero-image,
  .sg-home-bbq
  .sg-home-bbq__hero-image img {
    min-height:
      300px !important;
  }


  .sg-home-bbq__panel {
    padding:
      24px
      19px !important;

    border-radius:
      14px;
  }


  .sg-home-bbq
  .sg-home-bbq__plans
  > .swell-block-columns__inner {
    grid-template-columns:
      1fr !important;

    gap:
      12px !important;
  }


  .sg-home-bbq-plan {
    display:
      grid !important;

    grid-template-columns:
      120px
      minmax(0, 1fr);

    grid-template-rows:
      auto auto auto;
  }


  .sg-home-bbq
  .sg-home-bbq-plan__image {
    grid-column:
      1;

    grid-row:
      1 / 4;

    width:
      120px !important;

    height:
      100% !important;
  }


  .sg-home-bbq
  .sg-home-bbq-plan__image img {
    height:
      100% !important;

    min-height:
      118px !important;
  }


  .sg-home-bbq-plan__number {
    grid-column:
      2;

    margin:
      12px
      13px
      3px !important;
  }


  .home .post_content
  .sg-home-bbq
  h4.sg-home-bbq-plan__title {
    grid-column:
      2;

    margin:
      0
      13px
      5px !important;
  }


  .sg-home-bbq-plan__status {
    grid-column:
      2;

    margin:
      0
      13px
      12px !important;
  }


  .sg-home-bbq__actions {
    grid-template-columns:
      1fr;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v27.1
   TERRACE BBQ / Final Visual Refinement
   ========================================================= */

@media (min-width: 960px) {


  /* =======================================================
     01. MAIN LAYOUT
     左の写真を少し広く、右側も十分な幅を確保
     ======================================================= */

  .sg-home-bbq
  .sg-home-bbq__main
  > .swell-block-columns__inner {
    grid-template-columns:
      minmax(0, 1.12fr)
      minmax(0, 1fr) !important;

    gap:
      38px !important;

    align-items:
      stretch !important;
  }


  /* =======================================================
     02. MAIN BBQ IMAGE
     縦長ではなく、カンプに近い横長ビジュアルへ
     ======================================================= */

  .sg-home-bbq
  .sg-home-bbq__hero-image {
    width:
      100% !important;

    height:
      auto !important;

    min-height:
      0 !important;

    aspect-ratio:
      4 / 3 !important;

    margin:
      0 !important;

    border-radius:
      16px !important;
  }


  .sg-home-bbq
  .sg-home-bbq__hero-image img {
    width:
      100% !important;

    height:
      100% !important;

    min-height:
      0 !important;

    aspect-ratio:
      4 / 3 !important;

    object-fit:
      cover !important;

    /*
     * 現在の写真では、
     * BBQグリルと料理が見える範囲を優先
     */
    object-position:
      center 48% !important;
  }


  /* =======================================================
     03. RIGHT PANEL
     カンプのように少し軽く、情報を広く使う
     ======================================================= */

  .sg-home-bbq__panel {
    height:
      100% !important;

    padding:
      30px !important;

    border-radius:
      16px !important;
  }


  .sg-home-bbq__panel-text {
    margin-bottom:
      20px !important;

    font-size:
      13px !important;

    line-height:
      1.8 !important;
  }


  /* =======================================================
     04. PLAN GRID
     小さすぎた3カードを拡大
     ======================================================= */

  .sg-home-bbq
  .sg-home-bbq__plans
  > .swell-block-columns__inner {
    gap:
      12px !important;
  }


  .sg-home-bbq-plan {
    display:
      flex !important;

    flex-direction:
      column !important;

    min-height:
      250px !important;

    border-radius:
      11px !important;

    background:
      #ffffff !important;

    box-shadow:
      0 5px 16px
      rgba(7,31,67,.06) !important;
  }


  /* =======================================================
     05. PLAN IMAGES
     ======================================================= */

  .sg-home-bbq
  .sg-home-bbq-plan__image {
    height:
      138px !important;

    min-height:
      138px !important;
  }


  .sg-home-bbq
  .sg-home-bbq-plan__image img {
    height:
      138px !important;

    min-height:
      138px !important;

    object-fit:
      cover !important;
  }


  /* 3枚が同じ写真でも少し見え方を変える */

  .sg-home-bbq-plan__image--01 img {
    object-position:
      25% center !important;
  }


  .sg-home-bbq-plan__image--02 img {
    object-position:
      50% center !important;
  }


  .sg-home-bbq-plan__image--03 img {
    object-position:
      75% center !important;
  }


  /* =======================================================
     06. PLAN TEXT
     ======================================================= */

  .sg-home-bbq-plan__number {
    margin:
      13px
      13px
      4px !important;

    font-size:
      9px !important;
  }


  .home .post_content
  .sg-home-bbq
  h4.sg-home-bbq-plan__title {
    margin:
      0
      13px
      8px !important;

    font-size:
      13px !important;
  }


  .sg-home-bbq-plan__status {
    margin:
      auto
      13px
      14px !important;

    padding-top:
      2px;

    font-size:
      9px !important;

    line-height:
      1.6 !important;

    color:
      #777169 !important;
  }


  /* =======================================================
     07. 店舗側決定待ちの注記
     未確定情報であることは残しつつ控えめに
     ======================================================= */

  .sg-home-bbq__notice {
    margin:
      18px
      0
      20px !important;

    padding:
      9px
      12px !important;

    border-left:
      2px solid
      var(--sg-v22-gold, #b38a49);

    background:
      #faf7f1 !important;

    font-size:
      9px !important;

    line-height:
      1.65 !important;
  }


  /* =======================================================
     08. CTA
     カンプのように主CTAを強くする
     ======================================================= */

  .sg-home-bbq__actions {
    grid-template-columns:
      .82fr
      1.18fr !important;

    gap:
      12px !important;
  }


  .sg-home-bbq__actions
  .swell-block-button__link {
    min-height:
      50px !important;
  }


  .sg-home-bbq__detail-button
  .swell-block-button__link {
    border:
      1px solid
      rgba(7,31,67,.35) !important;

    background:
      #ffffff !important;

    color:
      var(--sg-v22-navy, #071f43) !important;
  }


  .sg-home-bbq__reserve-button
  .swell-block-button__link {
    background:
      var(--sg-v22-pink, #e52d6f) !important;

    border-color:
      var(--sg-v22-pink, #e52d6f) !important;

    box-shadow:
      0 8px 20px
      rgba(229,45,111,.20) !important;
  }


  .sg-home-bbq__reserve-button
  .swell-block-button__link:hover {
    transform:
      translateY(-2px);

    background:
      #cf2863 !important;

    border-color:
      #cf2863 !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v27.2
   TERRACE BBQ / Compact Balance Fix
   ========================================================= */

@media (min-width: 960px) {

  /* 左右を上揃えにして、右パネルの不要な縦伸びを防止 */
  .sg-home-bbq
  .sg-home-bbq__main
  > .swell-block-columns__inner {
    align-items: start !important;
  }


  /* 右パネルを少しコンパクトに */
  .sg-home-bbq__panel {
    height: auto !important;
    padding: 26px !important;
  }


  .sg-home-bbq__panel-text {
    margin-bottom: 16px !important;
  }


  /* 3プランカードを少し低く */
  .sg-home-bbq-plan {
    min-height: 205px !important;
  }


  .sg-home-bbq
  .sg-home-bbq-plan__image,
  .sg-home-bbq
  .sg-home-bbq-plan__image img {
    height: 108px !important;
    min-height: 108px !important;
  }


  .sg-home-bbq-plan__number {
    margin-top: 9px !important;
  }


  .sg-home-bbq-plan__status {
    margin-bottom: 10px !important;
  }


  /* 未確定情報の注記も少し省スペース化 */
  .sg-home-bbq__notice {
    margin:
      12px
      0
      14px !important;

    padding:
      7px
      10px !important;
  }


  /* CTAを1行で表示 */
  .sg-home-bbq__actions {
    grid-template-columns:
      .78fr
      1.22fr !important;
  }


  .sg-home-bbq__actions
  .swell-block-button__link {
    min-height: 46px !important;

    padding:
      9px
      12px !important;

    font-size:
      11px !important;

    white-space:
      nowrap !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v27.3
   TERRACE BBQ / Desktop Final Balance
   ========================================================= */

@media (min-width: 960px) {

  /* 右パネル全体をさらにコンパクトに */
  .sg-home-bbq__panel {
    padding: 24px 26px !important;
  }

  .sg-home-bbq__panel-title {
    margin-bottom: 14px !important;
  }

  .sg-home-bbq__panel-text {
    margin-bottom: 14px !important;
    line-height: 1.7 !important;
  }


  /* プランカードを少しだけ圧縮 */
  .sg-home-bbq-plan {
    min-height: 190px !important;
  }

  .sg-home-bbq
  .sg-home-bbq-plan__image,
  .sg-home-bbq
  .sg-home-bbq-plan__image img {
    height: 98px !important;
    min-height: 98px !important;
  }

  .sg-home-bbq-plan__number {
    margin:
      7px
      11px
      2px !important;
  }

  .home .post_content
  .sg-home-bbq
  h4.sg-home-bbq-plan__title {
    margin:
      0
      11px
      5px !important;

    font-size: 12px !important;
  }

  .sg-home-bbq-plan__status {
    margin:
      0
      11px
      9px !important;

    font-size: 9px !important;
  }


  /* 注記をさらにコンパクトに */
  .sg-home-bbq__notice {
    margin:
      10px
      0
      12px !important;

    padding:
      6px
      9px !important;
  }


  /* CTAを確実に横並び */
  .sg-home-bbq__actions {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;

    gap: 10px !important;

    width: 100% !important;
    max-width: none !important;

    margin:
      0 !important;
  }

  .sg-home-bbq__actions
  > .swell-block-button {
    flex: 1 1 0 !important;

    width: auto !important;
    max-width: none !important;

    margin: 0 !important;
  }

  /* 予約CTAを少し広く */
  .sg-home-bbq__actions
  > .sg-home-bbq__reserve-button {
    flex-grow: 1.25 !important;
  }

  .sg-home-bbq__actions
  .swell-block-button__link {
    width: 100% !important;

    min-height: 44px !important;

    padding:
      8px
      10px !important;

    white-space: nowrap !important;

    font-size: 10px !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v27.6
   TERRACE BBQ / CTA Columns Final Fix
   ========================================================= */

@media (min-width: 960px) {

  .home .post_content
  .sg-home-bbq
  .sg-home-bbq__actions {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;
  }


  .home .post_content
  .sg-home-bbq
  .sg-home-bbq__actions
  > .swell-block-columns__inner {
    display: grid !important;

    grid-template-columns:
      minmax(0, .85fr)
      minmax(0, 1.15fr) !important;

    gap: 10px !important;

    align-items: stretch !important;
  }


  .home .post_content
  .sg-home-bbq
  .sg-home-bbq__action-column {
    width: 100% !important;

    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;
  }


  .home .post_content
  .sg-home-bbq
  .sg-home-bbq__action-column
  .swell-block-button {
    width: 100% !important;

    margin: 0 !important;
  }


  .home .post_content
  .sg-home-bbq
  .sg-home-bbq__action-column
  .swell-block-button__link {
    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;

    min-height: 46px !important;

    padding: 8px 10px !important;

    box-sizing: border-box !important;

    white-space: nowrap !important;

    font-size: 10px !important;
  }

}


/* スマホでは縦並び */

@media (max-width: 599px) {

  .sg-home-bbq
  .sg-home-bbq__actions
  > .swell-block-columns__inner {
    display: grid !important;

    grid-template-columns: 1fr !important;

    gap: 10px !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v28
   TODAY'S OPENING / Compact Refinement
   ========================================================= */


/* =========================================================
   PC
   ========================================================= */

@media (min-width: 960px) {

  /* -------------------------------------------------------
     SECTION
     上下余白を少し圧縮
     ------------------------------------------------------- */

  .sg-home-status {
    padding-top:
      68px !important;

    padding-bottom:
      76px !important;
  }


  /* -------------------------------------------------------
     HEADING
     ------------------------------------------------------- */

  .sg-home-status
  .sg-section-eyebrow {
    margin-bottom:
      7px !important;
  }


  .home .post_content
  .sg-home-status
  .sg-home-status__title {
    margin-bottom:
      30px !important;

    font-size:
      clamp(28px, 2.3vw, 36px) !important;
  }


  /* -------------------------------------------------------
     BUSINESS STATUS CARD
     営業カレンダー側のカードをコンパクト化
     ------------------------------------------------------- */

  .sg-home-status
  .lux-business-status,
  .sg-home-status
  [class*="lux-business-status"] {
    min-height:
      0 !important;

    padding:
      32px
      40px !important;

    border-radius:
      16px !important;

    box-shadow:
      0 10px 28px
      rgba(7,31,67,.10) !important;
  }


  /* -------------------------------------------------------
     カード内の余白
     プラグイン内部の不要な大余白を抑える
     ------------------------------------------------------- */

  .sg-home-status
  .lux-business-status
  > *:first-child,
  .sg-home-status
  [class*="lux-business-status"]
  > *:first-child {
    margin-top:
      0 !important;
  }


  .sg-home-status
  .lux-business-status
  > *:last-child,
  .sg-home-status
  [class*="lux-business-status"]
  > *:last-child {
    margin-bottom:
      0 !important;
  }


  /* -------------------------------------------------------
     状態メッセージ
     ただいま営業中です / 営業時間外です
     ------------------------------------------------------- */

  .sg-home-status
  .lux-business-status
  h2,
  .sg-home-status
  .lux-business-status
  h3,
  .sg-home-status
  [class*="lux-business-status"]
  h2,
  .sg-home-status
  [class*="lux-business-status"]
  h3 {
    margin-top:
      18px !important;

    margin-bottom:
      14px !important;

    font-size:
      clamp(26px, 2.15vw, 34px) !important;

    line-height:
      1.35 !important;
  }


  /* -------------------------------------------------------
     通常テキスト
     ------------------------------------------------------- */

  .sg-home-status
  .lux-business-status
  p,
  .sg-home-status
  [class*="lux-business-status"]
  p {
    margin-top:
      7px !important;

    margin-bottom:
      7px !important;

    line-height:
      1.7 !important;
  }


  /* -------------------------------------------------------
     PHONE BUTTON
     ------------------------------------------------------- */

  .sg-home-status
  .lux-business-status
  a,
  .sg-home-status
  [class*="lux-business-status"]
  a {
    min-height:
      42px !important;

    padding:
      8px
      28px !important;

    border-radius:
      999px !important;
  }

}


/* =========================================================
   TABLET
   ========================================================= */

@media (min-width: 600px) and (max-width: 959px) {

  .sg-home-status {
    padding-top:
      58px !important;

    padding-bottom:
      66px !important;
  }


  .sg-home-status
  .lux-business-status,
  .sg-home-status
  [class*="lux-business-status"] {
    padding:
      28px
      30px !important;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 599px) {

  .sg-home-status {
    padding-top:
      48px !important;

    padding-bottom:
      54px !important;
  }


  .home .post_content
  .sg-home-status
  .sg-home-status__title {
    margin-bottom:
      24px !important;
  }


  .sg-home-status
  .lux-business-status,
  .sg-home-status
  [class*="lux-business-status"] {
    padding:
      24px
      20px !important;

    border-radius:
      14px !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v28.1
   STATUS → THREE WAYS spacing adjustment
   ========================================================= */

@media (min-width: 960px) {

  /* 営業状況セクション下部を少し詰める */
  .sg-home-status {
    padding-bottom: 46px !important;
  }

  /* 次セクション上部も少し詰める */
  .sg-home-styles {
    padding-top: 54px !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   HERO Slideshow v23.2
   Stable Background Layers
   ========================================================= */

.sg-home-hero {
  position: relative !important;
  overflow: hidden !important;
}


/* JSで生成するスライド */

.sg-home-hero-slide {
  position: absolute !important;

  inset: 0 !important;

  width: 100% !important;
  height: 100% !important;

  background-repeat:
    no-repeat !important;

  background-position:
    center center !important;

  background-size:
    cover !important;

  opacity: 0;

  z-index: 0 !important;

  transition:
    opacity 1.2s ease-in-out !important;

  will-change:
    opacity;
}


.sg-home-hero-slide.is-active {
  opacity: 1;
}


/* WordPress標準Cover画像 */

.sg-home-hero
.sg-home-hero-original-hidden {
  opacity: 0 !important;

  pointer-events:
    none !important;
}


/* オーバーレイ */

.sg-home-hero
> .wp-block-cover__background {
  position: absolute !important;

  z-index: 1 !important;
}


/* テキスト */

.sg-home-hero
> .wp-block-cover__inner-container {
  position: relative !important;

  z-index: 2 !important;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 599px) {

  .sg-home-hero-slide {
    background-position:
      center center !important;
  }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

  .sg-home-hero-slide {
    transition:
      none !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v29
   PC HEADER / Design Comp Refinement
   ========================================================= */

@media (min-width: 960px) {

  /* =======================================================
     HEADER BASE
     ======================================================= */

  #header,
  .l-header {
    background:
      #071f43 !important;
  }


  /* ヘッダー内部の左右余白 */

  .l-header__inner {
    padding-left:
      clamp(28px, 3.8vw, 64px) !important;

    padding-right:
      clamp(28px, 3.8vw, 64px) !important;
  }


  /* =======================================================
     LOGO
     SWELL側56px設定を活かす
     ======================================================= */

  .c-headLogo {
    margin-right:
      auto !important;
  }


  .c-headLogo__link {
    display:
      flex !important;

    align-items:
      center !important;
  }


  .c-headLogo__img {
    width:
      auto !important;

    object-fit:
      contain !important;
  }


  /* =======================================================
     GLOBAL NAV
     ======================================================= */

  .l-header__gnav {
    margin-left:
      auto !important;
  }


  .c-gnav {
    display:
      flex !important;

    align-items:
      center !important;

    gap:
      2px !important;
  }


  .c-gnav
  > .menu-item
  > a {
    display:
      flex !important;

    align-items:
      center !important;

    justify-content:
      center !important;

    min-height:
      64px !important;

    padding:
      0
      13px !important;

    color:
      #ffffff !important;

    font-size:
      13px !important;

    font-weight:
      600 !important;

    line-height:
      1 !important;

    letter-spacing:
      .02em !important;

    white-space:
      nowrap !important;
  }


  /* 通常ナビのホバー */

  .c-gnav
  > .menu-item
  > a:hover {
    opacity:
      .78;
  }


  /* =======================================================
     ROUTE CTA
     ナビゲーションラベル「ルート」
     ======================================================= */

  .c-gnav
  > .menu-item
  > a[href*="route"],
  .c-gnav
  > .menu-item
  > a[href*="access"] {
    min-height:
      46px !important;

    margin-left:
      10px !important;

    padding:
      0
      24px !important;

    border:
      1px solid
      rgba(255,255,255,.75) !important;

    border-radius:
      8px !important;

    background:
      transparent !important;

    color:
      #ffffff !important;

    transition:
      background-color .2s ease,
      color .2s ease,
      border-color .2s ease;
  }


  .c-gnav
  > .menu-item
  > a[href*="route"]:hover,
  .c-gnav
  > .menu-item
  > a[href*="access"]:hover {
    border-color:
      #ffffff !important;

    background:
      rgba(255,255,255,.08) !important;

    opacity:
      1 !important;
  }


  /* =======================================================
     RESERVATION CTA
     hrefに reserve / reservation を含むトップ階層
     ======================================================= */

  .c-gnav
  > .menu-item
  > a[href*="reserve"],
  .c-gnav
  > .menu-item
  > a[href*="reservation"] {
    min-height:
      46px !important;

    margin-left:
      8px !important;

    padding:
      0
      26px !important;

    border:
      1px solid
      #e52d6f !important;

    border-radius:
      8px !important;

    background:
      #e52d6f !important;

    color:
      #ffffff !important;

    box-shadow:
      0 7px 18px
      rgba(229,45,111,.18) !important;

    transition:
      transform .2s ease,
      background-color .2s ease,
      border-color .2s ease;
  }


  .c-gnav
  > .menu-item
  > a[href*="reserve"]:hover,
  .c-gnav
  > .menu-item
  > a[href*="reservation"]:hover {
    transform:
      translateY(-1px);

    border-color:
      #cf2863 !important;

    background:
      #cf2863 !important;

    opacity:
      1 !important;
  }


  /* =======================================================
     SUB MENU
     店舗について / 予約
     ======================================================= */

  .c-gnav
  .sub-menu {
    min-width:
      190px !important;

    padding:
      8px !important;

    border:
      1px solid
      rgba(255,255,255,.08) !important;

    border-radius:
      8px !important;

    background:
      #0c294d !important;

    box-shadow:
      0 12px 28px
      rgba(0,0,0,.16) !important;
  }


  .c-gnav
  .sub-menu
  a {
    padding:
      10px
      14px !important;

    color:
      #ffffff !important;

    font-size:
      12px !important;

    line-height:
      1.5 !important;
  }


  .c-gnav
  .sub-menu
  a:hover {
    background:
      rgba(255,255,255,.07) !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v29.2
   HEADER MENU CLASS FIX
   ========================================================= */

@media (min-width: 960px) {

  /* =======================================================
     ACCESS
     通常ナビとして表示
     ======================================================= */

  .c-gnav
  > li.sg-nav-access
  > a {
    min-height: 64px !important;

    margin: 0 !important;

    padding:
      0 13px !important;

    border:
      0 !important;

    border-radius:
      0 !important;

    background:
      transparent !important;

    box-shadow:
      none !important;

    color:
      #ffffff !important;

    transform:
      none !important;
  }


  .c-gnav
  > li.sg-nav-access
  > a:hover {
    border:
      0 !important;

    background:
      transparent !important;

    box-shadow:
      none !important;

    opacity:
      .78 !important;

    transform:
      none !important;
  }


  /* =======================================================
     ROUTE
     枠線CTA
     ======================================================= */

  .c-gnav
  > li.sg-nav-route
  > a {
    min-height:
      46px !important;

    margin-left:
      10px !important;

    padding:
      0 24px !important;

    border:
      1px solid rgba(255,255,255,.75) !important;

    border-radius:
      8px !important;

    background:
      transparent !important;

    box-shadow:
      none !important;

    color:
      #ffffff !important;

    opacity:
      1 !important;
  }


  .c-gnav
  > li.sg-nav-route
  > a:hover {
    border-color:
      #ffffff !important;

    background:
      rgba(255,255,255,.08) !important;

    opacity:
      1 !important;
  }


  /* =======================================================
     RESERVATION
     ピンクCTA
     ======================================================= */

  .c-gnav
  > li.sg-nav-reserve
  > a {
    min-height:
      46px !important;

    margin-left:
      8px !important;

    padding:
      0 26px !important;

    border:
      1px solid #e52d6f !important;

    border-radius:
      8px !important;

    background:
      #e52d6f !important;

    color:
      #ffffff !important;

    box-shadow:
      0 7px 18px rgba(229,45,111,.18) !important;

    opacity:
      1 !important;
  }


  .c-gnav
  > li.sg-nav-reserve
  > a:hover {
    border-color:
      #cf2863 !important;

    background:
      #cf2863 !important;

    opacity:
      1 !important;

    transform:
      translateY(-1px);
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v29.3
   ACCESS FINAL RESET
   ========================================================= */

@media (min-width: 960px) {

  /* ACCESSを確実に通常ナビへ戻す */
  .c-gnav
  > .menu-item.sg-nav-access
  > a {
    min-height: 64px !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    padding:
      0 13px !important;

    border: 0 !important;
    border-color: transparent !important;
    border-radius: 0 !important;

    background: transparent !important;
    background-color: transparent !important;

    box-shadow: none !important;

    color: #ffffff !important;

    opacity: 1 !important;

    transform: none !important;
  }


  .c-gnav
  > .menu-item.sg-nav-access
  > a:hover {
    margin-left: 0 !important;

    border: 0 !important;
    border-color: transparent !important;

    background: transparent !important;
    background-color: transparent !important;

    box-shadow: none !important;

    color: #ffffff !important;

    opacity: .78 !important;

    transform: none !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v30
   SP HERO + QUICK NAV
   ========================================================= */

@media (max-width: 767px) {

  /* =======================================================
     HERO
     ======================================================= */

  .sg-home-hero {
    min-height: 430px !important;
  }

  .sg-home-hero .wp-block-cover__inner-container {
    display: flex !important;
    align-items: flex-end !important;
    min-height: 430px !important;
  }

  .sg-home-hero__content {
    width: 100% !important;
    max-width: none !important;
    padding:
      0 22px 76px !important;
    margin: 0 !important;
  }


  /* 小見出し */
  .sg-home-hero__eyebrow {
    margin-bottom: 10px !important;

    font-size: 11px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;

    letter-spacing: .12em !important;
  }


  /* HEROタイトル */
  .sg-home-hero__title {
    margin-bottom: 14px !important;

    font-size: clamp(27px, 8vw, 34px) !important;
    font-weight: 700 !important;

    line-height: 1.02 !important;

    letter-spacing: -.02em !important;
  }


  /* メインコピー */
  .sg-home-hero__lead {
    margin-bottom: 12px !important;

    font-size: 18px !important;
    font-weight: 600 !important;

    line-height: 1.55 !important;
  }


  /* 説明文 */
  .sg-home-hero__text {
    margin-bottom: 0 !important;

    font-size: 12px !important;

    line-height: 1.8 !important;
  }


  /* =======================================================
     QUICK NAV
     4導線を2列×2段へ
     ======================================================= */

  .sg-home-quicknav {
    position: relative !important;
    z-index: 10 !important;

    width: calc(100% - 24px) !important;
    max-width: none !important;

    margin:
      -48px auto 0 !important;

    padding: 0 !important;
  }


  /* SWELL columns */
  .sg-home-quicknav__columns
  > .swell-block-columns__inner {
    display: grid !important;

    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;

    gap: 8px !important;
  }


  /* 各カラム */
  .sg-home-quicknav__columns
  > .swell-block-columns__inner
  > * {
    width: 100% !important;
    min-width: 0 !important;

    margin: 0 !important;
  }


  /*
   以前のSP指定で
   4番目「ルート検索」が横幅いっぱいになっている場合の解除
  */
  .sg-home-quicknav__columns
  > .swell-block-columns__inner
  > :nth-child(4) {
    grid-column: auto !important;
  }


  /* 4カード共通 */
  .sg-home-quicknav__columns
  > .swell-block-columns__inner
  > * {
    min-height: 104px !important;
  }


  /* カード内の余白 */
  .sg-home-quicknav__columns
  .swell-block-column {
    height: 100% !important;

    padding:
      14px 10px 12px !important;
  }


  /* アイコン */
  .sg-home-quicknav svg {
    width: 22px !important;
    height: 22px !important;

    margin-bottom: 7px !important;
  }


  /* カードタイトル */
  .sg-home-quicknav h3,
  .sg-home-quicknav h4,
  .sg-home-quicknav strong {
    font-size: 12px !important;
    line-height: 1.35 !important;
  }


  /* 補足文 */
  .sg-home-quicknav p {
    font-size: 9px !important;
    line-height: 1.5 !important;
  }


  /* リンク */
  .sg-home-quicknav a {
    font-size: 9px !important;
    line-height: 1.4 !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v30.2
   SP QUICK NAV 2x2 FINAL FIX
   ========================================================= */

@media (max-width: 599px) {

  /* =======================================================
     QUICK NAV
     4カードを2列 × 2段へ確定
     ======================================================= */

  .sg-home-quicknav
  .sg-home-quicknav__columns
  > .swell-block-columns__inner {
    display: grid !important;

    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;

    gap:
      8px !important;
  }


  /* 4カード共通 */
  .sg-home-quicknav
  .sg-home-quicknav__columns
  .sg-home-quicknav__item {
    width:
      100% !important;

    min-width:
      0 !important;

    min-height:
      116px !important;

    margin:
      0 !important;

    padding:
      14px
      10px
      12px !important;

    grid-column:
      auto !important;

    flex-direction:
      column !important;

    gap:
      0 !important;
  }


  /* =======================================================
     ROUTE
     他3カードと同じ1マスへ戻す
     ======================================================= */

  .sg-home-quicknav
  .sg-home-quicknav__route {
    grid-column:
      auto !important;

    min-height:
      116px !important;

    flex-direction:
      column !important;

    padding:
      14px
      10px
      12px !important;
  }


  /* ルートのアイコンも通常サイズへ */
  .sg-home-quicknav
  .sg-home-quicknav__route
  .sg-home-quicknav__icon {
    width:
      38px !important;

    height:
      38px !important;

    margin:
      0
      auto
      5px !important;
  }


  .sg-home-quicknav
  .sg-home-quicknav__route
  .sg-home-quicknav__icon svg {
    width:
      32px !important;

    height:
      32px !important;
  }


  /* ルート見出しを再表示 */
  .sg-home-quicknav
  .sg-home-quicknav__route
  h3.sg-home-quicknav__title {
    display:
      block !important;

    width:
      100% !important;

    margin:
      0
      0
      7px !important;

    font-size:
      13px !important;

    text-align:
      center !important;
  }


  /* ルート補足文はSPでは省略 */
  .sg-home-quicknav__route-note {
    display:
      none !important;
  }


  /* リンク位置 */
  .sg-home-quicknav
  .sg-home-quicknav__route
  .sg-home-quicknav__link {
    margin:
      auto
      0
      0 !important;
  }


  /* 4カード共通タイトル */
  .home .post_content
  .sg-home-quicknav
  h3.sg-home-quicknav__title {
    font-size:
      13px !important;

    line-height:
      1.4 !important;
  }


  /* 4カード共通リンク */
  .sg-home-quicknav
  .sg-home-quicknav__link
  .swell-block-button__link {
    padding:
      2px
      4px !important;

    font-size:
      10px !important;

    line-height:
      1.4 !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v30.3
   SP HERO TEXT REFINEMENT
   ========================================================= */

@media (max-width: 599px) {

  /* =======================================================
     HERO CONTENT WIDTH
     二重になっていた左右余白を整理
     ======================================================= */

  .sg-home-hero
  .wp-block-cover__inner-container {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
  }


  .sg-home-hero__content {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;

    padding:
      0
      0
      70px !important;

    box-sizing: border-box;
  }


  /* =======================================================
     EYEBROW
     ======================================================= */

  .sg-home-hero__eyebrow {
    margin-bottom:
      10px !important;

    font-size:
      12px !important;

    line-height:
      1.5 !important;
  }


  /* =======================================================
     TITLE
     3行表示を自然に
     ======================================================= */

  .sg-home-hero__title {
    width: 100% !important;
    max-width: 360px !important;

    margin:
      0
      0
      20px !important;

    font-size:
      31px !important;

    line-height:
      1.04 !important;

    letter-spacing:
      -0.01em !important;

    white-space:
      normal !important;

    word-break:
      normal !important;
  }


  /* =======================================================
     MAIN COPY
     「もっと楽しく。」の不自然な孤立を防ぐ
     ======================================================= */

  .sg-home-hero__lead {
    width: 100% !important;
    max-width: 355px !important;

    margin:
      0
      0
      16px !important;

    font-size:
      19px !important;

    line-height:
      1.65 !important;

    letter-spacing:
      0 !important;

    word-break:
      normal !important;
  }


  /* =======================================================
     DESCRIPTION
     ======================================================= */

  .sg-home-hero__text {
    width: 100% !important;
    max-width: 355px !important;

    margin:
      0 !important;

    font-size:
      13px !important;

    line-height:
      1.85 !important;

    letter-spacing:
      0 !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v30.5
   SP HERO TRUE FULL BLEED FIX
   ========================================================= */

@media (max-width: 599px) {

  .home .post_content > .sg-home-hero,
  .sg-home-hero {
    position: relative !important;

    left: 50% !important;

    width: 100vw !important;
    max-width: 100vw !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    transform: translateX(-50%) !important;

    box-sizing: border-box !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v31
   SP THREE WAYS REFINEMENT
   ========================================================= */

@media (max-width: 599px) {

  /* =======================================================
     SECTION
     ======================================================= */

  .sg-home-styles {
    padding:
      46px
      18px
      54px !important;
  }


  /* =======================================================
     EYEBROW
     ======================================================= */

  .sg-home-styles
  .sg-section-eyebrow {
    margin-bottom:
      7px !important;

    font-size:
      10px !important;

    line-height:
      1.4 !important;

    letter-spacing:
      .16em !important;
  }


  /* =======================================================
     SECTION TITLE
     ======================================================= */

  .home .post_content
  .sg-home-styles
  h2.sg-home-styles__title {
    margin-bottom:
      22px !important;

    padding-bottom:
      14px !important;

    font-size:
      25px !important;

    line-height:
      1.45 !important;

    letter-spacing:
      0 !important;
  }


  /* =======================================================
     INTRO
     ======================================================= */

  .sg-home-styles__intro {
    margin-bottom:
      28px !important;

    font-size:
      14px !important;

    line-height:
      1.85 !important;
  }


  /* =======================================================
     CARD GRID
     ======================================================= */

  .sg-home-styles
  .swell-block-columns__inner {
    gap:
      22px !important;
  }


  /* =======================================================
     CARD
     ======================================================= */

  .sg-home-style-card {
    padding-bottom:
      22px !important;

    border-radius:
      14px !important;
  }


  /* =======================================================
     IMAGE
     ======================================================= */

  .sg-home-style-card__image {
    margin-bottom:
      18px !important;

    aspect-ratio:
      16 / 10 !important;
  }


  /* =======================================================
     EYEBROW
     ======================================================= */

  .sg-home-style-card__eyebrow {
    margin:
      0
      20px
      8px !important;

    font-size:
      12px !important;

    line-height:
      1.6 !important;
  }


  /* =======================================================
     CARD TITLE
     ======================================================= */

  .home .post_content
  .sg-home-style-card
  h3.sg-home-style-card__title {
    margin:
      0
      20px
      15px !important;

    padding-bottom:
      11px !important;

    font-size:
      21px !important;

    line-height:
      1.4 !important;
  }


  /* =======================================================
     TEXT
     ======================================================= */

  .sg-home-style-card__text {
    margin:
      0
      20px
      22px !important;

    font-size:
      14px !important;

    line-height:
      1.85 !important;
  }


  /* =======================================================
     BUTTON
     ======================================================= */

  .sg-home-style-card
  > .swell-block-button {
    width:
      calc(100% - 40px) !important;

    margin:
      auto
      20px
      0 !important;
  }


  .sg-home-style-card
  .swell-block-button__link {
    min-height:
      48px !important;

    padding:
      10px
      16px !important;

    font-size:
      13px !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Integrated v1
   SP Section Heading Normalization
   Replaces former v32 / v33 / v36 / v37 / v38
   ========================================================= */

@media (max-width: 599px) {

  .sg-home-story,
  .sg-home-news,
  .sg-home-column,
  .sg-home-access {
    padding: 50px 18px 58px !important;
  }

  .sg-home-bbq {
    padding: 50px 18px 60px !important;
  }

  .sg-home-story .sg-section-eyebrow,
  .sg-home-bbq .sg-section-eyebrow,
  .sg-home-news .sg-section-eyebrow,
  .sg-home-column .sg-section-eyebrow,
  .sg-home-access .sg-section-eyebrow {
    margin-bottom: 7px !important;
    font-size: 10px !important;
    line-height: 1.4 !important;
    letter-spacing: .16em !important;
  }

  .home .post_content .sg-home-story h2.sg-home-story__title,
  .home .post_content .sg-home-bbq h2.sg-home-bbq__title,
  .home .post_content .sg-home-news h2.sg-home-news__title,
  .home .post_content .sg-home-column h2.sg-home-column__title,
  .home .post_content .sg-home-access h2.sg-home-access__title {
    position: relative !important;
    padding: 0 0 15px !important;
    border: 0 !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
  }

  .home .post_content .sg-home-story h2.sg-home-story__title::before,
  .home .post_content .sg-home-bbq h2.sg-home-bbq__title::before,
  .home .post_content .sg-home-news h2.sg-home-news__title::before,
  .home .post_content .sg-home-column h2.sg-home-column__title::before,
  .home .post_content .sg-home-access h2.sg-home-access__title::before {
    content: "" !important;
    position: absolute !important;
    display: block !important;
    left: 0 !important;
    right: auto !important;
    top: auto !important;
    bottom: 0 !important;
    width: 56px !important;
    height: 3px !important;
    margin: 0 !important;
    border: 0 !important;
    background: var(--sg-v22-pink, #e52d6f) !important;
    transform: none !important;
  }

  .home .post_content .sg-home-story h2.sg-home-story__title::after,
  .home .post_content .sg-home-bbq h2.sg-home-bbq__title::after,
  .home .post_content .sg-home-news h2.sg-home-news__title::after,
  .home .post_content .sg-home-column h2.sg-home-column__title::after,
  .home .post_content .sg-home-access h2.sg-home-access__title::after {
    content: none !important;
    display: none !important;
  }

  .home .post_content .sg-home-story h2.sg-home-story__title {
    margin: 0 0 28px !important;
    font-size: 25px !important;
    line-height: 1.45 !important;
  }

  .home .post_content .sg-home-bbq h2.sg-home-bbq__title {
    margin: 0 0 22px !important;
    color: var(--sg-v22-navy, #071f43) !important;
    font-size: 25px !important;
    line-height: 1.5 !important;
  }

  .home .post_content .sg-home-news h2.sg-home-news__title {
    margin: 0 0 28px !important;
    font-size: 24px !important;
    line-height: 1.45 !important;
  }

  .home .post_content .sg-home-column h2.sg-home-column__title,
  .home .post_content .sg-home-access h2.sg-home-access__title {
    margin: 0 0 20px !important;
    font-size: 24px !important;
    line-height: 1.45 !important;
  }
}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v34
   SP TERRACE BBQ CTA COLUMN RESET
   ========================================================= */

@media (max-width: 599px) {

  /* =======================================================
     CTA AREA
     ======================================================= */

  .home .post_content
  .sg-home-bbq
  .sg-home-bbq__actions {
    width: 100% !important;
    max-width: none !important;

    margin:
      0 !important;

    padding:
      0 !important;
  }


  .home .post_content
  .sg-home-bbq
  .sg-home-bbq__actions
  > .swell-block-columns__inner {
    display:
      grid !important;

    grid-template-columns:
      1fr !important;

    gap:
      12px !important;

    width:
      100% !important;

    margin:
      0 !important;

    padding:
      0 !important;
  }


  /* =======================================================
     ACTION COLUMNS
     古い「2番目カラム＝白カード」指定を完全解除
     ======================================================= */

  .home .post_content
  .sg-home-bbq
  .sg-home-bbq__actions
  .sg-home-bbq__action-column {
    display:
      block !important;

    width:
      100% !important;

    min-width:
      0 !important;

    min-height:
      0 !important;

    max-width:
      none !important;

    margin:
      0 !important;

    padding:
      0 !important;

    border:
      0 !important;

    border-radius:
      0 !important;

    background:
      transparent !important;

    background-color:
      transparent !important;

    box-shadow:
      none !important;
  }


  /* 2番目CTAにも同じリセットを強制 */
  .home .post_content
  .sg-home-bbq
  .sg-home-bbq__actions
  .sg-home-bbq__action-column:nth-child(2) {
    display:
      block !important;

    margin:
      0 !important;

    padding:
      0 !important;

    border:
      0 !important;

    border-radius:
      0 !important;

    background:
      transparent !important;

    box-shadow:
      none !important;
  }


  /* =======================================================
     BUTTON
     ======================================================= */

  .home .post_content
  .sg-home-bbq
  .sg-home-bbq__action-column
  .swell-block-button {
    width:
      100% !important;

    margin:
      0 !important;

    padding:
      0 !important;
  }


  .home .post_content
  .sg-home-bbq
  .sg-home-bbq__action-column
  .swell-block-button__link {
    width:
      100% !important;

    min-height:
      50px !important;

    margin:
      0 !important;

    padding:
      11px
      16px !important;

    box-sizing:
      border-box !important;

    font-size:
      13px !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v35
   SP STAY IN TOUCH REFINEMENT
   ========================================================= */

@media (max-width: 599px) {

  /* =======================================================
     MAIL SECTION
     ======================================================= */

  .sg-home-mail {
    padding:
      50px
      18px
      58px !important;
  }


  /* 英字ラベル */
  .sg-home-mail
  .sg-section-eyebrow {
    margin-bottom:
      8px !important;

    font-size:
      10px !important;

    line-height:
      1.4 !important;

    letter-spacing:
      .16em !important;
  }


  /* =======================================================
     MAIN TITLE
     不自然な「お知 / らせ」を防ぐ
     ======================================================= */

  .home .post_content
  .sg-home-mail
  h2.sg-home-mail__title {
    width:
      100% !important;

    max-width:
      none !important;

    margin:
      0
      0
      24px !important;

    padding:
      0
      0
      15px !important;

    font-size:
      22px !important;

    line-height:
      1.55 !important;

    letter-spacing:
      0 !important;

    word-break:
      normal !important;

    overflow-wrap:
      normal !important;
  }


  /* ピンク短線 */
  .home .post_content
  .sg-home-mail
  h2.sg-home-mail__title::before {
    width:
      56px !important;

    height:
      3px !important;
  }


  /* =======================================================
     LEAD
     ======================================================= */

  .sg-home-mail__lead {
    margin-bottom:
      24px !important;

    font-size:
      14px !important;

    line-height:
      1.85 !important;
  }


  /* =======================================================
     LEFT TEXT
     ======================================================= */

  .sg-home-mail__text {
    margin-bottom:
      0 !important;

    font-size:
      14px !important;

    line-height:
      1.9 !important;
  }


  /* =======================================================
     REGISTRATION CARD
     ======================================================= */

  .sg-home-mail__card {
    padding:
      24px
      22px !important;

    border-radius:
      15px !important;
  }


  .home .post_content
  .sg-home-mail__card
  h3.sg-home-mail__card-title {
    margin-bottom:
      18px !important;

    font-size:
      21px !important;
  }


  .sg-home-mail__card-text {
    margin-bottom:
      22px !important;

    font-size:
      14px !important;

    line-height:
      1.8 !important;
  }


  .sg-home-mail__button
  .swell-block-button__link {
    min-height:
      50px !important;

    font-size:
      13px !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v39
   SP FINAL CTA REFINEMENT
   ========================================================= */

@media (max-width: 599px) {

  /* =======================================================
     FINAL CTA SECTION
     ======================================================= */

  .sg-home-finalcta {
    padding:
      50px
      18px
      58px !important;
  }


  /* 英字ラベル */
  .sg-home-finalcta
  .sg-section-eyebrow {
    margin-bottom:
      8px !important;

    font-size:
      10px !important;

    line-height:
      1.4 !important;

    letter-spacing:
      .16em !important;
  }


  /* =======================================================
     MAIN TITLE
     ======================================================= */

  .home .post_content
  .sg-home-finalcta
  h2.sg-home-finalcta__title {
    position:
      relative !important;

    width:
      100% !important;

    margin:
      0
      0
      22px !important;

    padding:
      0
      0
      15px !important;

    border:
      0 !important;

    background:
      transparent !important;

    background-image:
      none !important;

    box-shadow:
      none !important;

    font-size:
      21px !important;

    line-height:
      1.55 !important;

    letter-spacing:
      0 !important;

    word-break:
      normal !important;

    overflow-wrap:
      normal !important;
  }


  /* ピンク短線だけ残す */
  .home .post_content
  .sg-home-finalcta
  h2.sg-home-finalcta__title::before {
    content:
      "" !important;

    position:
      absolute !important;

    display:
      block !important;

    left:
      0 !important;

    right:
      auto !important;

    top:
      auto !important;

    bottom:
      0 !important;

    width:
      56px !important;

    height:
      3px !important;

    margin:
      0 !important;

    border:
      0 !important;

    background:
      var(--sg-v22-pink, #e52d6f) !important;

    transform:
      none !important;
  }


  /* 古い濃紺線を解除 */
  .home .post_content
  .sg-home-finalcta
  h2.sg-home-finalcta__title::after {
    content:
      none !important;

    display:
      none !important;

    width:
      0 !important;

    height:
      0 !important;

    border:
      0 !important;

    background:
      none !important;
  }


  /* =======================================================
     LEAD
     「バーベキューまで。」の不自然な分断を抑える
     ======================================================= */

  .sg-home-finalcta__lead {
    margin-bottom:
      28px !important;

    font-size:
      13px !important;

    line-height:
      1.9 !important;

    letter-spacing:
      0 !important;
  }


  /* =======================================================
     CTA CARDS
     ======================================================= */

  .sg-home-finalcta
  .swell-block-columns__inner {
    gap:
      18px !important;
  }


  .sg-home-finalcta
  .swell-block-columns__inner
  > .swell-block-column {
    padding:
      24px
      20px !important;

    border-radius:
      14px !important;
  }


  .home .post_content
  .sg-home-finalcta
  .swell-block-column
  h3 {
    margin-bottom:
      20px !important;

    font-size:
      20px !important;
  }


  .sg-home-finalcta__item-text {
    margin-bottom:
      22px !important;

    font-size:
      14px !important;

    line-height:
      1.85 !important;
  }


  .sg-home-finalcta
  .swell-block-button__link {
    min-height:
      50px !important;

    font-size:
      13px !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v40
   SP FINAL TITLE + PAGETOP
   ========================================================= */


/* PC / Tabletでは追加改行しない */
.sg-sp-only {
  display: none;
}


@media (max-width: 599px) {

  /* SPだけ自然な3行へ */
  .sg-sp-only {
    display: block;
  }


  /* =======================================================
     PAGE TOP BUTTON
     CTAへの重なりを軽減
     ======================================================= */

  #pagetop {
    width: 52px !important;
    height: 52px !important;

    right: 12px !important;
    bottom: 14px !important;

    border-width: 1px !important;

    font-size: 18px !important;
  }

}

/* =========================================================
   SEASIDE GARDEN
   Common Styles v41
   SP BBQ PLAN CARD UNIFICATION
   ========================================================= */

@media (max-width: 599px) {

  /* =======================================================
     3 PLAN CARDS
     PLAN 01 / 02 / 03 を完全に同じ構造へ
     ======================================================= */

  .home .post_content
  .sg-home-bbq
  .sg-home-bbq__plans
  > .swell-block-columns__inner
  > .sg-home-bbq-plan {

    display: grid !important;

    grid-template-columns:
      120px
      minmax(0, 1fr) !important;

    grid-template-rows:
      auto
      auto
      auto !important;

    align-items:
      stretch !important;

    justify-content:
      initial !important;

    width:
      100% !important;

    min-width:
      0 !important;

    min-height:
      0 !important;

    margin:
      0 !important;

    padding:
      0 !important;

    overflow:
      hidden !important;

    border:
      1px solid
      rgba(7,31,67,.10) !important;

    border-radius:
      10px !important;

    background:
      var(--sg-v22-ivory, #f8f3ea) !important;

    box-shadow:
      none !important;
  }


  /* =======================================================
     IMAGE
     ======================================================= */

  .home .post_content
  .sg-home-bbq
  .sg-home-bbq__plans
  .sg-home-bbq-plan__image {

    grid-column:
      1 !important;

    grid-row:
      1 / 4 !important;

    width:
      120px !important;

    height:
      100% !important;

    min-height:
      118px !important;

    margin:
      0 !important;

    padding:
      0 !important;

    border-radius:
      0 !important;
  }


  .home .post_content
  .sg-home-bbq
  .sg-home-bbq__plans
  .sg-home-bbq-plan__image img {

    display:
      block !important;

    width:
      100% !important;

    height:
      100% !important;

    min-height:
      118px !important;

    object-fit:
      cover !important;
  }


  /* =======================================================
     PLAN NUMBER
     ======================================================= */

  .home .post_content
  .sg-home-bbq
  .sg-home-bbq-plan__number {

    grid-column:
      2 !important;

    grid-row:
      1 !important;

    margin:
      12px
      13px
      3px !important;
  }


  /* =======================================================
     PLAN TITLE
     ======================================================= */

  .home .post_content
  .sg-home-bbq
  h4.sg-home-bbq-plan__title {

    grid-column:
      2 !important;

    grid-row:
      2 !important;

    margin:
      0
      13px
      5px !important;

    padding:
      0 !important;
  }


  /* =======================================================
     STATUS
     ======================================================= */

  .home .post_content
  .sg-home-bbq
  .sg-home-bbq-plan__status {

    grid-column:
      2 !important;

    grid-row:
      3 !important;

    margin:
      0
      13px
      12px !important;

    padding:
      0 !important;
  }

}
/* =========================================================
   SEASIDE GARDEN
   Integrated CSS v1.1
   PC BBQ CTA WIDTH RESTORE
   ========================================================= */

@media (min-width: 960px) {

  /* CTA全体 */
  .home .post_content
  .sg-home-bbq
  .sg-home-bbq__actions {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;
  }


  /* 2カラムを右パネル幅いっぱいに */
  .home .post_content
  .sg-home-bbq
  .sg-home-bbq__actions
  > .swell-block-columns__inner {
    display: grid !important;

    width: 100% !important;
    max-width: none !important;

    grid-template-columns:
      minmax(0, .85fr)
      minmax(0, 1.15fr) !important;

    gap: 10px !important;

    align-items: stretch !important;
  }


  /* 各CTAカラム */
  .home .post_content
  .sg-home-bbq
  .sg-home-bbq__action-column {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;
  }


  /* SWELLボタン本体 */
  .home .post_content
  .sg-home-bbq
  .sg-home-bbq__action-column
  .swell-block-button {
    display: block !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;
  }


  /* ボタンリンクをカラムいっぱいに */
  .home .post_content
  .sg-home-bbq
  .sg-home-bbq__action-column
  .swell-block-button__link {
    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;

    min-height: 46px !important;

    margin: 0 !important;

    padding:
      8px
      10px !important;

    box-sizing: border-box !important;

    white-space: nowrap !important;

    font-size: 10px !important;
  }

}
/* =========================================================
   SEASIDE GARDEN
   TOP Integrated CSS v1.2
   ACCESS GOOGLE MAP
   ========================================================= */

.sg-home-access__googlemap {
  width: 100%;
  height: 100%;
  min-height: 405px;

  margin: 0;

  overflow: hidden;

  border-radius: 16px;

  background: #e8edf0;

  box-shadow:
    0 10px 28px
    rgba(7, 31, 67, .06);
}


.sg-home-access__googlemap iframe {
  display: block;

  width: 100%;
  height: 100%;
  min-height: 405px;

  margin: 0;

  border: 0;
}


/* Tablet */
@media (max-width: 959px) {

  .sg-home-access__googlemap,
  .sg-home-access__googlemap iframe {
    min-height: 330px;
  }

}


/* Smartphone */
@media (max-width: 599px) {

  .sg-home-access__googlemap,
  .sg-home-access__googlemap iframe {
    min-height: 300px;
  }

  .sg-home-access__googlemap {
    border-radius: 14px;
  }

}
/* =========================================================
   SEASIDE GARDEN
   TOP Integrated CSS v1.3
   ACCESS GOOGLE MAP FINAL
   ========================================================= */


/* =========================================================
   OLD MAP PLACEHOLDER RESET
   ========================================================= */

.sg-home-access__map {
  display: flex !important;

  align-items: stretch !important;
  justify-content: stretch !important;

  width: 100% !important;

  margin: 0 !important;
  padding: 0 !important;

  overflow: hidden !important;

  border-radius: 16px !important;

  background: #e8edf0 !important;
}


/* 仮MAP時代の円形装飾を削除 */

.sg-home-access__map::before,
.sg-home-access__map::after {
  content: none !important;

  display: none !important;
}


/* =========================================================
   CUSTOM HTML BLOCK
   WordPress / SWELL側の幅制限を解除
   ========================================================= */

.sg-home-access__map
.wp-block-html {
  display: flex !important;

  flex: 1 1 auto !important;

  align-self: stretch !important;

  width: 100% !important;
  max-width: none !important;

  min-width: 0 !important;

  margin: 0 !important;
  padding: 0 !important;
}


/* =========================================================
   GOOGLE MAP WRAPPER
   ========================================================= */

.sg-home-access__map
.sg-home-access__googlemap {
  display: block !important;

  flex: 1 1 auto !important;

  width: 100% !important;
  max-width: none !important;

  height: 100% !important;

  min-height: 405px !important;

  margin: 0 !important;
  padding: 0 !important;

  overflow: hidden !important;

  border-radius: inherit !important;

  background: #e8edf0;
}


/* =========================================================
   IFRAME
   ========================================================= */

.sg-home-access__map
.sg-home-access__googlemap
iframe {
  display: block !important;

  width: 100% !important;
  max-width: none !important;

  height: 100% !important;

  min-height: 405px !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 0 !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 959px) {

  .sg-home-access__map
  .sg-home-access__googlemap,
  .sg-home-access__map
  .sg-home-access__googlemap
  iframe {
    min-height: 330px !important;
  }

}


/* =========================================================
   SMARTPHONE
   ========================================================= */

@media (max-width: 599px) {

  .sg-home-access__map {
    border-radius: 14px !important;
  }

  .sg-home-access__map
  .sg-home-access__googlemap,
  .sg-home-access__map
  .sg-home-access__googlemap
  iframe {
    min-height: 300px !important;
  }

}
/* =========================================================
   SEASIDE GARDEN
   TOP QUICK NAV - BOTTOM GAP FINAL FIX
   ========================================================= */

@media (min-width: 960px) {

  .sg-home-quicknav
  .sg-home-quicknav__columns {
    margin-bottom: -110px !important;
  }

}
/* =========================================================
   SEASIDE GARDEN
   TOP QUICK NAV - HERO OVERLAP PC FINAL v4.3
   ========================================================= */

@media (min-width: 960px) {

  /* QUICK NAV本体は通常フローのまま */
  .home .post_content
  > .wp-block-group.sg-home-quicknav {
    position: relative !important;
    z-index: 10 !important;

    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;

    padding:
      0
      40px
      44px !important;

    box-sizing: border-box !important;

    background:
      var(--sg-v22-ivory, #f8f3ea) !important;

    overflow: visible !important;
  }


  /*
   * 実際のHTML構造に合わせて指定。
   * 4カード全体だけをHEROへ20px重ねる。
   */
  .home .post_content
  > .wp-block-group.sg-home-quicknav
  > .wp-block-group__inner-container
  > .swell-block-columns.sg-home-quicknav__columns {
    position: relative !important;
    top: -20px !important;
    z-index: 10 !important;

    width:
      min(
        100%,
        var(--sg-v22-width, 1180px)
      ) !important;

    max-width:
      var(--sg-v22-width, 1180px) !important;

    margin:
      0
      auto
      -20px !important;

    padding: 0 !important;
  }


  /* 各カードには位置調整を持たせない */
  .home .post_content
  .sg-home-quicknav
  .sg-home-quicknav__item {
    top: auto !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

}
/* =========================================================
   SEASIDE GARDEN
   TODAY'S OPENING - TOP SPACE PC ADJUST
   ========================================================= */

@media (min-width: 960px) {

  .home .post_content
  > .wp-block-group.sg-home-status {
    padding-top: 40px !important;
  }

}
/* =========================================================
   SEASIDE GARDEN
   TODAY'S OPENING - TOP SPACE PC FINAL
   ========================================================= */

@media (min-width: 960px) {

  .home .post_content
  > .wp-block-group.sg-home-status {
    padding-top: 28px !important;
  }

}
/* =========================================================
   SEASIDE GARDEN
   TOP QUICK NAV - HERO OVERLAP SP FINAL
   ========================================================= */

@media (max-width: 599px) {

  /*
   * SPでは4カード全体をHEROへ約20pxだけ重ねる。
   * 既存の約-48px指定を上書き。
   */
  .home .post_content
  > .wp-block-group.sg-home-quicknav
  > .wp-block-group__inner-container
  > .swell-block-columns.sg-home-quicknav__columns {
    position: relative !important;
    top: auto !important;

    margin:
      -20px
      auto
      0 !important;
  }

}
/* =========================================================
   SEASIDE GARDEN
   USE SCENES - 8 COLUMNS FINAL
   ========================================================= */


/* =========================================================
   PC : 8列
   ========================================================= */

@media (min-width: 960px) {

  .home .post_content
  .sg-home-scenes__columns
  .swell-block-columns__inner {
    display: grid !important;

    grid-template-columns:
      repeat(8, minmax(0, 1fr)) !important;

    gap: 24px !important;

    width: 100% !important;
  }


  /* SWELLの6列幅指定を解除 */
  .home .post_content
  .sg-home-scenes__columns
  .swell-block-columns__inner
  > .swell-block-column {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;

    flex: none !important;
    flex-basis: auto !important;

    margin: 0 !important;
  }


  .home .post_content
  .sg-home-scene-card {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;

    margin: 0 !important;

    text-align: center;
  }

}


/* =========================================================
   TABLET : 3列
   ========================================================= */

@media (min-width: 600px) and (max-width: 959px) {

  .home .post_content
  .sg-home-scenes__columns
  .swell-block-columns__inner {
    display: grid !important;

    grid-template-columns:
      repeat(3, minmax(0, 1fr)) !important;

    gap: 30px 20px !important;
  }


  .home .post_content
  .sg-home-scenes__columns
  .swell-block-columns__inner
  > .swell-block-column {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;

    flex: none !important;
    flex-basis: auto !important;

    margin: 0 !important;
  }

}


/* =========================================================
   SMARTPHONE : 2列
   ========================================================= */

@media (max-width: 599px) {

  .home .post_content
  .sg-home-scenes__columns
  .swell-block-columns__inner {
    display: grid !important;

    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;

    gap: 28px 14px !important;
  }


  .home .post_content
  .sg-home-scenes__columns
  .swell-block-columns__inner
  > .swell-block-column {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;

    flex: none !important;
    flex-basis: auto !important;

    margin: 0 !important;
  }

}
/* =========================================================
   SEASIDE GARDEN
   USE SCENES - BOTTOM SPACE FINAL
   ========================================================= */

/* PC */
@media (min-width: 960px) {

  .home .post_content
  .sg-home-scenes__columns {
    margin-bottom: 72px !important;
  }

}


/* TABLET */
@media (min-width: 600px) and (max-width: 959px) {

  .home .post_content
  .sg-home-scenes__columns {
    margin-bottom: 56px !important;
  }

}


/* SMARTPHONE */
@media (max-width: 599px) {

  .home .post_content
  .sg-home-scenes__columns {
    margin-bottom: 28px !important;
  }

}
/* =========================================================
   SEASIDE GARDEN
   USE SCENES - PC 8 COLUMNS FLEX FINAL
   ========================================================= */

@media (min-width: 960px) {

  /* 8項目を必ず1列に配置 */
  .home .post_content
  .sg-home-scenes__columns
  > .swell-block-columns__inner {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 18px !important;
    width: 100% !important;
  }

  /* 8項目 + 7つのgap が100%以内に収まる幅 */
  .home .post_content
  .sg-home-scenes__columns
  > .swell-block-columns__inner
  > .swell-block-column {
    flex:
      0 0
      calc((100% - 126px) / 8) !important;

    width:
      calc((100% - 126px) / 8) !important;

    max-width:
      calc((100% - 126px) / 8) !important;

    min-width: 0 !important;

    margin: 0 !important;
  }

}
/* =========================================================
   SEASIDE GARDEN
   PC GLOBAL NAV - SUB MENU REFINEMENT
   ========================================================= */

@media screen and (min-width: 960px) {

  /* ---------------------------------------------------------
     SUB MENU PANEL
  --------------------------------------------------------- */

  .l-header .c-gnav .sub-menu,
  .l-fixHeader .c-gnav .sub-menu {
    min-width: 230px !important;
    width: 230px !important;

    padding: 8px !important;

    border:
      1px solid rgba(255,255,255,.08) !important;

    border-top:
      2px solid rgba(97,188,197,.72) !important;

    border-radius:
      0 0 10px 10px !important;

    background:
      linear-gradient(
        180deg,
        #10345e 0%,
        #0b2b50 100%
      ) !important;

    box-shadow:
      0 18px 38px
      rgba(3,18,38,.24) !important;

    overflow:
      hidden;
  }


  /* ---------------------------------------------------------
     REMOVE DEFAULT SWELL LEADING ARROW
  --------------------------------------------------------- */

  .l-header .c-gnav .sub-menu a::before,
  .l-fixHeader .c-gnav .sub-menu a::before {
    content:
      none !important;

    display:
      none !important;
  }


  /* ---------------------------------------------------------
     CHILD LINK
  --------------------------------------------------------- */

  .l-header .c-gnav .sub-menu > .menu-item > a,
  .l-fixHeader .c-gnav .sub-menu > .menu-item > a {
    position:
      relative;

    min-height:
      48px;

    display:
      flex !important;

    align-items:
      center;

    padding:
      12px 38px 12px 17px !important;

    border-bottom:
      1px solid rgba(255,255,255,.08) !important;

    color:
      rgba(255,255,255,.94) !important;

    background:
      transparent !important;

    font-size:
      14px !important;

    font-weight:
      700 !important;

    line-height:
      1.5 !important;

    letter-spacing:
      .025em !important;

    text-decoration:
      none !important;

    transition:
      padding-left .20s ease,
      background .20s ease,
      color .20s ease !important;
  }


  /* 最後の項目だけ区切り線なし */

  .l-header
  .c-gnav
  .sub-menu
  > .menu-item:last-child
  > a,

  .l-fixHeader
  .c-gnav
  .sub-menu
  > .menu-item:last-child
  > a {
    border-bottom:
      0 !important;
  }


  /* ---------------------------------------------------------
     RIGHT ARROW
  --------------------------------------------------------- */

  .l-header .c-gnav .sub-menu > .menu-item > a::after,
  .l-fixHeader .c-gnav .sub-menu > .menu-item > a::after {
    content:
      "→" !important;

    position:
      absolute;

    right:
      16px;

    top:
      50%;

    width:
      auto !important;

    height:
      auto !important;

    transform:
      translateY(-50%) !important;

    border:
      0 !important;

    color:
      #61bcc5 !important;

    background:
      transparent !important;

    font-size:
      14px !important;

    line-height:
      1 !important;

    opacity:
      .82;

    transition:
      transform .20s ease,
      color .20s ease,
      opacity .20s ease !important;
  }


  /* ---------------------------------------------------------
     HOVER
  --------------------------------------------------------- */

  .l-header .c-gnav .sub-menu > .menu-item > a:hover,
  .l-fixHeader .c-gnav .sub-menu > .menu-item > a:hover {
    padding-left:
      21px !important;

    color:
      #ffffff !important;

    background:
      rgba(97,188,197,.10) !important;
  }


  .l-header
  .c-gnav
  .sub-menu
  > .menu-item
  > a:hover::after,

  .l-fixHeader
  .c-gnav
  .sub-menu
  > .menu-item
  > a:hover::after {
    transform:
      translate(3px,-50%) !important;

    color:
      #df2f68 !important;

    opacity:
      1;
  }


  /* ---------------------------------------------------------
     CURRENT PAGE
  --------------------------------------------------------- */

  .l-header
  .c-gnav
  .sub-menu
  .current-menu-item
  > a,

  .l-fixHeader
  .c-gnav
  .sub-menu
  .current-menu-item
  > a {
    background:
      rgba(255,255,255,.08) !important;

    color:
      #ffffff !important;
  }


  .l-header
  .c-gnav
  .sub-menu
  .current-menu-item
  > a::after,

  .l-fixHeader
  .c-gnav
  .sub-menu
  .current-menu-item
  > a::after {
    color:
      #c5a056 !important;

    opacity:
      1;
  }

}
/* =========================================================
   SEASIDE GARDEN
   SP OPEN MENU REFINEMENT
   ========================================================= */

@media screen and (max-width: 959px) {

  /* ---------------------------------------------------------
     MENU AREA
  --------------------------------------------------------- */

  .p-spMenu__nav {
    padding:
      0 18px 28px !important;
  }

  .p-spMenu__nav .c-gnav {
    margin:
      0 !important;

    padding:
      0 !important;

    list-style:
      none !important;
  }


  /* ---------------------------------------------------------
     TOP LEVEL
  --------------------------------------------------------- */

  .p-spMenu__nav
  .c-gnav
  > .menu-item
  > a {
    min-height:
      56px;

    display:
      flex !important;

    align-items:
      center;

    padding:
      14px 14px !important;

    border-bottom:
      1px solid rgba(7,29,58,.10);

    color:
      #071d3a !important;

    background:
      #ffffff !important;

    font-size:
      16px !important;

    font-weight:
      700 !important;

    line-height:
      1.5 !important;

    text-decoration:
      none !important;
  }


  /* 左のデフォルト矢印を少し上品に */

  .p-spMenu__nav
  .c-gnav
  > .menu-item
  > a::before {
    color:
      #61bcc5 !important;
  }


  /* ---------------------------------------------------------
     SUB MENU
  --------------------------------------------------------- */

  .p-spMenu__nav
  .c-gnav
  .sub-menu {
    margin:
      0 !important;

    padding:
      6px 0 10px 16px !important;

    background:
      #f5fbfb !important;

    list-style:
      none !important;
  }


  .p-spMenu__nav
  .c-gnav
  .sub-menu
  > .menu-item
  > a {
    position:
      relative;

    min-height:
      50px;

    display:
      flex !important;

    align-items:
      center;

    padding:
      11px 36px 11px 18px !important;

    border-bottom:
      1px solid rgba(7,29,58,.07);

    color:
      #24364c !important;

    background:
      transparent !important;

    font-size:
      14px !important;

    font-weight:
      600 !important;

    line-height:
      1.5 !important;

    text-decoration:
      none !important;
  }


  /* 子項目の左矢印を消す */

  .p-spMenu__nav
  .c-gnav
  .sub-menu
  > .menu-item
  > a::before {
    content:
      none !important;

    display:
      none !important;
  }


  /* 右側に小さな矢印 */

  .p-spMenu__nav
  .c-gnav
  .sub-menu
  > .menu-item
  > a::after {
    content:
      "→";

    position:
      absolute;

    right:
      14px;

    top:
      50%;

    transform:
      translateY(-50%);

    color:
      #61bcc5;

    font-size:
      13px;

    line-height:
      1;
  }


  /* ---------------------------------------------------------
     PARENT ITEMS WITH CHILDREN
  --------------------------------------------------------- */

  .p-spMenu__nav
  .c-gnav
  > .menu-item-has-children
  > a {
    margin-top:
      8px;

    border-radius:
      8px 8px 0 0;

    color:
      #ffffff !important;

    background:
      #0b2d52 !important;

    border-bottom:
      0 !important;

    font-size:
      15px !important;

    letter-spacing:
      .04em;
  }


  .p-spMenu__nav
  .c-gnav
  > .menu-item-has-children
  > a::before {
    color:
      #c5a056 !important;
  }


  /* ---------------------------------------------------------
     MENU CLOSE BUTTON / PANEL
  --------------------------------------------------------- */

  .p-spMenu__inner {
    background:
      #ffffff !important;
  }


  /* スクロールしやすく */
  .p-spMenu__body {
    -webkit-overflow-scrolling:
      touch;
  }

}
/* =========================================================
   SEASIDE GARDEN
   SP OPEN MENU - COLOR REFINEMENT
   ========================================================= */

@media screen and (max-width: 959px) {

  /* ---------------------------------------------------------
     MENU PANEL
  --------------------------------------------------------- */

  .p-spMenu__inner {
    background: #ffffff !important;
  }

  .p-spMenu__nav {
    padding: 0 18px 32px !important;
  }


  /* ---------------------------------------------------------
     TOP LEVEL - COMMON
  --------------------------------------------------------- */

  .p-spMenu__nav > ul > li > a,
  .p-spMenu__nav .menu-item > a {
    transition:
      background .2s ease,
      color .2s ease,
      border-color .2s ease !important;
  }


  /* ---------------------------------------------------------
     PARENT GROUPS
     MENU / 予約 / ABOUT
  --------------------------------------------------------- */

  .p-spMenu__nav
  > ul
  > li.menu-item-has-children
  > a {
    min-height: 58px !important;

    display: flex !important;
    align-items: center !important;

    margin-top: 10px !important;
    padding: 15px 18px !important;

    border: 0 !important;
    border-radius: 9px 9px 0 0 !important;

    color: #ffffff !important;

    background:
      linear-gradient(
        135deg,
        #071d3a 0%,
        #0e3157 100%
      ) !important;

    font-size: 16px !important;
    font-weight: 800 !important;

    letter-spacing: .04em !important;
  }


  /* 親項目の左矢印 */
  .p-spMenu__nav
  > ul
  > li.menu-item-has-children
  > a::before {
    color: #c5a056 !important;
  }


  /* ---------------------------------------------------------
     予約だけPINK
     現在のSPメニューでは4番目
  --------------------------------------------------------- */

  .p-spMenu__nav
  > ul
  > li:nth-child(4)
  > a {
    color: #ffffff !important;

    background:
      linear-gradient(
        135deg,
        #df2f68 0%,
        #c9275b 100%
      ) !important;
  }

  .p-spMenu__nav
  > ul
  > li:nth-child(4)
  > a::before {
    color: #ffffff !important;
  }


  /* ---------------------------------------------------------
     SUB MENU AREA
  --------------------------------------------------------- */

  .p-spMenu__nav
  .sub-menu {
    margin: 0 0 8px !important;

    padding:
      6px 10px 8px 18px !important;

    border-radius:
      0 0 9px 9px !important;

    background:
      linear-gradient(
        180deg,
        #edf8f8 0%,
        #ffffff 100%
      ) !important;
  }


  .p-spMenu__nav
  .sub-menu
  > li
  > a {
    position: relative !important;

    min-height: 50px !important;

    display: flex !important;
    align-items: center !important;

    padding:
      12px 38px 12px 16px !important;

    border-bottom:
      1px solid rgba(7,29,58,.08) !important;

    color: #20344c !important;

    background: transparent !important;

    font-size: 14px !important;
    font-weight: 650 !important;
  }


  /* 子項目左矢印を消す */
  .p-spMenu__nav
  .sub-menu
  > li
  > a::before {
    content: none !important;
    display: none !important;
  }


  /* 子項目は右矢印 */
  .p-spMenu__nav
  .sub-menu
  > li
  > a::after {
    content: "→" !important;

    position: absolute !important;

    right: 13px !important;
    top: 50% !important;

    transform:
      translateY(-50%) !important;

    color: #61bcc5 !important;

    font-size: 13px !important;
    line-height: 1 !important;
  }


  /* ---------------------------------------------------------
     予約配下だけ淡いPINK
  --------------------------------------------------------- */

  .p-spMenu__nav
  > ul
  > li:nth-child(4)
  > .sub-menu {
    background:
      linear-gradient(
        180deg,
        #fff0f5 0%,
        #ffffff 100%
      ) !important;
  }

  .p-spMenu__nav
  > ul
  > li:nth-child(4)
  > .sub-menu
  > li
  > a::after {
    color: #df2f68 !important;
  }


  /* ---------------------------------------------------------
     SINGLE ITEMS
     席のみ予約 / BBQ / ACCESS / ルート / NEWS / COLUMN
  --------------------------------------------------------- */

  .p-spMenu__nav
  > ul
  > li:not(.menu-item-has-children)
  > a {
    min-height: 56px !important;

    margin: 4px 0 !important;

    padding:
      13px 16px !important;

    border:
      1px solid rgba(7,29,58,.08) !important;

    border-radius:
      8px !important;

    color:
      #071d3a !important;

    background:
      #ffffff !important;

    font-size:
      15px !important;

    font-weight:
      700 !important;
  }


  /* 左側に小さなAquaアクセント */

  .p-spMenu__nav
  > ul
  > li:not(.menu-item-has-children)
  > a {
    box-shadow:
      inset 3px 0 0
      rgba(97,188,197,.75);
  }


  /* 席のみ予約・BBQはPinkを少し混ぜる */

  .p-spMenu__nav
  > ul
  > li:nth-child(2)
  > a,

  .p-spMenu__nav
  > ul
  > li:nth-child(3)
  > a {
    background:
      linear-gradient(
        90deg,
        #ffffff 0%,
        #fff6f9 100%
      ) !important;

    box-shadow:
      inset 3px 0 0
      #df2f68 !important;
  }


  /* ---------------------------------------------------------
     ACTIVE / CURRENT
  --------------------------------------------------------- */

  .p-spMenu__nav
  .current-menu-item
  > a {
    font-weight:
      800 !important;
  }


  /* ---------------------------------------------------------
     TAP FEEDBACK
  --------------------------------------------------------- */

  .p-spMenu__nav
  a:active {
    opacity:
      .82;
  }

}
/* =========================================================
   SEASIDE GARDEN
   SP MENU COMPACT FINAL TUNING
   ========================================================= */

@media screen and (max-width: 959px) {

  /* 親グループ */
  .p-spMenu__nav
  > ul
  > li.menu-item-has-children
  > a {
    min-height: 52px !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }

  /* 子メニュー */
  .p-spMenu__nav
  .sub-menu
  > li
  > a {
    min-height: 44px !important;
    padding-top: 9px !important;
    padding-bottom: 9px !important;
  }

  /* 単独メニュー */
  .p-spMenu__nav
  > ul
  > li:not(.menu-item-has-children)
  > a {
    min-height: 50px !important;
    padding-top: 11px !important;
    padding-bottom: 11px !important;
  }

}
/* =========================================================
   SEASIDE GARDEN
   PC GLOBAL NAV - ROUTE BUTTON
   ========================================================= */

@media screen and (min-width: 960px) {

  /* ルートボタン */
  .c-gnav > li.sg-nav-route > a {
    min-width: 104px;
    height: 52px;

    display: flex !important;
    align-items: center;
    justify-content: center;

    margin-left: 10px;
    padding: 0 22px !important;

    border: 1px solid rgba(255,255,255,.75) !important;
    border-radius: 9px !important;

    background: rgba(255,255,255,.025) !important;

    color: #ffffff !important;

    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: .05em;

    line-height: 1 !important;

    transition:
      background .2s ease,
      border-color .2s ease,
      color .2s ease,
      transform .2s ease !important;
  }


  /* SWELLの下線・装飾を抑える */
  .c-gnav > li.sg-nav-route > a::before,
  .c-gnav > li.sg-nav-route > a::after {
    display: none !important;
    content: none !important;
  }


  /* ホバー時：Pink */
  .c-gnav > li.sg-nav-route > a:hover {
    background: #df2f68 !important;
    border-color: #df2f68 !important;
    color: #ffffff !important;

    transform: translateY(-1px);
  }

}