/* 千草園 - responsive (プレビューSP版と同期 / v1.8.0) */

@media (max-width: 1000px) {
  .rwd-root header nav a, .rwd-root header nav .rwd-svc { display:none !important; }
  .rwd-root .rwd-ham { display:flex !important; }
}
@media (max-width: 1240px) {
  .rwd-root header nav a:not([href^="tel:"]) { font-size:11px !important; letter-spacing:0.04em !important; }
  .rwd-root header nav { gap:12px !important; }
}
@media (max-width: 1080px) {
  .rwd-root header nav a[href^="tel:"] { display:none !important; }
}

@media (max-width: 860px) {
  .rwd-root [style*="px 72px"]:not(a):not(section):not(footer), .rwd-root [style*="0 72px"]:not(a):not(section):not(footer) { padding-left:0 !important; padding-right:0 !important; }
  .rwd-root [style*="padding: 140px"], .rwd-root [style*="padding: 130px"], .rwd-root [style*="padding: 120px"], .rwd-root [style*="padding: 110px"], .rwd-root [style*="padding: 150px"], .rwd-root [style*="padding: 160px"], .rwd-root [style*="padding: 170px"] { padding-top:76px !important; padding-bottom:76px !important; }
  .rwd-root [style*="grid-template-columns"] { grid-template-columns:1fr !important; gap:30px !important; }
  .rwd-root [style*="grid-template-columns: repeat(4, 1fr)"], .rwd-root [style*="grid-template-columns: repeat(3, 1fr)"] { grid-template-columns:1fr 1fr !important; gap:2px !important; }
  .rwd-root [style*="display: flex"][style*="gap"] { flex-wrap:wrap !important; }
  .rwd-root h1 { font-size:22px !important; line-height:1.7 !important; }
  .rwd-root h2 { font-size:17px !important; line-height:2 !important; }
  .rwd-root h3 { font-size:15px !important; }
  .rwd-root p { font-size:14px !important; line-height:2.15 !important; letter-spacing:0.05em !important; }
  .rwd-root header { padding:12px 16px !important; }

  .rwd-root [style*="padding: 140px"], .rwd-root [style*="padding: 130px"], .rwd-root [style*="padding: 120px"], .rwd-root [style*="padding: 110px"], .rwd-root [style*="padding: 150px"], .rwd-root [style*="padding: 160px"], .rwd-root [style*="padding: 170px"], .rwd-root [style*="padding: 100px"], .rwd-root [style*="padding: 90px"] { padding-top:48px !important; padding-bottom:48px !important; }
  .rwd-root [style*="margin-top: 96px"], .rwd-root [style*="margin-top: 84px"], .rwd-root [style*="margin-top: 80px"], .rwd-root [style*="margin-top: 72px"], .rwd-root [style*="margin-top: 64px"] { margin-top:36px !important; }
  .rwd-root [style*="margin-top: 54px"], .rwd-root [style*="margin-top: 58px"], .rwd-root [style*="margin-top: 56px"] { margin-top:30px !important; }
  .rwd-root [style*="gap: 90px"], .rwd-root [style*="gap: 80px"], .rwd-root [style*="gap: 72px"], .rwd-root [style*="gap: 60px"] { gap:32px !important; }
  .rwd-root [style*="grid-template-columns"] > *:has(img), .rwd-root [style*="grid-template-columns"] > img, .rwd-root [style*="grid-template-columns"] > *:has(iframe) { order:2; }
  .rwd-root section p br { display:none !important; }
  .rwd-root section p.keep-br br { display:inline !important; }
  .rwd-root section p { text-wrap:wrap !important; text-wrap-style:auto !important; }
  .rwd-root section p, .rwd-root section li, .rwd-root section td, .rwd-root section dd, .rwd-root section dt { letter-spacing:0.05em !important; text-align:left !important; text-justify:auto !important; word-break:normal !important; overflow-wrap:break-word !important; line-break:strict; text-wrap:wrap !important; text-wrap-style:auto !important; }
  .rwd-root section p[style*="#52433f"], .rwd-root section p[style*="#2b2320"] { color:#5f5652 !important; }
  .rwd-root section p[style*="#6a5854"] { color:#756966 !important; }
  .rwd-root section p.tel-note { text-align:center !important; }
  .rwd-root section input, .rwd-root section textarea, .rwd-root section select { width:100% !important; max-width:100% !important; box-sizing:border-box !important; }
  .rwd-root .items-grid { grid-template-columns:1fr !important; }
  .rwd-root section p.src-note { font-size:10px !important; letter-spacing:0.02em !important; white-space:nowrap !important; text-align:center !important; }
  .rwd-root section [style*="margin: 28px 28px 0"], .rwd-root section [style*="margin: 16px 28px 0"], .rwd-root section [style*="margin: 20px 28px 0"], .rwd-root section [style*="margin: 14px 28px 0"] { margin-left:8px !important; margin-right:8px !important; }

  .rwd-root header img { height:44px !important; }
  .rwd-root header nav { gap:8px !important; flex-wrap:nowrap !important; }
  .rwd-root header nav a:not(:last-child) { display:none !important; }
  .rwd-root header nav a:last-child { font-size:11px !important; padding:9px 14px !important; letter-spacing:0.08em !important; }
  .rwd-root [style*="min-height: 76vh"], .rwd-root [style*="min-height: 60vh"] { min-height:62vh !important; }
  .rwd-root footer nav { gap:16px !important; }
  .rwd-root [style*="px 44px"]:not(a):not(section):not(footer), .rwd-root [style*="px 46px"]:not(a):not(section):not(footer), .rwd-root [style*="px 42px"]:not(a):not(section):not(footer), .rwd-root [style*="px 40px"]:not(a):not(section):not(footer), .rwd-root [style*="px 38px"]:not(a):not(section):not(footer), .rwd-root [style*="px 34px"]:not(a):not(section):not(footer), .rwd-root [style*="px 88px"]:not(a):not(section):not(footer), .rwd-root [style*="px 32px"]:not(a):not(section):not(footer) { padding-left:12px !important; padding-right:12px !important; }
  .rwd-root section[style*="72px"], .rwd-root footer[style*="72px"] { padding-left:32px !important; padding-right:32px !important; }
  .rwd-root [style*="px 72px"]:not(a):not(span):not(button):not(nav):not(section):not(footer), .rwd-root [style*="0 72px"]:not(a):not(span):not(button):not(nav):not(section):not(footer) { padding-left:0 !important; padding-right:0 !important; }
  .rwd-root a[href^="tel:"][style*="clamp"] { font-size:18px !important; white-space:nowrap !important; }
  .rwd-root .rwd-ham { display:flex !important; }
  .rwd-root a[style*="border-radius: 999px"], .rwd-root span[style*="border-radius: 999px"] { padding:12px 22px !important; font-size:12px !important; letter-spacing:0.12em !important; gap:10px !important; }
  .rwd-root a[style*="border-radius: 999px"] span[style*="height: 1px"] { width:18px !important; }
  .rwd-root div[style*="display: flex"]:has(> a[style*="border-radius: 999px"]) { justify-content:center !important; align-items:center !important; text-align:center !important; }
  .rwd-root [style*="white-space: nowrap"] { white-space:normal !important; }
  .rwd-root [style*="min-height: 88vh"] { min-height:46vh !important; }
  .rwd-root [style*="gap: 2px"] { gap:2px !important; }
  .rwd-root [style*="180px 1fr"], .rwd-root [style*="108px 1fr"], .rwd-root [style*="90px 1fr"] { grid-template-columns:96px 1fr !important; gap:0 !important; }

  /* 見出しは中央寄せ / 本文は左寄せ */
  .rwd-root section h1, .rwd-root section h2, .rwd-root section h3 { text-align:center !important; }
  .rwd-root section span[style*="0.38em"], .rwd-root section span[style*="0.34em"] { display:block !important; text-align:center !important; }

  .rwd-root section div[style*="display: flex"][style*="flex-wrap: wrap"] > div, .rwd-root section div[style*="display: flex"][style*="flex-wrap: wrap"] > p { flex:1 1 100% !important; width:100% !important; min-width:0 !important; }

  /* ページ上部（HERO）は左寄せ */
  .rwd-root section#top div[style*="width: fit-content"] { width:100% !important; margin-left:0 !important; text-align:left !important; }
  .rwd-root section#top h1, .rwd-root section#top h2, .rwd-root section#top h3, .rwd-root section#top p, .rwd-root section#top span { text-align:left !important; }

  /* セクション左右余白の統一（32px） */
  .rwd-root section, .rwd-root footer { padding-left:32px !important; padding-right:32px !important; }
  .rwd-root section > div, .rwd-root footer > div { padding-left:0 !important; padding-right:0 !important; }

  /* 太めのテキスト */
  .rwd-root p, .rwd-root span, .rwd-root a, .rwd-root dd, .rwd-root dt, .rwd-root li, .rwd-root h1, .rwd-root h2, .rwd-root h3, .rwd-root td, .rwd-root th, .rwd-root label, .rwd-root button { font-weight:600 !important; -webkit-text-stroke:0.3px currentColor; }
  .rwd-root [style*="width: 1px"][style*="height: 72px"] { height:36px !important; margin:28px 0 !important; }

  /* ページ個別 */
  .rwd-root .price-grid { gap:34px 18px !important; }
  .rwd-root .price-grid > div { padding:0 4px !important; box-sizing:border-box; }
  .rwd-root .contact-methods { grid-template-columns:1fr !important; gap:2px !important; }
}

/* 価格表（SPではカード表示） */
@media (max-width: 860px) {
  .rwd-root table { display:block !important; min-width:0 !important; width:100% !important; }
  .rwd-root table thead { display:none !important; }
  .rwd-root table tbody, .rwd-root table tr, .rwd-root table td { display:block !important; width:100% !important; }
  .rwd-root table tr { padding:18px 0 !important; border-bottom:1px solid #f2e2e4 !important; }
  .rwd-root table td { border:none !important; padding:3px 0 !important; white-space:normal !important; font-size:13px !important; line-height:2 !important; }
  .rwd-root table td:first-child { font-family:'yu-mincho-pr6n', serif; font-size:16px !important; color:#a9616f !important; margin-bottom:8px !important; }
  .rwd-root table td:nth-child(2)::before { content:'花束：'; color:#a9938e; }
  .rwd-root table td:nth-child(3)::before { content:'アレンジ：'; color:#a9938e; }
  .rwd-root table td:nth-child(4)::before { content:'用途：'; color:#a9938e; }
}

@media (min-width: 861px) {
  .rwd-root h1 { font-size:clamp(26px,3vw,38px) !important; }
  .rwd-root h2 { font-size:clamp(22px,2.4vw,32px) !important; }
  .rwd-root h3 { font-size:19px !important; }
}
