/* =========================================================
   FluxCore Pro Generated Custom CSS
   Auto generated from fc_pages.layout_json advanced.custom_css
   Last updated: 2026-09-11 17:35:16
========================================================= */

/* =========================================================
   Page: index / D.D.CLAN・D.D.CAVE公式｜神栖市・知手のバー
========================================================= */

/* Block: custom_html / sec_1789100396549 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: latest_news_bar / sec_1789100408015 */
/* D.D: TOP「NEWS」（新着ニュースバー）。見出しは CSS の擬似要素で左に置き、最新 3 件を右に並べる */
.news-bar-section { padding: 40px 20px !important; background: transparent !important; color: #fff !important; }
.news-bar-container {
  position: relative;
  max-width: 1129px !important; margin: 0 auto !important;
  display: grid !important; grid-template-columns: 249px minmax(0, 1fr) !important; grid-auto-rows: auto;
  column-gap: 80px !important; row-gap: 25px !important; align-items: center !important;
}
.news-bar-container::before {
  content: "NEWS"; grid-column: 1; grid-row: 1; justify-self: center; align-self: end;
  font-family: var(--dd-font-en); font-size: 96px; line-height: 1.2; letter-spacing: .1em; color: #fff;
  transform: translateY(84px);
}
.news-bar-container::after {
  content: "お知らせ"; grid-column: 1; grid-row: 2; justify-self: center; align-self: start;
  font-family: var(--dd-font-ja-display); font-size: 36px; line-height: 1.2; letter-spacing: .2em; color: #464646;
  transform: translateY(68px);
}
.news-bar-link {
  grid-column: 2 !important;
  display: grid !important; grid-template-columns: 92px minmax(0, 1fr) !important; gap: 50px !important; align-items: center !important; justify-items: start !important;
  padding: 15px 0 !important; margin: 0 !important;
  background: transparent !important; border: 0 !important; border-bottom: 1px solid #fff !important; border-radius: 0 !important; box-shadow: none !important;
  color: #fff !important; transform: none !important;
}
.news-bar-link + .news-bar-link { margin-top: 0 !important; }
.news-bar-link:hover { background: transparent !important; border-color: #fff !important; box-shadow: none !important; transform: none !important; opacity: .8; }
.news-bar-left { display: block !important; margin: 0 !important; min-width: 0 !important; text-align: left !important; justify-content: flex-start !important; }
.news-badge, .news-arrow { display: none !important; }
.news-date { display: block !important; color: #fff !important; font-family: var(--dd-font-en) !important; font-size: 20px !important; font-weight: 400 !important; line-height: 1.2 !important; letter-spacing: 0 !important; white-space: nowrap; }
.news-title { margin: 0 !important; color: #fff !important; font-family: var(--dd-font-ja) !important; font-size: 18px !important; font-weight: 700 !important; line-height: 1.2 !important; text-align: left !important; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 100%; }

@media (max-width: 768px) {
  .news-bar-section { padding: 20px 20px !important; }
  .news-bar-container { grid-template-columns: minmax(0, 1fr) !important; row-gap: 10px !important; }
  .news-bar-container::before { grid-row: 1; justify-self: start; align-self: auto; font-size: 48px; transform: none; }
  .news-bar-container::after { grid-row: 2; justify-self: start; align-self: auto; font-size: 20px; transform: none; margin-bottom: 10px; }
  .news-bar-link { grid-column: 1 !important; grid-template-columns: 1fr !important; gap: 20px !important; padding: 15px 0 !important; }
  .news-date { font-size: 14px !important; }
  .news-title { font-size: 14px !important; line-height: 1.4 !important; white-space: normal; }
}

/* Block: custom_html / sec_1789100415015 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: custom_html / sec_1789100416949 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: custom_html / sec_1789100418999 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: custom_html / sec_1789100420765 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: custom_html / sec_1789100422731 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}


/* =========================================================
   Page: news / お知らせ・イベント情報｜D.D.CLAN・D.D.CAVE
========================================================= */

/* Block: custom_html / sec_1789110186994 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: news_list_grid / sec_1789111118108 */
/* D.D: NEWS ページ（お知らせ一覧）。blocks/news_list_grid.php（改修版）の markup 前提。
   本文 840（カード 400×2・gap 40）＋ 右サイドバー 360、コンテナ 1280 */
.news-list-grid-section { padding: 40px 20px !important; background: transparent !important; color: #fff !important; }
.news-list-grid-section .news-section-header { display: none !important; }
.nlg-wrap { max-width: 1280px; margin: 0 auto; display: grid; grid-template-columns: minmax(0, 840px) 360px; column-gap: 80px; align-items: start; }
.nlg-main { display: flex; flex-direction: column; gap: 58px; }

/* カード */
.nlg-grid { max-width: none !important; margin: 0 !important; display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 40px !important; }
.nlg-card { display: flex !important; flex-direction: column !important; gap: 20px !important; overflow: visible !important; background: transparent !important; color: #fff !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
a.nlg-card:hover { transform: none !important; border-color: transparent !important; box-shadow: none !important; opacity: .85; }
.nlg-img, .nlg-no-img { background: #000 !important; }
.nlg-img { aspect-ratio: 400 / 260 !important; border: 2px solid #FA1630 !important; overflow: hidden; }
.nlg-img img { width: 100% !important; height: 100% !important; object-fit: cover !important; }
.nlg-no-img { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; color: #FA1630 !important; font-size: 40px; }
.nlg-body { padding: 0 !important; display: flex; flex-direction: column; gap: 20px; }
.nlg-cat { align-self: flex-start; display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: 5px 40px; background: #FA1630; color: #fff; font-family: var(--dd-font-en); font-size: 20px; line-height: 1.6; letter-spacing: 0; }
.nlg-meta { margin: 0 !important; }
.nlg-title { margin: 0 !important; color: #fff !important; font-family: var(--dd-font-ja-new) !important; font-size: 20px !important; font-weight: 900 !important; line-height: 1.6 !important; letter-spacing: 0 !important; }
.nlg-excerpt { margin: 0; color: #fff; font-family: var(--dd-font-ja-new); font-size: 16px; font-weight: 900; line-height: 1.6; }
.nlg-date { display: block !important; background: transparent !important; color: #fff !important; border: 0 !important; border-radius: 0 !important; padding: 0 !important; font-family: var(--dd-font-ja-new) !important; font-size: 20px !important; font-weight: 900 !important; line-height: 1.6 !important; letter-spacing: 0 !important; }

/* ページ送り */
.nlg-pager { display: flex; justify-content: flex-end; align-items: center; gap: 160px; padding-top: 58px; border-top: 3px solid #47534F; }
.nlg-pages { display: flex; align-items: center; gap: 20px; }
.nlg-page, .nlg-dots { display: inline-flex; align-items: center; justify-content: center; min-width: 50px; height: 60px; padding: 10px; font-family: var(--dd-font-en); font-size: 32px; line-height: 1.2; color: #fff; }
.nlg-page { background: #979797; }
.nlg-page.is-current { background: #FA1630; }
.nlg-dots { min-width: 0; padding: 0; color: #FA1630; }
.nlg-next { display: inline-flex; align-items: center; gap: 22px; height: 60px; padding: 0 20px; background: #FA1630; color: #fff; font-family: var(--dd-font-en); font-size: 32px; line-height: 1.2; }
.nlg-next::after { content: ""; width: 0; height: 0; border-left: 8px solid #fff; border-top: 6.5px solid transparent; border-bottom: 6.5px solid transparent; }
.nlg-next.is-disabled { background: #979797; pointer-events: none; }

/* サイドバー */
.nlg-side { display: flex; flex-direction: column; gap: 40px; }
.nlg-side-box { display: flex; flex-direction: column; gap: 20px; }
.nlg-side-title { display: flex; align-items: baseline; gap: 18px; margin: 0; padding-bottom: 20px; border-bottom: 3px solid #fff; color: #fff; font-family: var(--dd-font-ja-new); font-weight: 700; }
.nlg-side-title .en { font-size: 32px; line-height: 1.6; }
.nlg-side-title .ja { font-size: 20px; line-height: 1.6; }
.nlg-side-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.nlg-side-list li { border-bottom: 2px dashed #fff; }
.nlg-side-list a { display: flex; align-items: baseline; gap: 20px; padding: 20px 0; color: #fff; font-family: var(--dd-font-ja-new); font-weight: 700; }
.nlg-side-list a .en { font-size: 24px; line-height: 1.6; }
.nlg-side-list a .ja { font-size: 20px; line-height: 1.6; }
.nlg-side-list a.is-current { color: #FA1630; }
.nlg-arch { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.nlg-arch a { display: inline-flex; align-items: center; gap: 9px; color: #fff; font-family: var(--dd-font-ja-new); font-size: 20px; font-weight: 700; line-height: 1.6; }
.nlg-arch a::before { content: ""; width: 0; height: 0; border-left: 9px solid #fff; border-top: 7.5px solid transparent; border-bottom: 7.5px solid transparent; }
.nlg-arch a.is-current { color: #FA1630; }
.nlg-arch ul { list-style: none; margin: 0; padding: 0 0 0 28px; display: flex; flex-direction: column; gap: 6px; }
.nlg-arch ul a { font-size: 18px; }
.nlg-arch ul a::before { border-left-width: 7px; border-top-width: 6px; border-bottom-width: 6px; }
.nlg-empty { color: #fff; font-family: var(--dd-font-ja-new); font-size: 18px; font-weight: 700; padding: 40px 0; }

@media (max-width: 1024px) {
  .nlg-wrap { grid-template-columns: minmax(0, 1fr); row-gap: 60px; }
  .nlg-side { max-width: 480px; }
  .nlg-pager { gap: 40px; }
}
@media (max-width: 768px) {
  .news-list-grid-section { padding: 20px 20px !important; }
  .nlg-grid { grid-template-columns: 1fr !important; gap: 30px !important; }
  .nlg-cat { min-height: 32px; padding: 3px 20px; font-size: 16px; }
  .nlg-title { font-size: 16px !important; }
  .nlg-excerpt { font-size: 14px; }
  .nlg-date { font-size: 16px !important; }
  .nlg-main { gap: 30px; }
  .nlg-pager { flex-wrap: wrap; justify-content: center; gap: 20px; padding-top: 30px; }
  .nlg-page, .nlg-dots { min-width: 40px; height: 48px; font-size: 24px; }
  .nlg-next { height: 48px; font-size: 24px; }
  .nlg-side-title .en { font-size: 24px; }
  .nlg-side-title .ja { font-size: 16px; }
  .nlg-side-list a .en { font-size: 18px; }
  .nlg-side-list a .ja { font-size: 16px; }
  .nlg-arch a { font-size: 16px; }
}


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

/* Block: custom_html / sec_1789110384092 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: news_article_body / sec_1789111100523 */
/* D.D: お知らせ記事本文（news_detail.php）。Figma に無いページなので NEWS 一覧と同じ書体・色で組む */
.news-article-body-section { padding: 40px 20px !important; background: transparent !important; color: #fff !important; }
.nab-container { max-width: 840px !important; margin: 0 auto !important; padding: 0 !important; background: transparent !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; color: #fff !important; }
.nab-header { padding: 0 0 20px !important; margin: 0 0 20px !important; border-bottom: 3px solid #47534F !important; }
.nab-meta { margin: 0 0 20px !important; }
.nab-date { display: inline-flex !important; align-items: center !important; gap: 8px !important; color: #fff !important; font-family: var(--dd-font-ja-new) !important; font-size: 20px !important; font-weight: 900 !important; line-height: 1.6 !important; }
.nab-title { margin: 0 !important; color: #fff !important; font-family: var(--dd-font-ja-new) !important; font-size: 32px !important; font-weight: 900 !important; line-height: 1.6 !important; letter-spacing: 0 !important; }
.nab-main-img-box { aspect-ratio: auto !important; border: 2px solid #FA1630 !important; border-radius: 0 !important; background: #000 !important; margin: 0 0 20px !important; }
.nab-main-img-box img { width: 100% !important; height: auto !important; object-fit: contain !important; }
.nab-body-text { color: #fff !important; font-family: var(--dd-font-ja-new) !important; font-size: 18px !important; font-weight: 700 !important; line-height: 2 !important; letter-spacing: 0 !important; }
.nab-footer-nav { margin-top: 40px !important; padding-top: 40px !important; border-top: 3px solid #47534F !important; text-align: center !important; }
.btn-nab-back { display: inline-flex !important; align-items: center !important; gap: 12px !important; background: transparent !important; color: #fff !important; border: 3px solid #FFAE00 !important; border-radius: 0 !important; padding: 10px 20px !important; font-family: var(--dd-font-en) !important; font-size: 20px !important; font-weight: 400 !important; letter-spacing: .1em !important; }
.btn-nab-back:hover { background: #FFAE00 !important; color: #000 !important; box-shadow: none !important; }

@media (max-width: 768px) {
  .news-article-body-section { padding: 20px 20px !important; }
  .nab-title { font-size: 22px !important; }
  .nab-date { font-size: 14px !important; }
  .nab-body-text { font-size: 14px !important; }
  .btn-nab-back { font-size: 14px !important; padding: 8px 15px !important; }
}


/* =========================================================
   Page: cave / D.D.CAVE｜神栖市のダーツ・カラオケバー
========================================================= */

/* Block: custom_html / sec_1789102607899 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: instagram_feed / sec_1789102610900 */
/* D.D: 下層「01 INSTAGRAM」（Instagram フィード）。見出し＝番号(擬似要素)＋英字(h2)＋日本語(p) */
.fc-instagram-embed-section { padding: 40px 20px !important; background: transparent !important; color: #fff !important; }
.fc-instagram-embed-inner { max-width: 880px !important; margin: 0 auto !important; }
.fc-instagram-embed-heading { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 10px !important; text-align: center !important; margin: 0 0 40px !important; }
.fc-instagram-embed-label { display: none !important; }
.fc-instagram-embed-heading h2 { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 10px !important; margin: 0 !important; color: #fff !important; font-family: var(--dd-font-en) !important; font-size: 96px !important; font-weight: 400 !important; line-height: 1.2 !important; letter-spacing: 0 !important; }
.fc-instagram-embed-heading h2::before { content: "01"; font-family: var(--dd-font-en); font-size: 48px; line-height: 1.2; color: #FA1630; }
.fc-instagram-embed-heading p { margin: 0 !important; color: #464646 !important; font-family: var(--dd-font-ja-display) !important; font-size: 36px !important; font-weight: 400 !important; line-height: 1.2 !important; letter-spacing: .1em !important; }
.fc-instagram-post-grid { display: grid !important; grid-template-columns: repeat(3, 280px) !important; justify-content: center !important; gap: 20px !important; }
.fc-instagram-post-card { border-radius: 0 !important; background: transparent !important; border: 0 !important; box-shadow: none !important; }
.fc-instagram-embed-action { display: none !important; }

@media (max-width: 1024px) {
  .fc-instagram-post-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (max-width: 768px) {
  .fc-instagram-embed-section { padding: 20px 20px !important; }
  .fc-instagram-embed-heading { gap: 5px !important; margin-bottom: 20px !important; }
  .fc-instagram-embed-heading h2 { font-size: 48px !important; gap: 5px !important; }
  .fc-instagram-embed-heading h2::before { font-size: 24px; }
  .fc-instagram-embed-heading p { font-size: 20px !important; }
  .fc-instagram-post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; }
}

/* Block: custom_html / sec_1789102621282 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: custom_html / sec_1789102623282 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: custom_html / sec_1789102625250 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: custom_html / sec_1789102627716 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: custom_html / sec_1789102629966 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: gmap / sec_1789102640033 */
/* D.D: 下層「07 MAP」（Googleマップ）。見出し＝番号(擬似要素)＋英字(h2)＋日本語(p)、地図 1120×480 */
.gmap-section { padding: 40px 20px !important; background: transparent !important; color: #fff !important; }
.gmap-container { max-width: 1120px !important; margin: 0 auto !important; }
.gmap-header { max-width: none !important; margin: 0 0 40px !important; display: flex !important; flex-direction: column !important; align-items: center !important; gap: 10px !important; text-align: center !important; }
.gmap-title { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 10px !important; margin: 0 !important; color: #fff !important; font-family: var(--dd-font-en) !important; font-size: 96px !important; font-weight: 400 !important; line-height: 1.2 !important; letter-spacing: 0 !important; }
.gmap-title::before { content: "07"; font-family: var(--dd-font-en); font-size: 48px; line-height: 1.2; color: #FA1630; }
.gmap-desc { margin: 0 !important; color: #464646 !important; font-family: var(--dd-font-ja-display) !important; font-size: 36px !important; font-weight: 400 !important; line-height: 1.2 !important; letter-spacing: .1em !important; }
.gmap-frame-wrap { aspect-ratio: 1120 / 480 !important; min-height: 0 !important; border-radius: 0 !important; border: 0 !important; background: #3B3B3B !important; }
.gmap-frame-wrap iframe { filter: none !important; }

@media (max-width: 768px) {
  .gmap-section { padding: 20px 20px !important; }
  .gmap-header { gap: 5px !important; margin-bottom: 20px !important; }
  .gmap-title { font-size: 48px !important; gap: 5px !important; }
  .gmap-title::before { font-size: 24px; }
  .gmap-desc { font-size: 20px !important; }
  .gmap-frame-wrap { aspect-ratio: 4 / 3 !important; }
}


/* =========================================================
   Page: clan / D.D.CLAN｜神栖市知手のカジュアルバー
========================================================= */

/* Block: custom_html / sec_1789106134379 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: instagram_feed / sec_1789106144496 */
/* D.D: 下層「01 INSTAGRAM」（Instagram フィード）。見出し＝番号(擬似要素)＋英字(h2)＋日本語(p) */
.fc-instagram-embed-section { padding: 40px 20px !important; background: transparent !important; color: #fff !important; }
.fc-instagram-embed-inner { max-width: 880px !important; margin: 0 auto !important; }
.fc-instagram-embed-heading { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 10px !important; text-align: center !important; margin: 0 0 40px !important; }
.fc-instagram-embed-label { display: none !important; }
.fc-instagram-embed-heading h2 { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 10px !important; margin: 0 !important; color: #fff !important; font-family: var(--dd-font-en) !important; font-size: 96px !important; font-weight: 400 !important; line-height: 1.2 !important; letter-spacing: 0 !important; }
.fc-instagram-embed-heading h2::before { content: "01"; font-family: var(--dd-font-en); font-size: 48px; line-height: 1.2; color: #FA1630; }
.fc-instagram-embed-heading p { margin: 0 !important; color: #464646 !important; font-family: var(--dd-font-ja-display) !important; font-size: 36px !important; font-weight: 400 !important; line-height: 1.2 !important; letter-spacing: .1em !important; }
.fc-instagram-post-grid { display: grid !important; grid-template-columns: repeat(3, 280px) !important; justify-content: center !important; gap: 20px !important; }
.fc-instagram-post-card { border-radius: 0 !important; background: transparent !important; border: 0 !important; box-shadow: none !important; }
.fc-instagram-embed-action { display: none !important; }

@media (max-width: 1024px) {
  .fc-instagram-post-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (max-width: 768px) {
  .fc-instagram-embed-section { padding: 20px 20px !important; }
  .fc-instagram-embed-heading { gap: 5px !important; margin-bottom: 20px !important; }
  .fc-instagram-embed-heading h2 { font-size: 48px !important; gap: 5px !important; }
  .fc-instagram-embed-heading h2::before { font-size: 24px; }
  .fc-instagram-embed-heading p { font-size: 20px !important; }
  .fc-instagram-post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; }
}

/* Block: custom_html / sec_1789106151745 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: custom_html / sec_1789106154478 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: custom_html / sec_1789106156728 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: custom_html / sec_1789106158828 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: custom_html / sec_1789106161229 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: gmap / sec_1789106165096 */
/* D.D: 下層「07 MAP」（Googleマップ）。見出し＝番号(擬似要素)＋英字(h2)＋日本語(p)、地図 1120×480 */
.gmap-section { padding: 40px 20px !important; background: transparent !important; color: #fff !important; }
.gmap-container { max-width: 1120px !important; margin: 0 auto !important; }
.gmap-header { max-width: none !important; margin: 0 0 40px !important; display: flex !important; flex-direction: column !important; align-items: center !important; gap: 10px !important; text-align: center !important; }
.gmap-title { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 10px !important; margin: 0 !important; color: #fff !important; font-family: var(--dd-font-en) !important; font-size: 96px !important; font-weight: 400 !important; line-height: 1.2 !important; letter-spacing: 0 !important; }
.gmap-title::before { content: "07"; font-family: var(--dd-font-en); font-size: 48px; line-height: 1.2; color: #FA1630; }
.gmap-desc { margin: 0 !important; color: #464646 !important; font-family: var(--dd-font-ja-display) !important; font-size: 36px !important; font-weight: 400 !important; line-height: 1.2 !important; letter-spacing: .1em !important; }
.gmap-frame-wrap { aspect-ratio: 1120 / 480 !important; min-height: 0 !important; border-radius: 0 !important; border: 0 !important; background: #3B3B3B !important; }
.gmap-frame-wrap iframe { filter: none !important; }

@media (max-width: 768px) {
  .gmap-section { padding: 20px 20px !important; }
  .gmap-header { gap: 5px !important; margin-bottom: 20px !important; }
  .gmap-title { font-size: 48px !important; gap: 5px !important; }
  .gmap-title::before { font-size: 24px; }
  .gmap-desc { font-size: 20px !important; }
  .gmap-frame-wrap { aspect-ratio: 4 / 3 !important; }
}


/* =========================================================
   Page: system / 料金システム・メニュー｜D.D.CLAN・D.D.CAVE
========================================================= */

/* Block: custom_html / sec_1789107919549 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: custom_html / sec_1789107922049 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: custom_html / sec_1789107924265 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}


/* =========================================================
   Page: staff / スタッフ・キャスト紹介｜D.D.CLAN・D.D.CAVE
========================================================= */

/* Block: custom_html / sec_1789109870378 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: custom_html / sec_1789109872410 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}


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

/* Block: custom_html / sec_1789100232135 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}

/* Block: custom_html / sec_1789113638003 */
.custom-html-wrapper {padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; color: inherit !important;}
.custom-html-wrapper > .custom-html-inner {width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important;}
