/* =========================================================
   FluxCore Pro Generated Custom CSS
   Auto generated from fc_pages.layout_json advanced.custom_css
   Last updated: 2026-08-26 16:43:55
========================================================= */

/* =========================================================
   Page: header / HEADER ページ
========================================================= */

/* Block: global_header / sec_1782112078518 */
/* =========================================================
   global_header に貼るCSS
   白・ベージュ × 朱色
   カジュアル / 明朝体
========================================================= */
.global-header, .global-header * {
  box-sizing: border-box !important;
}
/* =========================================================
   HEADER
========================================================= */
.global-header {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  z-index: 1000 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 30px !important;
  width: 100% !important;
  max-width: none !important;
  height: 78px !important;
  min-height: 78px !important;
  padding: 0 42px !important;
  background: rgba(255, 253, 248, 0.96) !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(139, 88, 54, 0.12) !important;
  box-shadow:
    0 7px 24px rgba(90, 58, 36, 0.06) !important;
  color: #3f3028 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
}
/* =========================================================
   HEADER 下の細い朱色アクセント
========================================================= */
.global-header::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: -1px !important;
  display: block !important;
  width: 100% !important;
  height: 1px !important;
  background:
    linear-gradient(90deg, transparent 0%, rgba(194, 87, 54, 0.18) 18%, rgba(194, 87, 54, 0.38) 50%, rgba(194, 87, 54, 0.18) 82%, transparent 100%) !important;
  pointer-events: none !important;
}
/* =========================================================
   LOGO
========================================================= */
.header-logo {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #433128 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  font-size: 21px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.08em !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
/* ロゴ内アクセント */
.header-logo span {
  color: #c25736 !important;
}
/* ロゴ画像 */
.header-logo img {
  display: block !important;
  width: auto !important;
  max-width: 220px !important;
  height: auto !important;
  max-height: 52px !important;
  object-fit: contain !important;
}
/* =========================================================
   DESKTOP NAV
========================================================= */
.desktop-nav {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: clamp(20px, 2.1vw, 34px) !important;
  min-width: 0 !important;
  margin: 0 auto !important;
  padding: 0 !important;
}
/* =========================================================
   NAV LINK
========================================================= */
.desktop-nav a {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 78px !important;
  margin: 0 !important;
  padding: 0 2px !important;
  color: #49382f !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  font-size: 0.76rem !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  letter-spacing: 0.08em !important;
  text-decoration: none !important;
  text-transform: none !important;
  white-space: nowrap !important;
  transition:
    color 0.28s ease, opacity 0.28s ease !important;
}
/* =========================================================
   NAV HOVER
========================================================= */
.desktop-nav a:hover, .desktop-nav a.active {
  color: #c25736 !important;
}
/* 下線 */
.desktop-nav a::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  bottom: 16px !important;
  width: 0 !important;
  height: 1px !important;
  background: #c25736 !important;
  transform: translateX(-50%) !important;
  transition: width 0.28s ease !important;
}
.desktop-nav a:hover::after, .desktop-nav a.active::after {
  width: 100% !important;
}
/* =========================================================
   HEADER BUTTONS
========================================================= */
.header-btns {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 14px !important;
  flex: 0 0 auto !important;
}
/* =========================================================
   TEL
========================================================= */
.btn-header-tel {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  color: #6e5141 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 0.86rem !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  letter-spacing: 0.05em !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  transition: color 0.28s ease !important;
}
.btn-header-tel:hover {
  color: #c25736 !important;
}
/* =========================================================
   RESERVE BUTTON
========================================================= */
.btn-header-reserve {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 132px !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 10px 24px !important;
  background: #c25736 !important;
  color: #ffffff !important;
  border: 1px solid #c25736 !important;
  border-radius: 2px !important;
  box-shadow:
    0 7px 18px rgba(145, 69, 42, 0.15) !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 0.74rem !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0.11em !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition:
    background-color 0.28s ease, border-color 0.28s ease, color 0.28s ease, transform 0.28s ease, box-shadow 0.28s ease !important;
}
.btn-header-reserve:hover {
  background: #9c432a !important;
  color: #ffffff !important;
  border-color: #9c432a !important;
  box-shadow:
    0 10px 22px rgba(145, 69, 42, 0.20) !important;
  transform: translateY(-1px) !important;
}
/* =========================================================
   MENU TRIGGER
========================================================= */
.menu-trigger {
  position: relative !important;
  z-index: 1100 !important;
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: #49382f !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 25px !important;
  line-height: 1 !important;
  cursor: pointer !important;
}
/* =========================================================
   MOBILE NAV OVERLAY
========================================================= */
.mobile-nav-overlay {
  position: fixed !important;
  inset: 0 !important;
  z-index: 1050 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 0 !important;
  padding:
    90px clamp(28px, 10vw, 80px) !important;
  background:
    radial-gradient(circle at 90% 10%, rgba(194, 87, 54, 0.08) 0 2px, transparent 3px), linear-gradient(180deg, rgba(255, 253, 248, 0.99) 0%, rgba(250, 241, 222, 0.99) 100%) !important;
  background-size:
    58px 58px, 100% 100% !important;
  opacity: 0 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: translateX(100%) !important;
  transition:
    transform 0.4s ease, opacity 0.4s ease !important;
}
/* 円形装飾 */
.mobile-nav-overlay::before {
  content: "" !important;
  position: absolute !important;
  left: -65px !important;
  bottom: -55px !important;
  width: 220px !important;
  height: 220px !important;
  border-radius: 50% !important;
  background:
    repeating-radial-gradient(circle, transparent 0 14px, rgba(194, 87, 54, 0.11) 15px 18px, transparent 19px 29px) !important;
  pointer-events: none !important;
}
/* OPEN */
.mobile-nav-overlay.active {
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: translateX(0) !important;
}
/* =========================================================
   MOBILE NAV LINK
========================================================= */
.mobile-nav-overlay a {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  width: auto !important;
  margin: 0 0 23px !important;
  padding: 0 0 7px !important;
  color: #433128 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  font-size: clamp(1.3rem, 6vw, 1.9rem) !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  letter-spacing: 0.08em !important;
  text-decoration: none !important;
  transition: color 0.25s ease !important;
}
.mobile-nav-overlay a::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 24px !important;
  height: 1px !important;
  background: #c25736 !important;
  transition: width 0.3s ease !important;
}
.mobile-nav-overlay a:hover {
  color: #c25736 !important;
}
.mobile-nav-overlay a:hover::after {
  width: 100% !important;
}
/* =========================================================
   1200px以下
========================================================= */
@media (max-width: 1200px) {
  .global-header {
    gap: 20px !important;
    padding:
      0 28px !important;
  }
  .desktop-nav {
    gap: 20px !important;
  }
  .desktop-nav a {
    font-size: 0.7rem !important;
    letter-spacing: 0.06em !important;
  }
  .btn-header-reserve {
    min-width: 112px !important;
    padding:
      10px 18px !important;
  }
}
/* =========================================================
   992px以下
========================================================= */
@media (max-width: 992px) {
  .global-header {
    height: 68px !important;
    min-height: 68px !important;
    padding:
      0 22px !important;
  }
  .desktop-nav, .header-btns {
    display: none !important;
  }
  .menu-trigger {
    display: inline-flex !important;
    margin-left: auto !important;
  }
  .header-logo {
    font-size: 17px !important;
  }
  .header-logo img {
    max-height: 46px !important;
  }
}
/* =========================================================
   768px以下
========================================================= */
@media (max-width: 768px) {
  .global-header {
    height: 64px !important;
    min-height: 64px !important;
    padding:
      0 18px !important;
  }
  .header-logo img {
    max-width: 180px !important;
    max-height: 43px !important;
  }
  .menu-trigger {
    width: 42px !important;
    height: 42px !important;
    font-size: 24px !important;
  }
  .mobile-nav-overlay {
    padding:
      85px 28px 55px !important;
  }
}
/* =========================================================
   480px以下
========================================================= */
@media (max-width: 480px) {
  .global-header {
    height: 60px !important;
    min-height: 60px !important;
    padding:
      0 15px !important;
  }
  .header-logo {
    font-size: 15px !important;
    letter-spacing: 0.06em !important;
  }
  .header-logo img {
    max-width: 155px !important;
    max-height: 39px !important;
  }
  .menu-trigger {
    width: 40px !important;
    height: 40px !important;
    font-size: 23px !important;
  }
  .mobile-nav-overlay {
    padding:
      80px 24px 45px !important;
  }
  .mobile-nav-overlay a {
    margin-bottom: 20px !important;
    font-size: 1.35rem !important;
  }
}


/* =========================================================
   Page: index / あぐーしゃぶしゃぶTON｜北谷町美浜で味わうあぐー豚しゃぶしゃぶ
========================================================= */

/* Block: hero_main / sec_1782110119323 */
/* =========================================================
   hero_main に貼るCSS
========================================================= */
.hero-wrapper {
  position: relative !important;
  width: 100% !important;
  height: 100svh !important;
  min-height: 560px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  background: #ffffff !important;
  text-align: center !important;
}

@keyframes mcGoldShimmer {
  0% { background-position: 0% 50%; }
  100% { background-position: 200% 50%; }
}

@keyframes mcGentleWave {
  0% { transform: translate(-50%, -50%) translateY(0) rotate(-1deg); }
  50% { transform: translate(-50%, -50%) translateY(-10px) rotate(1deg); }
  100% { transform: translate(-50%, -50%) translateY(0) rotate(-1deg); }
}


.hero-wrapper::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: -2px !important;
  z-index: 12 !important;
  width: 100% !important;
  height: 8vw !important;
  min-height: 40px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath d='M0,0 V46.29 c47.79,22.2,103.59,32.17,158,28,70.36-5.37,136.33-33.31,206.8-37.5C438.64,32.43,512.34,53.67,583,72.05c69.27,18,138.3,24.88,209.4,13.08,36.15-6,69.85-17.84,104.45-29.34C989.49,25,1113,-14.29,1200,52.47V120H0Z' fill='%23ffffff' opacity='0.8'/%3E%3Cpath d='M0,0 V15.81C13,36.92,27.64,56.86,47.69,72.05,99.41,111.27,165,111,224.58,91.58c31.15-10.15,60.09-26.07,89.67-39.8,40.92-19,84.73-46,130.83-49.67,36.26-2.85,70.9,9.42,98.6,31.56,31.77,25.39,62.32,62,103.63,73,40.44,10.79,81.35-6.69,119.13-24.28s75.16-39,116.92-43.05c59.73-5.85,113.28,22.88,168.9,38.84,30.2,8.66,59,6.17,87.09-7.5,22.43-10.89,48-26.93,60.65-23.89V120H0Z' fill='%23ffffff'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-size: 100% 100% !important;
  pointer-events: none !important;
    top:auto!important;
}

