.lp-ep {
  width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  font-family: 'Noto Sans JP', sans-serif !important;
  background: #0a0a0a !important;
  color: #f5f0e8 !important;
  line-height: 1.7 !important;
  -webkit-font-smoothing: antialiased !important;
  overflow-x: hidden !important;
}
#page_header_type2 {
  display: none !important;
  margin: 0 !important; padding: 0 !important;
  height: 0 !important; min-height: 0 !important;
  overflow: hidden !important;
}
#page_content, #page_content article, #page_content .post_content,
.post_content.clearfix, #main, #content, .site-content,
.entry-content, .entry, .hentry {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
.lp-ep *, .lp-ep *::before, .lp-ep *::after { box-sizing: border-box !important; }
.lp-ep img { max-width: 100% !important; height: auto !important; display: block !important; }
.lp-ep a { color: inherit !important; text-decoration: none !important; }
.lp-ep a:visited { color: inherit !important; }
.lp-ep p:empty { display: none !important; }

.lp-ep {
  --gold: #c9a84c;
  --gold-dark: #8b6914;
  --gold-light: #e8c870;
  --cream: #f5f0e8;
  --gray: #aaaaaa;
  --charcoal: #141414;
  --charcoal2: #1c1c1c;
  --charcoal3: #222222;
  --green: #2d7a3a;
  --border: rgba(201,168,76,0.18);
  --border-dim: rgba(255,255,255,0.07);
  --radius: 6px;
  --radius-lg: 14px;
  --tr: 0.3s cubic-bezier(0.25,0.46,0.45,0.94);
  --max-w: 1200px;
}
.lp-ep .lp-cont {
  max-width: var(--max-w) !important;
  margin: 0 auto !important;
  padding: 0 clamp(16px,4vw,48px) !important;
}
.lp-ep .sec-label {
  font-size: 11px !important;
  letter-spacing: 0.38em !important;
  color: var(--gold) !important;
  display: block !important;
  margin-bottom: 14px !important;
  font-weight: 700 !important;
}
.lp-ep .sec-title {
  font-size: clamp(26px,4vw,46px) !important;
  font-weight: 900 !important;
  font-family: 'Noto Sans JP', sans-serif !important;
  border: none !important; padding: 0 !important;
  background: transparent !important;
  color: var(--cream) !important;
  line-height: 1.25 !important;
  margin-bottom: 18px !important;
}
.lp-ep .sec-lead {
  font-size: 15px !important;
  color: var(--gray) !important;
  max-width: 680px !important;
  line-height: 1.85 !important;
  margin-bottom: 48px !important;
}
.lp-ep .gold-line {
  display: block !important;
  width: 48px !important; height: 3px !important;
  background: linear-gradient(90deg,var(--gold),var(--gold-dark)) !important;
  margin: 0 0 40px !important;
  border-radius: 2px !important;
}
.lp-ep .btn-p {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: linear-gradient(135deg,var(--gold),var(--gold-dark)) !important;
  color: #0a0a0a !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  padding: 14px 30px !important;
  border-radius: var(--radius) !important;
  transition: var(--tr) !important;
  cursor: pointer !important;
  border: none !important;
  letter-spacing: 0.04em !important;
}
.lp-ep .btn-p:hover {
  background: linear-gradient(135deg,var(--gold-light),var(--gold)) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(201,168,76,0.28) !important;
}
.lp-ep .btn-s {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: transparent !important;
  color: var(--cream) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  padding: 13px 28px !important;
  border-radius: var(--radius) !important;
  border: 1px solid rgba(255,255,255,0.25) !important;
  transition: var(--tr) !important;
  cursor: pointer !important;
  letter-spacing: 0.04em !important;
}
.lp-ep .btn-s:hover {
  border-color: var(--gold) !important;
  color: var(--gold) !important;
  background: rgba(201,168,76,0.06) !important;
}
.lp-ep .fi { opacity: 1 !important; transform: translateY(0) !important; transition: opacity 0.7s ease,transform 0.7s ease !important; }
.lp-ep .fi.anim { opacity: 0 !important; transform: translateY(30px) !important; }
.lp-ep .fi.anim.vis { opacity: 1 !important; transform: translateY(0) !important; }
.lp-ep .tab-pane { display: none !important; visibility: hidden !important; height: 0 !important; overflow: hidden !important; }
.lp-ep .tab-pane.active { display: block !important; visibility: visible !important; height: auto !important; overflow: visible !important; }
.lp-ep .tab-nav { overflow: visible !important; scrollbar-width: none !important; }
.lp-ep .tab-nav::-webkit-scrollbar { display: none !important; }
.lp-ep table,.lp-ep thead,.lp-ep tbody,.lp-ep tr,.lp-ep th,.lp-ep td { background: var(--charcoal) !important; color: var(--cream) !important; }
.lp-ep .lp-ep-quote {
  border-left: 3px solid var(--gold) !important;
  padding: 16px 0 16px 24px !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* ---- HERO ---- */
.lp-ep .lp-hero {
  min-height: 90vh !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  padding: 40px 24px 80px !important;
  overflow: hidden !important;
}
.lp-ep .lp-hero-img {
  position: absolute !important; inset: 0 !important;
  width: 100% !important; height: 100% !important;
  object-fit: cover !important; object-position: center !important;
  opacity: 1.3 !important;
}
.lp-ep .lp-hero-overlay {
  position: absolute !important; inset: 0 !important;
  background: linear-gradient(135deg,rgba(10,10,10,0.97) 0%,rgba(10,10,10,0.75) 50%,rgba(20,16,8,0.85) 100%) !important;
  z-index: 1 !important;
}
.lp-ep .lp-hero-grid {
  position: absolute !important; inset: 0 !important;
  background-image: linear-gradient(rgba(201,168,76,0.04) 1px,transparent 1px),linear-gradient(90deg,rgba(201,168,76,0.04) 1px,transparent 1px) !important;
  background-size: 64px 64px !important;
  z-index: 1 !important;
}
.lp-ep .lp-hero-content {
  position: relative !important; z-index: 2 !important;
  max-width: var(--max-w) !important; margin: 0 auto !important; width: 100% !important;
}
.lp-ep .lp-eyebrow {
  font-size: 11px !important; letter-spacing: 0.42em !important;
  color: var(--gold) !important; display: block !important;
  margin-bottom: 20px !important; font-weight: 700 !important;
}
.lp-ep .lp-h1 {
  font-size: clamp(32px,5.5vw,72px) !important;
  font-weight: 900 !important; line-height: 1.1 !important;
  color: var(--cream) !important; margin-bottom: 24px !important;
  font-family: 'Noto Sans JP',sans-serif !important;
  border: none !important; background: transparent !important; padding: 0 !important;
}
.lp-ep .lp-h1 .gold-w { color: var(--gold) !important; }
.lp-ep .lp-hero-catch {
  font-size: clamp(16px,2.2vw,22px) !important;
  color: var(--cream) !important; display: block !important;
  margin-bottom: 16px !important; font-weight: 700 !important; line-height: 1.6 !important;
}
.lp-ep .lp-hero-sub {
  font-size: 14px !important; color: var(--gray) !important;
  display: block !important; margin-bottom: 40px !important;
  max-width: 580px !important; line-height: 1.9 !important;
}
.lp-ep .hero-bars {
  display: grid !important; grid-template-columns: repeat(2,1fr) !important;
  gap: 10px !important; max-width: 560px !important; margin-bottom: 44px !important;
}
.lp-ep .hero-bar {
  display: flex !important; align-items: center !important; gap: 10px !important;
  background: rgba(201,168,76,0.08) !important;
  border: 1px solid rgba(201,168,76,0.2) !important;
  border-radius: var(--radius) !important;
  padding: 10px 14px !important; font-size: 12px !important;
  font-weight: 700 !important; color: var(--gold) !important;
}
.lp-ep .hero-btns { display: flex !important; flex-wrap: wrap !important; gap: 12px !important; }
.lp-ep .lp-scroll {
  position: absolute !important; bottom: 32px !important; left: 50% !important;
  transform: translateX(-50%) !important; z-index: 2 !important;
  font-size: 10px !important; letter-spacing: 0.3em !important; color: var(--gray) !important;
  display: flex !important; flex-direction: column !important; align-items: center !important; gap: 6px !important;
}
.lp-ep .lp-scroll span { animation: ep-bounce 1.6s ease-in-out infinite !important; }
@keyframes ep-bounce { 0%,100%{transform:translateY(0)} 50%{transform:translateY(5px)} }

.lp-ep .fork-body > p { display: none !important; margin: 0 !important; padding: 0 !important; height: 0 !important; }
.lp-ep .fork-img-wrap > p { display: none !important; margin: 0 !important; padding: 0 !important; }
.lp-ep .fork-grid > p { display: none !important; margin: 0 !important; padding: 0 !important; }

/* ---- FORK ---- */
.lp-ep .fork-sec {
  background: var(--charcoal2) !important;
  border-top: 1px solid var(--border) !important;
  border-bottom: 1px solid var(--border) !important;
  padding: 56px 0 !important;
}
.lp-ep .fork-inner {
  max-width: var(--max-w) !important;
  margin: 0 auto !important;
  padding: 0 clamp(16px,4vw,48px) !important;
}
.lp-ep .fork-label {
  text-align: center !important;
  font-size: 11px !important;
  letter-spacing: 0.35em !important;
  color: var(--gray) !important;
  margin-bottom: 32px !important;
  font-weight: 700 !important;
}
.lp-ep .fork-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 24px !important;
}
.lp-ep .fork-card {
  border-radius: var(--radius-lg) !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  transition: var(--tr) !important;
  cursor: pointer !important;
  text-decoration: none !important;
  position: relative !important;
}
.lp-ep .fork-card:hover { transform: translateY(-4px) !important; box-shadow: 0 20px 48px rgba(0,0,0,0.5) !important; }
.lp-ep .fork-card-a {
  border: 1px solid rgba(201,168,76,0.4) !important;
}
.lp-ep .fork-card-b {
  border: 1px solid rgba(255,255,255,0.1) !important;
}
.lp-ep .fork-card-a:hover { border-color: rgba(201,168,76,0.7) !important; }
.lp-ep .fork-card-b:hover { border-color: rgba(255,255,255,0.25) !important; }

.lp-ep .fork-img-wrap {
  position: relative !important;
  width: 100% !important;
  height: 260px !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
}
.lp-ep .fork-img-wrap img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  transition: transform 0.5s ease !important;
}
.lp-ep .fork-card:hover .fork-img-wrap img { transform: scale(1.04) !important; }

