/* ==========================================================================
   実家安心サポートLP 専用CSS（2026-10-11 リニューアル）
   ・実家安心サポートのページ（_tr_lp_key = jikka）を表示するときだけ読み込みます（functions.php）。
   ・さらに全ルールを .terasuyo-lp.jk（LP本文のいちばん外側のグループ）の中だけに限定しています。
   ・既存LP（lp.css）の骨格はそのまま使い、色・料金表示・控えめな動きだけを上書きします。
   ・色：てらすよ横浜のブランドカラー。オレンジ（ロゴの太陽 #F59E42、文字用は濃いめの #B8530C）を重要な数字・CTAの縁取りに、
     淡い水色（#D9EFF8／#F1F8FB）をカード背景・補助に、見出しは紺 #213D52、本文 #263746。白・アイボリーを広く残します。
   ========================================================================== */

.terasuyo-lp.jk {
	/* てらすよ横浜のブランドカラー（ロゴの太陽のオレンジ・サイトの青と淡い水色）を基準にした配色 */
	--jk-deep: #213D52;      /* 見出し・濃い文字（紺） */
	--jk-green: #B8530C;     /* アクセント：オレンジ（文字に使える濃さ。白背景でコントラスト比約4.9）※変数名は旧配色の名残 */
	--jk-orange: #F59E42;    /* ブランドのオレンジ（線・飾り・大きな面） */
	--jk-blue: #2679A8;      /* サイトのメインの青 */
	--jk-sky: #F1F8FB;       /* 淡い水色（カード背景） */
	--jk-sky2: #D9EFF8;      /* 水色（ラベル・補助） */
	--jk-ivory: #FBF8F2;     /* 淡いアイボリー（セクション背景） */
	--jk-text: #263746;
	--jk-shadow: rgba(38, 55, 70, .18);
	--lp-accent: #B8530C;
	--lp-accent-dark: #213D52;
	--lp-btn: #B8530C;
	--lp-soft: #FBF8F2;
	--lp-tint: #E4F2FA;
	--lp-line: #DCE6EC;
	--lp-text: #263746;
	--lp-muted: #5B6B78;
	--lp-glow: rgba(245, 158, 66, .16);
	color: var(--jk-text);
	font-size: 1.0625rem;
	font-weight: 400; /* テーマ標準の細字（300）だとスマホで細く見えるため、このLPだけ標準の太さにする */
}
.terasuyo-lp.jk h1, .terasuyo-lp.jk h2, .terasuyo-lp.jk h3 { color: var(--jk-deep); }