.hero-img-window {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}

.hero-img-window::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  background: rgba(0, 0, 0, .15) !important;
  pointer-events: none !important;
}

.hero-img-window img,
.hero-img-window video {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

.hero-title-box,
.hero-main-title {
  position: relative !important;
  z-index: 21 !important;
}

.hero-main-title {
  color: #fff !important;
  font-family: "Montserrat", sans-serif !important;
  font-size: clamp(2.6rem, 6.5vw, 6.5rem) !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  letter-spacing: .1em !important;
  text-shadow: 0 4px 20px rgba(0, 0, 0, .4) !important;
}

@media (max-width: 768px) {
  .hero-wrapper {
    min-height: 520px !important;
    height: 86svh !important;
  }

  .hero-wrapper::before {
    top: 33% !important;
    font-size: clamp(2.6rem, 11vw, 5rem) !important;
  }

  .hero-img-window::before {
    top: 52% !important;
    width: 90vw !important;
    font-size: clamp(.7rem, 3vw, .88rem) !important;
    line-height: 2 !important;
    letter-spacing: .1em !important;
    white-space: pre-wrap !important;
  }
}

@media (max-width: 480px) {
  .hero-wrapper::before {
    font-size: clamp(2.2rem, 13vw, 3.5rem) !important;
  }

  .hero-img-window::before {
    font-size: .7rem !important;
    letter-spacing: .06em !important;
  }
}

/* Block: latest_news_bar / sec_1782110423653 */
/* =========================================================
   latest_news_bar に貼るCSS
   白・ベージュ × 朱色
   カジュアル / 明朝体
========================================================= */
.news-bar-section, .news-bar-section * {
  box-sizing: border-box !important;
}
/* =========================================================
   SECTION
========================================================= */
.news-bar-section {
  position: relative !important;
  z-index: 40 !important;
  width: 100% !important;
  max-width: none !important;
  margin: -34px auto 70px !important;
  padding: 0 24px !important;
  background: transparent !important;
  color: #433128 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  text-align: left !important;
}
/* =========================================================
   CONTAINER
========================================================= */
.news-bar-container {
  position: relative !important;
  width: min(100%, 1180px) !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
}
/* =========================================================
   NEWS ITEM
========================================================= */
.news-bar-link {
  position: relative !important;
  display: grid !important;
  grid-template-columns:
    auto minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 26px !important;
  width: 100% !important;
  padding: 20px 30px !important;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.97) 0%, rgba(255, 252, 246, 0.97) 100%) !important;
  color: #433128 !important;
  border: 1px solid rgba(160, 100, 61, 0.16) !important;
  border-radius: 2px !important;
  box-shadow:
    0 12px 32px rgba(100, 68, 41, 0.08) !important;
  text-decoration: none !important;
  text-align: left !important;
  overflow: hidden !important;
  transition:
    transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease !important;
}
/* 左端の朱色アクセント */
.news-bar-link::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 4px !important;
  height: 100% !important;
  background: #c25736 !important;
  pointer-events: none !important;
}
/* 複数記事 */
.news-bar-link + .news-bar-link {
  margin-top: 10px !important;
}
/* =========================================================
   HOVER
========================================================= */
.news-bar-link:hover {
  background:
    linear-gradient(90deg, #ffffff 0%, #fffaf1 100%) !important;
  border-color: rgba(194, 87, 54, 0.30) !important;
  box-shadow:
    0 17px 38px rgba(115, 72, 44, 0.13) !important;
  transform: translateY(-3px) !important;
}
/* =========================================================
   LEFT
========================================================= */
.news-bar-left {
  display: inline-flex !important;
  align-items: center !important;
  gap: 16px !important;
  min-width: 0 !important;
}
/* =========================================================
   DATE
========================================================= */
.news-date {
  color: #8c6b58 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 0.82rem !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0.08em !important;
  white-space: nowrap !important;
}
/* =========================================================
   BADGE
========================================================= */
.news-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 25px !important;
  padding: 4px 13px !important;
  background: #c25736 !important;
  color: #ffffff !important;
  border: 1px solid #c25736 !important;
  border-radius: 999px !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 0.65rem !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0.08em !important;
  white-space: nowrap !important;
}
/* =========================================================
   TITLE
========================================================= */
.news-title {
  min-width: 0 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  color: #433128 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  font-size: 0.94rem !important;
  font-weight: 500 !important;
  line-height: 1.8 !important;
  letter-spacing: 0.04em !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  text-align: left !important;
}
/* =========================================================
   ARROW
========================================================= */
.news-arrow {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  margin: 0 !important;
  color: #c25736 !important;
  border: 1px solid rgba(194, 87, 54, 0.28) !important;
  border-radius: 50% !important;
  font-family: serif !important;
  font-size: 0.9rem !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  transition:
    transform 0.3s ease, background-color 0.3s ease, color 0.3s ease !important;
}
.news-bar-link:hover .news-arrow {
  background: #c25736 !important;
  color: #ffffff !important;
  transform: translateX(3px) !important;
}
/* =========================================================
   1024px以下
========================================================= */
@media (max-width: 1024px) {
  .news-bar-section {
    margin: -28px auto 60px !important;
    padding: 0 24px !important;
  }
  .news-bar-container {
    width: min(100%, 900px) !important;
    max-width: 900px !important;
  }
  .news-bar-link {
    gap: 20px !important;
    padding:
      19px 24px !important;
  }
}
/* =========================================================
   768px以下
========================================================= */
@media (max-width: 768px) {
  .news-bar-section {
    margin:
      -22px auto 52px !important;
    padding:
      0 16px !important;
  }
  .news-bar-container {
    width: 100% !important;
    max-width: none !important;
  }
  .news-bar-link {
    display: grid !important;
    grid-template-columns:
      minmax(0, 1fr) auto !important;
    grid-template-areas:
      "meta arrow"
      "title title" !important;
    align-items: center !important;
    gap:
      13px 15px !important;
    padding:
      20px 20px 21px !important;
  }
  .news-bar-left {
    grid-area: meta !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 10px !important;
  }
  .news-date {
    font-size: 0.78rem !important;
  }
  .news-badge {
    min-height: 23px !important;
    padding:
      3px 11px !important;
    font-size: 0.61rem !important;
  }
  .news-title {
    grid-area: title !important;
    width: 100% !important;
    overflow: visible !important;
    font-size: 0.88rem !important;
    line-height: 1.8 !important;
    text-overflow: clip !important;
    white-space: normal !important;
  }
  .news-arrow {
    grid-area: arrow !important;
    width: 31px !important;
    height: 31px !important;
    justify-self: end !important;
    margin: 0 !important;
  }
}
/* =========================================================
   480px以下
========================================================= */
@media (max-width: 480px) {
  .news-bar-section {
    margin:
      -18px auto 45px !important;
    padding:
      0 14px !important;
  }
  .news-bar-link {
    padding:
      18px 17px 19px !important;
  }
  .news-bar-left {
    gap: 8px !important;
  }
  .news-date {
    font-size: 0.74rem !important;
  }
  .news-title {
    font-size: 0.84rem !important;
    line-height: 1.75 !important;
  }
  .news-arrow {
    width: 29px !important;
    height: 29px !important;
  }
}

