/* AEO_THEME {"main_color": "#3f2a1d", "accent_color": "#c48a47", "button_color": "#6b3f22", "radius": "24px", "spacing": "compact", "heading_scale": "standard", "brand_font": "modern", "brand_font_size": "20px", "hero_layout": "minimal", "image_treatment": "rounded", "cta_style": "quiet", "section_density": "balanced", "visual_depth": "layered"} */
:root,
body.design-ai-generated {
  --brand: #3f2a1d;
  --brand-2: #6b3f22;
  --accent: #c48a47;
  --radius: 24px;
  --brand-font-family: "AEO BIZ UDGothic", "BIZ UDGothic", "AEO Noto Sans JP", "Noto Sans CJK JP", "Segoe UI", sans-serif;
  --brand-font-size: 20px;
}
body.design-ai-generated {
  background:linear-gradient(180deg,#f8fbff 0%,#ffffff 54%,#f3f7fb 100%);
}
body.design-ai-generated .hero {
  padding:32px 20px;
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(248,251,255,.92) 54%,rgba(255,255,255,.98));
}
section { padding-top: 32px; padding-bottom: 32px; }
.card, .action-panel { border-radius: 24px; padding: 16px; }
.btn.primary, .cta-reserve, .cta-list, .nav .header-cta { background: linear-gradient(135deg, #6b3f22, #3f2a1d); color:#ffffff; }
h1 { font-size: calc(clamp(30px,4vw,52px) * 0.92); }
h2 { font-size: calc(clamp(23px,2.4vw,34px) * 0.92); }
body.design-ai-generated .hero-inner { grid-template-columns:minmax(0,1fr); gap:16px; }body.design-ai-generated .hero-visual { max-width:680px; }
body.design-ai-generated .header-image, body.design-ai-generated .hero-carousel, body.design-ai-generated .hero-placeholder, body.design-ai-generated .gallery-item { border-radius:var(--radius); }
body.design-ai-generated .btn { box-shadow:none; background:#fff; }body.design-ai-generated .btn.primary, body.design-ai-generated .cta-reserve, body.design-ai-generated .cta-list { background:var(--brand); }
body.design-ai-generated .hero-copy { position:relative; }body.design-ai-generated .card, body.design-ai-generated .action-panel, body.design-ai-generated .gallery-item { box-shadow:0 14px 34px rgba(15,23,42,.10); }
body.design-ai-generated { background:#f7f1e6; }
body.design-ai-generated .hero-inner { grid-template-columns:minmax(320px,1.05fr) minmax(320px,.95fr); } body.design-ai-generated .hero-visual { order:1; } body.design-ai-generated .hero-copy { order:2; }
body.design-ai-generated .hero-copy { margin-left:auto; }
body.design-ai-generated {
  color:#f8ecd0;
  background:radial-gradient(circle at 18% 0%, rgba(214,168,79,.22), transparent 30%), linear-gradient(180deg,#050505 0%,#11100c 48%,#050505 100%);
  background-color:#050505;
}
body.design-ai-generated section {
  background-color:#050505;
}
body.design-ai-generated .site-header {
  background:rgba(5,5,5,.92);
  border-bottom:1px solid rgba(214,168,79,.28);
  backdrop-filter:blur(14px);
}
body.design-ai-generated .brand-text,
body.design-ai-generated .brand-text strong,
body.design-ai-generated .header-left strong,
body.design-ai-generated .header-contact strong,
body.design-ai-generated .nav a,
body.design-ai-generated .header-contact {
  color:#f8ecd0;
}
body.design-ai-generated a:not(.btn):not(.share-link):not(.skip-link) {
  color:#f8dda0;
}
body.design-ai-generated section.codex-forced-map {
  background:#f8fafc;
  color:#0f172a;
}
body.design-ai-generated section.codex-forced-map :where(p,h2,.codex-forced-map__eyebrow) {
  color:inherit;
}
body.design-ai-generated .hero {
  color:#f8ecd0;
  position:relative;
  background:radial-gradient(circle at 18% 12%, rgba(214,168,79,.24), transparent 34%), linear-gradient(135deg,#080808 0%,#1b1408 42%,#050505 100%);
  background-color:#080808;
}
body.design-ai-generated .hero::before {
  content:"";
  position:absolute;
  inset:24px;
  border:1px solid rgba(214,168,79,.42);
  pointer-events:none;
}
body.design-ai-generated .hero h1,
body.design-ai-generated h2 {
  color:#f8dda0;
  font-family:"AEO BIZ UDGothic", "BIZ UDGothic", "AEO Noto Sans JP", "Noto Sans CJK JP", "Segoe UI", sans-serif;
}
body.design-ai-generated .hero p,
body.design-ai-generated .note {
  color:rgba(248,236,208,.82);
}
body.design-ai-generated .hero-copy {
  background:transparent;
  background-color:transparent;
  border:0;
  border-radius:0;
  padding:0;
  box-shadow:none;
  backdrop-filter:none;
}
body.design-ai-generated .eyebrow {
  background:transparent;
  color:#f8dda0;
  border:0;
}
body.design-ai-generated .hero .action-panel {
  background:rgba(36,28,16,.42);
  border-color:rgba(214,168,79,.24);
  box-shadow:none;
}
body.design-ai-generated .card,
body.design-ai-generated .action-panel,
body.design-ai-generated .check-list li,
body.design-ai-generated .used-list li,
body.design-ai-generated .feature-list li,
body.design-ai-generated .flow-list li,
body.design-ai-generated .inquiry-form-panel,
body.design-ai-generated .share-panel {
  background:rgba(36,28,16,.42);
  color:#f8ecd0;
  border-color:rgba(214,168,79,.24);
}
body.design-ai-generated :where(.card,.action-panel,.check-list li,.used-list li,.feature-list li,.flow-list li) :where(p,li,dd,span,small,label) {
  color:rgba(248,236,208,.90);
  opacity:1;
}
body.design-ai-generated :where(.card,.action-panel,.check-list li,.used-list li,.feature-list li,.flow-list li) :where(h1,h2,h3,h4,strong,dt) {
  color:#f8dda0;
}
body.design-ai-generated .skip-link,
body.design-ai-generated .share-link {
  background:#ffffff;
  color:#111827;
}
body.design-ai-generated .share-link.primary-share {
  background:linear-gradient(135deg,var(--brand),var(--brand-2));
  color:#ffffff;
}
body.design-ai-generated .footer {
  background:#050505;
  color:#f8ecd0;
}
body.design-ai-generated .footer a:not(.share-link) {
  color:#f8dda0;
}
body.design-ai-generated .header-image,
body.design-ai-generated .hero-carousel {
  border:1px solid rgba(214,168,79,.42);
  box-shadow:0 28px 90px rgba(0,0,0,.38);
}
body.design-ai-generated .btn.primary,
body.design-ai-generated .cta-reserve,
body.design-ai-generated .cta-list,
body.design-ai-generated .nav .header-cta {
  background:linear-gradient(135deg,#6f4a13 0%,#3f2a0b 58%,#080808 100%);
  background-color:#3f2a0b;
  color:#ffffff;
  border-color:rgba(248,221,160,.45);
}
body.design-ai-generated .btn:not(.primary):not(.cta-reserve):not(.cta-list):not(.header-cta),
body.design-ai-generated .cta-map {
  background:#fff8df;
  color:#111827;
  border-color:rgba(248,221,160,.58);
}
body.design-ai-generated .cta-phone {
  background:transparent;
  color:#f8dda0;
  border-color:rgba(248,221,160,.58);
}
@media (max-width: 980px) {
  body.design-ai-generated .hero-inner,
  body.design-ai-generated .grid,
  body.design-ai-generated .info-list,
  body.design-ai-generated .gallery-grid,
  body.design-ai-generated .feature-list,
  body.design-ai-generated .flow-list,
  body.design-ai-generated .check-list,
  body.design-ai-generated .used-list {
    grid-template-columns:minmax(0,1fr) !important;
  }
  body.design-ai-generated .hero-copy,
  body.design-ai-generated .hero-visual {
    order:initial !important;
    width:auto !important;
    max-width:100% !important;
    margin-top:0 !important;
    transform:none !important;
  }
}
@media (max-width: 600px) {
  body.design-ai-generated .hero-copy {
    padding:18px;
    border-radius:18px;
  }
  body.design-ai-generated .hero::before {
    inset:10px;
  }
}

body.design-ai-generated:where(.layout-construction-general,.layout-construction-reform,.layout-construction-facility){background:#f5f2ec!important;color:#202623!important}
body.design-ai-generated:where(.layout-construction-general,.layout-construction-reform,.layout-construction-facility) .site-header{background:#fff!important;border-bottom:1px solid #ddd4c6!important}
body.design-ai-generated:where(.layout-construction-general,.layout-construction-reform,.layout-construction-facility) :where(.nav a,.brand-text,.header-contact){color:#202623!important}
body.design-ai-generated:where(.layout-construction-general,.layout-construction-reform,.layout-construction-facility) .hero{background:linear-gradient(135deg,#ffffff,#eef4f2 56%,#f4e5bd)!important;color:#202623!important}
body.design-ai-generated:where(.layout-construction-general,.layout-construction-reform,.layout-construction-facility) .hero::before{display:none!important}
body.design-ai-generated:where(.layout-construction-general,.layout-construction-reform,.layout-construction-facility) .hero-copy{background:rgba(255,255,255,.88)!important;color:#202623!important;text-shadow:none!important;border-left:5px solid #d9a21b!important;box-shadow:none!important}
body.design-ai-generated:where(.layout-construction-general,.layout-construction-reform,.layout-construction-facility) :where(.hero h1,h2,h3){color:#24322f!important;font-family:"AEO Noto Sans JP","Noto Sans CJK JP","Noto Sans JP","Yu Gothic","Meiryo",sans-serif!important}
body.design-ai-generated:where(.layout-construction-general,.layout-construction-reform,.layout-construction-facility) :where(.hero p,.note,.card p,.action-panel p,.card li,.action-panel li,dd,span,small,label){color:#334155!important;text-shadow:none!important;opacity:1!important}
body.design-ai-generated:where(.layout-construction-general,.layout-construction-reform,.layout-construction-facility) :where(.card,.action-panel,.check-list li,.used-list li,.feature-list li,.flow-list li,.inquiry-form-panel,.share-panel){background:#fff!important;color:#202623!important;border-color:#ddd4c6!important;box-shadow:0 14px 32px rgba(59,45,31,.08)!important}
body.design-ai-generated:where(.layout-construction-general,.layout-construction-reform,.layout-construction-facility) :where(.btn.primary,.cta-reserve,.cta-list,.nav .header-cta){background:#31533f!important;color:#fff!important;border-color:#31533f!important;border-radius:4px!important}