/* kt-cvr.css — 2026-10-15 LP申込率改善（kt-cvr.js と対）。色は既存LPの赤・オレンジ系に合わせる */
.kt-callback { cursor: pointer; text-decoration: none; }
.kt-callback--btn { display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; max-width: 420px; margin: 8px auto 0; min-height: 48px; padding: 10px 14px; border: 2px solid #ef7a00; border-radius: 10px; background: #fff; color: #7a3d00; font-size: 15px; font-weight: 700; line-height: 1.4; box-sizing: border-box; }
.kt-callback--header { display: inline-flex; flex-direction: column; justify-content: center; align-items: flex-start; min-height: 44px; margin-top: 4px; padding: 5px 10px 5px 30px; border: 2px solid #ef7a00; border-radius: 8px; background: #fff3e0 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23ef7a00' d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1A17 17 0 0 1 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1l-2.3 2.2z'/%3E%3C/svg%3E") no-repeat 8px center / 16px 16px; box-shadow: 0 2px 0 #c96200; color: #7a3d00; font-size: 12px; font-weight: 700; line-height: 1.3; text-decoration: none; box-sizing: border-box; }
.kt-callback--header:active { transform: translateY(1px); box-shadow: none; }
.kt-callback--sticky { display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; line-height: 1.25; font-weight: 700; }
.kt-callback--sticky .kt-callback__l1, .kt-callback--sticky .kt-callback__l2 { font-size: 12px; }
/* 2026-10-15 QA: 文字が折れて「す」だけ孤立しないよう各行は折らない（フォント読込前の初回表示も2行に固定） */
.kt-callback--header .kt-callback__l1, .kt-callback--header .kt-callback__l2,
.kt-callback--sticky .kt-callback__l1, .kt-callback--sticky .kt-callback__l2 { display: block; white-space: nowrap; }
/* 追従バー左の時間外ボタン: ヘッダーと同じく枠・色・電話アイコンでボタンに見せる */
.kt-callback.kt-callback--sticky { margin: 6px 4px 6px 6px; padding: 4px 6px 4px 26px; border: 2px solid #ef7a00; border-radius: 8px; background: #fff3e0 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23ef7a00' d='M6.6 10.8a15.1 15.1 0 0 0 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1A17 17 0 0 1 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1l-2.3 2.2z'/%3E%3C/svg%3E") no-repeat 6px center / 15px 15px; box-shadow: 0 2px 0 #c96200; color: #7a3d00; box-sizing: border-box; }
.kt-callback.kt-callback--sticky .kt-callback__l1, .kt-callback.kt-callback--sticky .kt-callback__l2 { font-size: 11px; letter-spacing: -0.02em; }
/* FAQ の着地が固定ヘッダーの裏に潜らないように */
.faq-item[id] { scroll-margin-top: 112px; }
.kt-callback-line { margin: 8px 0 0; text-align: center; }
.kt-callback--line { color: #b3261e; font-weight: 700; font-size: 15px; text-decoration: underline; text-decoration-color: #f5c400; text-decoration-thickness: 3px; text-underline-offset: 3px; }
.kt-submitbar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 2147483000; padding: 8px 16px calc(8px + env(safe-area-inset-bottom)); background: rgba(255,255,255,.96); box-shadow: 0 -2px 10px rgba(0,0,0,.15); transform: translateY(110%); transition: transform .2s ease; }
.kt-submitbar.is-on { transform: translateY(0); }
.kt-submitbar__btn { display: block; width: 100%; min-height: 52px; border: 0; border-radius: 10px; background: #de2304; color: #fff; font-size: 17px; font-weight: 700; cursor: pointer; }
/* 漫画LP: 見出し直下の結論（案2）と第7幕直後のフォーム（案1） */
.mg-fv-quick { margin: 10px 16px 12px; padding: 12px 14px; border-radius: 10px; background: #fff7e6; border: 1px solid #f0c27a; }
.mg-fv-quick__lead { margin: 0 0 10px; font-size: 15px; line-height: 1.6; font-weight: 700; color: #3a2a12; }
.mg-fv-quick__btn { display: block; text-align: center; min-height: 52px; padding: 13px 12px; border-radius: 10px; background: #de2304; color: #fff; font-size: 17px; font-weight: 700; text-decoration: none; box-sizing: border-box; }
.mg-fv-quick__tel { display: block; margin-top: 8px; text-align: center; font-size: 14px; color: #3a2a12; font-weight: 700; }
.mg-fv-quick .kt-callback--btn { max-width: none; }
.mg-midform__lead { margin: 0 0 8px; text-align: center; font-size: 16px; font-weight: 700; color: #3a2a12; }
/* 01-ak: 悩みリストのリンクと FAQ 末尾の小さな申込ボタン（案6） */
.lps-checklist a.kt-worry-link { color: inherit; text-decoration: underline; text-decoration-color: #f5c400; text-decoration-thickness: 2px; text-underline-offset: 3px; }
.kt-faq-cta { display: inline-block; margin-top: 8px; padding: 8px 14px; border-radius: 8px; background: #de2304; color: #fff !important; font-size: 14px; font-weight: 700; text-decoration: none; }
/* 2026-10-15 QA2: ヘッダーは文字を詰めて枠を中身の幅に（フォント読込前の代替フォントでも2行・はみ出さない） */
.kt-callback.kt-callback--header { width: max-content; max-width: none; padding: 4px 8px 4px 26px; background-position: 7px center; background-size: 14px 14px; font-size: 11px; letter-spacing: -0.03em; }
.kt-callback.kt-callback--sticky { padding: 3px 6px 3px 24px; background-position: 5px center; background-size: 14px 14px; }
.kt-callback.kt-callback--sticky .kt-callback__l1, .kt-callback.kt-callback--sticky .kt-callback__l2 { font-size: 11px; line-height: 1.25; }