/* Block: concept_split / sec_1782110303957 */
/* =========================================================
   concept_split に貼るCSS
   白・ベージュ × 朱色
   日本語見出し改行調整版
========================================================= */
.concept-section, .concept-section * {
  box-sizing: border-box !important;
}
/* =========================================================
   SECTION
========================================================= */
.concept-section {
  position: relative !important;
  z-index: 1 !important;
  overflow: hidden !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 120px 24px 130px !important;
  background:
    radial-gradient(circle at 10% 14%, rgba(205, 76, 44, 0.07) 0 2px, transparent 3px), radial-gradient(circle at 88% 75%, rgba(231, 159, 48, 0.09) 0 3px, transparent 4px), linear-gradient(180deg, #fffdf9 0%, #fffaf1 52%, #f8efd9 100%) !important;
  background-size:
    64px 64px, 90px 90px, 100% 100% !important;
  color: #433128 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
}
/* =========================================================
   左上 同心円装飾
========================================================= */
.concept-section::before {
  content: "" !important;
  position: absolute !important;
  top: 20px !important;
  left: -70px !important;
  z-index: 0 !important;
  width: 230px !important;
  height: 230px !important;
  border-radius: 50% !important;
  background:
    repeating-radial-gradient(circle, transparent 0 14px, rgba(205, 76, 44, 0.13) 15px 18px, transparent 19px 29px) !important;
  pointer-events: none !important;
}
/* =========================================================
   右下 同心円装飾
========================================================= */
.concept-section::after {
  content: "" !important;
  position: absolute !important;
  right: -85px !important;
  bottom: -80px !important;
  z-index: 0 !important;
  width: 290px !important;
  height: 290px !important;
  border-radius: 50% !important;
  background:
    repeating-radial-gradient(circle, transparent 0 17px, rgba(225, 149, 40, 0.13) 18px 21px, transparent 22px 34px) !important;
  pointer-events: none !important;
}
/* =========================================================
   CONTAINER
========================================================= */
.concept-container, .concept-container.concept-reverse {
  position: relative !important;
  z-index: 2 !important;
  display: grid !important;
  grid-template-columns:
    minmax(500px, 0.9fr) minmax(620px, 1.1fr) !important;
  align-items: center !important;
  gap: clamp(55px, 5vw, 75px) !important;
  width: min(calc(100% - 48px), 1320px) !important;
  max-width: 1320px !important;
  margin: 0 auto !important;
}
/* =========================================================
   REVERSE
========================================================= */
.concept-container.concept-reverse {
  grid-template-columns:
    minmax(620px, 1.1fr) minmax(500px, 0.9fr) !important;
}
.concept-container.concept-reverse .concept-content {
  order: 2 !important;
}
.concept-container.concept-reverse .concept-img-wrapper {
  order: 1 !important;
}
/* =========================================================
   CONTENT
========================================================= */
.concept-content {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  padding: 58px 44px 54px !important;
  background:
    rgba(255, 255, 255, 0.80) !important;
  border:
    1px solid rgba(155, 92, 55, 0.15) !important;
  border-radius: 3px !important;
  box-shadow:
    0 18px 45px rgba(100, 68, 41, 0.07) !important;
  color: #433128 !important;
  text-align: left !important;
}
/* 左上の朱色アクセント */
.concept-content::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 44px !important;
  width: 48px !important;
  height: 3px !important;
  background: #c94f32 !important;
  pointer-events: none !important;
}
/* =========================================================
   ABOUT / EYEBROW
========================================================= */
.concept-eyebrow {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 14px !important;
  width: 100% !important;
  margin: 0 0 28px !important;
  padding: 0 !important;
  color: #202525 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  font-size:
    clamp(2rem, 3.2vw, 3.4rem) !important;
  font-weight: 600 !important;
  line-height: 1.1 !important;
  letter-spacing: 0.12em !important;
  text-align: left !important;
  white-space: nowrap !important;
}
/* ABOUT 左側ラインなし */
.concept-eyebrow::before {
  display: none !important;
  content: none !important;
}
/* ABOUT 右側の朱色ライン */
.concept-eyebrow::after {
  content: "" !important;
  display: block !important;
  width: 24px !important;
  height: 1px !important;
  flex: 0 0 auto !important;
  background: #d36b50 !important;
}
/* =========================================================
   TITLE
   日本語の不自然な途中改行を抑制
========================================================= */
.concept-title, .concept-content h2.concept-title, .concept-content h3.concept-title {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 28px !important;
  padding: 0 !important;
  color: #202525 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  font-size:
    clamp(1.45rem, 1.8vw, 1.9rem) !important;
  font-weight: 700 !important;
  line-height: 1.65 !important;
  letter-spacing: 0.045em !important;
  text-align: left !important;
  word-break: auto-phrase !important;
  overflow-wrap: normal !important;
  line-break: strict !important;
  text-wrap: balance !important;
}
/* シーサー完全削除 */
.concept-title::before {
  display: none !important;
  content: none !important;
  width: 0 !important;
  height: 0 !important;
  background: none !important;
  background-image: none !important;
}
/* タイトル下の朱色ライン */
.concept-title::after {
  content: "" !important;
  display: block !important;
  width: 38px !important;
  height: 1px !important;
  margin: 18px 0 0 !important;
  background: #c94f32 !important;
}
/* =========================================================
   TEXT
========================================================= */
.concept-text, .concept-content p.concept-text {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #594b43 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  font-size: 0.94rem !important;
  font-weight: 400 !important;
  line-height: 2.15 !important;
  letter-spacing: 0.025em !important;
  text-align: left !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  line-break: strict !important;
}
/* =========================================================
   BUTTON WRAP
========================================================= */
.concept-content .fc-block-btn-wrap {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  margin: 36px 0 0 !important;
  padding: 0 !important;
  text-align: left !important;
}
/* =========================================================
   BUTTON
========================================================= */
.concept-content .fc-block-btn, .concept-content .fc-block-btn-primary {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  width: auto !important;
  min-width: 185px !important;
  min-height: 47px !important;
  margin: 0 !important;
  padding: 0 34px !important;
  background: #bd5535 !important;
  border:
    1px solid #bd5535 !important;
  border-radius: 999px !important;
  color: #ffffff !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0.14em !important;
  text-align: center !important;
  text-decoration: none !important;
  box-shadow:
    0 8px 20px rgba(145, 70, 42, 0.15) !important;
  cursor: pointer !important;
  transition:
    background-color 0.3s ease, border-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease !important;
}
/* ボタン矢印 */
.concept-content .fc-block-btn::after, .concept-content .fc-block-btn-primary::after {
  content: "→" !important;
  position: static !important;
  display: inline-block !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  background: none !important;
  font-size: 0.9em !important;
  transform: none !important;
  transition:
    transform 0.3s ease !important;
}
.concept-content .fc-block-btn:hover, .concept-content .fc-block-btn-primary:hover {
  background: #994128 !important;
  border-color: #994128 !important;
  color: #ffffff !important;
  transform:
    translateY(-2px) !important;
  box-shadow:
    0 12px 25px rgba(145, 70, 42, 0.20) !important;
}
.concept-content .fc-block-btn:hover::after, .concept-content .fc-block-btn-primary:hover::after {
  transform:
    translateX(4px) !important;
}
/* =========================================================
   IMAGE WRAPPER
========================================================= */
.concept-img-wrapper {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  overflow: visible !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
/* =========================================================
   IMAGE 背面ベージュパネル
========================================================= */
.concept-img-wrapper::before {
  content: "" !important;
  position: absolute !important;
  top: 28px !important;
  left: -28px !important;
  right: 28px !important;
  bottom: -28px !important;
  z-index: -1 !important;
  width: auto !important;
  height: auto !important;
  background:
    linear-gradient(145deg, #f5dc99 0%, #f8eabc 100%) !important;
  border:
    1px solid rgba(206, 156, 62, 0.18) !important;
  border-radius: 3px !important;
  pointer-events: none !important;
}
/* =========================================================
   IMAGE 右上同心円
========================================================= */
.concept-img-wrapper::after {
  content: "" !important;
  position: absolute !important;
  top: -52px !important;
  right: -48px !important;
  z-index: -1 !important;
  width: 160px !important;
  height: 160px !important;
  border-radius: 50% !important;
  background:
    repeating-radial-gradient(circle, transparent 0 10px, rgba(201, 79, 50, 0.15) 11px 13px, transparent 14px 23px) !important;
  pointer-events: none !important;
}
/* =========================================================
   IMAGE
========================================================= */
.concept-img-wrapper img, .concept-img-wrapper video {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: 4 / 3 !important;
  object-fit: cover !important;
  object-position: center !important;
  margin: 0 !important;
  border:
    6px solid #ffffff !important;
  border-radius: 4px !important;
  box-shadow:
    0 18px 42px rgba(77, 51, 32, 0.17) !important;
  filter:
    saturate(0.96) contrast(0.98) brightness(1.02) !important;
  transform:
    rotate(-1.5deg) !important;
  transition:
    transform 0.45s ease, box-shadow 0.45s ease !important;
}
/* =========================================================
   IMAGE HOVER
========================================================= */
.concept-img-wrapper:hover img {
  transform:
    rotate(-0.4deg) translateY(-4px) !important;
  box-shadow:
    0 25px 50px rgba(77, 51, 32, 0.21) !important;
}
/* =========================================================
   REVERSE IMAGE
========================================================= */
.concept-container.concept-reverse .concept-img-wrapper::before {
  left: 28px !important;
  right: -28px !important;
}
.concept-container.concept-reverse .concept-img-wrapper img {
  transform:
    rotate(1.5deg) !important;
}
.concept-container.concept-reverse .concept-img-wrapper:hover img {
  transform:
    rotate(0.4deg) translateY(-4px) !important;
}
/* =========================================================
   1200px以下
========================================================= */
@media (max-width: 1200px) {
  .concept-section {
    padding:
      105px 22px 115px !important;
  }
  .concept-container, .concept-container.concept-reverse {
    grid-template-columns:
      minmax(410px, 0.9fr) minmax(500px, 1.1fr) !important;
    gap: 44px !important;
    width:
      min(calc(100% - 24px), 1120px) !important;
    max-width: 1120px !important;
  }
  .concept-container.concept-reverse {
    grid-template-columns:
      minmax(500px, 1.1fr) minmax(410px, 0.9fr) !important;
  }
  .concept-content {
    padding:
      50px 36px 48px !important;
  }
  .concept-content::before {
    left: 36px !important;
  }
  .concept-eyebrow {
    font-size:
      clamp(1.9rem, 3.6vw, 3rem) !important;
  }
  .concept-title, .concept-content h2.concept-title, .concept-content h3.concept-title {
    font-size:
      clamp(1.4rem, 1.9vw, 1.75rem) !important;
    letter-spacing:
      0.035em !important;
  }
  .concept-text, .concept-content p.concept-text {
    font-size:
      0.91rem !important;
    line-height:
      2.1 !important;
  }
}
/* =========================================================
   1024px以下
========================================================= */
@media (max-width: 1024px) {
  .concept-section {
    padding:
      95px 24px 105px !important;
  }
  .concept-container, .concept-container.concept-reverse {
    grid-template-columns:
      1fr !important;
    gap:
      70px !important;
    width:
      min(100%, 780px) !important;
    max-width:
      780px !important;
  }
  .concept-container.concept-reverse .concept-content, .concept-container.concept-reverse .concept-img-wrapper {
    order:
      initial !important;
  }
  .concept-content {
    width:
      100% !important;
    padding:
      52px 42px 50px !important;
  }
  .concept-content::before {
    left:
      42px !important;
  }
  .concept-title, .concept-content h2.concept-title, .concept-content h3.concept-title {
    max-width:
      100% !important;
    font-size:
      clamp(1.5rem, 3.4vw, 1.9rem) !important;
    line-height:
      1.6 !important;
    letter-spacing:
      0.05em !important;
  }
  .concept-text, .concept-content p.concept-text {
    font-size:
      0.92rem !important;
    line-height:
      2.1 !important;
  }
  .concept-img-wrapper {
    width:
      calc(100% - 35px) !important;
    max-width:
      720px !important;
    margin:
      0 auto !important;
  }
  .concept-container.concept-reverse .concept-img-wrapper::before {
    left:
      -28px !important;
    right:
      28px !important;
  }
  .concept-container.concept-reverse .concept-img-wrapper img {
    transform:
      rotate(-1.5deg) !important;
  }
}
/* =========================================================
   768px以下
========================================================= */
@media (max-width: 768px) {
  .concept-section {
    padding:
      75px 18px 88px !important;
  }
  .concept-section::before {
    top:
      10px !important;
    left:
      -65px !important;
    width:
      170px !important;
    height:
      170px !important;
  }
  .concept-section::after {
    right:
      -72px !important;
    bottom:
      -65px !important;
    width:
      195px !important;
    height:
      195px !important;
  }
  .concept-container, .concept-container.concept-reverse {
    width:
      100% !important;
    max-width:
      none !important;
    gap:
      58px !important;
  }
  .concept-content {
    width:
      100% !important;
    padding:
      40px 26px 38px !important;
    text-align:
      left !important;
  }
  .concept-content::before {
    left:
      26px !important;
    width:
      42px !important;
  }
  .concept-eyebrow {
    justify-content:
      flex-start !important;
    margin-bottom:
      24px !important;
    font-size:
      clamp(1.85rem, 10vw, 2.8rem) !important;
    letter-spacing:
      0.10em !important;
    text-align:
      left !important;
    white-space:
      normal !important;
  }
  .concept-title, .concept-content h2.concept-title, .concept-content h3.concept-title {
    margin-bottom:
      24px !important;
    font-size:
      clamp(1.3rem, 5.6vw, 1.65rem) !important;
    line-height:
      1.65 !important;
    letter-spacing:
      0.04em !important;
    text-align:
      left !important;
    word-break:
      auto-phrase !important;
    overflow-wrap:
      normal !important;
    line-break:
      strict !important;
    text-wrap:
      pretty !important;
  }
  .concept-title::after {
    margin:
      16px 0 0 !important;
  }
  .concept-text, .concept-content p.concept-text {
    font-size:
      0.88rem !important;
    line-height:
      2.05 !important;
    letter-spacing:
      0.02em !important;
    text-align:
      left !important;
  }
  .concept-content .fc-block-btn-wrap {
    justify-content:
      flex-start !important;
    margin-top:
      30px !important;
    text-align:
      left !important;
  }
  .concept-content .fc-block-btn, .concept-content .fc-block-btn-primary {
    min-width:
      170px !important;
    min-height:
      45px !important;
    padding:
      0 28px !important;
  }
  .concept-img-wrapper {
    width:
      calc(100% - 22px) !important;
  }
  .concept-img-wrapper::before {
    top:
      17px !important;
    left:
      -15px !important;
    right:
      15px !important;
    bottom:
      -17px !important;
  }
  .concept-container.concept-reverse .concept-img-wrapper::before {
    left:
      -15px !important;
    right:
      15px !important;
  }
  .concept-img-wrapper::after {
    top:
      -36px !important;
    right:
      -30px !important;
    width:
      115px !important;
    height:
      115px !important;
  }
  .concept-img-wrapper img, .concept-img-wrapper video {
    border-width:
      4px !important;
    transform:
      rotate(-1deg) !important;
  }
}
/* =========================================================
   480px以下
========================================================= */
@media (max-width: 480px) {
  .concept-section {
    padding:
      62px 15px 75px !important;
  }
  .concept-content {
    padding:
      36px 20px 34px !important;
  }
  .concept-content::before {
    left:
      20px !important;
    width:
      36px !important;
  }
  .concept-eyebrow {
    margin-bottom:
      22px !important;
    font-size:
      clamp(1.7rem, 10vw, 2.35rem) !important;
    letter-spacing:
      0.08em !important;
  }
  .concept-eyebrow::after {
    width:
      20px !important;
  }
  .concept-title, .concept-content h2.concept-title, .concept-content h3.concept-title {
    font-size:
      1.28rem !important;
    line-height:
      1.65 !important;
    letter-spacing:
      0.025em !important;
    word-break:
      auto-phrase !important;
    overflow-wrap:
      normal !important;
    line-break:
      strict !important;
    text-wrap:
      pretty !important;
  }
  .concept-text, .concept-content p.concept-text {
    font-size:
      0.86rem !important;
    line-height:
      2 !important;
    letter-spacing:
      0.015em !important;
  }
  .concept-content .fc-block-btn, .concept-content .fc-block-btn-primary {
    min-width:
      165px !important;
    padding:
      0 25px !important;
  }
  .concept-img-wrapper {
    width:
      calc(100% - 16px) !important;
  }
}


/* =========================================================
   Page: news / NEWS｜あぐーしゃぶしゃぶTON｜北谷町美浜で味わうあぐー豚しゃぶしゃぶ
========================================================= */

/* Block: news_list_grid / sec_1782114338501 */
/* =========================================================
   news_list_grid に貼るCSS
   白・ベージュ × 朱色
   カジュアル / 明朝体
========================================================= */
.news-list-grid-section, .news-list-grid-section * {
  box-sizing: border-box !important;
}
/* =========================================================
   SECTION
========================================================= */
.news-list-grid-section {
  position: relative !important;
  overflow: hidden !important;
  padding: 100px 24px 120px !important;
  background:
    radial-gradient(circle at 9% 15%, rgba(194, 87, 54, 0.06) 0 2px, transparent 3px), radial-gradient(circle at 90% 82%, rgba(220, 154, 50, 0.07) 0 3px, transparent 4px), linear-gradient(180deg, #fffdf9 0%, #fbf4e7 100%) !important;
  background-size:
    66px 66px, 92px 92px, 100% 100% !important;
  color: #433128 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
}
/* =========================================================
   背景装飾
========================================================= */
.news-list-grid-section::before {
  content: "" !important;
  position: absolute !important;
  top: 25px !important;
  left: -70px !important;
  width: 220px !important;
  height: 220px !important;
  border-radius: 50% !important;
  background:
    repeating-radial-gradient(circle, transparent 0 14px, rgba(194, 87, 54, 0.11) 15px 18px, transparent 19px 30px) !important;
  pointer-events: none !important;
}
/* =========================================================
   HEADER
========================================================= */
.news-section-header {
  position: relative !important;
  z-index: 2 !important;
  max-width: 900px !important;
  margin: 0 auto 52px !important;
  text-align: left !important;
}
/* =========================================================
   MAIN TITLE
========================================================= */
.news-main-title {
  position: relative !important;
  display: block !important;
  width: fit-content !important;
  margin: 0 0 18px !important;
  padding: 0 0 16px !important;
  color: #3f3028 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  font-size: clamp(2rem, 3.8vw, 3.2rem) !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.08em !important;
  text-align: left !important;
}
/* タイトル下線 */
.news-main-title::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 42px !important;
  height: 2px !important;
  background: #c25736 !important;
}
/* =========================================================
   SUB TEXT
========================================================= */
.news-sub-text {
  margin: 0 !important;
  color: #765646 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 0.9rem !important;
  font-weight: 400 !important;
  line-height: 1.9 !important;
  letter-spacing: 0.05em !important;
  text-align: left !important;
}
/* =========================================================
   GRID
========================================================= */
.nlg-grid {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 26px !important;
  width: min(calc(100% - 48px), 1180px) !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
}
/* =========================================================
   CARD
========================================================= */
.nlg-card {
  position: relative !important;
  display: grid !important;
  grid-template-columns:
    360px minmax(0, 1fr) !important;
  overflow: hidden !important;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 252, 246, 0.98) 100%) !important;
  color: #433128 !important;
  border:
    1px solid rgba(148, 91, 56, 0.14) !important;
  border-radius: 3px !important;
  box-shadow:
    0 14px 34px rgba(89, 59, 39, 0.08) !important;
  text-decoration: none !important;
  transition:
    transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease !important;
}
/* 左端アクセント */
.nlg-card::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  z-index: 3 !important;
  width: 4px !important;
  height: 100% !important;
  background: #c25736 !important;
  pointer-events: none !important;
}
/* =========================================================
   CARD HOVER
========================================================= */
a.nlg-card:hover, .nlg-card:hover {
  transform: translateY(-4px) !important;
  border-color:
    rgba(194, 87, 54, 0.26) !important;
  box-shadow:
    0 20px 45px rgba(97, 60, 39, 0.13) !important;
}
/* =========================================================
   IMAGE
========================================================= */
.nlg-img, .nlg-no-img {
  position: relative !important;
  width: 100% !important;
  min-height: 240px !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
  background: #eee3cd !important;
  border-right:
    1px solid rgba(138, 88, 57, 0.12) !important;
}
/* =========================================================
   IMAGE IMG
========================================================= */
.nlg-img img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  filter:
    saturate(0.96) contrast(0.98) brightness(1.02) !important;
  transition:
    transform 0.5s ease !important;
}
.nlg-card:hover .nlg-img img {
  transform: scale(1.04) !important;
}
/* =========================================================
   NO IMAGE
========================================================= */
.nlg-no-img {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #b45537 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", serif !important;
  font-size: 2.2rem !important;
  background:
    linear-gradient(145deg, #f1dfbb 0%, #f7ead0 100%) !important;
}
/* =========================================================
   BODY
========================================================= */
.nlg-body {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding: 38px 42px !important;
  text-align: left !important;
}
/* =========================================================
   META
========================================================= */
.nlg-meta {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin: 0 0 16px !important;
}
/* =========================================================
   DATE
========================================================= */
.nlg-date {
  display: inline-flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: #8d6b58 !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 0.82rem !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0.06em !important;
}
/* =========================================================
   BADGE
========================================================= */
.nlg-badge, .news-list-grid-section .news-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 25px !important;
  padding: 4px 13px !important;
  background: #c25736 !important;
  color: #ffffff !important;
  border: 1px solid #c25736 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 0.68rem !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0.07em !important;
  white-space: nowrap !important;
}
/* =========================================================
   TITLE
========================================================= */
.nlg-title {
  position: relative !important;
  margin: 0 !important;
  color: #3f3028 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  font-size: 1.45rem !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;
  letter-spacing: 0.06em !important;
  text-align: left !important;
}
/* =========================================================
   EXCERPT
========================================================= */
.nlg-excerpt {
  margin: 14px 0 0 !important;
  color: #6a564b !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 0.92rem !important;
  font-weight: 400 !important;
  line-height: 1.95 !important;
  letter-spacing: 0.035em !important;
  text-align: left !important;
}
/* =========================================================
   1024px以下
========================================================= */
@media (max-width: 1024px) {
  .news-list-grid-section {
    padding:
      90px 22px 105px !important;
  }
  .news-section-header {
    max-width: 820px !important;
    margin-bottom: 44px !important;
  }
  .nlg-grid {
    width: min(100%, 940px) !important;
  }
  .nlg-card {
    grid-template-columns:
      310px minmax(0, 1fr) !important;
  }
  .nlg-body {
    padding: 32px 34px !important;
  }
  .nlg-title {
    font-size: 1.35rem !important;
  }
}
/* =========================================================
   768px以下
========================================================= */
@media (max-width: 768px) {
  .news-list-grid-section {
    padding:
      70px 18px 82px !important;
  }
  .news-list-grid-section::before {
    top: 12px !important;
    left: -65px !important;
    width: 170px !important;
    height: 170px !important;
  }
  .news-section-header {
    margin-bottom: 36px !important;
  }
  .news-main-title {
    font-size:
      clamp(1.7rem, 7vw, 2.2rem) !important;
  }
  .news-sub-text {
    font-size: 0.86rem !important;
  }
  .nlg-grid {
    width: 100% !important;
    gap: 22px !important;
  }
  .nlg-card {
    grid-template-columns: 1fr !important;
    border-radius: 3px !important;
  }
  .nlg-card::before {
    width: 3px !important;
  }
  .nlg-img, .nlg-no-img {
    min-height: 220px !important;
    aspect-ratio: 16 / 9 !important;
    border-right: 0 !important;
    border-bottom:
      1px solid rgba(138, 88, 57, 0.12) !important;
  }
  .nlg-body {
    padding: 26px 24px 28px !important;
  }
  .nlg-meta {
    gap: 10px !important;
    margin-bottom: 14px !important;
  }
  .nlg-date {
    font-size: 0.78rem !important;
  }
  .nlg-badge, .news-list-grid-section .news-badge {
    min-height: 23px !important;
    padding: 3px 11px !important;
    font-size: 0.63rem !important;
  }
  .nlg-title {
    font-size: 1.25rem !important;
    line-height: 1.6 !important;
  }
  .nlg-excerpt {
    margin-top: 12px !important;
    font-size: 0.87rem !important;
    line-height: 1.9 !important;
  }
}
/* =========================================================
   480px以下
========================================================= */
@media (max-width: 480px) {
  .news-list-grid-section {
    padding:
      58px 15px 70px !important;
  }
  .news-main-title {
    font-size: 1.55rem !important;
  }
  .news-section-header {
    margin-bottom: 30px !important;
  }
  .nlg-img, .nlg-no-img {
    min-height: 190px !important;
  }
  .nlg-body {
    padding:
      22px 19px 24px !important;
  }
  .nlg-title {
    font-size: 1.16rem !important;
    letter-spacing: 0.045em !important;
  }
  .nlg-excerpt {
    font-size: 0.84rem !important;
  }
}