/* ---------- ファーストビュー：朝の光は残し、地色をアイボリーに ---------- */
.terasuyo-lp.jk .lp-hero { padding-top: clamp(20px, 5vw, 80px); padding-bottom: clamp(40px, 6vw, 88px);
	background: radial-gradient(620px 560px at 94% -14%, rgba(255, 200, 130, .38), rgba(255, 200, 130, 0) 62%), radial-gradient(520px 380px at -8% 104%, rgba(217, 239, 248, .75), rgba(217, 239, 248, 0) 70%), linear-gradient(170deg, #FFF7EE 0%, var(--jk-ivory) 55%, #FFFFFF 100%); }
.terasuyo-lp.jk .lp-hero::before { border-color: rgba(245, 158, 66, .28); }
.terasuyo-lp.jk .lp-kicker { color: var(--jk-deep); background: var(--jk-sky2); font-size: .9rem; margin-bottom: .8em; }
/* キャッチは価格より目立たせない（価格が主役） */
.terasuyo-lp.jk .lp-hero h1 { font-size: clamp(1.7rem, 3.6vw, 2.55rem); line-height: 1.4; color: var(--jk-deep); margin-bottom: .45em; }
.terasuyo-lp.jk .lp-hero h1 strong { background: linear-gradient(transparent 70%, rgba(255, 196, 120, .5) 70%); }
.terasuyo-lp.jk .lp-hero .lp-lead { color: var(--jk-text); margin-bottom: 0; }

/* 初回お試し 2,980円（ファーストビューの主役） */
.terasuyo-lp.jk .jk-offer { position: relative; background: #fff; border: 2px solid var(--jk-green); border-radius: 16px; padding: 24px 22px 16px; margin: 1.5em 0 1.1em; box-shadow: 0 18px 36px -26px var(--jk-shadow); }
.terasuyo-lp.jk .jk-offer > * { margin: 0; line-height: 1.4; }
.terasuyo-lp.jk .jk-offer__label { position: absolute; top: -15px; left: 18px; background: var(--jk-deep); color: #fff; font-weight: 800; font-size: .95rem; letter-spacing: .06em; padding: .22em 1em; border-radius: 999px; }
.terasuyo-lp.jk .jk-offer__price { display: flex; flex-wrap: wrap; align-items: baseline; column-gap: .15em; color: var(--jk-deep); font-weight: 800; font-size: 1.15rem; }
.terasuyo-lp.jk .jk-offer__camp { flex-basis: 100%; font-size: .85rem; font-weight: 700; color: var(--jk-green); letter-spacing: .04em; }
.terasuyo-lp.jk .jk-offer__price strong { font-size: clamp(3rem, 7vw, 3.75rem); font-weight: 800; line-height: 1.05; letter-spacing: .01em; font-feature-settings: "palt"; }
.terasuyo-lp.jk .jk-offer__price small { font-size: .9rem; font-weight: 700; color: var(--jk-text); margin-left: .1em; }
.terasuyo-lp.jk .jk-offer__sub { margin-top: .5em !important; padding-top: .5em; border-top: 1px dashed var(--lp-line); font-weight: 700; color: var(--jk-green); font-size: 1rem; }
.terasuyo-lp.jk .lp-micro { font-size: .88rem; }
.terasuyo-lp.jk .lp-micro a { color: var(--jk-green); font-weight: 700; }

/* ご報告カード：影と飾りを深緑系に */
.terasuyo-lp.jk .lp-notice { box-shadow: 0 30px 60px -32px var(--jk-shadow), 0 0 0 1px rgba(38, 121, 168, .16); }
.terasuyo-lp.jk .lp-notice::before { background: linear-gradient(90deg, var(--jk-orange), #8CC8E6); }
.terasuyo-lp.jk .lp-notice__from { color: var(--jk-deep); }
.terasuyo-lp.jk .lp-notice__body { background: var(--jk-ivory); }
.terasuyo-lp.jk .lp-notice__list li { border-top-color: var(--lp-line); }
.terasuyo-lp.jk .lp-notice__list li::before { border-color: var(--jk-green); }
.terasuyo-lp.jk .lp-hero__chips li { border-color: var(--lp-line); color: var(--jk-deep); }

/* ---------- ボタン：深緑のメイン、LINEは公式の緑。押しやすい高さ ---------- */
.terasuyo-lp.jk .wp-block-button__link { border-radius: 999px; font-weight: 700; transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.terasuyo-lp.jk .lp-btn-line > .wp-block-button__link, .terasuyo-lp.jk .lp-btn-main > .wp-block-button__link { min-height: 56px; box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; }
.terasuyo-lp.jk .lp-btn-line > .wp-block-button__link { box-shadow: 0 10px 22px -14px rgba(6, 199, 85, .9) !important; }
.terasuyo-lp.jk .wp-block-button:not(.is-style-outline) > .wp-block-button__link:not(.has-background):hover { background: var(--jk-deep); }
.terasuyo-lp.jk .jk-hero__btns .wp-block-button__link { min-height: 60px; font-size: 1.08rem; padding-left: 2.2em; padding-right: 2.2em; }

/* ---------- お悩み：3つを横並び（スマホは縦） ---------- */
.terasuyo-lp.jk .jk-worries { max-width: 960px; }
.terasuyo-lp.jk .lp-worries li { font-size: 1.05rem; border-radius: 14px; }

/* ---------- カード共通 ---------- */
.terasuyo-lp.jk .lp-card, .terasuyo-lp.jk .lp-box { border-radius: 16px; }
.terasuyo-lp.jk .lp-ico::before { background: radial-gradient(circle at 30% 25%, #fff 0, var(--lp-tint) 70%); }
.terasuyo-lp.jk .jk-reasons .lp-num { font-size: 1.5rem; font-weight: 800; letter-spacing: .04em; color: var(--jk-green); line-height: 1.2; }
.terasuyo-lp.jk .jk-reasons .lp-card { box-shadow: 0 14px 30px -26px var(--jk-shadow); }
.terasuyo-lp.jk .jk-media { margin-top: clamp(28px, 4vw, 48px); margin-bottom: 0; }

/* ---------- 初回お試し訪問：月額プランとの違いがひと目で分かる2枚 ---------- */
.terasuyo-lp.jk .jk-compare { gap: clamp(16px, 2.4vw, 28px); align-items: stretch; max-width: 920px; margin-left: auto; margin-right: auto; }
.terasuyo-lp.jk .jk-trial, .terasuyo-lp.jk .jk-monthly { height: 100%; box-sizing: border-box; border-radius: 20px; padding: clamp(24px, 3vw, 34px); text-align: center; display: flex; flex-direction: column; }
.terasuyo-lp.jk .jk-trial > *, .terasuyo-lp.jk .jk-monthly > * { margin: 0; }
.terasuyo-lp.jk .jk-trial { background: radial-gradient(420px 220px at 50% -20%, rgba(255, 210, 150, .22), rgba(255, 210, 150, 0) 70%), linear-gradient(160deg, #CC6516 0%, #A9490A 100%); color: #fff; box-shadow: 0 26px 48px -28px rgba(184, 83, 12, .45); }
.terasuyo-lp.jk .jk-trial__label { align-self: center; background: #fff; color: var(--jk-deep); font-weight: 800; font-size: 1rem; letter-spacing: .06em; padding: .25em 1.1em; border-radius: 999px; }
.terasuyo-lp.jk .jk-trial__camp { margin-top: .9em !important; font-size: .9rem; font-weight: 700; color: rgba(255, 255, 255, .88); }
.terasuyo-lp.jk .jk-trial__price { font-weight: 800; font-size: 1.2rem; line-height: 1.1; color: #fff; }
.terasuyo-lp.jk .jk-trial__price strong { font-size: clamp(3.2rem, 7vw, 4rem); letter-spacing: .01em; font-feature-settings: "palt"; }
.terasuyo-lp.jk .jk-trial__price small { font-size: .9rem; }
.terasuyo-lp.jk .jk-trial__unit { font-size: .9rem; color: rgba(255, 255, 255, .85); margin-top: .3em !important; }
.terasuyo-lp.jk .jk-trial__list { text-align: left; margin: 1.1em auto 0 !important; padding-top: .9em; border-top: 1px solid rgba(255, 255, 255, .25); }
.terasuyo-lp.jk .jk-trial__list li { color: #fff; }
.terasuyo-lp.jk .jk-trial__list li::before { border-color: #F5C98E; }
.terasuyo-lp.jk .jk-monthly { background: #fff; border: 1px solid var(--lp-line); justify-content: center; }
.terasuyo-lp.jk .jk-monthly__label { font-size: .9rem; font-weight: 700; color: var(--lp-muted); }
.terasuyo-lp.jk .jk-monthly h3 { font-size: 1.3rem; margin-top: .3em; }
.terasuyo-lp.jk .jk-monthly__price { margin-top: .4em !important; font-weight: 700; color: var(--jk-deep); }
.terasuyo-lp.jk .jk-monthly__price strong { font-size: 2.2rem; font-weight: 800; }
.terasuyo-lp.jk .jk-monthly__price small { font-size: .85rem; }
.terasuyo-lp.jk .jk-monthly__unit { font-size: .92rem; color: var(--lp-muted); margin-top: .3em !important; }
.terasuyo-lp.jk .jk-monthly__link { margin-top: 1em !important; }
.terasuyo-lp.jk .jk-monthly__link a { color: var(--jk-green); font-weight: 700; }

/* ---------- 月額料金プラン：シンプルなカード ---------- */
.terasuyo-lp.jk .lp-plan { border-radius: 16px; border-color: var(--lp-line); box-shadow: 0 16px 32px -28px var(--jk-shadow); padding: 24px 20px; }
.terasuyo-lp.jk .lp-plan--main { border: 3px solid var(--jk-green); box-shadow: 0 24px 44px -28px rgba(184, 83, 12, .35); }
.terasuyo-lp.jk .lp-plan__badge { background: var(--jk-green); font-size: .88rem !important; padding: .2em 1.2em; letter-spacing: .06em; }
.terasuyo-lp.jk .lp-plan h3.lp-plan__name { font-size: 1.2rem; color: var(--jk-deep); line-height: 1.45; }
.terasuyo-lp.jk .lp-plan__spec { color: var(--jk-deep); background: var(--jk-ivory); font-size: .95rem !important; }
.terasuyo-lp.jk .jk-plan__price { color: var(--jk-deep); font-weight: 700; font-size: 1rem; margin-top: .6em !important; white-space: nowrap; }
.terasuyo-lp.jk .jk-plan__price strong { font-size: clamp(2.3rem, 3.6vw, 2.7rem); font-weight: 800; line-height: 1.1; margin: 0 .04em; font-feature-settings: "palt"; }
.terasuyo-lp.jk .jk-plan__price small { font-size: .8rem; color: var(--lp-muted); }
.terasuyo-lp.jk .jk-incl { max-width: 920px; margin: clamp(24px, 4vw, 36px) auto 0; }
.terasuyo-lp.jk .jk-incl .lp-cols { grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); }
.terasuyo-lp.jk .jk-incl h3 { text-align: center; font-size: 1.1rem; margin-bottom: .6em; }
.terasuyo-lp.jk .lp-notes { max-width: 920px; margin-left: auto; margin-right: auto; }
@media (max-width: 781px) {
	/* スマホ：3プランを縦に並べ、カードを横長にして比べやすく（名前と回数・料金を左右に） */
	.terasuyo-lp.jk .jk-plans { gap: 14px !important; }
	.terasuyo-lp.jk .lp-plan { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "badge badge" "name name" "spec price" "spec per"; align-items: center; column-gap: 12px; text-align: left; padding: 16px 18px 14px; }
	.terasuyo-lp.jk .lp-plan > * { margin: 0 !important; }
	.terasuyo-lp.jk .lp-plan__badge { grid-area: badge; justify-self: start; margin-bottom: .5em !important; }
	.terasuyo-lp.jk .lp-plan__badge.is-empty { display: none; }
	.terasuyo-lp.jk .lp-plan__name { grid-area: name; font-size: 1.1rem !important; margin-bottom: .3em !important; }
	.terasuyo-lp.jk .lp-plan__spec { grid-area: spec; justify-self: start; align-self: center; }
	.terasuyo-lp.jk .jk-plan__price { grid-area: price; text-align: right; font-size: .85rem; line-height: 1.2; }
	.terasuyo-lp.jk .jk-plan__price strong { font-size: 1.9rem; }
	.terasuyo-lp.jk .jk-plan__price small { font-size: .72rem; }
	.terasuyo-lp.jk .lp-plan__per { grid-area: per; text-align: right; margin-top: .2em !important; font-size: .82rem !important; white-space: nowrap; }
	.terasuyo-lp.jk .lp-plan__per { grid-area: per; text-align: right; margin-top: .4em !important; }
}

/* ---------- 流れ・FAQ・最後のお問い合わせ ---------- */
.terasuyo-lp.jk .lp-steps > li::before { background: var(--jk-green); }
.terasuyo-lp.jk .lp-steps strong { font-weight: 700; color: var(--jk-deep); }
.terasuyo-lp.jk .wp-block-details summary { font-size: 1.04rem; }
.terasuyo-lp.jk .lp-cta { background: radial-gradient(700px 300px at 50% -20%, rgba(255, 205, 140, .28), rgba(255, 205, 140, 0) 70%), linear-gradient(160deg, var(--jk-blue) 0%, #1D5E85 100%); }
.terasuyo-lp.jk .lp-cta h2 { color: #fff; }
.terasuyo-lp.jk .lp-cta .lp-btn-main > .wp-block-button__link:not(.has-background) { color: var(--jk-deep); }

/* ---------- スマホ ---------- */
@media (max-width: 599px) {
	/* 最初の画面に「何のサービスか → 2,980円 → LINEボタン」が収まるよう、余白と文字を少し詰める */
	.terasuyo-lp.jk .lp-kicker { font-size: .82rem; margin-bottom: .6em; }
	.terasuyo-lp.jk .lp-hero h1 { font-size: 1.62rem; line-height: 1.38; }
	.terasuyo-lp.jk .lp-hero .lp-lead { font-size: .98rem; line-height: 1.75; }
	.terasuyo-lp.jk .jk-offer { margin: 1.3em 0 .9em; padding: 20px 16px 12px; }
	.terasuyo-lp.jk .jk-offer__price strong { font-size: 3.1rem; }
	.terasuyo-lp.jk .jk-hero__btns { margin-top: 0; }
	.terasuyo-lp.jk .lp-worries li { font-size: 1rem; }
}
/* 固定ボタン：LINE・電話・フォームの3つを画面幅に収める */
@media (max-width: 781px) {
	.terasuyo-lp.jk .lp-sticky .wp-block-button { min-width: 0; }
	.terasuyo-lp.jk .lp-sticky .wp-block-button__link { min-height: 52px; padding: .7em .3em; font-size: .95rem; letter-spacing: 0; }
}
@media (max-width: 359px) { .terasuyo-lp.jk .lp-sticky .wp-block-button__link { font-size: .85rem; } }
/* 固定ボタンが本文やフッターを隠さないよう、下に余白を確保 */
@media (max-width: 781px) {
	body:has(.terasuyo-lp.jk .lp-sticky) { padding-bottom: calc(76px + env(safe-area-inset-bottom)); }
}

/* ==========================================================================
   v4 第2次修正：英語ラベルなしの見出し・相談方法（電話番号を表示）・統計・気づけること・介護との違い・基本サービス
   ========================================================================== */

/* 見出し：英語ラベルの代わりに短い線。説明文は左揃えで読みやすく */
.terasuyo-lp.jk .lp-head { text-align: left; max-width: 920px; margin-left: auto; margin-right: auto; margin-bottom: clamp(24px, 4vw, 36px); }
.terasuyo-lp.jk .lp-head > * { margin-left: 0; margin-right: 0; }
.terasuyo-lp.jk .lp-head h2 { position: relative; padding-top: 18px; font-size: clamp(1.45rem, 3.4vw, 2.05rem); line-height: 1.5; }
.terasuyo-lp.jk .lp-head h2::before { content: ""; position: absolute; left: 0; top: 0; width: 40px; height: 4px; border-radius: 2px; background: linear-gradient(90deg, var(--jk-orange), #8CC8E6); }
.terasuyo-lp.jk .jk-lead, .terasuyo-lp.jk .jk-worry__sub, .terasuyo-lp.jk .lp-lead, .terasuyo-lp.jk .jk-stat__label { word-break: auto-phrase; }
.terasuyo-lp.jk .jk-lead { color: var(--lp-muted) !important; font-size: 1rem; line-height: 1.9; max-width: 760px !important; margin-top: .4em; }
.terasuyo-lp.jk .lp-sec:not(.lp-hero):not(.lp-cta) > * { max-width: 920px; }
.terasuyo-lp.jk .jk-subhead { box-sizing: border-box; max-width: 920px; margin: clamp(32px, 5vw, 48px) auto 14px; font-size: 1.2rem; padding-left: .8em; border-left: 4px solid var(--jk-green); line-height: 1.5; }

/* 費用の安心：「0」「なし」がひと目で分かるタイル（初期費用／解約金・違約金／最低契約期間） */
.terasuyo-lp.jk .jk-zero-big { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.terasuyo-lp.jk .jk-zero-big li { margin: 0; background: #fff; border: 1.5px solid #BFDDEE; border-radius: 12px; padding: 10px 6px 8px; text-align: center; line-height: 1.2; color: var(--jk-deep); font-weight: 700; font-size: .95rem; }
.terasuyo-lp.jk .jk-zero-big li span { display: block; font-size: .78rem; font-weight: 700; color: var(--lp-muted); margin-bottom: .25em; letter-spacing: 0; }
.terasuyo-lp.jk .jk-zero-big li strong { font-size: 1.9rem; font-weight: 800; line-height: 1.05; margin-right: .05em; font-feature-settings: "palt"; }
.terasuyo-lp.jk .jk-zero-big li:last-child strong { font-size: 1.45rem; }
.terasuyo-lp.jk .jk-zero-big--hero { margin: 0 0 14px; }
.terasuyo-lp.jk .jk-zero-big--card { margin: .6em 0 .4em !important; }
.terasuyo-lp.jk .jk-zero-big--card li { background: var(--jk-ivory); }
.terasuyo-lp.jk .jk-zero-big--price { max-width: 640px !important; margin: clamp(18px, 3vw, 24px) auto 0; }
.terasuyo-lp.jk .jk-zero-big--cta { max-width: 560px; margin: 0 auto 20px; }
.terasuyo-lp.jk .jk-zero-big--cta li { background: rgba(255, 255, 255, .1); border-color: rgba(255, 255, 255, .55); color: #fff; }
.terasuyo-lp.jk .jk-zero-big--cta li span { color: rgba(255, 255, 255, .85); }

/* 相談方法：LINE（メイン・緑）／電話（番号を大きく）／フォーム・メール。3つとも同じ形のボタン */
.terasuyo-lp.jk .jk-contact > * { margin-top: 0; margin-bottom: 0; }
.terasuyo-lp.jk .jk-contact .wp-block-buttons { gap: 10px; }
.terasuyo-lp.jk .jk-contact__main .wp-block-button, .terasuyo-lp.jk .jk-contact__main .wp-block-button__link { width: 100%; box-sizing: border-box; }
.terasuyo-lp.jk .jk-contact__main .wp-block-button__link { min-height: 60px; font-size: 1.1rem; }
.terasuyo-lp.jk .jk-contact__sub { margin-top: 10px !important; flex-wrap: nowrap !important; }
.terasuyo-lp.jk .jk-contact__sub .wp-block-button { flex: 1 1 0; min-width: 0; }
.terasuyo-lp.jk .jk-btn-tel > .wp-block-button__link, .terasuyo-lp.jk .jk-btn-form > .wp-block-button__link {
	width: 100%; min-height: 64px; box-sizing: border-box; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center;
	border-radius: 999px; padding: .45em 1em !important; font-weight: 800; font-size: 1rem; line-height: 1.3; box-shadow: 0 8px 18px -14px rgba(38, 55, 70, .45); }
.terasuyo-lp.jk .jk-btn-tel > .wp-block-button__link { background: #fff !important; color: var(--jk-deep) !important; border: 2px solid var(--jk-deep); }
.terasuyo-lp.jk .jk-btn-form > .wp-block-button__link { background: var(--jk-ivory) !important; color: var(--jk-deep) !important; border: 2px solid var(--jk-green); }
.terasuyo-lp.jk .jk-btn-tel > .wp-block-button__link:hover, .terasuyo-lp.jk .jk-btn-form > .wp-block-button__link:hover { background: #FFF4E8 !important; }
.terasuyo-lp.jk .jk-btn-tel > .wp-block-button__link::before { content: ""; display: none; }
.terasuyo-lp.jk .jk-tel__label { display: block; font-size: .78rem; font-weight: 700; color: var(--lp-muted); letter-spacing: 0; }
.terasuyo-lp.jk .jk-tel__num { display: block; font-size: 1.32rem; font-weight: 800; letter-spacing: .03em; font-feature-settings: "palt"; color: var(--jk-deep); }
.terasuyo-lp.jk .jk-contact__note { margin-top: 8px !important; font-size: .82rem; line-height: 1.7; color: var(--lp-muted); }
.terasuyo-lp.jk .lp-sec:not(.lp-hero) .jk-contact { margin: clamp(24px, 4vw, 36px) auto 0; max-width: 640px !important; }
.terasuyo-lp.jk .lp-sec:not(.lp-hero) .jk-contact__note { text-align: center; }
.terasuyo-lp.jk .lp-cta .jk-btn-tel > .wp-block-button__link { background: #fff !important; }
.terasuyo-lp.jk .lp-cta .jk-contact__note { color: rgba(255, 255, 255, .88); }
@media (max-width: 599px) {
	.terasuyo-lp.jk .jk-contact__sub { flex-direction: column; align-items: stretch; }
	.terasuyo-lp.jk .jk-contact__sub .wp-block-button { width: 100%; }
	.terasuyo-lp.jk .jk-btn-form > .wp-block-button__link { min-height: 52px; }
	.terasuyo-lp.jk .jk-zero-big li { padding: 6px 4px 5px; font-size: .85rem; }
	.terasuyo-lp.jk .jk-zero-big li span { font-size: .68rem; margin-bottom: .1em; }
	.terasuyo-lp.jk .jk-zero-big li strong { font-size: 1.45rem; }
	.terasuyo-lp.jk .jk-zero-big li:last-child strong { font-size: 1.15rem; }
	.terasuyo-lp.jk .jk-zero-big--hero { margin-bottom: 10px; }
	.terasuyo-lp.jk .lp-hero { padding-top: 14px; }
	.terasuyo-lp.jk .lp-hero .lp-kicker { margin-bottom: .45em; }
	.terasuyo-lp.jk .lp-hero h1 { margin-bottom: .35em; }
}
/* スマホ固定ボタン：電話・フォームも同じボタン体系（短い文言） */
.terasuyo-lp.jk .lp-sticky .jk-btn-tel > .wp-block-button__link, .terasuyo-lp.jk .lp-sticky .jk-btn-form > .wp-block-button__link { min-height: 52px; font-size: .95rem; padding: .5em .3em !important; box-shadow: none; }

/* 不安への共感：大きな見出し＋小さな問いかけ */
.terasuyo-lp.jk .jk-head--worry h2 { font-size: clamp(1.75rem, 5.2vw, 2.6rem); line-height: 1.45; }
.terasuyo-lp.jk .jk-worry__sub { font-size: clamp(1rem, 2vw, 1.12rem); color: var(--lp-muted) !important; margin-top: .3em; }
.terasuyo-lp.jk .jk-worry__cols { gap: clamp(16px, 3vw, 36px); align-items: center; }
.terasuyo-lp.jk .jk-worry__img img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 16px; }
.terasuyo-lp.jk .jk-worries { grid-template-columns: 1fr; gap: 10px; }
.terasuyo-lp.jk .jk-worries li { font-size: 1.04rem; line-height: 1.6; padding-top: 15px; padding-bottom: 15px; }
.terasuyo-lp.jk .jk-family { margin-top: clamp(24px, 4vw, 40px); background: #fff; border-radius: 16px; border-left: 4px solid var(--jk-green); padding: clamp(18px, 3vw, 28px); }
.terasuyo-lp.jk .jk-family > * { margin-top: 0; }
.terasuyo-lp.jk .jk-family h3 { font-size: clamp(1.2rem, 2.6vw, 1.45rem); margin-bottom: .5em; }
@media (max-width: 599px) { .terasuyo-lp.jk .jk-worry__img img { aspect-ratio: 16 / 9; } }

/* 数字で見る暮らしの変化：数字を大きく、説明は短く */
.terasuyo-lp.jk .jk-stats { gap: clamp(14px, 2.4vw, 24px); }
.terasuyo-lp.jk .jk-stat { height: 100%; box-sizing: border-box; background: #fff; border: 1px solid var(--lp-line); border-top: 4px solid var(--jk-green); border-radius: 16px; padding: 20px; text-align: left; }
.terasuyo-lp.jk .jk-stat > * { margin: 0; }
.terasuyo-lp.jk .jk-stat__num { color: var(--jk-deep); font-weight: 800; font-size: 1.15rem; line-height: 1.2; }
.terasuyo-lp.jk .jk-stat__num strong { font-size: clamp(2.4rem, 6vw, 3rem); letter-spacing: .01em; font-feature-settings: "palt"; margin: 0 .05em; }
.terasuyo-lp.jk .jk-stat__label { margin-top: .5em !important; font-weight: 700; font-size: .98rem; line-height: 1.6; }
.terasuyo-lp.jk .jk-stat__compare { margin-top: .5em !important; font-size: .88rem; color: var(--lp-muted); }
.terasuyo-lp.jk .jk-stat__src { margin-top: .6em !important; font-size: .76rem; color: var(--lp-muted); line-height: 1.6; }
.terasuyo-lp.jk .jk-stat__src a { color: var(--lp-muted); }

/* 訪問だからこそ気づけること：確認すること／なぜ／ご家族には */
.terasuyo-lp.jk .jk-notices { gap: clamp(14px, 2.4vw, 24px); }
.terasuyo-lp.jk .jk-notices + .jk-notices { margin-top: clamp(14px, 2.4vw, 24px); }
.terasuyo-lp.jk .jk-notice { height: 100%; box-sizing: border-box; background: var(--jk-ivory); border-radius: 16px; padding: 18px 20px; }
.terasuyo-lp.jk .jk-notice > * { margin: 0; }
.terasuyo-lp.jk .jk-notice h3 { font-size: 1.15rem; margin-bottom: .5em; }
.terasuyo-lp.jk .jk-notice__row { font-size: .95rem; line-height: 1.75; }
.terasuyo-lp.jk .jk-notice__row + .jk-notice__row { margin-top: .5em !important; padding-top: .5em; border-top: 1px dashed var(--lp-line); }
.terasuyo-lp.jk .jk-notice__row strong { display: block; font-size: .8rem; color: var(--jk-green); letter-spacing: .04em; }

/* 介護サービスとの違い */
.terasuyo-lp.jk .jk-cares { gap: clamp(14px, 2.4vw, 24px); }
.terasuyo-lp.jk .jk-care { box-sizing: border-box; background: #fff; border: 1px solid var(--lp-line); border-radius: 16px; padding: 20px; }
.terasuyo-lp.jk .jk-care > * { margin-top: 0; }
.terasuyo-lp.jk .jk-care--us { border: 2px solid var(--jk-green); }
.terasuyo-lp.jk .jk-care__name { font-size: 1.12rem; padding-bottom: .5em; border-bottom: 1px solid var(--lp-line); }
.terasuyo-lp.jk .jk-care ul { font-size: .96rem; margin-bottom: 0; }
.terasuyo-lp.jk .jk-care > *:last-child { margin-bottom: 0 !important; }
.terasuyo-lp.jk .jk-cares { margin-bottom: 0 !important; align-items: flex-start !important; }
.terasuyo-lp.jk .jk-care__note { margin-top: 16px !important; margin-bottom: 0; }

/* どのプランにも含まれること：同じ大きさのコンパクトなカード（アイコンなし・番号は業務の流れ） */
.terasuyo-lp.jk .jk-svcs { gap: 12px; }
.terasuyo-lp.jk .jk-svcs + .jk-svcs { margin-top: 12px; }
.terasuyo-lp.jk .jk-svc { height: 100%; box-sizing: border-box; background: #fff; border: 1px solid var(--lp-line); border-radius: 14px; padding: 16px 16px 14px; }
.terasuyo-lp.jk .jk-svc > * { margin: 0; }
.terasuyo-lp.jk .jk-svc__num { font-size: .8rem !important; font-weight: 800; color: var(--jk-green); letter-spacing: .06em; }
.terasuyo-lp.jk .jk-svc h3 { font-size: 1.02rem; line-height: 1.5; margin: .2em 0 .35em; }
.terasuyo-lp.jk .jk-svc p:not(.jk-svc__num) { font-size: .92rem; line-height: 1.75; color: var(--jk-text); }
@media (max-width: 781px) {
	.terasuyo-lp.jk .jk-svc { display: grid; grid-template-columns: 2.4em 1fr; column-gap: 8px; padding: 14px 16px; }
	.terasuyo-lp.jk .jk-svc__num { grid-row: span 2; padding-top: .3em; }
	.terasuyo-lp.jk .jk-svc h3 { margin-top: 0; }
}
.terasuyo-lp.jk .jk-scope { margin-top: 16px; background: var(--jk-ivory); border-radius: 14px; padding: 16px 20px; }
.terasuyo-lp.jk .jk-scope p { margin: 0; }

/* 選ばれる理由：費用の約束 */
.terasuyo-lp.jk .jk-zero { list-style: none; padding: 0; margin: .6em 0 0; display: flex; flex-wrap: wrap; gap: 6px; }
.terasuyo-lp.jk .jk-zero li { margin: 0; background: var(--lp-tint); color: var(--jk-deep); font-weight: 700; border-radius: 999px; padding: .2em .8em; font-size: .88rem; line-height: 1.6; }
.terasuyo-lp.jk .jk-zero--row { justify-content: center; margin: clamp(18px, 3vw, 24px) auto 0; }
.terasuyo-lp.jk .jk-zero--cta { justify-content: center; margin: 0 auto 18px; }
.terasuyo-lp.jk .jk-zero--cta li { background: rgba(255, 255, 255, .14); color: #fff; }
.terasuyo-lp.jk .jk-reasons .lp-card ul.lp-tags { margin-top: .6em; }

/* 料金：左揃えのカード（スマホは横長で比較しやすく） */
@media (min-width: 782px) {
	.terasuyo-lp.jk .lp-plan { text-align: left; align-items: flex-start; }
	.terasuyo-lp.jk .lp-plan__badge { align-self: flex-start; }
	.terasuyo-lp.jk .lp-plan__badge.is-empty { display: block; visibility: hidden; }
	.terasuyo-lp.jk .lp-plan__spec { align-self: flex-start; }
	.terasuyo-lp.jk .jk-plan__price strong { font-size: clamp(2rem, 2.9vw, 2.45rem); }
	.terasuyo-lp.jk .jk-plan__price small { display: block; margin-top: .15em; }
	.terasuyo-lp.jk .lp-plan h3.lp-plan__name { margin-top: .5em; }
	.terasuyo-lp.jk .jk-plans { align-items: stretch; }
	.terasuyo-lp.jk .lp-plan--main { transform: none; }
}
.terasuyo-lp.jk .jk-price__incl { margin: clamp(16px, 3vw, 24px) auto 0; }
.terasuyo-lp.jk .jk-price__incl a, .terasuyo-lp.jk .lp-note a { color: var(--jk-green); font-weight: 700; }

/* 対応エリア */
.terasuyo-lp.jk .jk-tags li { background: #fff; border-radius: 999px; padding: .3em 1em; }
.terasuyo-lp.jk .jk-tags--free li { background: var(--jk-green); border-color: var(--jk-green); color: #fff; font-weight: 700; }
.terasuyo-lp.jk .jk-area__wards { margin-bottom: 0; }
.terasuyo-lp.jk .jk-area__wards h3 { font-size: 1.05rem; margin-bottom: .6em; }
.terasuyo-lp.jk .jk-area__wards .lp-tags { margin: 0; gap: 6px; }
.terasuyo-lp.jk .jk-area { margin-top: clamp(14px, 2.4vw, 20px) !important; }
.terasuyo-lp.jk .jk-area .lp-box > *:last-child { margin-bottom: 0; }
.terasuyo-lp.jk .jk-area .lp-box h3 { font-size: 1.05rem; margin-bottom: .4em; }
.terasuyo-lp.jk .jk-area + .jk-area { margin-top: clamp(14px, 2.4vw, 24px); }
.terasuyo-lp.jk .jk-area .lp-box { height: 100%; box-sizing: border-box; }
.terasuyo-lp.jk .lp-faq-group { max-width: 920px; }
.terasuyo-lp.jk .lp-faq-group + .lp-faq-group { margin-top: clamp(24px, 4vw, 36px); }
.terasuyo-lp.jk .lp-faq { max-width: none; }
.terasuyo-lp.jk .lp-faq__cat::before { background: var(--jk-green); }
.terasuyo-lp.jk .lp-notes, .terasuyo-lp.jk .lp-note { text-align: left; }

/* 印刷・PDF出力：動きの途中で文字が薄くなったり、空白になったりしないように */
@media print {
	.terasuyo-lp.jk .jk-reveal, .terasuyo-lp.jk .lp-hero__text > *, .terasuyo-lp.jk .lp-hero__side { opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important; }
	.terasuyo-lp.jk .lp-sticky, .terasuyo-lp.jk .lp-draft-note { display: none !important; }
	.terasuyo-lp.jk .wp-block-details > *:not(summary) { display: block !important; }
}

/* ==========================================================================
   控えめな動き（4種類）。prefers-reduced-motion: reduce では一切動かしません。
   JavaScriptが無効でも、文章・料金・ボタンはすべて最初から表示されます。
   ========================================================================== */

/* A. ファーストビューの登場：短時間のフェード＋わずかな上方向移動（最大0.75秒で完了。価格・ボタンを待たせない） */
@keyframes jk-rise { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: no-preference) {
	body:not(.editor-styles-wrapper) .terasuyo-lp.jk .lp-hero__text > *, body:not(.editor-styles-wrapper) .terasuyo-lp.jk .lp-hero__side { animation: jk-rise .5s cubic-bezier(.2, .7, .2, 1) both; }
	body:not(.editor-styles-wrapper) .terasuyo-lp.jk .lp-hero__text > :nth-child(2) { animation-delay: .04s; }
	body:not(.editor-styles-wrapper) .terasuyo-lp.jk .lp-hero__text > :nth-child(3) { animation-delay: .08s; }
	body:not(.editor-styles-wrapper) .terasuyo-lp.jk .lp-hero__text > :nth-child(n+4) { animation-delay: .12s; }
	body:not(.editor-styles-wrapper) .terasuyo-lp.jk .lp-hero__side { animation-delay: .25s; }
}

/* B. スクロール時のフェードイン（lp-jikka.js が対象に jk-reveal を付け、画面に入ったら1回だけ is-in を付与） */
.terasuyo-lp.jk.jk-reveal-ready .jk-reveal { opacity: 0; transform: translateY(12px); transition: opacity .45s ease, transform .45s cubic-bezier(.2, .7, .2, 1); }
.terasuyo-lp.jk.jk-reveal-ready .jk-reveal.is-in { opacity: 1; transform: none; }

/* C. カードのホバー（マウス操作の端末だけ。スマホはホバーに依存しない） */
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
	.terasuyo-lp.jk .lp-plan, .terasuyo-lp.jk .jk-trial, .terasuyo-lp.jk .jk-monthly, .terasuyo-lp.jk .jk-reasons .lp-card { transition: transform .25s ease, box-shadow .25s ease, opacity .6s ease; }
	.terasuyo-lp.jk .lp-plan:hover, .terasuyo-lp.jk .jk-trial:hover, .terasuyo-lp.jk .jk-monthly:hover, .terasuyo-lp.jk .jk-reasons .lp-card:hover { transform: translateY(-4px); box-shadow: 0 28px 48px -26px rgba(38, 55, 70, .35); }
}
@media (hover: hover) and (pointer: fine) and (min-width: 782px) and (prefers-reduced-motion: no-preference) {
	.terasuyo-lp.jk .lp-plan--main:hover { transform: translateY(-14px); }
}

/* D. ボタンの反応：ホバーでわずかに浮き、押したときに少し沈む（点滅・揺れ・大きな拡大はしない） */
@media (prefers-reduced-motion: no-preference) {
	.terasuyo-lp.jk .wp-block-button__link:hover { transform: translateY(-1px); }
	.terasuyo-lp.jk .wp-block-button__link:active { transform: translateY(1px) scale(.985); }
}
.terasuyo-lp.jk .wp-block-button__link:focus-visible { outline: 3px solid #F5B66A; outline-offset: 3px; }

/* スマホ固定ボタン：ファーストビューのボタンが見えている間と、最後のお問い合わせが見えている間は隠す（重複を避ける）。
   JavaScriptが無効のときは、これまでどおり常に表示されます。 */
@media (max-width: 781px) {
	body:not(.editor-styles-wrapper) .terasuyo-lp.jk.jk-sticky-ready .lp-sticky { transform: translateY(110%); visibility: hidden; transition: transform .3s ease, visibility 0s linear .3s; }
	body:not(.editor-styles-wrapper) .terasuyo-lp.jk.jk-sticky-ready.jk-sticky-on .lp-sticky { transform: none; visibility: visible; transition: transform .3s ease; }
}
@media (prefers-reduced-motion: reduce) {
	.terasuyo-lp.jk *, .terasuyo-lp.jk .lp-sticky { transition: none !important; animation: none !important; }
}

/* ==========================================================================
   v6 公開後の改善：ブランドカラー（オレンジ×淡い水色）・WORRYの締め・費用タイルの整列
   ========================================================================== */

/* 重要な数字はオレンジ（文字用の濃いオレンジ。大きな文字なのでコントラストも十分） */
.terasuyo-lp.jk .jk-offer { border-color: var(--jk-orange); }
.terasuyo-lp.jk .jk-offer__label { background: var(--jk-green); }
.terasuyo-lp.jk .jk-offer__price { color: var(--jk-green); }
.terasuyo-lp.jk .jk-offer__price small { color: var(--jk-text); }
.terasuyo-lp.jk .jk-offer__sub { color: var(--jk-deep); }
.terasuyo-lp.jk .jk-stat { border-top-color: var(--jk-orange); }
.terasuyo-lp.jk .jk-stat__num { color: var(--jk-green); }
.terasuyo-lp.jk .jk-plan__price strong, .terasuyo-lp.jk .jk-monthly__price strong { color: var(--jk-green); }
.terasuyo-lp.jk .lp-plan--main { border-color: var(--jk-orange); }
.terasuyo-lp.jk .jk-trial__list li::before { border-color: #fff; }
.terasuyo-lp.jk .jk-monthly__link a, .terasuyo-lp.jk .lp-micro a, .terasuyo-lp.jk .jk-price__incl a, .terasuyo-lp.jk .lp-note a { color: #1D5E85; }

/* 水色はカード背景・補助に */
.terasuyo-lp.jk .jk-notice { background: var(--jk-sky); }
.terasuyo-lp.jk .jk-svc { border-color: #D3E7F2; }
.terasuyo-lp.jk .jk-scope { background: var(--jk-sky); }
.terasuyo-lp.jk .lp-plan__spec { background: var(--jk-sky); border-color: #D3E7F2; }
.terasuyo-lp.jk .jk-care--us { border-color: var(--jk-orange); }
.terasuyo-lp.jk .jk-family { border-left-color: var(--jk-orange); }
.terasuyo-lp.jk .jk-subhead { border-left-color: var(--jk-orange); }
.terasuyo-lp.jk .lp-faq__cat::before { background: var(--jk-orange); }

/* 相談ボタン：電話はオレンジの縁取り、フォームは青の縁取り＋水色の面（LINEは公式の緑のまま） */
.terasuyo-lp.jk .jk-btn-tel > .wp-block-button__link { border-color: var(--jk-green); }
.terasuyo-lp.jk .jk-btn-form > .wp-block-button__link { background: var(--jk-sky) !important; border-color: var(--jk-blue); }
.terasuyo-lp.jk .jk-btn-tel > .wp-block-button__link:hover { background: #FFF4E8 !important; }
.terasuyo-lp.jk .jk-btn-form > .wp-block-button__link:hover { background: #E4F2FA !important; }

/* 費用タイル：ラベルの行の高さをそろえ、数字のベースラインを一直線に */
.terasuyo-lp.jk .jk-zero-big { align-items: stretch; }
.terasuyo-lp.jk .jk-zero-big li { display: flex; flex-direction: column; justify-content: space-between; border-color: #BFDDEE; }
.terasuyo-lp.jk .jk-zero-big li .jk-zero__l { display: flex; align-items: center; justify-content: center; min-height: 2.5em; margin: 0; line-height: 1.25; font-size: .78rem; color: var(--lp-muted); }
.terasuyo-lp.jk .jk-zero-big li .jk-zero__v { display: flex; align-items: baseline; justify-content: center; height: 2.1rem; line-height: 1; color: var(--jk-deep); font-weight: 700; }
.terasuyo-lp.jk .jk-zero-big li .jk-zero__v strong { font-size: 1.9rem; line-height: 1; color: var(--jk-green); }
.terasuyo-lp.jk .jk-zero-big li:last-child .jk-zero__v strong { font-size: 1.9rem; letter-spacing: 0; }
.terasuyo-lp.jk .jk-zero-big--card li { background: var(--jk-sky); }
.terasuyo-lp.jk .jk-zero-big--cta li .jk-zero__l { color: rgba(255, 255, 255, .88); }
.terasuyo-lp.jk .jk-zero-big--cta li .jk-zero__v, .terasuyo-lp.jk .jk-zero-big--cta li .jk-zero__v strong { color: #fff; }
@media (max-width: 599px) {
	.terasuyo-lp.jk .jk-zero-big li .jk-zero__l { font-size: .68rem; min-height: 2.4em; }
	.terasuyo-lp.jk .jk-zero-big li .jk-zero__v { height: 1.75rem; }
	.terasuyo-lp.jk .jk-zero-big li .jk-zero__v strong { font-size: 1.5rem; }
	.terasuyo-lp.jk .jk-zero-big li:last-child .jk-zero__v strong { font-size: 1.5rem; }
}

/* WORRY：途中の共感（家族だからこそ）と、セクションの締め */
.terasuyo-lp.jk .jk-family { margin-top: 16px; padding: 16px 20px; }
.terasuyo-lp.jk .jk-family__title { margin: 0 0 .3em !important; font-size: 1.05rem; color: var(--jk-deep); }
.terasuyo-lp.jk .jk-family p:not(.jk-family__title) { margin: 0; font-size: .95rem; line-height: 1.8; }
.terasuyo-lp.jk .jk-worry__close { margin-top: clamp(28px, 5vw, 44px); padding-top: clamp(22px, 4vw, 32px); border-top: 1px solid var(--lp-line); }
.terasuyo-lp.jk .jk-worry__close > * { margin-top: 0; }
.terasuyo-lp.jk .jk-worry__close h3 { font-size: clamp(1.35rem, 3.6vw, 1.8rem); line-height: 1.5; color: var(--jk-deep); margin-bottom: .5em; }
.terasuyo-lp.jk .jk-worry__close p { font-size: 1rem; line-height: 1.9; margin-bottom: 0; word-break: auto-phrase; }

/* 対応エリア */
.terasuyo-lp.jk .jk-area__lead { font-size: .92rem; color: var(--lp-muted); margin: 0 0 .7em !important; }

/* 費用タイル：数字は折り返さない。幅の狭い「選ばれる理由」のカード内は少し小さく */
.terasuyo-lp.jk .jk-zero-big li .jk-zero__v { white-space: nowrap; }
.terasuyo-lp.jk .jk-zero-big--card li .jk-zero__v strong, .terasuyo-lp.jk .jk-zero-big--card li:last-child .jk-zero__v strong { font-size: 1.5rem; }
.terasuyo-lp.jk .jk-zero-big--card li .jk-zero__v { height: 1.75rem; }
@media (max-width: 599px) {
	/* ファーストビューのタイルは1行ラベルの高さに詰め、LINEボタンまで最初の画面に収める */
	.terasuyo-lp.jk .jk-zero-big--hero li { padding: 5px 4px 4px; }
	.terasuyo-lp.jk .jk-zero-big--hero li .jk-zero__l { min-height: 1.5em; }
	.terasuyo-lp.jk .jk-zero-big--hero li .jk-zero__v { height: 1.6rem; }
}

/* ---------- ページ内リンク（ファーストビューの直後。2026-10-14 追加） ----------
   各セクションの HTMLアンカー（lp-service など）へ移動する通常のリンク。JavaScriptは使いません。
   スマホでは2列に折り返し、横スクロールしない。移動先の見出しが画面上端（管理バー）に隠れないよう余白を確保。 */
.terasuyo-lp.jk .jk-anchors { margin-block: 0; padding: 14px 16px 16px; background: #fff; border-top: 1px solid var(--lp-line); border-bottom: 1px solid var(--lp-line); }
.terasuyo-lp.jk .jk-anchors > * { max-width: 1080px; }
.terasuyo-lp.jk .jk-anchors__label { margin: 0 auto 8px !important; text-align: center; font-size: .8rem; font-weight: 700; letter-spacing: .08em; color: var(--lp-muted); line-height: 1.5; }
.terasuyo-lp.jk .jk-anchors__list { list-style: none; margin: 0 auto !important; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.terasuyo-lp.jk .jk-anchors__list li { margin: 0; line-height: 1.4; }
.terasuyo-lp.jk .jk-anchors__list a { display: block; padding: .45em 1em; border: 1px solid #BFDDEE; border-radius: 999px; background: var(--jk-sky); color: var(--jk-deep); font-size: .9rem; font-weight: 700; text-decoration: none; text-align: center; transition: border-color .2s ease, background-color .2s ease; }
.terasuyo-lp.jk .jk-anchors__list a:hover { border-color: var(--jk-orange); background: #FFF7EE; }
.terasuyo-lp.jk .jk-anchors__list a:focus-visible { outline: 3px solid var(--jk-orange); outline-offset: 2px; }
.terasuyo-lp.jk [id^="lp-"] { scroll-margin-top: calc(var(--wp-admin--admin-bar--height, 0px) + 12px); }
@media (max-width: 599px) {
	.terasuyo-lp.jk .jk-anchors { padding: 12px 12px 14px; }
	.terasuyo-lp.jk .jk-anchors__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
	.terasuyo-lp.jk .jk-anchors__list a { font-size: .82rem; padding: .5em .4em; }
	.terasuyo-lp.jk .jk-anchors__list li:last-child:nth-child(odd) { grid-column: 1 / -1; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* 2026-10-15 最終CTA（青い背景・#lp-contact）の下の注記「運営：てらすよ横浜…」のリンク文字を白に。
   原因：上の「.terasuyo-lp.jk .lp-note a { color: #1D5E85; }」が、lp.css の「.lp-cta a { color: #fff; }」と同じ強さで後から当たり、濃い青になっていた。
   最終CTAの注記のリンクだけに限定（ほかの注記・ボタン・本文は変更しない）。訪問済み・ホバー・フォーカス時も白。 */
.terasuyo-lp.jk .lp-cta .lp-note a,
.terasuyo-lp.jk .lp-cta .lp-note a:visited,
.terasuyo-lp.jk .lp-cta .lp-note a:hover,
.terasuyo-lp.jk .lp-cta .lp-note a:focus,
.terasuyo-lp.jk .lp-cta .lp-note a:active { color: #fff; }
.terasuyo-lp.jk .lp-cta .lp-note a:hover { text-decoration-thickness: 2px; }
.terasuyo-lp.jk .lp-cta .lp-note a:focus-visible { outline: 2px solid #fff; outline-offset: 2px; border-radius: 2px; }

/* ------------------------------------------------------------------
 * 2026-10-28 追加：訪問のイメージ（イラスト）・1回の訪問からご報告まで（図解）・写真付き報告の見本
 * ------------------------------------------------------------------ */
.terasuyo-lp.jk .jk-fig { box-sizing: border-box; max-width: 880px; margin: 0 auto clamp(24px, 4vw, 36px); }
.terasuyo-lp.jk .jk-fig img { display: block; width: 100%; height: auto; border-radius: 16px; }
.terasuyo-lp.jk .jk-fig figcaption { margin-top: .6em; font-size: .85rem; line-height: 1.6; color: var(--lp-muted); text-align: center; }
.terasuyo-lp.jk .jk-fig--report { max-width: 380px; margin-bottom: 0; }
.terasuyo-lp.jk .jk-visitflow { box-sizing: border-box; max-width: 920px; margin: 0 auto clamp(28px, 4vw, 40px); }
.terasuyo-lp.jk .jk-visitflow__cols { gap: clamp(24px, 4vw, 48px); align-items: center; margin-bottom: 0; }
.terasuyo-lp.jk .jk-flowsteps { list-style: none; counter-reset: jkstep; margin: 0; padding: 0; }
.terasuyo-lp.jk .jk-flowsteps li { counter-increment: jkstep; position: relative; margin: 0; padding: 0 0 20px 60px; line-height: 1.7; }
.terasuyo-lp.jk .jk-flowsteps li:last-child { padding-bottom: 0; }
.terasuyo-lp.jk .jk-flowsteps li::before { content: counter(jkstep); position: absolute; left: 0; top: 0; width: 40px; height: 40px; border-radius: 50%; background: var(--jk-green); color: #fff; font-weight: 700; line-height: 40px; text-align: center; }
.terasuyo-lp.jk .jk-flowsteps li::after { content: ""; position: absolute; left: 19px; top: 46px; bottom: 6px; width: 2px; background: var(--jk-sky2); }
.terasuyo-lp.jk .jk-flowsteps li:last-child::after { display: none; }
.terasuyo-lp.jk .jk-flowsteps strong { display: block; color: var(--jk-deep); font-size: 1.05rem; }
@media (max-width: 781px) {
	.terasuyo-lp.jk .jk-fig--report { max-width: 300px; margin-top: 8px; }
}

/* ------------------------------------------------------------------
 * 2026-11-05 追加：写真（イメージ）・説明用の報告サンプル・誰が訪問するか
 * ------------------------------------------------------------------ */
.terasuyo-lp.jk .jk-photo { max-width: none; margin: 0; }
.terasuyo-lp.jk .jk-photo img { aspect-ratio: 8 / 5; object-fit: cover; border-radius: 14px; }
.terasuyo-lp.jk .jk-photo figcaption { margin-top: .5em; font-size: .9rem; color: var(--jk-text); }
.terasuyo-lp.jk .jk-photo figcaption strong { display: block; color: var(--jk-deep); font-size: 1.02rem; }
.terasuyo-lp.jk .lp-hero .jk-photo { margin: 1em 0 1.4em; }
.terasuyo-lp.jk .lp-hero .jk-photo figcaption { margin-top: .3em; font-size: .78rem; color: var(--lp-muted); text-align: right; }
.terasuyo-lp.jk .jk-only-sp { display: none; }
.terasuyo-lp.jk .jk-photos { box-sizing: border-box; max-width: 920px; margin: 0 auto 10px; gap: clamp(14px, 2.4vw, 24px); }
.terasuyo-lp.jk .jk-photo-note { max-width: 920px; margin: 0 auto clamp(24px, 4vw, 36px); font-size: .82rem; color: var(--lp-muted); }
.terasuyo-lp.jk .jk-h2sub { display: block; font-size: .62em; font-weight: 700; color: var(--lp-muted); margin-top: .2em; }
.terasuyo-lp.jk .jk-who { box-sizing: border-box; max-width: 920px; margin: 0 auto 16px; }
.terasuyo-lp.jk .jk-who p { margin: 0; }
.terasuyo-lp.jk .jk-who a { color: #1D5E85; font-weight: 700; white-space: nowrap; }
@media (max-width: 781px) {
	.terasuyo-lp.jk .jk-only-sp { display: block; }
	.terasuyo-lp.jk .jk-only-pc { display: none; }
	.terasuyo-lp.jk .lp-hero .jk-photo img { aspect-ratio: 16 / 9; }
	.terasuyo-lp.jk .jk-photos { display: grid !important; grid-template-columns: 1fr; gap: 16px; }
}

/* 報告サンプル：メッセージアプリのトーク画面を連想できる説明用の見本（実際のやり取りではない） */
.terasuyo-lp.jk .jk-chat { max-width: 360px; margin: 0 auto; scroll-margin-top: 12px; }
.terasuyo-lp.jk .jk-chat__flag { margin: 0 0 8px; padding: .5em .8em; border-radius: 10px; background: #FFF3E2; color: #7A3B0A; font-weight: 800; font-size: .95rem; text-align: center; line-height: 1.4; }
.terasuyo-lp.jk .jk-chat__flag small { display: block; font-size: .8rem; font-weight: 700; }
.terasuyo-lp.jk .jk-chat__screen { padding: 0 10px 14px; border-radius: 16px; background: #DCE6EF; box-shadow: 0 18px 36px -26px var(--jk-shadow); overflow: hidden; }
.terasuyo-lp.jk .jk-chat__title { margin: 0 -10px 10px; padding: .6em 1em; background: var(--jk-deep); color: #fff; font-weight: 700; font-size: .95rem; }
.terasuyo-lp.jk .jk-chat__date { width: fit-content; margin: 0 auto 10px; padding: .1em .9em; border-radius: 999px; background: rgba(33, 61, 82, .45); color: #fff; font-size: .78rem; }
.terasuyo-lp.jk .jk-chat__msg { width: fit-content; max-width: 90%; margin: 0 0 8px; padding: .6em .8em; border-radius: 4px 14px 14px 14px; background: #fff; font-size: .92rem; line-height: 1.6; }
.terasuyo-lp.jk .jk-chat__msg p { margin: 0; }
.terasuyo-lp.jk .jk-chat__msg p + p { margin-top: .6em; }
.terasuyo-lp.jk .jk-chat__msg strong { color: var(--jk-deep); }
.terasuyo-lp.jk .jk-chat__msg--me { margin-left: auto; border-radius: 14px 4px 14px 14px; background: #BDE7B4; }
.terasuyo-lp.jk .jk-chat__msg--photos { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; padding: .4em; width: 90%; }
.terasuyo-lp.jk .jk-chat__msg--photos figure { margin: 0; }
.terasuyo-lp.jk .jk-chat__msg--photos img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 8px; }
.terasuyo-lp.jk .jk-chat__msg--photos figcaption { margin-top: .2em; font-size: .75rem; color: var(--lp-muted); text-align: center; }
.terasuyo-lp.jk .jk-chat__note { margin: .7em 0 0; font-size: .82rem; line-height: 1.6; color: var(--lp-muted); }

/* ------------------------------------------------------------------
 * 2026-11-05 追加：高齢者ご本人向けLP（.jk-self）。配置は実家LPと同じ部品を使い、文字だけ少し大きくする
 * ------------------------------------------------------------------ */
.terasuyo-lp.jk.jk-self .lp-plan__spec { display: none; }
.terasuyo-lp.jk.jk-self .jk-areaband { margin: .8em 0; padding: 10px 16px; }
.terasuyo-lp.jk.jk-self .jk-areaband__title { font-size: 1rem; line-height: 1.5; }
.terasuyo-lp.jk.jk-self .jk-areaband__title a { display: inline-block; font-size: .9rem; font-weight: 700; }
.terasuyo-lp.jk.jk-self .jk-notices--3 { box-sizing: border-box; max-width: 1040px; margin-left: auto; margin-right: auto; align-items: stretch; }
.terasuyo-lp.jk.jk-self .jk-notice--photo { padding: 0 0 18px; overflow: hidden; }
.terasuyo-lp.jk.jk-self .jk-notice--photo .jk-photo { margin: 0 0 14px; }
.terasuyo-lp.jk.jk-self .jk-notice--photo .jk-photo img { border-radius: 0; }
@media (min-width: 600px) and (max-width: 781px) {
	.terasuyo-lp.jk.jk-self .jk-notice--photo .jk-photo img { aspect-ratio: 16 / 7; width: 100%; height: auto; object-fit: cover; }
}
.terasuyo-lp.jk.jk-self .jk-notice--photo > h3,
.terasuyo-lp.jk.jk-self .jk-notice--photo > p { margin-left: 18px; margin-right: 18px; }
.terasuyo-lp.jk.jk-self .jk-chat--memo { max-width: none; }

/* ------------------------------------------------------------------
 * 2026-11-05 追加：ご本人向けLP 改訂（対応エリアの帯・訪問メモ・ボタンの順）
 * ------------------------------------------------------------------ */
.terasuyo-lp.jk .jk-areaband { margin: 1em 0; padding: 14px 16px; border: 2px solid #BFDDEE; border-radius: 14px; background: var(--jk-sky); }
.terasuyo-lp.jk .jk-areaband > * { margin: 0; }
.terasuyo-lp.jk .jk-areaband__title { font-size: 1.1rem; color: var(--jk-deep); }
.terasuyo-lp.jk .jk-areaband__list { display: flex; flex-wrap: wrap; gap: 6px; margin: .5em 0; padding: 0; list-style: none; }
.terasuyo-lp.jk .jk-areaband__list li { margin: 0; padding: .15em .8em; border-radius: 999px; background: #fff; border: 1px solid var(--jk-green); color: var(--jk-deep); font-weight: 800; }
.terasuyo-lp.jk .jk-areaband__note { font-size: 1rem; line-height: 1.6; }
.terasuyo-lp.jk .jk-areaband__note strong { color: var(--jk-green); }
.terasuyo-lp.jk .jk-memo { padding: 16px 18px; border: 1px solid var(--lp-line); border-radius: 14px; background: #fff; box-shadow: 0 18px 36px -26px var(--jk-shadow); }
.terasuyo-lp.jk .jk-memo__title { display: flex; justify-content: space-between; gap: 8px; margin: 0 0 .6em; font-weight: 800; color: var(--jk-deep); }
.terasuyo-lp.jk .jk-memo__title span { font-weight: 400; font-size: .9rem; color: var(--lp-muted); }
.terasuyo-lp.jk .jk-memo dl { margin: 0; }
.terasuyo-lp.jk .jk-memo dt { margin-top: .6em; padding-top: .6em; border-top: 1px dashed var(--lp-line); font-weight: 700; color: var(--jk-green); font-size: .95rem; }
.terasuyo-lp.jk .jk-memo dd { margin: 0; line-height: 1.7; }

/* 2026-11-05 追加：差し込み写真を切らない表示（確認用ページ・本人向けLP）、定期訪問の範囲、継続料金 */
.terasuyo-lp.jk .jk-photo.jk-photo--full img,
.terasuyo-lp.jk .lp-hero .jk-photo.jk-photo--full img { aspect-ratio: 8 / 5; }
.terasuyo-lp.jk .lp-hero .jk-photo.jk-photo--full figcaption { text-align: left; }
.terasuyo-lp.jk .jk-scopeband { margin: 1em 0; padding: 12px 14px; border-left: 4px solid var(--jk-orange); border-radius: 6px; background: #fff; }
.terasuyo-lp.jk .jk-scopeband p { margin: 0; font-size: 1rem; line-height: 1.65; }
.terasuyo-lp.jk .jk-scopeband p + p { margin-top: .5em; }
.terasuyo-lp.jk .jk-scopeband strong { display: block; color: var(--jk-deep); }
.terasuyo-lp.jk .jk-offer .jk-offer__next { margin-top: .4em !important; color: var(--jk-deep); font-size: .98rem; font-weight: 700; }
.terasuyo-lp.jk .jk-offer .jk-offer__next strong { color: var(--jk-green); }

/* 本人向けLP：幅の狭いスマホでもLINEボタンを1行に収める（家族向けLPには効かない） */
@media (max-width: 400px) {
	.terasuyo-lp.jk.jk-self .lp-btn-line .wp-block-button__link { padding-left: 10px; padding-right: 10px; font-size: 1rem; }
	.terasuyo-lp.jk.jk-self .lp-sticky .lp-btn-line .wp-block-button__link { padding-left: 2px; padding-right: 2px; font-size: .95rem; }
}

/* 本人向けLP：最後の相談ブロックの間隔と注記の揃え（家族向けLPには効かない） */
.terasuyo-lp.jk.jk-self #lp-contact .jk-zero-big { margin-top: 20px; }
.terasuyo-lp.jk.jk-self #lp-contact .lp-note { text-align: center; }
.terasuyo-lp.jk.jk-self #lp-contact .lp-note a { display: inline-block; }
