@charset "UTF-8";
/* 加害者側限定の告知（CTAの上・お問い合わせフォームの直前）2026-10 追加
   正本：Figma修正案の figma-ref/notice.js（2026-10-20） */
.lh-n, .lh-n * { box-sizing: border-box; }
.lh-n { font-family: inherit; letter-spacing: .02em; word-break: auto-phrase; line-break: strict; }
.lh-k { display: inline-block; }

/* CTA */
.lh-cta { background: #fffbea; border: 2px solid #1a55a6; border-radius: 4px; padding: 10px 14px 11px 46px; position: relative; text-align: left; margin: 0 0 20px; }
.lh-cta::before { content: '!'; position: absolute; left: 12px; top: 50%; transform: translateY(-50%); width: 24px; height: 24px; border-radius: 50%; background: #1a55a6; color: #fff; font-weight: 700; font-size: 16px; line-height: 24px; text-align: center; font-family: Arial, sans-serif; }
.lh-cta__l1 { color: #0f2a5c; font-weight: 700; font-size: 15px; line-height: 1.5; margin: 0; }
.lh-cta__l1 b { color: #1a55a6; font-size: 17px; background: linear-gradient(transparent 62%, #ffe27a 62%); }
.lh-cta__l2 { color: #b0101e; font-weight: 700; font-size: 14px; line-height: 1.5; margin: 3px 0 0; }
/* フッターのお問い合わせ枠（#banner_sec .tel_mail）の上の帯 */
.lh-cta--strip { border: none; border-bottom: 1px solid #e3d79e; border-radius: 0; margin: 0 auto; background: #fffbea; text-align: center; padding: 12px 16px 12px; }
.lh-cta--strip::before { position: static; display: inline-block; transform: none; vertical-align: -5px; margin-right: 8px; }
.lh-cta--strip .lh-cta__l1 { display: inline; }
.lh-cta--strip .lh-cta__l2 { display: block; }
/* ご相談の流れ STEP1（PCのみ） */
.lh-cta--step { margin: 4px 0 14px; }

/* お問い合わせフォームの確認枠 */
.lh-form { border: 2px solid #0f2a5c; border-radius: 4px; margin: 0 0 44px; background: #fff; overflow: hidden; }
.lh-form__title { background: #0f2a5c; color: #fff; font-weight: 700; font-size: 17px; line-height: 1.4; padding: 10px 16px; margin: 0; text-align: center; }
.lh-form__title span { color: #f5c518; }
.lh-form__body { padding: 16px 20px 18px; }
.lh-form__text { color: #222; font-size: 15px; line-height: 1.8; margin: 0; }
.lh-form__text b { color: #1a55a6; font-size: 16px; background: linear-gradient(transparent 62%, #ffe27a 62%); }
.lh-form__alert { color: #b0101e; font-weight: 700; font-size: 16px; line-height: 1.6; margin: 10px 0 0; padding: 8px 12px; background: #fdeef0; border-left: 4px solid #b0101e; }
/* 白枠が二重入れ子（.contact_inner > .contact_contents > .contact_inner）のため、白枠の上端から確認枠までを PC 56px／SP 32px にする */
.contact_inner:has(.lh-form) { padding-top: 56px; }
.contact_inner .contact_contents:has(.lh-form) { margin-top: 0; }
.contact_inner .contact_inner:has(.lh-form) { padding-top: 0; }

@media (max-width: 768px) {
  .lh-cta__l1 { font-size: 14px; }
  .lh-cta__l1 b { font-size: 16px; }
  .lh-cta__l2 { font-size: 13px; }
  .lh-cta { padding: 11px 12px 12px; text-align: center; }
  .lh-cta::before { position: static; display: inline-block; transform: none; vertical-align: -4px; margin-right: 6px; width: 22px; height: 22px; line-height: 22px; font-size: 14px; }
  .lh-cta .lh-cta__l1 { display: inline; }
  .lh-form { margin-bottom: 30px; }
  .lh-form__title { font-size: 15px; padding: 9px 10px; }
  .lh-form__body { padding: 13px 13px 15px; }
  .lh-form__text { font-size: 14px; line-height: 1.75; }
  .lh-form__text b { font-size: 15px; }
  .lh-form__alert { font-size: 14px; }
  .contact_inner:has(.lh-form) { padding-top: 32px; }
  .contact_inner .contact_inner:has(.lh-form) { padding-top: 0; }
}