/* =========================================================
   Page: news_detail / NEWS_DETAIL ページ
========================================================= */

/* Block: news_article_body / sec_1782114380582 */
/* =========================================================
   news_article_body に貼るCSS
   白・ベージュ × 朱色
   カジュアル / 明朝体
========================================================= */
.news-article-body-section, .news-article-body-section * {
  box-sizing: border-box !important;
}
/* =========================================================
   SECTION
========================================================= */
.news-article-body-section {
  position: relative !important;
  overflow: hidden !important;
  padding: 100px 24px 120px !important;
  background:
    radial-gradient(circle at 8% 12%, rgba(194, 87, 54, 0.05) 0 2px, transparent 3px), radial-gradient(circle at 92% 85%, rgba(220, 154, 50, 0.06) 0 3px, transparent 4px), linear-gradient(180deg, #fffdf9 0%, #fbf4e7 100%) !important;
  background-size:
    66px 66px, 92px 92px, 100% 100% !important;
  color: #433128 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
}
/* =========================================================
   背景装飾
========================================================= */
.news-article-body-section::before {
  content: "" !important;
  position: absolute !important;
  top: 35px !important;
  left: -75px !important;
  width: 220px !important;
  height: 220px !important;
  border-radius: 50% !important;
  background:
    repeating-radial-gradient(circle, transparent 0 14px, rgba(194, 87, 54, 0.10) 15px 18px, transparent 19px 30px) !important;
  pointer-events: none !important;
}
/* =========================================================
   CONTAINER
========================================================= */
.nab-container {
  position: relative !important;
  z-index: 2 !important;
  width: min(calc(100% - 48px), 980px) !important;
  max-width: 980px !important;
  margin: 0 auto !important;
  padding: 60px 64px 72px !important;
  background:
    rgba(255, 255, 255, 0.82) !important;
  color: #433128 !important;
  border:
    1px solid rgba(145, 91, 57, 0.13) !important;
  border-radius: 3px !important;
  box-shadow:
    0 18px 44px rgba(85, 57, 38, 0.08) !important;
}
/* =========================================================
   HEADER
========================================================= */
.nab-header {
  margin: 0 0 44px !important;
  padding: 0 0 30px !important;
  border-bottom:
    1px solid rgba(138, 88, 57, 0.14) !important;
  text-align: left !important;
}
/* =========================================================
   META
========================================================= */
.nab-meta {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin: 0 0 18px !important;
  text-align: left !important;
}
/* =========================================================
   DATE
========================================================= */
.nab-date {
  color: #8d6b58 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 0.86rem !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0.06em !important;
}
/* =========================================================
   BADGE
========================================================= */
.nab-badge, .article-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 25px !important;
  padding: 4px 13px !important;
  background: #c25736 !important;
  color: #ffffff !important;
  border: 1px solid #c25736 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 0.68rem !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0.07em !important;
}
/* =========================================================
   TITLE
========================================================= */
.nab-title {
  position: relative !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 0 20px !important;
  color: #3f3028 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  font-size: clamp(1.9rem, 4vw, 2.9rem) !important;
  font-weight: 700 !important;
  line-height: 1.55 !important;
  letter-spacing: 0.07em !important;
  text-align: left !important;
}
/* タイトル下の朱色ライン */
.nab-title::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 42px !important;
  height: 2px !important;
  background: #c25736 !important;
}
/* =========================================================
   MAIN IMAGE
========================================================= */
.nab-main-img-box {
  position: relative !important;
  width: 100% !important;
  max-height: none !important;
  margin: 0 0 54px !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  aspect-ratio: 16 / 9 !important;
  transition: none !important;
}
/* ベージュ背面 */
.nab-main-img-box::before {
  content: "" !important;
  position: absolute !important;
  top: 20px !important;
  left: -20px !important;
  right: 20px !important;
  bottom: -20px !important;
  z-index: -1 !important;
  background:
    linear-gradient(145deg, #f2d99d 0%, #f7e8bc 100%) !important;
  pointer-events: none !important;
}
/* =========================================================
   IMAGE
========================================================= */
.nab-main-img-box img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  border: 6px solid #ffffff !important;
  border-radius: 4px !important;
  box-shadow:
    0 18px 42px rgba(77, 51, 32, 0.14) !important;
  filter:
    saturate(0.97) contrast(0.99) brightness(1.01) !important;
}
/* =========================================================
   BODY TEXT
========================================================= */
.nab-body-text {
  color: #55443a !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  line-height: 2.2 !important;
  letter-spacing: 0.045em !important;
  text-align: left !important;
  word-break: break-word !important;
}
/* =========================================================
   BODY ELEMENTS
========================================================= */
.nab-body-text p {
  margin: 0 0 1.8em !important;
}
.nab-body-text p:last-child {
  margin-bottom: 0 !important;
}
.nab-body-text h2, .nab-body-text h3, .nab-body-text h4 {
  color: #3f3028 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-weight: 700 !important;
  line-height: 1.6 !important;
  text-align: left !important;
}
.nab-body-text h2 {
  position: relative !important;
  margin: 2.4em 0 1em !important;
  padding: 0 0 12px !important;
  font-size: 1.6rem !important;
  border-bottom:
    1px solid rgba(145, 91, 57, 0.16) !important;
}
.nab-body-text h2::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: -1px !important;
  width: 42px !important;
  height: 2px !important;
  background: #c25736 !important;
}
.nab-body-text h3 {
  margin: 2em 0 0.9em !important;
  padding-left: 14px !important;
  border-left: 3px solid #c25736 !important;
  font-size: 1.3rem !important;
}
.nab-body-text h4 {
  margin: 1.8em 0 0.8em !important;
  color: #a24e34 !important;
  font-size: 1.08rem !important;
}
/* =========================================================
   LINKS
========================================================= */
.nab-body-text a {
  color: #b45537 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}
.nab-body-text a:hover {
  opacity: 0.72 !important;
}
/* =========================================================
   LIST
========================================================= */
.nab-body-text ul, .nab-body-text ol {
  margin: 1.4em 0 !important;
  padding-left: 1.7em !important;
}
.nab-body-text li {
  margin: 0.55em 0 !important;
}
/* =========================================================
   BLOCKQUOTE
========================================================= */
.nab-body-text blockquote {
  margin: 2em 0 !important;
  padding: 20px 24px !important;
  background: #f7edda !important;
  color: #655045 !important;
  border-left: 3px solid #c25736 !important;
}
/* =========================================================
   FOOTER NAV
========================================================= */
.nab-footer-nav {
  margin-top: 70px !important;
  padding-top: 34px !important;
  border-top:
    1px solid rgba(138, 88, 57, 0.14) !important;
  text-align: left !important;
}
/* =========================================================
   BACK BUTTON
========================================================= */
.btn-nab-back {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  min-width: 190px !important;
  min-height: 48px !important;
  padding: 0 30px !important;
  background: #c25736 !important;
  color: #ffffff !important;
  border: 1px solid #c25736 !important;
  border-radius: 2px !important;
  box-shadow:
    0 8px 20px rgba(145, 69, 42, 0.14) !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0.10em !important;
  text-decoration: none !important;
  transition:
    background-color 0.3s ease, border-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease !important;
}
/* =========================================================
   BUTTON HOVER
========================================================= */
.btn-nab-back:hover {
  background: #994128 !important;
  color: #ffffff !important;
  border-color: #994128 !important;
  box-shadow:
    0 12px 25px rgba(145, 69, 42, 0.19) !important;
  transform: translateY(-2px) !important;
}
/* =========================================================
   1024px以下
========================================================= */
@media (max-width: 1024px) {
  .news-article-body-section {
    padding:
      90px 22px 105px !important;
  }
  .nab-container {
    width: min(100%, 900px) !important;
    padding:
      52px 50px 64px !important;
  }
}
/* =========================================================
   768px以下
========================================================= */
@media (max-width: 768px) {
  .news-article-body-section {
    padding:
      70px 18px 82px !important;
  }
  .news-article-body-section::before {
    top: 15px !important;
    left: -65px !important;
    width: 170px !important;
    height: 170px !important;
  }
  .nab-container {
    width: 100% !important;
    max-width: none !important;
    padding:
      38px 24px 48px !important;
  }
  .nab-header {
    margin-bottom: 34px !important;
    padding-bottom: 24px !important;
  }
  .nab-meta {
    margin-bottom: 16px !important;
  }
  .nab-title {
    font-size:
      clamp(1.5rem, 6vw, 2rem) !important;
    line-height: 1.6 !important;
    letter-spacing: 0.06em !important;
  }
  .nab-main-img-box {
    margin-bottom: 40px !important;
    aspect-ratio: 4 / 3 !important;
  }
  .nab-main-img-box::before {
    top: 14px !important;
    left: -12px !important;
    right: 12px !important;
    bottom: -14px !important;
  }
  .nab-main-img-box img {
    border-width: 4px !important;
  }
  .nab-body-text {
    font-size: 0.92rem !important;
    line-height: 2.05 !important;
  }
  .nab-body-text h2 {
    font-size: 1.4rem !important;
  }
  .nab-body-text h3 {
    font-size: 1.18rem !important;
  }
  .nab-footer-nav {
    margin-top: 55px !important;
    padding-top: 28px !important;
  }
  .btn-nab-back {
    width: 100% !important;
    min-height: 48px !important;
  }
}
/* =========================================================
   480px以下
========================================================= */
@media (max-width: 480px) {
  .news-article-body-section {
    padding:
      58px 15px 70px !important;
  }
  .nab-container {
    padding:
      32px 18px 42px !important;
  }
  .nab-title {
    font-size: 1.4rem !important;
  }
  .nab-date {
    font-size: 0.78rem !important;
  }
  .nab-badge, .article-badge {
    font-size: 0.63rem !important;
  }
  .nab-body-text {
    font-size: 0.87rem !important;
    line-height: 2 !important;
  }
  .btn-nab-back {
    font-size: 0.74rem !important;
  }
}


/* =========================================================
   Page: concept / CONCEPT｜あぐーしゃぶしゃぶTON｜北谷町美浜で味わうあぐー豚しゃぶしゃぶ
========================================================= */

/* Block: hero_page / sec_1787557682739 */
/* =========================================================
   hero_page に貼るCSS
========================================================= */
.page-hero-wrapper, .page-hero-wrapper * {
  box-sizing: border-box !important;
}
/* =========================================================
   HERO
========================================================= */
.page-hero-wrapper {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 500px !important;
  overflow: hidden !important;
  padding: 190px 24px 120px !important;

  /* background shorthand は使わない */
  background-color: #d9c7ad !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: cover !important;

  color: #ffffff !important;
  text-align: center !important;
}
/* =========================================================
   HTMLインライン background-image 対応
========================================================= */
.page-hero-wrapper[style*="background-image"] {
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: cover !important;
}
/* =========================================================
   装飾
========================================================= */
.page-hero-wrapper::before {
  content: "" !important;
  position: absolute !important;
  top: -120px !important;
  right: -90px !important;
  z-index: 2 !important;
  display: block !important;
  width: 320px !important;
  height: 320px !important;
  border-radius: 50% !important;
  background:
    repeating-radial-gradient(circle, transparent 0 18px, rgba(255, 255, 255, 0.11) 19px 21px, transparent 22px 35px) !important;
  pointer-events: none !important;
}
/* =========================================================
   下部装飾
========================================================= */
.page-hero-wrapper::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  z-index: 3 !important;
  display: block !important;
  width: 100% !important;
  height: 70px !important;
  background:
    linear-gradient(to bottom, transparent 0%, rgba(255, 248, 237, 0.10) 100%) !important;
  pointer-events: none !important;
}
/* =========================================================
   OVERLAY
========================================================= */
.ph-overlay {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  width: 100% !important;
  height: 100% !important;
  /*
   青緑オーバーレイを撤廃。
   写真が消えないようかなり薄め。
  */
  background:
    linear-gradient(90deg, rgba(45, 29, 21, 0.40) 0%, rgba(45, 29, 21, 0.25) 50%, rgba(72, 39, 27, 0.30) 100%) !important;
  opacity: 1 !important;
  pointer-events: none !important;
}
/* =========================================================
   CONTENT
========================================================= */
.ph-container {
  position: relative !important;
  z-index: 10 !important;
  display: block !important;
  width: min(100%, 1000px) !important;
  max-width: 1000px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  text-align: center !important;
}
/* =========================================================
   TITLE
========================================================= */
.ph-title {
  position: relative !important;
  display: inline-block !important;
  margin: 0 !important;
  padding: 0 0 21px !important;
  color: #ffffff !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  font-size: clamp(2.2rem, 5vw, 3.8rem) !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.13em !important;
  text-align: center !important;
  text-shadow:
    0 3px 18px rgba(20, 12, 8, 0.55) !important;
}
/* =========================================================
   TITLE LINE
========================================================= */
.ph-title::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  bottom: 0 !important;
  width: 42px !important;
  height: 2px !important;
  background: #cf6546 !important;
  transform: translateX(-50%) !important;
}
/* =========================================================
   DESCRIPTION
========================================================= */
.ph-desc {
  display: block !important;
  width: min(100%, 680px) !important;
  max-width: 680px !important;
  margin: 24px auto 0 !important;
  padding: 0 !important;
  color: rgba(255, 255, 255, 0.96) !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  font-size: 0.96rem !important;
  font-weight: 500 !important;
  line-height: 2 !important;
  letter-spacing: 0.07em !important;
  text-align: center !important;
  text-shadow:
    0 2px 10px rgba(20, 12, 8, 0.55) !important;
}
/* =========================================================
   TABLET
========================================================= */
@media (max-width: 1024px) {
  .page-hero-wrapper {
    min-height: 450px !important;
    padding:
      165px 24px 95px !important;
    background-position: center center !important;
  }
}
/* =========================================================
   SMARTPHONE
========================================================= */
@media (max-width: 768px) {
  .page-hero-wrapper {
    min-height: 390px !important;
    padding:
      140px 20px 75px !important;
    background-position: center center !important;
    background-size: cover !important;
  }
  .page-hero-wrapper::before {
    top: -85px !important;
    right: -65px !important;
    width: 220px !important;
    height: 220px !important;
  }
  .ph-overlay {
    background:
      rgba(47, 30, 22, 0.36) !important;
  }
  .ph-title {
    padding-bottom: 18px !important;
    font-size: clamp(1.75rem, 8vw, 2.5rem) !important;
    letter-spacing: 0.09em !important;
  }
  .ph-title::after {
    width: 36px !important;
  }
  .ph-desc {
    margin-top: 20px !important;
    font-size: 0.89rem !important;
    line-height: 1.95 !important;
    letter-spacing: 0.05em !important;
  }
}
/* =========================================================
   SMALL SMARTPHONE
========================================================= */
@media (max-width: 480px) {
  .page-hero-wrapper {
    min-height: 340px !important;
    padding:
      120px 16px 62px !important;
  }
  .ph-title {
    font-size: clamp(1.5rem, 8.5vw, 2rem) !important;
    letter-spacing: 0.07em !important;
  }
  .ph-desc {
    font-size: 0.84rem !important;
  }
}