.lp-ep .fork-img-overlay-a {
  background: linear-gradient(180deg, rgba(10,8,2,0.15) 0%, rgba(10,8,2,0.55) 100%) !important;
}
.lp-ep .fork-img-overlay-b {
  background: linear-gradient(180deg, rgba(10,10,10,0.15) 0%, rgba(10,10,10,0.55) 100%) !important;
}

.lp-ep .fork-body {
  padding: 28px 32px 32px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  flex: 1 !important;
}
.lp-ep .fork-body-a {
  background: linear-gradient(135deg, rgba(201,168,76,0.12) 0%, rgba(139,105,20,0.06) 100%) !important;
}
.lp-ep .fork-body-b {
  background: rgba(255,255,255,0.03) !important;
}
.lp-ep .fork-card-num {
  font-size: 10px !important;
  letter-spacing: 0.35em !important;
  font-weight: 700 !important;
  color: var(--gold) !important;
  display: block !important;
}
.lp-ep .fork-card-title {
  font-size: clamp(20px,2.2vw,26px) !important;
  font-weight: 900 !important;
  color: var(--cream) !important;
  line-height: 1.3 !important;
}
.lp-ep .fork-card-desc {
  font-size: 14px !important;
  color: var(--gray) !important;
  line-height: 1.75 !important;
}
.lp-ep .fork-card-btn {
  margin-top: 12px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: var(--gold) !important;
  padding: 12px 24px !important;
  border: 1px solid rgba(201,168,76,0.35) !important;
  border-radius: var(--radius) !important;
  background: rgba(201,168,76,0.08) !important;
  transition: var(--tr) !important;
  align-self: flex-start !important;
}
.lp-ep .fork-card-btn-b {
  color: var(--cream) !important;
  border-color: rgba(255,255,255,0.18) !important;
  background: rgba(255,255,255,0.04) !important;
}
.lp-ep .fork-card:hover .fork-card-btn {
  background: rgba(201,168,76,0.18) !important;
  border-color: rgba(201,168,76,0.6) !important;
}
.lp-ep .fork-card:hover .fork-card-btn-b {
  background: rgba(255,255,255,0.08) !important;
  border-color: rgba(255,255,255,0.35) !important;
}
.lp-ep .fork-check-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  margin-top: 4px !important;
}
.lp-ep .fork-body > p,
.lp-ep .fork-body p:empty { display: none !important; margin: 0 !important; padding: 0 !important; height: 0 !important; overflow: hidden !important; }
.lp-ep .fork-card-btn-scroll {
  display: block !important;
  margin-top: 16px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: var(--cream) !important;
  padding: 13px 24px !important;
  border: 1px solid rgba(255,255,255,0.22) !important;
  border-radius: var(--radius) !important;
  background: rgba(255,255,255,0.07) !important;
  transition: var(--tr) !important;
  cursor: pointer !important;
  text-align: center !important;
  line-height: 1.4 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.lp-ep .fork-card:hover .fork-card-btn-scroll {
  background: rgba(255,255,255,0.12) !important;
  border-color: rgba(255,255,255,0.4) !important;
}
.lp-ep .fork-btn-wrap {
  display: block !important;
  margin-top: 16px !important;
  width: 100% !important;
}
.lp-ep .fork-btn-wrap > p { display: none !important; height: 0 !important; }
.lp-ep .fork-card-btn-buy {
  display: block !important;
  margin-top: 0 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #0a0a0a !important;
  padding: 14px 24px !important;
  border-radius: var(--radius) !important;
  background: linear-gradient(135deg,var(--gold),var(--gold-dark)) !important;
  border: none !important;
  transition: var(--tr) !important;
  cursor: pointer !important;
  text-decoration: none !important;
  text-align: center !important;
  line-height: 1.4 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.lp-ep .fork-card-btn-buy:hover {
  background: linear-gradient(135deg,var(--gold-light),var(--gold)) !important;
  box-shadow: 0 6px 20px rgba(201,168,76,0.35) !important;
  color: #0a0a0a !important;
}
.lp-ep .fork-card-btn-buy:visited { color: #0a0a0a !important; }
.lp-ep .fork-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 24px !important; align-items: stretch !important; }
.lp-ep .fork-card { height: 100% !important; }
.lp-ep .fork-check-list br { display: none !important; }
.lp-ep .fork-check-item {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 13px !important;
  color: var(--gray) !important;
  line-height: 1.5 !important;
}
.lp-ep .fork-check-item::before {
  content: '✓' !important;
  color: var(--gold) !important;
  font-weight: 700 !important;
  flex-shrink: 0 !important;
  font-size: 12px !important;
}
.lp-ep .fork-check-item-b::before { color: rgba(255,255,255,0.5) !important; }

/* ---- REASON BAR ---- */
.lp-ep .reason-bar { background: linear-gradient(90deg,#0f0d06,#141108,#0f0d06) !important; border-bottom: 1px solid var(--border) !important; }
.lp-ep .reason-inner { max-width: var(--max-w) !important; margin: 0 auto !important; padding: 0 clamp(16px,4vw,48px) !important; display: grid !important; grid-template-columns: repeat(4,1fr) !important; }
.lp-ep .reason-item { padding: 28px 20px !important; border-right: 1px solid var(--border) !important; display: flex !important; gap: 16px !important; }
.lp-ep .reason-item:last-child { border-right: none !important; }
.lp-ep .r-num { font-size: 24px !important; font-weight: 900 !important; color: rgba(201,168,76,0.25) !important; line-height: 1 !important; flex-shrink: 0 !important; }
.lp-ep .r-text h3 { font-size: 13px !important; font-weight: 700 !important; color: var(--cream) !important; margin-bottom: 6px !important; border: none !important; background: transparent !important; padding: 0 !important; }
.lp-ep .r-text p { font-size: 12px !important; color: var(--gray) !important; line-height: 1.6 !important; }

/* ---- USE CASE（縦長カード 3列×3行） ---- */
.lp-ep .usecase-sec { padding: 100px 0 !important; background: var(--charcoal) !important; }
.lp-ep .uc-grid {
  display: grid !important;
  grid-template-columns: repeat(3,1fr) !important;
  gap: 20px !important;
}
.lp-ep .uc-card {
  background: var(--charcoal2) !important;
  border: 1px solid var(--border-dim) !important;
  border-radius: var(--radius-lg) !important;
  overflow: hidden !important;
  transition: var(--tr) !important;
  display: flex !important; flex-direction: column !important;
}
.lp-ep .uc-card:hover { border-color: rgba(201,168,76,0.3) !important; transform: translateY(-4px) !important; box-shadow: 0 16px 40px rgba(0,0,0,0.4) !important; }
.lp-ep .uc-card-img {
  width: 100% !important;
  aspect-ratio: 3/4 !important;
  object-fit: cover !important;
  object-position: center top !important;
  display: block !important;
}
.lp-ep .uc-body { padding: 20px 20px 24px !important; flex: 1 !important; display: flex !important; flex-direction: column !important; }
.lp-ep .uc-tag { font-size: 10px !important; letter-spacing: 0.22em !important; font-weight: 700 !important; color: var(--gold) !important; display: block !important; margin-bottom: 8px !important; }
.lp-ep .uc-card h3 { font-size: 16px !important; font-weight: 700 !important; color: var(--cream) !important; margin-bottom: 10px !important; line-height: 1.4 !important; border: none !important; background: transparent !important; padding: 0 !important; }
.lp-ep .uc-card p { font-size: 13px !important; color: var(--gray) !important; line-height: 1.75 !important; margin-bottom: 10px !important; flex: 1 !important; }
.lp-ep .uc-spec { font-size: 11px !important; color: rgba(201,168,76,0.7) !important; display: block !important; border-top: 1px solid var(--border-dim) !important; padding-top: 10px !important; margin-top: auto !important; }
.lp-ep .badge-outdoor { display: inline-block !important; background: var(--green) !important; color: #fff !important; font-size: 9px !important; font-weight: 700 !important; padding: 2px 8px !important; border-radius: 50px !important; margin-left: 4px !important; vertical-align: middle !important; }
.lp-ep .badge-copyright { display: block !important; background: rgba(192,57,43,0.2) !important; border: 1px solid rgba(192,57,43,0.4) !important; color: #e74c3c !important; font-size: 10px !important; font-weight: 700 !important; padding: 3px 10px !important; border-radius: var(--radius) !important; margin-top: 8px !important; }
.lp-ep .uc-link { display: inline-flex !important; align-items: center !important; gap: 4px !important; font-size: 12px !important; font-weight: 700 !important; color: var(--gold) !important; margin-top: 8px !important; }

/* ---- STYRENE MERIT ---- */
.lp-ep .merit-sec { padding: 100px 0 !important; background: #0a0a0a !important; position: relative !important; }
.lp-ep .merit-sec::before {
  content: '' !important; position: absolute !important; inset: 0 !important;
  background-image: linear-gradient(rgba(201,168,76,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(201,168,76,0.03) 1px,transparent 1px) !important;
  background-size: 60px 60px !important; pointer-events: none !important;
}
.lp-ep .merit-grid { display: grid !important; grid-template-columns: repeat(3,1fr) !important; gap: 24px !important; }
.lp-ep .merit-card {
  background: var(--charcoal2) !important;
  border: 1px solid var(--border-dim) !important;
  border-radius: var(--radius-lg) !important;
  overflow: hidden !important;
  transition: var(--tr) !important;
  position: relative !important;
}
.lp-ep .merit-card:hover { border-color: rgba(201,168,76,0.3) !important; transform: translateY(-3px) !important; }
.lp-ep .merit-card-img {
  width: 100% !important; height: 220px !important;
  object-fit: cover !important; display: block !important;
}
.lp-ep .merit-img-placeholder {
  width: 100% !important; height: 220px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  font-size: 56px !important;
}
.lp-ep .merit-card-img { width: 100% !important; height: 220px !important; object-fit: cover !important; display: block !important; }
.lp-ep .merit-num {
  position: absolute !important; top: 16px !important; left: 16px !important;
  width: 36px !important; height: 36px !important;
  background: linear-gradient(135deg,var(--gold),var(--gold-dark)) !important;
  color: #0a0a0a !important; font-size: 14px !important; font-weight: 900 !important;
  border-radius: 50% !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
}
.lp-ep .merit-body { padding: 24px !important; }
.lp-ep .merit-body h3 { font-size: 18px !important; font-weight: 900 !important; color: var(--cream) !important; margin-bottom: 10px !important; border: none !important; background: transparent !important; padding: 0 !important; line-height: 1.3 !important; }
.lp-ep .merit-body h3 .gold-w { color: var(--gold) !important; }
.lp-ep .merit-body p { font-size: 13px !important; color: var(--gray) !important; line-height: 1.75 !important; }

/* ---- WHY LIFESIZE ---- */
.lp-ep .why-sec { padding: 100px 0 !important; background: var(--charcoal) !important; }
.lp-ep .why-compare-wrap { margin-bottom: 60px !important; }
.lp-ep .why-compare {
  display: grid !important;
  grid-template-columns: 1fr 64px 1fr !important;
  gap: 16px !important;
  align-items: center !important;
}
.lp-ep .why-compare-col { min-width: 0 !important; }
.lp-ep .why-compare-label {
  text-align: center !important; font-size: 15px !important; font-weight: 700 !important;
  padding: 11px !important; border-radius: var(--radius) !important; margin-bottom: 12px !important;
}
.lp-ep .wlabel-bad { background: rgba(255,255,255,0.04) !important; color: var(--gray) !important; }
.lp-ep .wlabel-good { background: rgba(201,168,76,0.12) !important; color: var(--gold) !important; border: 1px solid rgba(201,168,76,0.25) !important; }
.lp-ep .why-img-wrap {
  border-radius: var(--radius-lg) !important; overflow: hidden !important;
  border: 1px solid var(--border-dim) !important;
}
.lp-ep .why-img-wrap img { width: 100% !important; height: 260px !important; object-fit: cover !important; display: block !important; }
.lp-ep .why-vs-col {
  display: flex !important; align-items: center !important; justify-content: center !important;
  flex-shrink: 0 !important;
}
.lp-ep .why-vs-badge {
  width: 52px !important; height: 52px !important;
  border-radius: 50% !important;
  background: rgba(201,168,76,0.12) !important;
  border: 1px solid rgba(201,168,76,0.3) !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  font-size: 16px !important; font-weight: 900 !important; color: var(--gold) !important;
}
.lp-ep .why-desc-row {
  display: grid !important;
  grid-template-columns: 1fr 64px 1fr !important;
  gap: 16px !important;
  margin-top: 16px !important;
  align-items: center !important;
}
.lp-ep .why-desc-bad { background: rgba(255,255,255,0.04) !important; border: 1px solid rgba(255,255,255,0.08) !important; border-radius: var(--radius) !important; padding: 16px 20px !important; }
.lp-ep .why-desc-good { background: rgba(201,168,76,0.06) !important; border: 1px solid rgba(201,168,76,0.2) !important; border-radius: var(--radius) !important; padding: 16px 20px !important; }
.lp-ep .why-desc-bad p,.lp-ep .why-desc-good p { font-size: 13px !important; line-height: 1.7 !important; color: var(--gray) !important; }
.lp-ep .why-desc-good p { color: var(--cream) !important; }
.lp-ep .why-photo-grid { display: grid !important; grid-template-columns: repeat(3,1fr) !important; gap: 20px !important; }
.lp-ep .why-photo-card {
  border-radius: var(--radius-lg) !important; overflow: hidden !important;
  background: var(--charcoal2) !important; border: 1px solid var(--border-dim) !important;
  transition: var(--tr) !important;
}
.lp-ep .why-photo-card:hover { border-color: rgba(201,168,76,0.3) !important; transform: translateY(-3px) !important; }
.lp-ep .why-photo-card img { width: 100% !important; height: 240px !important; object-fit: cover !important; display: block !important; }
.lp-ep .why-photo-body { padding: 20px !important; }
.lp-ep .why-photo-body h3 { font-size: 15px !important; font-weight: 700 !important; color: var(--cream) !important; margin-bottom: 6px !important; border: none !important; background: transparent !important; padding: 0 !important; }
.lp-ep .why-photo-body p { font-size: 12px !important; color: var(--gray) !important; line-height: 1.65 !important; }
.lp-ep .why-band {
  background: linear-gradient(135deg,rgba(201,168,76,0.15),rgba(139,105,20,0.08)) !important;
  border: 1px solid rgba(201,168,76,0.3) !important;
  border-radius: var(--radius-lg) !important;
  padding: 32px 40px !important;
  margin-top: 48px !important;
  display: flex !important; align-items: center !important; justify-content: space-between !important;
  gap: 24px !important;
  flex-wrap: wrap !important;
}
.lp-ep .why-band p { font-size: 17px !important; font-weight: 700 !important; color: var(--cream) !important; line-height: 1.6 !important; }
.lp-ep .why-band p span { color: var(--gold) !important; }

/* ---- FLOW ---- */
.lp-ep .flow-sec { padding: 100px 0 !important; background: #0a0a0a !important; }
.lp-ep .flow-steps { display: grid !important; grid-template-columns: repeat(4,1fr) !important; gap: 0 !important; position: relative !important; }
.lp-ep .flow-steps::before {
  content: '' !important; position: absolute !important;
  top: 52px !important; left: 12.5% !important; right: 12.5% !important;
  height: 2px !important;
  background: linear-gradient(90deg,var(--gold-dark),var(--gold)) !important;
  z-index: 0 !important; opacity: 0.5 !important;
}
.lp-ep .flow-step { display: flex !important; flex-direction: column !important; align-items: center !important; text-align: center !important; padding: 0 16px !important; position: relative !important; z-index: 1 !important; }
.lp-ep .flow-num { width: 52px !important; height: 52px !important; border-radius: 50% !important; background: linear-gradient(135deg,var(--gold),var(--gold-dark)) !important; color: #0a0a0a !important; font-size: 18px !important; font-weight: 900 !important; display: flex !important; align-items: center !important; justify-content: center !important; margin-bottom: 20px !important; flex-shrink: 0 !important; }
.lp-ep .flow-step h3 { font-size: 14px !important; font-weight: 700 !important; color: var(--cream) !important; margin-bottom: 8px !important; line-height: 1.4 !important; border: none !important; background: transparent !important; padding: 0 !important; }
.lp-ep .flow-step p { font-size: 12px !important; color: var(--gray) !important; line-height: 1.65 !important; }
.lp-ep .flow-tag { display: inline-block !important; background: rgba(201,168,76,0.1) !important; border: 1px solid rgba(201,168,76,0.2) !important; color: var(--gold) !important; font-size: 10px !important; padding: 2px 8px !important; border-radius: 50px !important; margin-top: 6px !important; font-weight: 700 !important; }

/* ---- SPEC TABS ---- */
.lp-ep .spec-sec { padding: 100px 0 !important; background: var(--charcoal) !important; }
.lp-ep .tab-nav { display: flex !important; gap: 4px !important; border-bottom: 1px solid var(--border-dim) !important; margin-bottom: 36px !important; overflow-x: auto !important; flex-wrap: nowrap !important; }
.lp-ep .tab-btn { padding: 12px 24px !important; font-size: 13px !important; font-weight: 700 !important; color: var(--gray) !important; background: transparent !important; border: none !important; border-bottom: 2px solid transparent !important; cursor: pointer !important; white-space: nowrap !important; transition: var(--tr) !important; letter-spacing: 0.04em !important; margin-bottom: -1px !important; }
.lp-ep .tab-btn:hover { color: var(--cream) !important; }
.lp-ep .tab-btn.active { color: var(--gold) !important; border-bottom-color: var(--gold) !important; }
.lp-ep .stbl { width: 100% !important; border-collapse: collapse !important; border-radius: var(--radius-lg) !important; overflow: hidden !important; }
.lp-ep .stbl thead tr { background: rgba(201,168,76,0.12) !important; }
.lp-ep .stbl th { padding: 14px 20px !important; font-size: 12px !important; font-weight: 700 !important; color: var(--gold) !important; text-align: left !important; letter-spacing: 0.06em !important; background: rgba(201,168,76,0.1) !important; }
.lp-ep .stbl td { padding: 14px 20px !important; font-size: 13px !important; color: var(--cream) !important; border-top: 1px solid var(--border-dim) !important; background: var(--charcoal2) !important; line-height: 1.5 !important; }
.lp-ep .stbl tr:hover td { background: rgba(201,168,76,0.04) !important; }
.lp-ep .td-label { color: var(--gray) !important; font-weight: 500 !important; }
.lp-ep .badge-green { display: inline-block !important; background: var(--green) !important; color: #fff !important; font-size: 10px !important; font-weight: 700 !important; padding: 2px 8px !important; border-radius: 50px !important; margin-left: 6px !important; }
.lp-ep .opt-grid { display: grid !important; grid-template-columns: repeat(3,1fr) !important; gap: 14px !important; }
.lp-ep .opt-card { background: var(--charcoal2) !important; border: 1px solid var(--border-dim) !important; border-radius: var(--radius) !important; padding: 18px !important; transition: var(--tr) !important; }
.lp-ep .opt-card:hover { border-color: rgba(201,168,76,0.3) !important; }
.lp-ep .opt-card h4 { font-size: 13px !important; font-weight: 700 !important; color: var(--cream) !important; margin-bottom: 6px !important; border: none !important; background: transparent !important; padding: 0 !important; }
.lp-ep .opt-card p { font-size: 12px !important; color: var(--gray) !important; }

.lp-ep .stand-steps-4 { grid-template-columns: repeat(4,1fr) !important; }
.lp-ep .stand-steps-3 { grid-template-columns: repeat(3,1fr) !important; }
.lp-ep .stand-step img {
  width: 100% !important;
  aspect-ratio: 340 / 441 !important;
  height: auto !important;
  object-fit: cover !important;
  border-radius: var(--radius) !important;
  margin-bottom: 12px !important;
  display: block !important;
}

.lp-ep .stand-prod-grid6 {
  display: grid !important;
  grid-template-columns: repeat(3,1fr) !important;
  gap: 16px !important;
  grid-auto-flow: row !important;
}
.lp-ep .stand-prod-grid6 > p { display: none !important; height: 0 !important; margin: 0 !important; padding: 0 !important; }
.lp-ep .stand-prod-card6 {
  background: var(--charcoal2) !important;
  border: 1px solid var(--border-dim) !important;
  border-radius: var(--radius-lg) !important;
  overflow: hidden !important;
  transition: var(--tr) !important;
  display: flex !important;
  flex-direction: column !important;
}
.lp-ep .stand-prod-card6:hover { border-color: rgba(201,168,76,0.3) !important; transform: translateY(-2px) !important; }
.lp-ep .stand-prod-card6 .stand-prod-ph {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  background: #f5f5f5 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 36px !important;
  flex-shrink: 0 !important;
  overflow: hidden !important;
}
.lp-ep .stand-prod-card6 .stand-prod-ph img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  display: block !important;
}
.lp-ep .stand-prod-card6 .stand-prod-body {
  padding: 16px !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
  gap: 6px !important;
  background: var(--charcoal2) !important;
}
.lp-ep .stand-prod-card6 h4 {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: var(--cream) !important;
  line-height: 1.4 !important;
  border: none !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
}
.lp-ep .stand-prod-card6 .stand-prod-size { font-size: 11px !important; color: var(--gray) !important; }
.lp-ep .stand-prod-card6 .stand-prod-price { font-size: 20px !important; font-weight: 900 !important; color: var(--gold) !important; margin-top: 2px !important; }
.lp-ep .stand-prod-card6 .stand-prod-price span { font-size: 12px !important; color: var(--gray) !important; font-weight: 400 !important; }
.lp-ep .stand-prod-price-link { font-size: 13px !important; color: var(--gold) !important; font-weight: 700 !important; margin-top: 2px !important; }
.lp-ep .stand-prod-tags { display: flex !important; flex-wrap: wrap !important; gap: 4px !important; margin-top: 2px !important; }
.lp-ep .stand-prod-card6 .stand-prod-desc { font-size: 12px !important; color: var(--gray) !important; line-height: 1.65 !important; flex: 1 !important; margin-top: 4px !important; }
.lp-ep .stand-prod-btn-wrap { margin-top: 12px !important; display: block !important; }
.lp-ep .stand-prod-btn-wrap > p { display: none !important; height: 0 !important; }
.lp-ep .stand-prod-btn {
  display: block !important;
  text-align: center !important;
  padding: 11px 16px !important;
  background: linear-gradient(135deg,var(--gold),var(--gold-dark)) !important;
  color: #0a0a0a !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  border-radius: var(--radius) !important;
  text-decoration: none !important;
  transition: var(--tr) !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.lp-ep .stand-prod-btn:hover {
  background: linear-gradient(135deg,var(--gold-light),var(--gold)) !important;
  color: #0a0a0a !important;
}
.lp-ep .stand-prod-btn:visited { color: #0a0a0a !important; }

/* ---- STAND SECTION ---- */
.lp-ep .stand-sec { padding: 100px 0 !important; background: #0a0a0a !important; }
.lp-ep .stand-grid { display: grid !important; grid-template-columns: repeat(2,1fr) !important; gap: 32px !important; margin-bottom: 48px !important; }
.lp-ep .stand-type-card {
  background: var(--charcoal2) !important;
  border: 1px solid var(--border-dim) !important;
  border-radius: var(--radius-lg) !important;
  overflow: hidden !important;
}
.lp-ep .stand-type-head {
  padding: 20px 24px !important;
  background: rgba(201,168,76,0.08) !important;
  border-bottom: 1px solid var(--border-dim) !important;
  display: flex !important; align-items: center !important; gap: 12px !important;
}
.lp-ep .stand-type-head h3 { font-size: 16px !important; font-weight: 700 !important; color: var(--cream) !important; border: none !important; background: transparent !important; padding: 0 !important; margin: 0 !important; }
.lp-ep .stand-type-head span { font-size: 10px !important; background: var(--gold) !important; color: #0a0a0a !important; padding: 2px 8px !important; border-radius: 50px !important; font-weight: 700 !important; flex-shrink: 0 !important; }
.lp-ep .stand-steps {
  display: grid !important;
  gap: 0 !important; border-bottom: 1px solid var(--border-dim) !important;
}
.lp-ep .stand-step { padding: 16px 12px !important; border-right: 1px solid var(--border-dim) !important; text-align: center !important; }
.lp-ep .stand-step:last-child { border-right: none !important; }
.lp-ep .stand-step-num { font-size: 22px !important; font-weight: 900 !important; color: var(--gold) !important; margin-bottom: 10px !important; display: block !important; }
.lp-ep .stand-step img {
  width: 100% !important;
  aspect-ratio: 340 / 441 !important;
  height: auto !important;
  object-fit: cover !important;
  margin-bottom: 12px !important;
  border-radius: var(--radius) !important;
  display: block !important;
}
.lp-ep .stand-step p { font-size: 11px !important; color: var(--gray) !important; line-height: 1.6 !important; }
.lp-ep .stand-step strong { font-size: 12px !important; color: var(--cream) !important; display: block !important; margin-bottom: 4px !important; font-weight: 700 !important; }
.lp-ep .stand-type-foot { padding: 16px 24px !important; font-size: 12px !important; color: var(--gray) !important; line-height: 1.6 !important; }

.lp-ep .stand-products { margin-top: 0 !important; }
.lp-ep .stand-prod-title {
  font-size: 16px !important; font-weight: 700 !important; color: var(--cream) !important;
  margin-bottom: 20px !important; padding-bottom: 12px !important;
  border-bottom: 1px solid var(--border-dim) !important;
}
.lp-ep .stand-prod-grid { display: grid !important; grid-template-columns: repeat(4,1fr) !important; gap: 16px !important; }
.lp-ep .stand-prod-card {
  background: var(--charcoal2) !important;
  border: 1px solid var(--border-dim) !important;
  border-radius: var(--radius-lg) !important;
  overflow: hidden !important;
  transition: var(--tr) !important;
}
.lp-ep .stand-prod-card:hover { border-color: rgba(201,168,76,0.3) !important; transform: translateY(-2px) !important; }
.lp-ep .stand-prod-img { width: 100% !important; height: 140px !important; object-fit: contain !important; display: block !important; background: #222 !important; }
.lp-ep .stand-prod-ph { width: 100% !important; height: 140px !important; background: #222 !important; display: flex !important; align-items: center !important; justify-content: center !important; font-size: 40px !important; }
.lp-ep .stand-prod-body { padding: 16px !important; }
.lp-ep .stand-prod-body h4 { font-size: 13px !important; font-weight: 700 !important; color: var(--cream) !important; margin-bottom: 4px !important; border: none !important; background: transparent !important; padding: 0 !important; line-height: 1.4 !important; }
.lp-ep .stand-prod-size { font-size: 11px !important; color: var(--gray) !important; margin-bottom: 6px !important; }
.lp-ep .stand-prod-price { font-size: 16px !important; font-weight: 900 !important; color: var(--gold) !important; }
.lp-ep .stand-prod-price span { font-size: 11px !important; color: var(--gray) !important; font-weight: 400 !important; margin-left: 2px !important; }
.lp-ep .stand-prod-rec {
  display: inline-block !important; font-size: 10px !important;
  background: rgba(45,122,58,0.2) !important; border: 1px solid rgba(45,122,58,0.4) !important;
  color: #4ab85a !important; padding: 2px 8px !important; border-radius: 50px !important;
  margin-top: 6px !important; font-weight: 700 !important;
}
.lp-ep .stand-note {
  background: rgba(201,168,76,0.06) !important;
  border: 1px solid rgba(201,168,76,0.2) !important;
  border-radius: var(--radius) !important;
  padding: 16px 20px !important;
  font-size: 13px !important; color: var(--gray) !important;
  margin-top: 20px !important; line-height: 1.7 !important;
}
.lp-ep .stand-note strong { color: var(--gold) !important; }

/* ---- DIY VS PRO ---- */
.lp-ep .diy-sec { padding: 100px 0 !important; background: var(--charcoal) !important; }
.lp-ep .diy-inner { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 48px !important; align-items: center !important; }
.lp-ep .diy-img-placeholder { width: 100% !important; aspect-ratio: 4/3 !important; background: linear-gradient(135deg,#1a1a1a,#222) !important; border-radius: var(--radius-lg) !important; display: flex !important; align-items: center !important; justify-content: center !important; font-size: 64px !important; border: 1px solid var(--border-dim) !important; }
.lp-ep .diy-compare-labels { display: flex !important; gap: 12px !important; margin-top: 14px !important; }
.lp-ep .diy-compare-label { flex: 1 !important; text-align: center !important; font-size: 11px !important; font-weight: 700 !important; padding: 7px !important; border-radius: var(--radius) !important; }
.lp-ep .label-bad { background: rgba(255,255,255,0.05) !important; color: var(--gray) !important; }
.lp-ep .label-good { background: rgba(201,168,76,0.12) !important; color: var(--gold) !important; border: 1px solid rgba(201,168,76,0.2) !important; }
.lp-ep .diy-points { display: flex !important; flex-direction: column !important; gap: 20px !important; }
.lp-ep .diy-point { display: flex !important; gap: 16px !important; align-items: flex-start !important; }
.lp-ep .diy-point-icon { width: 40px !important; height: 40px !important; border-radius: var(--radius) !important; display: flex !important; align-items: center !important; justify-content: center !important; font-size: 18px !important; flex-shrink: 0 !important; }
.lp-ep .diy-point-icon-bad { background: rgba(255,255,255,0.05) !important; }
.lp-ep .diy-point-icon-good { background: rgba(201,168,76,0.1) !important; }
.lp-ep .diy-point h4 { font-size: 13px !important; font-weight: 700 !important; color: var(--cream) !important; margin-bottom: 4px !important; border: none !important; background: transparent !important; padding: 0 !important; }
.lp-ep .diy-point p { font-size: 12px !important; color: var(--gray) !important; line-height: 1.6 !important; }
.lp-ep .diy-arrow { text-align: center !important; font-size: 24px !important; color: var(--gold) !important; padding: 12px 0 !important; }

/* ---- COPYRIGHT ---- */
.lp-ep .copyright-sec { padding: 60px 0 !important; background: #0a0a0a !important; }
.lp-ep .copyright-box { background: var(--charcoal2) !important; border: 1px solid rgba(192,57,43,0.25) !important; border-radius: var(--radius-lg) !important; padding: 36px 40px !important; display: grid !important; grid-template-columns: auto 1fr !important; gap: 24px !important; align-items: start !important; }
.lp-ep .copyright-icon { font-size: 36px !important; line-height: 1 !important; }
.lp-ep .copyright-box h3 { font-size: 16px !important; font-weight: 700 !important; color: #e74c3c !important; margin-bottom: 10px !important; border: none !important; background: transparent !important; padding: 0 !important; }
.lp-ep .copyright-box p { font-size: 14px !important; color: var(--gray) !important; line-height: 1.8 !important; }

/* ---- FAQ ---- */
.lp-ep .faq-sec { padding: 100px 0 !important; background: var(--charcoal) !important; }
.lp-ep .faq-list { display: flex !important; flex-direction: column !important; gap: 2px !important; }
.lp-ep .faq-item { background: var(--charcoal2) !important; border: 1px solid var(--border-dim) !important; border-radius: var(--radius) !important; overflow: hidden !important; transition: var(--tr) !important; }
.lp-ep .faq-item.open { border-color: rgba(201,168,76,0.25) !important; }
.lp-ep .faq-q { width: 100% !important; display: flex !important; align-items: center !important; gap: 16px !important; padding: 20px 24px !important; background: transparent !important; border: none !important; cursor: pointer !important; text-align: left !important; color: var(--cream) !important; transition: var(--tr) !important; }
.lp-ep .faq-q:hover { background: rgba(255,255,255,0.02) !important; }
.lp-ep .faq-qm { width: 28px !important; height: 28px !important; background: linear-gradient(135deg,var(--gold),var(--gold-dark)) !important; color: #0a0a0a !important; border-radius: var(--radius) !important; display: flex !important; align-items: center !important; justify-content: center !important; font-size: 12px !important; font-weight: 900 !important; flex-shrink: 0 !important; }
.lp-ep .faq-qt { flex: 1 !important; font-size: 14px !important; font-weight: 700 !important; line-height: 1.5 !important; }
.lp-ep .faq-qi { font-size: 20px !important; color: var(--gold) !important; flex-shrink: 0 !important; line-height: 1 !important; transition: transform 0.3s !important; font-weight: 300 !important; }
.lp-ep .faq-item.open .faq-qi { transform: rotate(45deg) !important; }
.lp-ep .faq-a { display: none !important; padding: 0 24px 20px 68px !important; font-size: 13px !important; color: var(--gray) !important; line-height: 1.8 !important; }
.lp-ep .faq-item.open .faq-a { display: block !important; }

/* ---- PRO VOICE ---- */
.lp-ep .pro-sec { padding: 80px 0 !important; background: #0a0a0a !important; }
.lp-ep .pro-inner { display: grid !important; grid-template-columns: auto 1fr !important; gap: 64px !important; align-items: center !important; }
.lp-ep .pro-photo-placeholder { width: 200px !important; height: 267px !important; border-radius: var(--radius-lg) !important; background: linear-gradient(135deg,#1a1a1a,#222) !important; display: flex !important; align-items: center !important; justify-content: center !important; font-size: 64px !important; border: 1px solid var(--border-dim) !important; }
.lp-ep .pro-photo-wrap { position: relative !important; flex-shrink: 0 !important; }
.lp-ep .pro-badge { position: absolute !important; bottom: -16px !important; right: -16px !important; background: linear-gradient(135deg,var(--gold),var(--gold-dark)) !important; color: #0a0a0a !important; font-size: 11px !important; font-weight: 900 !important; text-align: center !important; padding: 12px 14px !important; border-radius: var(--radius) !important; line-height: 1.5 !important; }
.lp-ep .q-mark { font-size: 64px !important; color: rgba(201,168,76,0.2) !important; line-height: 0.8 !important; display: block !important; margin-bottom: 8px !important; font-family: Georgia,serif !important; }
.lp-ep .pro-quote { font-size: 15px !important; color: var(--cream) !important; line-height: 1.9 !important; margin-bottom: 20px !important; font-style: italic !important; }
.lp-ep .pro-name { display: block !important; font-size: 13px !important; font-weight: 700 !important; color: var(--cream) !important; }
.lp-ep .pro-title-text { font-size: 12px !important; color: var(--gold) !important; display: block !important; margin-top: 4px !important; }

.lp-ep .ep-form-area {
  margin-top: 48px !important;
  max-width: 860px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: left !important;
}

/* ---- CTA ---- */
.lp-ep .cta-sec { padding: 100px 0 !important; background: linear-gradient(135deg,#0f0d06,#141108) !important; position: relative !important; overflow: hidden !important; }
.lp-ep .cta-sec::before { content: '' !important; position: absolute !important; inset: 0 !important; background-image: linear-gradient(rgba(201,168,76,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(201,168,76,0.05) 1px,transparent 1px) !important; background-size: 60px 60px !important; }
.lp-ep .cta-cont { position: relative !important; z-index: 1 !important; max-width: 680px !important; margin: 0 auto !important; text-align: center !important; padding: 0 clamp(16px,4vw,48px) !important; }
.lp-ep .cta-cont h2 { font-size: clamp(28px,4vw,48px) !important; font-weight: 900 !important; color: var(--cream) !important; margin-bottom: 20px !important; border: none !important; background: transparent !important; padding: 0 !important; line-height: 1.25 !important; }
.lp-ep .cta-cont p { font-size: 15px !important; color: var(--gray) !important; margin-bottom: 40px !important; line-height: 1.8 !important; }
.lp-ep .cta-btns { display: flex !important; flex-wrap: wrap !important; gap: 14px !important; justify-content: center !important; }
.lp-ep .cta-note { font-size: 12px !important; color: var(--gray) !important; margin-top: 20px !important; opacity: 0.7 !important; }

/* ---- RELATED ---- */
.lp-ep .related-sec { background: var(--charcoal2) !important; border-top: 1px solid var(--border) !important; padding: 56px 0 !important; }
.lp-ep .related-inner { max-width: var(--max-w) !important; margin: 0 auto !important; padding: 0 clamp(16px,4vw,48px) !important; }
.lp-ep .related-label { font-size: 11px !important; letter-spacing: 0.3em !important; color: var(--gold) !important; margin-bottom: 16px !important; display: block !important; font-weight: 700 !important; }
.lp-ep .related-title { font-size: 18px !important; font-weight: 700 !important; color: var(--cream) !important; margin-bottom: 28px !important; }
.lp-ep .related-cards { display: grid !important; grid-template-columns: repeat(3,1fr) !important; gap: 16px !important; }
.lp-ep .rcard { display: flex !important; gap: 16px !important; background: var(--charcoal) !important; border: 1px solid var(--border-dim) !important; border-radius: var(--radius-lg) !important; padding: 20px !important; cursor: pointer !important; transition: var(--tr) !important; align-items: flex-start !important; }
.lp-ep .rcard:hover { border-color: rgba(201,168,76,0.3) !important; transform: translateY(-2px) !important; }
.lp-ep .rcard-img { width: 70px !important; height: 90px !important; border-radius: var(--radius) !important; background: #222 !important; flex-shrink: 0 !important; overflow: hidden !important; display: flex !important; align-items: center !important; justify-content: center !important; font-size: 28px !important; }
.lp-ep .rcard-tag { font-size: 9px !important; letter-spacing: 0.2em !important; color: var(--gold) !important; font-weight: 700 !important; display: block !important; margin-bottom: 4px !important; }
.lp-ep .rcard-title { font-size: 13px !important; font-weight: 700 !important; color: var(--cream) !important; line-height: 1.4 !important; margin-bottom: 6px !important; }
.lp-ep .rcard-desc { font-size: 11px !important; color: var(--gray) !important; line-height: 1.5 !important; }
.lp-ep .rcard-btn { font-size: 11px !important; font-weight: 700 !important; color: var(--gold) !important; display: inline-flex !important; align-items: center !important; gap: 4px !important; margin-top: 8px !important; }
.lp-ep .rcard-current { opacity: 0.5 !important; cursor: default !important; }
.lp-ep .rcard-current:hover { transform: none !important; border-color: var(--border-dim) !important; }

/* ---- FOOTER ---- */
.lp-ep .lp-footer { background: #060606 !important; border-top: 1px solid var(--border) !important; padding: 56px 0 32px !important; }
.lp-ep .ft-inner { max-width: var(--max-w) !important; margin: 0 auto !important; padding: 0 clamp(16px,4vw,48px) !important; display: grid !important; grid-template-columns: 1.6fr 1fr 1fr !important; gap: 48px !important; margin-bottom: 40px !important; }
.lp-ep .ft-logo { font-size: 20px !important; font-weight: 900 !important; color: var(--gold) !important; display: block !important; margin-bottom: 12px !important; letter-spacing: 0.08em !important; }
.lp-ep .ft-desc { font-size: 13px !important; color: var(--gray) !important; line-height: 1.75 !important; }
.lp-ep .ft-links h4 { font-size: 11px !important; letter-spacing: 0.2em !important; color: var(--gold) !important; font-weight: 700 !important; margin-bottom: 16px !important; border: none !important; background: transparent !important; padding: 0 !important; }
.lp-ep .ft-links ul { list-style: none !important; display: flex !important; flex-direction: column !important; gap: 8px !important; }
.lp-ep .ft-links ul li a { font-size: 13px !important; color: var(--gray) !important; transition: var(--tr) !important; }
.lp-ep .ft-links ul li a:hover { color: var(--cream) !important; }
.lp-ep .ft-bottom { max-width: var(--max-w) !important; margin: 0 auto !important; padding: 20px clamp(16px,4vw,48px) 0 !important; border-top: 1px solid var(--border-dim) !important; display: flex !important; justify-content: space-between !important; flex-wrap: wrap !important; gap: 8px !important; font-size: 12px !important; color: rgba(170,170,170,0.5) !important; }
.lp-ep .ft-bottom a { color: rgba(170,170,170,0.6) !important; }
.lp-ep .ft-bottom a:hover { color: var(--gray) !important; }

/* ---- RESPONSIVE ---- */
@media (max-width: 1100px) {
  .lp-ep .stand-prod-grid6 { grid-template-columns: repeat(2,1fr) !important; }
  .lp-ep .stand-steps-4 { grid-template-columns: repeat(2,1fr) !important; }
}
@media (max-width: 900px) {
  .lp-ep .reason-inner { grid-template-columns: repeat(2,1fr) !important; }
  .lp-ep .reason-item { border-right: none !important; border-bottom: 1px solid var(--border) !important; }
  .lp-ep .uc-grid { grid-template-columns: repeat(2,1fr) !important; }
  .lp-ep .merit-grid { grid-template-columns: 1fr !important; }
  .lp-ep .why-photo-grid { grid-template-columns: 1fr !important; }
  .lp-ep .fork-grid { grid-template-columns: 1fr !important; }
  .lp-ep .why-compare { grid-template-columns: 1fr 48px 1fr !important; }
  .lp-ep .why-desc-row { grid-template-columns: 1fr 48px 1fr !important; }
  .lp-ep .why-img-wrap img { height: 200px !important; }
  .lp-ep .flow-steps { grid-template-columns: repeat(2,1fr) !important; gap: 32px !important; }
  .lp-ep .flow-steps::before { display: none !important; }
  .lp-ep .stand-grid { grid-template-columns: 1fr !important; }
  .lp-ep .stand-prod-grid { grid-template-columns: repeat(2,1fr) !important; }
  .lp-ep .diy-inner { grid-template-columns: 1fr !important; gap: 32px !important; }
  .lp-ep .pro-inner { grid-template-columns: 1fr !important; gap: 32px !important; text-align: center !important; }
  .lp-ep .pro-photo-placeholder { margin: 0 auto !important; }
  .lp-ep .pro-badge { right: auto !important; left: 50% !important; transform: translateX(-50%) !important; }
  .lp-ep .ft-inner { grid-template-columns: 1fr !important; gap: 32px !important; }
  .lp-ep .related-cards { grid-template-columns: 1fr !important; }
  .lp-ep .copyright-box { grid-template-columns: 1fr !important; }
  .lp-ep .fork-grid { grid-template-columns: 1fr !important; }
  .lp-ep .opt-grid { grid-template-columns: repeat(2,1fr) !important; }
  .lp-ep .why-band { flex-direction: column !important; text-align: center !important; }
}
@media (max-width: 600px) {
  .lp-ep .uc-grid { grid-template-columns: 1fr !important; }
  .lp-ep .why-compare { grid-template-columns: 1fr !important; gap: 12px !important; }
  .lp-ep .why-vs-col { display: none !important; }
  .lp-ep .why-desc-row { grid-template-columns: 1fr !important; gap: 10px !important; }
  .lp-ep .why-desc-row > *:nth-child(2) { display: none !important; }
  .lp-ep .flow-steps { grid-template-columns: 1fr !important; }
  .lp-ep .hero-bars { grid-template-columns: 1fr !important; }
  .lp-ep .opt-grid { grid-template-columns: 1fr !important; }
  .lp-ep .stand-prod-grid6 { grid-template-columns: 1fr !important; }
  .lp-ep .stand-steps-4 { grid-template-columns: 1fr !important; }
  .lp-ep .stand-steps-3 { grid-template-columns: 1fr !important; }
  .lp-ep .stand-step { border-right: none !important; border-bottom: 1px solid var(--border-dim) !important; }
}

/* =============================================
   等身大パネルフォーム CSS
   ダーク・ゴールドテーマ（LPデザイン統一版）
   既存の tsuki- CSS の末尾に追記してください
   ============================================= */

/* ---- フォーム全体ラッパー ---- */
.tsuki-form-wrap {
  max-width: 800px;
  margin: 0 auto;
  font-family: 'Noto Sans JP', sans-serif;
}

/* ---- セクションカード ---- */
.tsuki-form-section {
  background: #1c1c1c;
  border: 1px solid rgba(201,168,76,0.18);
  border-radius: 14px;
  padding: 28px 32px;
  margin-bottom: 16px;
  transition: border-color 0.3s;
}
.tsuki-form-section:focus-within {
  border-color: rgba(201,168,76,0.4);
}

/* ---- セクションタイトル ---- */
.tsuki-form-section-title {
  font-size: 15px;
  font-weight: 700;
  color: #c9a84c;
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(201,168,76,0.25);
  letter-spacing: 0.06em;
}

/* ---- 行ごとのラッパー ---- */
.tsuki-form-row {
  margin-bottom: 16px;
}
.tsuki-form-row:last-child {
  margin-bottom: 0;
}

/* ---- ラベル ---- */
.tsuki-label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 700;
  color: #f5f0e8;
  margin-bottom: 6px;
  line-height: 1.4;
}

/* ---- 必須・任意バッジ ---- */
.tsuki-required {
  display: inline-block;
  background: linear-gradient(135deg, #c0392b, #962d22);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 3px;
  letter-spacing: 0.04em;
  flex-shrink: 0;
}
.tsuki-optional {
  display: inline-block;
  background: rgba(255,255,255,0.12);
  color: #aaa;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 3px;
  flex-shrink: 0;
}

/* ---- テキスト入力・電話・メール ---- */
.tsuki-form-wrap input[type="text"],
.tsuki-form-wrap input[type="tel"],
.tsuki-form-wrap input[type="email"] {
  width: 100%;
  background: #0f0f0f;
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 8px;
  color: #f5f0e8;
  font-size: 14px;
  padding: 12px 16px;
  font-family: 'Noto Sans JP', sans-serif;
  transition: border-color 0.2s, box-shadow 0.2s;
  box-sizing: border-box;
  -webkit-appearance: none;
}
.tsuki-form-wrap input[type="text"]:focus,
.tsuki-form-wrap input[type="tel"]:focus,
.tsuki-form-wrap input[type="email"]:focus {
  outline: none;
  border-color: #c9a84c;
  box-shadow: 0 0 0 3px rgba(201,168,76,0.12);
}
.tsuki-form-wrap input[type="text"]::placeholder,
.tsuki-form-wrap input[type="tel"]::placeholder,
.tsuki-form-wrap input[type="email"]::placeholder {
  color: #666;
}

/* ---- テキストエリア ---- */
.tsuki-form-wrap textarea {
  width: 100%;
  background: #0f0f0f;
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 8px;
  color: #f5f0e8;
  font-size: 14px;
  padding: 12px 16px;
  font-family: 'Noto Sans JP', sans-serif;
  min-height: 140px;
  resize: vertical;
  transition: border-color 0.2s, box-shadow 0.2s;
  box-sizing: border-box;
  -webkit-appearance: none;
}
.tsuki-form-wrap textarea:focus {
  outline: none;
  border-color: #c9a84c;
  box-shadow: 0 0 0 3px rgba(201,168,76,0.12);
}
.tsuki-form-wrap textarea::placeholder {
  color: #666;
}

/* ---- セレクトボックス ---- */
.tsuki-form-wrap select,
.tsuki-form-wrap .tsuki-select {
  width: 100%;
  background: #0f0f0f;
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 8px;
  color: #f5f0e8;
  font-size: 14px;
  padding: 12px 40px 12px 16px;
  font-family: 'Noto Sans JP', sans-serif;
  transition: border-color 0.2s, box-shadow 0.2s;
  box-sizing: border-box;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23c9a84c' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
}
.tsuki-form-wrap select:focus,
.tsuki-form-wrap .tsuki-select:focus {
  outline: none;
  border-color: #c9a84c;
  box-shadow: 0 0 0 3px rgba(201,168,76,0.12);
}

/* ---- バリデーションエラー ---- */
.tsuki-form-wrap .wpcf7-not-valid {
  border-color: #e74c3c !important;
  box-shadow: 0 0 0 3px rgba(231,76,60,0.1) !important;
}
.tsuki-form-wrap .wpcf7-not-valid-tip {
  display: block;
  color: #e74c3c;
  font-size: 12px;
  margin-top: 6px;
}

/* ---- ヒントテキスト ---- */
.tsuki-zip-hint {
  font-size: 12px;
  color: #888;
  margin-top: 6px;
  line-height: 1.6;
}

/* ---- スタンドおすすめバナー ---- */
.tsuki-stand-banner {
  background: rgba(201,168,76,0.08);
  border: 1px solid rgba(201,168,76,0.3);
  border-radius: 8px;
  padding: 14px 18px;
  margin-bottom: 16px;
}
.tsuki-stand-banner-title {
  font-size: 14px;
  font-weight: 700;
  color: #c9a84c;
  margin-bottom: 4px;
}
.tsuki-stand-banner-text {
  font-size: 13px;
  color: #aaa;
  line-height: 1.7;
  margin: 0;
}

/* ---- 写真添付ヒント ---- */
.tsuki-photo-hint {
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 8px;
  padding: 14px 16px;
  margin-bottom: 12px;
}
.tsuki-photo-hint-title {
  font-size: 13px;
  font-weight: 700;
  color: #c9a84c;
  margin-bottom: 4px;
}
.tsuki-photo-hint p {
  font-size: 12px;
  color: #888;
  line-height: 1.7;
  margin: 0;
}

/* ---- mfileドロップエリア ---- */
.tsuki-form-wrap .wpcf7-drag-n-drop-file {
  border: 2px dashed rgba(201,168,76,0.4) !important;
  border-radius: 8px !important;
  background: #0f0f0f !important;
  color: #ccc !important;
  padding: 32px 20px !important;
}
.tsuki-form-wrap .wpcf7-drag-n-drop-file p {
  color: #ccc !important;
}
.tsuki-form-wrap .wpcf7-drag-n-drop-file a {
  color: #c9a84c !important;
}
.tsuki-form-wrap .wpcf7-drag-n-drop-file:hover {
  border-color: #c9a84c !important;
}

/* ---- 同意文セクション ---- */
.tsuki-consent-section {
  background: transparent !important;
  border: none !important;
  padding: 4px 0 !important;
  text-align: center;
}
.tsuki-consent-lead {
  font-size: 13px;
  color: #888;
  line-height: 1.9;
  text-align: center;
}
.tsuki-consent-lead a {
  color: #c9a84c;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.tsuki-consent-lead a:hover {
  color: #e8c870;
}

/* ---- 送信ボタン ---- */
.tsuki-submit-wrap {
  text-align: center !important;
  margin-top: 8px;
  display: block !important;
  width: 100% !important;
}
.tsuki-submit-wrap input[type="submit"],
.tsuki-form-wrap .wpcf7-submit {
  display: inline-block !important;
  background: linear-gradient(135deg, #c9a84c, #8b6914) !important;
  color: #0a0a0a !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  padding: 18px 64px !important;
  border: none !important;
  border-radius: 50px !important;
  cursor: pointer !important;
  letter-spacing: 0.08em !important;
  font-family: 'Noto Sans JP', sans-serif !important;
  transition: all 0.25s ease !important;
  box-shadow: 0 4px 20px rgba(201,168,76,0.25) !important;
  -webkit-appearance: none !important;
  width: auto !important;
  margin: 0 auto !important;
}
.tsuki-submit-wrap input[type="submit"]:hover,
.tsuki-form-wrap .wpcf7-submit:hover {
  background: linear-gradient(135deg, #e8c870, #c9a84c) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(201,168,76,0.35) !important;
}

/* ---- 送信完了・エラーメッセージ ---- */
.tsuki-form-wrap .wpcf7-response-output {
  border-radius: 8px !important;
  padding: 14px 20px !important;
  font-size: 14px !important;
  margin-top: 16px !important;
  text-align: center !important;
  border: none !important;
}
.tsuki-form-wrap .wpcf7-mail-sent-ok {
  background: rgba(45,122,58,0.15) !important;
  border: 1px solid rgba(45,122,58,0.4) !important;
  color: #4ab85a !important;
}
.tsuki-form-wrap .wpcf7-mail-sent-ng,
.tsuki-form-wrap .wpcf7-spam-blocked {
  background: rgba(192,57,43,0.15) !important;
  border: 1px solid rgba(192,57,43,0.4) !important;
  color: #e74c3c !important;
}
.tsuki-form-wrap .wpcf7-validation-errors {
  background: rgba(230,126,34,0.12) !important;
  border: 1px solid rgba(230,126,34,0.35) !important;
  color: #e67e22 !important;
}

/* ---- レスポンシブ ---- */
@media (max-width: 600px) {
  .tsuki-form-section {
    padding: 20px 16px;
    border-radius: 10px;
  }
  .tsuki-form-section-title {
    font-size: 14px;
  }
  .tsuki-submit-wrap input[type="submit"],
  .tsuki-form-wrap .wpcf7-submit {
    padding: 16px 32px !important;
    font-size: 15px !important;
    width: 90% !important;
  }
}

/* ---- セクションカード ---- */
.tsuki-form-section {
  background: #1c1c1c;
  border: 1px solid rgba(201,168,76,0.18);
  border-radius: 14px;
  padding: 32px 36px;
  margin-bottom: 20px;
  transition: border-color 0.3s;
}
.tsuki-form-section:focus-within {
  border-color: rgba(201,168,76,0.4);
}

/* ---- セクションタイトル ---- */
.tsuki-form-section-title {
  font-size: 15px;
  font-weight: 700;
  color: #c9a84c;
  margin-bottom: 24px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(201,168,76,0.25);
  letter-spacing: 0.06em;
}

/* ---- 行ごとのラッパー ---- */
.tsuki-form-row {
  margin-bottom: 22px;
}
.tsuki-form-row:last-child {
  margin-bottom: 0;
}

/* ---- ラベル ---- */
.tsuki-label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 700;
  color: #f5f0e8;
  margin-bottom: 8px;
  line-height: 1.4;
}

/* ---- 必須・任意バッジ ---- */
.tsuki-required {
  display: inline-block;
  background: linear-gradient(135deg, #c0392b, #962d22);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 3px;
  letter-spacing: 0.04em;
  flex-shrink: 0;
}
.tsuki-optional {
  display: inline-block;
  background: rgba(255,255,255,0.1);
  color: #888;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 3px;
  flex-shrink: 0;
}

/* ---- テキスト入力・電話・メール ---- */
.tsuki-form-wrap input[type="text"],
.tsuki-form-wrap input[type="tel"],
.tsuki-form-wrap input[type="email"] {
  width: 100%;
  background: #111111;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 8px;
  color: #f5f0e8;
  font-size: 14px;
  padding: 13px 16px;
  font-family: 'Noto Sans JP', sans-serif;
  transition: border-color 0.2s, box-shadow 0.2s;
  box-sizing: border-box;
  -webkit-appearance: none;
}
.tsuki-form-wrap input[type="text"]:focus,
.tsuki-form-wrap input[type="tel"]:focus,
.tsuki-form-wrap input[type="email"]:focus {
  outline: none;
  border-color: #c9a84c;
  box-shadow: 0 0 0 3px rgba(201,168,76,0.12);
}
.tsuki-form-wrap input::placeholder {
  color: #555;
}

/* ---- テキストエリア ---- */
.tsuki-form-wrap textarea {
  width: 100%;
  background: #111111;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 8px;
  color: #f5f0e8;
  font-size: 14px;
  padding: 13px 16px;
  font-family: 'Noto Sans JP', sans-serif;
  min-height: 140px;
  resize: vertical;
  transition: border-color 0.2s, box-shadow 0.2s;
  box-sizing: border-box;
  -webkit-appearance: none;
}
.tsuki-form-wrap textarea:focus {
  outline: none;
  border-color: #c9a84c;
  box-shadow: 0 0 0 3px rgba(201,168,76,0.12);
}
.tsuki-form-wrap textarea::placeholder {
  color: #555;
}

/* ---- セレクトボックス ---- */
.tsuki-form-wrap select,
.tsuki-form-wrap .tsuki-select {
  width: 100%;
  background: #111111;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 8px;
  color: #f5f0e8;
  font-size: 14px;
  padding: 13px 40px 13px 16px;
  font-family: 'Noto Sans JP', sans-serif;
  transition: border-color 0.2s, box-shadow 0.2s;
  box-sizing: border-box;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23c9a84c' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
}
.tsuki-form-wrap select:focus,
.tsuki-form-wrap .tsuki-select:focus {
  outline: none;
  border-color: #c9a84c;
  box-shadow: 0 0 0 3px rgba(201,168,76,0.12);
}

/* ---- バリデーションエラー ---- */
.tsuki-form-wrap .wpcf7-not-valid {
  border-color: #e74c3c !important;
  box-shadow: 0 0 0 3px rgba(231,76,60,0.1) !important;
}
.tsuki-form-wrap .wpcf7-not-valid-tip {
  display: block;
  color: #e74c3c;
  font-size: 12px;
  margin-top: 6px;
}

/* ---- ヒントテキスト ---- */
.tsuki-zip-hint {
  font-size: 12px;
  color: #777;
  margin-top: 6px;
  line-height: 1.6;
}

/* ---- スタンドおすすめバナー（新規追加） ---- */
.tsuki-stand-banner {
  background: rgba(201,168,76,0.08);
  border: 1px solid rgba(201,168,76,0.3);
  border-radius: 8px;
  padding: 16px 20px;
  margin-bottom: 20px;
}
.tsuki-stand-banner-title {
  font-size: 14px;
  font-weight: 700;
  color: #c9a84c;
  margin-bottom: 6px;
}
.tsuki-stand-banner-text {
  font-size: 13px;
  color: #999;
  line-height: 1.7;
  margin: 0;
}

/* ---- 写真添付ヒント ---- */
.tsuki-photo-hint {
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 8px;
  padding: 16px 18px;
  margin-bottom: 14px;
}
.tsuki-photo-hint-title {
  font-size: 13px;
  font-weight: 700;
  color: #c9a84c;
  margin-bottom: 6px;
}
.tsuki-photo-hint p {
  font-size: 12px;
  color: #777;
  line-height: 1.7;
  margin: 0;
}

/* ---- mfileドロップエリア ---- */
.tsuki-form-wrap .mwform-file-delete,
.tsuki-form-wrap .wpcf7-drag-n-drop-file {
  border: 2px dashed rgba(201,168,76,0.3);
  border-radius: 8px;
  background: #111111;
  color: #f5f0e8;
  transition: border-color 0.2s;
}
.tsuki-form-wrap .wpcf7-drag-n-drop-file:hover {
  border-color: #c9a84c;
}

/* ---- 同意文セクション ---- */
.tsuki-consent-section {
  background: transparent !important;
  border: none !important;
  padding: 8px 0 !important;
  text-align: center;
}
.tsuki-consent-lead {
  font-size: 13px;
  color: #777;
  line-height: 1.9;
  text-align: center;
}
.tsuki-consent-lead a {
  color: #c9a84c;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.tsuki-consent-lead a:hover {
  color: #e8c870;
}

/* ---- 送信ボタン ---- */
.tsuki-submit-wrap {
  text-align: center;
  margin-top: 8px;
}
.tsuki-form-wrap input[type="submit"],
.tsuki-submit-wrap input[type="submit"],
.wpcf7-submit {
  display: inline-block;
  background: linear-gradient(135deg, #c9a84c, #8b6914);
  color: #0a0a0a !important;
  font-size: 16px;
  font-weight: 700;
  padding: 18px 72px;
  border: none;
  border-radius: 50px;
  cursor: pointer;
  letter-spacing: 0.08em;
  font-family: 'Noto Sans JP', sans-serif;
  transition: all 0.25s cubic-bezier(0.25,0.46,0.45,0.94);
  box-shadow: 0 4px 20px rgba(201,168,76,0.25);
  -webkit-appearance: none;
}
.tsuki-form-wrap input[type="submit"]:hover,
.tsuki-submit-wrap input[type="submit"]:hover,
.wpcf7-submit:hover {
  background: linear-gradient(135deg, #e8c870, #c9a84c);
  transform: translateY(-3px);
  box-shadow: 0 8px 32px rgba(201,168,76,0.35);
}
.tsuki-form-wrap input[type="submit"]:active,
.tsuki-submit-wrap input[type="submit"]:active {
  transform: translateY(-1px);
  box-shadow: 0 4px 16px rgba(201,168,76,0.25);
}

/* ---- 送信完了メッセージ ---- */
.tsuki-form-wrap .wpcf7-response-output {
  border-radius: 8px;
  padding: 14px 20px;
  font-size: 14px;
  margin-top: 16px;
  text-align: center;
}
.tsuki-form-wrap .wpcf7-mail-sent-ok {
  background: rgba(45,122,58,0.15);
  border: 1px solid rgba(45,122,58,0.4);
  color: #4ab85a;
}
.tsuki-form-wrap .wpcf7-mail-sent-ng,
.tsuki-form-wrap .wpcf7-spam-blocked {
  background: rgba(192,57,43,0.15);
  border: 1px solid rgba(192,57,43,0.4);
  color: #e74c3c;
}
.tsuki-form-wrap .wpcf7-validation-errors {
  background: rgba(230,126,34,0.12);
  border: 1px solid rgba(230,126,34,0.35);
  color: #e67e22;
}

/* ---- レスポンシブ ---- */
@media (max-width: 600px) {
  .tsuki-form-section {
    padding: 22px 18px;
    border-radius: 10px;
  }
  .tsuki-form-section-title {
    font-size: 14px;
  }
  .wpcf7-submit,
  .tsuki-submit-wrap input[type="submit"] {
    padding: 16px 40px;
    font-size: 15px;
    width: 100%;
  }
}

/* フォームエリア幅修正 */
.lp-ep .cta-cont {
  max-width: 1000px !important;
  padding: 0 clamp(16px, 4vw, 48px) !important;
}
.lp-ep .ep-form-area {
  max-width: 100% !important;
  margin-top: 48px !important;
}
.lp-ep .tsuki-form-wrap {
  max-width: 100% !important;
}