/* AEO_THEME {"main_color": "#0a0a0a", "accent_color": "#c5a87c", "button_color": "#a38249", "radius": "8px", "spacing": "relaxed", "heading_scale": "standard", "brand_font": "mincho", "brand_font_size": "20px", "hero_layout": "asymmetric", "image_treatment": "sharp", "cta_style": "block", "section_density": "balanced", "visual_depth": "editorial"} */
:root,
body.design-ai-generated {
  --brand: #0a0a0a;
  --brand-2: #a38249;
  --accent: #c5a87c;
  --radius: 8px;
  --brand-font-family: "AEO Noto Serif JP", "Noto Serif CJK JP", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", 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:56px 20px;
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(248,251,255,.92) 54%,rgba(255,255,255,.98));
}
section { padding-top: 56px; padding-bottom: 56px; }
.card, .action-panel { border-radius: 8px; padding: 24px; }
.btn.primary, .cta-reserve, .cta-list, .nav .header-cta { background: linear-gradient(135deg, #a38249, #0a0a0a); 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(280px,.82fr) minmax(0,1.18fr); gap:38px; align-items:start; }body.design-ai-generated .hero-copy { order:2; margin-top:18px; }body.design-ai-generated .hero-visual { order:1; }
body.design-ai-generated .header-image, body.design-ai-generated .hero-carousel, body.design-ai-generated .hero-placeholder, body.design-ai-generated .gallery-item, body.design-ai-generated .card, body.design-ai-generated .action-panel { border-radius:8px; }
body.design-ai-generated .btn { border-radius:10px; min-height:44px; }body.design-ai-generated .cta-row { gap:8px; }
body.design-ai-generated .hero { overflow:hidden; }body.design-ai-generated .hero-copy { position:relative; z-index:1; }body.design-ai-generated .hero-copy::before { content:""; position:absolute; inset:-18px auto auto -22px; width:90px; height:90px; border:1px solid rgba(214,168,79,.28); border-radius:999px; z-index:-1; }body.design-ai-generated .card, body.design-ai-generated .action-panel, body.design-ai-generated .gallery-item { box-shadow:0 18px 44px rgba(15,23,42,.12); }body.design-ai-generated .gallery-grid { gap:10px; }
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:not(.codex-forced-map) {
  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 .hero h1,
body.design-ai-generated h2 {
  color:#f8dda0;
}
body.design-ai-generated .hero p,
body.design-ai-generated .note {
  color:rgba(248,236,208,.82);
}
body.design-ai-generated .card,
body.design-ai-generated .inquiry-form-panel,
body.design-ai-generated .share-panel {
  background:rgba(255,255,255,.96);
  color:#111827;
}
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 .hero { padding-left:0; padding-right:0; } body.design-ai-generated .hero .wrap { width:min(1280px,100%); }
body.design-ai-generated .card, body.design-ai-generated .action-panel { border:1px solid color-mix(in srgb, var(--accent) 32%, #dde3ec); box-shadow:none; }
body.design-ai-generated .hero .action-panel { margin-top:18px; } body.design-ai-generated .hero .cta-row { margin-top:14px; }
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 Noto Serif JP", "Noto Serif CJK JP", "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", 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;
  }
}