/* =========================================================
   Page: access / ACCESS｜あぐーしゃぶしゃぶTON｜北谷町美浜で味わうあぐー豚しゃぶしゃぶ
========================================================= */

/* Block: store_info / sec_1787559352363 */
/* =========================================================
   店舗概要パーツ（⑨ store_info）
   白・ベージュ × 朱色
   カジュアル / 明朝体
========================================================= */
.store-info-section, .store-info-section * {
  box-sizing: border-box !important;
}
/* =========================================================
   SECTION
========================================================= */
.store-info-section {
  position: relative !important;
  overflow: hidden !important;
  padding: 110px 24px 120px !important;
  background:
    radial-gradient(circle at 8% 14%, rgba(194, 87, 54, 0.06) 0 2px, transparent 3px), radial-gradient(circle at 90% 82%, rgba(220, 154, 50, 0.07) 0 3px, transparent 4px), linear-gradient(180deg, #fffdf9 0%, #fbf4e7 100%) !important;
  background-size:
    66px 66px, 92px 92px, 100% 100% !important;
  color: #433128 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
}
/* =========================================================
   左上装飾
========================================================= */
.store-info-section::before {
  content: "" !important;
  position: absolute !important;
  top: 35px !important;
  left: -70px !important;
  width: 220px !important;
  height: 220px !important;
  border-radius: 50% !important;
  background:
    repeating-radial-gradient(circle, transparent 0 14px, rgba(194, 87, 54, 0.11) 15px 18px, transparent 19px 30px) !important;
  pointer-events: none !important;
}
/* =========================================================
   CONTAINER
========================================================= */
.store-info-container {
  position: relative !important;
  z-index: 2 !important;
  width: min(calc(100% - 48px), 1240px) !important;
  max-width: 1240px !important;
  margin: 0 auto !important;
}
/* =========================================================
   HEADER
========================================================= */
.store-info-header {
  max-width: 880px !important;
  margin: 0 0 48px !important;
  text-align: left !important;
}
/* =========================================================
   TITLE
========================================================= */
.store-info-title {
  position: relative !important;
  display: block !important;
  width: fit-content !important;
  margin: 0 0 20px !important;
  padding: 0 0 16px !important;
  color: #3f3028 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  font-size: clamp(2rem, 3.6vw, 3rem) !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.08em !important;
  text-align: left !important;
}
/* タイトル下の朱色ライン */
.store-info-title::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 42px !important;
  height: 2px !important;
  background: #c25736 !important;
}
/* =========================================================
   DESCRIPTION
========================================================= */
.store-info-desc {
  max-width: 760px !important;
  margin: 0 !important;
  color: #665148 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 0.95rem !important;
  font-weight: 400 !important;
  line-height: 2 !important;
  letter-spacing: 0.04em !important;
  text-align: left !important;
}
/* =========================================================
   LAYOUT
========================================================= */
.store-info-layout {
  display: block !important;
  width: 100% !important;
}
.store-info-layout.has-image {
  display: grid !important;
  grid-template-columns:
    minmax(0, 0.9fr) minmax(440px, 1.1fr) !important;
  align-items: center !important;
  gap: clamp(50px, 5vw, 80px) !important;
}
/* =========================================================
   TABLE WRAP
========================================================= */
.store-info-table-wrap {
  width: 100% !important;
  min-width: 0 !important;
}
/* =========================================================
   TABLE
========================================================= */
.store-info-table {
  width: 100% !important;
  margin: 0 !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  background: rgba(255, 255, 255, 0.64) !important;
  border-top:
    1px solid rgba(138, 88, 57, 0.16) !important;
}
/* =========================================================
   TABLE CELL
========================================================= */
.store-info-table th, .store-info-table td {
  padding: 18px 18px !important;
  border-bottom:
    1px solid rgba(138, 88, 57, 0.13) !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 0.9rem !important;
  line-height: 1.9 !important;
  text-align: left !important;
  vertical-align: top !important;
}
/* =========================================================
   TABLE TH
========================================================= */
.store-info-table th {
  width: 135px !important;
  background: rgba(247, 232, 204, 0.5) !important;
  color: #b45537 !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  white-space: nowrap !important;
}
/* =========================================================
   TABLE TD
========================================================= */
.store-info-table td {
  color: #55443a !important;
  font-weight: 400 !important;
  word-break: break-word !important;
}
/* =========================================================
   IMAGE
========================================================= */
.store-info-image {
  position: relative !important;
  width: 100% !important;
  margin: 0 !important;
  align-self: center !important;
}
/* 画像背面ベージュ */
.store-info-image::before {
  content: "" !important;
  position: absolute !important;
  top: 22px !important;
  left: -22px !important;
  right: 22px !important;
  bottom: -22px !important;
  z-index: -1 !important;
  background:
    linear-gradient(145deg, #f2d99d 0%, #f7e8bc 100%) !important;
  border:
    1px solid rgba(195, 145, 66, 0.14) !important;
  pointer-events: none !important;
}
/* =========================================================
   IMAGE IMG
   縦幅を広めに
   上下左右中央基準でトリミング
========================================================= */
.store-info-image img {
  display: block !important;
  width: 100% !important;
  height: 480px !important;
  min-height: 480px !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
  object-position: 50% 50% !important;
  border: 6px solid #ffffff !important;
  border-radius: 4px !important;
  box-shadow:
    0 18px 42px rgba(77, 51, 32, 0.14) !important;
  filter:
    saturate(0.96) contrast(0.98) brightness(1.02) !important;
}
/* =========================================================
   LINK
========================================================= */
.store-info-section a {
  color: #b45537 !important;
  text-decoration: none !important;
  transition:
    opacity 0.25s ease !important;
}
.store-info-section a:hover {
  opacity: 0.7 !important;
}
/* =========================================================
   1200px以下
========================================================= */
@media (max-width: 1200px) {
  .store-info-layout.has-image {
    grid-template-columns:
      minmax(0, 0.95fr) minmax(400px, 1.05fr) !important;
    gap: 50px !important;
  }
  .store-info-image img {
    height: 440px !important;
    min-height: 440px !important;
  }
}
/* =========================================================
   1024px以下
========================================================= */
@media (max-width: 1024px) {
  .store-info-section {
    padding:
      95px 22px 105px !important;
  }
  .store-info-container {
    width: min(100%, 920px) !important;
  }
  .store-info-header {
    margin-bottom: 42px !important;
  }
  .store-info-layout.has-image {
    grid-template-columns: 1fr !important;
    gap: 50px !important;
  }
  .store-info-image {
    width: calc(100% - 30px) !important;
    max-width: 760px !important;
    margin: 0 auto !important;
    order: -1 !important;
  }
  .store-info-image img {
    height: 430px !important;
    min-height: 430px !important;
    object-position: 50% 50% !important;
  }
}
/* =========================================================
   768px以下
========================================================= */
@media (max-width: 768px) {
  .store-info-section {
    padding:
      72px 18px 82px !important;
  }
  .store-info-section::before {
    top: 15px !important;
    left: -65px !important;
    width: 170px !important;
    height: 170px !important;
  }
  .store-info-container {
    width: 100% !important;
    max-width: none !important;
  }
  .store-info-header {
    margin-bottom: 34px !important;
  }
  .store-info-title {
    margin-bottom: 18px !important;
    font-size:
      clamp(1.7rem, 7vw, 2.2rem) !important;
  }
  .store-info-desc {
    font-size: 0.9rem !important;
    line-height: 1.95 !important;
  }
  .store-info-layout.has-image {
    gap: 42px !important;
  }
  .store-info-table th, .store-info-table td {
    padding:
      15px 12px !important;
    font-size: 0.84rem !important;
    line-height: 1.8 !important;
  }
  .store-info-table th {
    width: 100px !important;
  }
  .store-info-image {
    width: calc(100% - 20px) !important;
    margin: 0 auto !important;
  }
  .store-info-image::before {
    top: 14px !important;
    left: -12px !important;
    right: 12px !important;
    bottom: -14px !important;
  }
  .store-info-image img {
    width: 100% !important;
    height: 360px !important;
    min-height: 360px !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    object-fit: cover !important;
    object-position: 50% 50% !important;
    border-width: 4px !important;
  }
}
/* =========================================================
   480px以下
========================================================= */
@media (max-width: 480px) {
  .store-info-section {
    padding:
      60px 15px 70px !important;
  }
  .store-info-title {
    font-size: 1.55rem !important;
  }
  .store-info-desc {
    font-size: 0.86rem !important;
  }
  .store-info-table {
    table-layout: auto !important;
  }
  .store-info-table th, .store-info-table td {
    padding:
      13px 9px !important;
    font-size: 0.8rem !important;
  }
  .store-info-table th {
    width: 84px !important;
  }
  .store-info-layout.has-image {
    gap: 36px !important;
  }
  .store-info-image {
    width: calc(100% - 14px) !important;
  }
  .store-info-image img {
    height: 300px !important;
    min-height: 300px !important;
    object-fit: cover !important;
    object-position: 50% 50% !important;
  }
}

/* Block: gmap / sec_1787559644676 */
/* =========================================================
   Googleマップ埋め込みブロック（③）
   白・ベージュ × 朱色
   カジュアル / 明朝体
========================================================= */
.gmap-section, .gmap-section * {
  box-sizing: border-box !important;
}
/* =========================================================
   SECTION
========================================================= */
.gmap-section {
  position: relative !important;
  overflow: hidden !important;
  padding: 110px 24px 120px !important;
  background:
    radial-gradient(circle at 10% 16%, rgba(194, 87, 54, 0.06) 0 2px, transparent 3px), radial-gradient(circle at 90% 80%, rgba(220, 154, 50, 0.07) 0 3px, transparent 4px), linear-gradient(180deg, #fffdf9 0%, #fbf4e7 100%) !important;
  background-size:
    66px 66px, 92px 92px, 100% 100% !important;
  color: #433128 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
}
/* =========================================================
   背景装飾
========================================================= */
.gmap-section::before {
  content: "" !important;
  position: absolute !important;
  top: 30px !important;
  right: -75px !important;
  width: 220px !important;
  height: 220px !important;
  border-radius: 50% !important;
  background:
    repeating-radial-gradient(circle, transparent 0 14px, rgba(194, 87, 54, 0.11) 15px 18px, transparent 19px 30px) !important;
  pointer-events: none !important;
}
/* =========================================================
   CONTAINER
========================================================= */
.gmap-container {
  position: relative !important;
  z-index: 2 !important;
  width: min(calc(100% - 48px), 1240px) !important;
  max-width: 1240px !important;
  margin: 0 auto !important;
}
/* =========================================================
   HEADER
========================================================= */
.gmap-header {
  max-width: 880px !important;
  margin: 0 0 48px !important;
  text-align: left !important;
}
/* =========================================================
   TITLE
========================================================= */
.gmap-title {
  position: relative !important;
  display: block !important;
  width: fit-content !important;
  margin: 0 0 20px !important;
  padding: 0 0 16px !important;
  color: #3f3028 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  font-size: clamp(2rem, 3.6vw, 3rem) !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.08em !important;
  text-align: left !important;
}
/* タイトル下の朱色ライン */
.gmap-title::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 42px !important;
  height: 2px !important;
  background: #c25736 !important;
}
/* =========================================================
   DESCRIPTION
========================================================= */
.gmap-desc {
  max-width: 760px !important;
  margin: 0 !important;
  color: #665148 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 0.95rem !important;
  font-weight: 400 !important;
  line-height: 2 !important;
  letter-spacing: 0.04em !important;
  text-align: left !important;
}
/* =========================================================
   MAP WRAPPER
========================================================= */
.gmap-frame-wrap {
  position: relative !important;
  width: 100% !important;
  aspect-ratio: 16 / 7 !important;
  min-height: 380px !important;
  overflow: visible !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
}
/* =========================================================
   MAP 背面ベージュ
========================================================= */
.gmap-frame-wrap::before {
  content: "" !important;
  position: absolute !important;
  top: 22px !important;
  left: -22px !important;
  right: 22px !important;
  bottom: -22px !important;
  z-index: -1 !important;
  background:
    linear-gradient(145deg, #f2d99d 0%, #f7e8bc 100%) !important;
  border:
    1px solid rgba(194, 145, 66, 0.15) !important;
  pointer-events: none !important;
}
/* =========================================================
   MAP FRAME
========================================================= */
.gmap-frame-wrap iframe {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  border: 6px solid #ffffff !important;
  border-radius: 4px !important;
  box-shadow:
    0 18px 42px rgba(77, 51, 32, 0.14) !important;
  filter:
    saturate(0.94) contrast(0.98) brightness(1.02) !important;
}
/* =========================================================
   PLACEHOLDER
========================================================= */
.gmap-placeholder {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 380px !important;
  padding: 20px !important;
  background: #f3ead8 !important;
  color: #8f5c45 !important;
  border: 6px solid #ffffff !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 0.85rem !important;
  font-weight: 500 !important;
  line-height: 1.8 !important;
  text-align: center !important;
  box-shadow:
    0 18px 42px rgba(77, 51, 32, 0.14) !important;
}
/* =========================================================
   1024px以下
========================================================= */
@media (max-width: 1024px) {
  .gmap-section {
    padding:
      95px 22px 105px !important;
  }
  .gmap-container {
    width: min(100%, 920px) !important;
  }
  .gmap-header {
    margin-bottom: 42px !important;
  }
  .gmap-frame-wrap {
    aspect-ratio: 16 / 8 !important;
    min-height: 340px !important;
  }
  .gmap-placeholder {
    min-height: 340px !important;
  }
}
/* =========================================================
   768px以下
========================================================= */
@media (max-width: 768px) {
  .gmap-section {
    padding:
      72px 18px 82px !important;
  }
  .gmap-section::before {
    top: 15px !important;
    right: -65px !important;
    width: 170px !important;
    height: 170px !important;
  }
  .gmap-container {
    width: 100% !important;
    max-width: none !important;
  }
  .gmap-header {
    margin-bottom: 34px !important;
  }
  .gmap-title {
    margin-bottom: 18px !important;
    font-size: clamp(1.7rem, 7vw, 2.2rem) !important;
  }
  .gmap-desc {
    font-size: 0.9rem !important;
    line-height: 1.95 !important;
  }
  .gmap-frame-wrap {
    aspect-ratio: 4 / 3 !important;
    min-height: 300px !important;
  }
  .gmap-frame-wrap::before {
    top: 14px !important;
    left: -12px !important;
    right: 12px !important;
    bottom: -14px !important;
  }
  .gmap-frame-wrap iframe {
    border-width: 4px !important;
  }
  .gmap-placeholder {
    min-height: 300px !important;
    border-width: 4px !important;
  }
}
/* =========================================================
   480px以下
========================================================= */
@media (max-width: 480px) {
  .gmap-section {
    padding:
      60px 15px 70px !important;
  }
  .gmap-title {
    font-size: 1.55rem !important;
  }
  .gmap-desc {
    font-size: 0.86rem !important;
  }
  .gmap-frame-wrap {
    aspect-ratio: 4 / 3 !important;
    min-height: 260px !important;
  }
  .gmap-placeholder {
    min-height: 260px !important;
    font-size: 0.8rem !important;
  }
}


/* =========================================================
   Page: footer / FOOTER ページ
========================================================= */

/* Block: global_footer / sec_1782112173284 */
/* =========================================================
   global_footer に貼るCSS
   白・ベージュ × 朱色
   カジュアル / 明朝体
========================================================= */
.global-footer, .global-footer * {
  box-sizing: border-box !important;
}
/* =========================================================
   FOOTER
========================================================= */
.global-footer {
  position: relative !important;
  overflow: hidden !important;
  width: 100% !important;
  max-width: none !important;
  padding: 110px 24px 64px !important;
  background:
    radial-gradient(circle at 8% 18%, rgba(194, 87, 54, 0.06) 0 2px, transparent 3px), radial-gradient(circle at 90% 85%, rgba(220, 155, 52, 0.07) 0 3px, transparent 4px), linear-gradient(180deg, #fffdf9 0%, #fbf4e7 100%) !important;
  background-size:
    66px 66px, 92px 92px, 100% 100% !important;
  color: #433128 !important;
  border-top: 1px solid rgba(150, 93, 56, 0.13) !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
}
/* =========================================================
   FOOTER 装飾
========================================================= */
.global-footer::before {
  content: "" !important;
  position: absolute !important;
  left: -80px !important;
  top: 35px !important;
  display: block !important;
  width: 240px !important;
  height: 240px !important;
  border-radius: 50% !important;
  background:
    repeating-radial-gradient(circle, transparent 0 15px, rgba(194, 87, 54, 0.10) 16px 19px, transparent 20px 31px) !important;
  pointer-events: none !important;
}
/* =========================================================
   INFO GRID
========================================================= */
.info-grid {
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  grid-template-columns:
    minmax(0, 0.95fr) minmax(420px, 1.05fr) !important;
  align-items: start !important;
  gap: clamp(60px, 6vw, 90px) !important;
  width: min(calc(100% - 48px), 1240px) !important;
  max-width: 1240px !important;
  margin: 0 auto !important;
}
/* =========================================================
   FOOTER BRAND / SHOP INFO TITLE
========================================================= */
.footer-brand h2, .shop-info h2 {
  position: relative !important;
  display: block !important;
  width: fit-content !important;
  margin: 0 0 24px !important;
  padding: 0 0 15px !important;
  color: #3f3028 !important;
  border: 0 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  font-size: clamp(1.4rem, 3vw, 2.5rem) !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  letter-spacing: 0.08em !important;
  text-align: left !important;
}
/* タイトル下の朱色ライン */
.footer-brand h2::after, .shop-info h2::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 42px !important;
  height: 2px !important;
  background: #c25736 !important;
}
/* =========================================================
   GENRE
========================================================= */
.footer-genre {
  margin: 0 0 26px !important;
  color: #b45537 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  line-height: 1.6 !important;
  letter-spacing: 0.10em !important;
  text-align: left !important;
}
/* =========================================================
   TABLE
========================================================= */
.footer-table, .shop-info table {
  width: 100% !important;
  margin: 28px 0 0 !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
}
.footer-table th, .footer-table td, .shop-info th, .shop-info td {
  padding: 15px 0 !important;
  border-bottom:
    1px dashed rgba(129, 86, 59, 0.16) !important;
  font-size: 0.88rem !important;
  font-weight: 400 !important;
  line-height: 1.9 !important;
  text-align: left !important;
  vertical-align: top !important;
}
/* =========================================================
   TABLE TH
========================================================= */
.footer-table th, .shop-info th {
  width: 105px !important;
  padding-right: 16px !important;
  color: #b45537 !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
}
/* =========================================================
   TABLE TD
========================================================= */
.footer-table td, .shop-info td {
  color: #55443a !important;
  word-break: break-word !important;
}
/* =========================================================
   TEL
========================================================= */
.footer-tel, .footer-tel a {
  color: #433128 !important;
  text-decoration: none !important;
}
.footer-tel strong {
  color: #433128 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 1.35rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
}
/* =========================================================
   PAYMENT
========================================================= */
.payment-title {
  margin: 28px 0 12px !important;
  color: #b45537 !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 0.76rem !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  letter-spacing: 0.08em !important;
}
/* =========================================================
   PAYMENT ICONS
========================================================= */
.payment-icons {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 8px !important;
  color: #6f5d52 !important;
}
/* =========================================================
   PAYMENT TAG
========================================================= */
.pay-tag {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 27px !important;
  padding: 4px 9px !important;
  background: rgba(255, 255, 255, 0.64) !important;
  color: #6c594f !important;
  border:
    1px solid rgba(133, 88, 59, 0.16) !important;
  border-radius: 2px !important;
  font-size: 0.68rem !important;
  line-height: 1 !important;
}
/* =========================================================
   MAP
========================================================= */
.gmap-wrap {
  position: relative !important;
  width: 100% !important;
  min-height: 420px !important;
  height: 420px !important;
  overflow: hidden !important;
  background: #eee3cd !important;
  border:
    6px solid #ffffff !important;
  border-radius: 4px !important;
  box-shadow:
    0 18px 42px rgba(84, 57, 39, 0.13) !important;
}
/* MAP 背景プレート */
.gmap-wrap::before {
  content: "" !important;
  position: absolute !important;
  top: 18px !important;
  left: -18px !important;
  right: 18px !important;
  bottom: -18px !important;
  z-index: -1 !important;
  background:
    linear-gradient(145deg, #f1d99d 0%, #f7e8bc 100%) !important;
  pointer-events: none !important;
}
.gmap-wrap iframe {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 420px !important;
  border: 0 !important;
  filter: none !important;
}
/* =========================================================
   MAP PLACEHOLDER
========================================================= */
.gmap-placeholder {
  min-height: 420px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #9b553c !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", serif !important;
  font-weight: 600 !important;
  text-align: center !important;
}
/* =========================================================
   COPYRIGHT
========================================================= */
.footer-copy-text, .footer-copy {
  position: relative !important;
  z-index: 1 !important;
  margin: 70px 0 0 !important;
  padding: 22px 20px 0 !important;
  background: transparent !important;
  color: #846e61 !important;
  border-top:
    1px solid rgba(133, 88, 59, 0.12) !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", serif !important;
  font-size: 0.68rem !important;
  line-height: 1.8 !important;
  letter-spacing: 0.05em !important;
  text-align: center !important;
}
/* =========================================================
   FLOATING ACTIONS
========================================================= */
.fc-floating-actions {
  position: fixed !important;
  right: 22px !important;
  bottom: 22px !important;
  z-index: 1800 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  pointer-events: none !important;
}
/* =========================================================
   FLOATING ACTION
========================================================= */
.fc-floating-action {
  pointer-events: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  min-width: 140px !important;
  min-height: 46px !important;
  padding: 0 18px !important;
  background: rgba(255, 253, 248, 0.96) !important;
  color: #5c4437 !important;
  border:
    1px solid rgba(144, 91, 58, 0.20) !important;
  border-radius: 2px !important;
  box-shadow:
    0 10px 26px rgba(73, 49, 35, 0.12) !important;
  font-family:
    "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.04em !important;
  text-decoration: none !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  transition:
    background-color 0.28s ease, color 0.28s ease, border-color 0.28s ease, transform 0.28s ease !important;
}
/* =========================================================
   FLOATING HOVER
========================================================= */
.fc-floating-action:hover {
  background: #b34e32 !important;
  color: #ffffff !important;
  border-color: #b34e32 !important;
  transform: translateY(-2px) !important;
}
/* =========================================================
   RESERVE
========================================================= */
.fc-floating-reserve {
  background: #b34e32 !important;
  color: #ffffff !important;
  border-color: #b34e32 !important;
}
.fc-floating-reserve:hover {
  background: #913d28 !important;
  border-color: #913d28 !important;
  color: #ffffff !important;
}
/* =========================================================
   LINE
========================================================= */
.fc-floating-line {
  background: rgba(255, 253, 248, 0.96) !important;
  color: #4c443d !important;
  border-color: rgba(6, 199, 85, 0.45) !important;
}
.fc-floating-line:hover {
  background: #06c755 !important;
  border-color: #06c755 !important;
  color: #ffffff !important;
}
/* =========================================================
   INSTAGRAM
========================================================= */
.fc-floating-instagram {
  background: rgba(255, 253, 248, 0.96) !important;
  color: #59443a !important;
  border-color: rgba(194, 87, 54, 0.34) !important;
}
.fc-floating-instagram:hover {
  background: #b34e32 !important;
  border-color: #b34e32 !important;
  color: #ffffff !important;
}
/* =========================================================
   1024px以下
========================================================= */
@media (max-width: 1024px) {
  .global-footer {
    padding:
      95px 22px 55px !important;
  }
  .info-grid {
    grid-template-columns:
      minmax(0, 1fr) minmax(360px, 1fr) !important;
    gap: 50px !important;
    width: min(100%, 960px) !important;
  }
  .gmap-wrap {
    min-height: 360px !important;
    height: 360px !important;
  }
  .gmap-wrap iframe, .gmap-placeholder {
    min-height: 360px !important;
  }
}
/* =========================================================
   768px以下
========================================================= */
@media (max-width: 768px) {
  .global-footer {
    padding:
      78px 18px 105px !important;
  }
  .global-footer::before {
    left: -65px !important;
    top: 20px !important;
    width: 175px !important;
    height: 175px !important;
  }
  .info-grid {
    grid-template-columns: 1fr !important;
    gap: 52px !important;
    width: 100% !important;
    max-width: none !important;
  }
  .footer-brand h2, .shop-info h2 {
    font-size: 1.8rem !important;
  }
  .footer-table th, .shop-info th {
    width: 95px !important;
  }
  .gmap-wrap {
    min-height: 300px !important;
    height: 300px !important;
  }
  .gmap-wrap iframe, .gmap-placeholder {
    min-height: 300px !important;
  }
  .footer-copy-text, .footer-copy {
    margin-top: 55px !important;
  }
  /* =======================================================
     SP FLOATING BAR
  ======================================================= */
  .fc-floating-actions {
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    flex-direction: row !important;
    gap: 0 !important;
    padding:
      7px 8px calc(7px + env(safe-area-inset-bottom)) !important;
    background: rgba(255, 253, 248, 0.97) !important;
    border-top:
      1px solid rgba(130, 84, 56, 0.13) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    box-shadow:
      0 -8px 24px rgba(77, 51, 35, 0.06) !important;
  }
  .fc-floating-action {
    flex:
      1 1 0 !important;
    min-width: 0 !important;
    min-height: 50px !important;
    padding: 0 7px !important;
    flex-direction: column !important;
    gap: 3px !important;
    background: transparent !important;
    color: #59463c !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-size: 0.68rem !important;
    line-height: 1.2 !important;
  }
  .fc-floating-action i {
    font-size: 16px !important;
  }
  .fc-floating-reserve {
    background: #b34e32 !important;
    color: #ffffff !important;
  }
  .fc-floating-reserve:hover {
    background: #913d28 !important;
    color: #ffffff !important;
  }
  .fc-floating-line:hover {
    background: transparent !important;
    color: #06c755 !important;
  }
  .fc-floating-instagram:hover {
    background: transparent !important;
    color: #b34e32 !important;
  }
}
/* =========================================================
   480px以下
========================================================= */
@media (max-width: 480px) {
  .global-footer {
    padding:
      62px 15px 100px !important;
  }
  .footer-brand h2, .shop-info h2 {
    font-size: 1.6rem !important;
  }
  .footer-genre {
    font-size: 0.72rem !important;
  }
  .footer-table th, .shop-info th {
    width: 82px !important;
    padding-right: 10px !important;
  }
  .footer-table th, .footer-table td, .shop-info th, .shop-info td {
    font-size: 0.82rem !important;
    line-height: 1.8 !important;
  }
  .footer-tel strong {
    font-size: 1.2rem !important;
  }
  .gmap-wrap {
    min-height: 260px !important;
    height: 260px !important;
  }
  .gmap-wrap iframe, .gmap-placeholder {
    min-height: 260px !important;
  }
  .footer-copy-text, .footer-copy {
    margin-top: 45px !important;
    padding:
      18px 10px 0 !important;
  }
}
