@charset "utf-8";
/*----------------------------------------------------
 選べるプラン（プラン表。金額は出さない）（2026-10-25。説明資料 2026-10-01 版の「プランについて」）
----------------------------------------------------*/
#plans { padding: calc(100 * var(--u)) 0 calc(110 * var(--u)); background: #f3f8f8; }
#plans .inner { width: calc(1300 * var(--u)); margin: 0 auto; }
#plans .lp-plans-head { text-align: center; }
#plans .lp-plans-head h2 { font-size: calc(48 * var(--u)); font-weight: 900; color: #333; line-height: 1.4; letter-spacing: .04em; }
#plans .lp-plans-head h2 span { color: var(--lp-teal, #13b5b1); }
#plans .lp-plans-lead { margin: calc(24 * var(--u)) 0 calc(48 * var(--u)); text-align: center; font-size: calc(22 * var(--u)); font-weight: 700; line-height: 1.8; color: #333; }

/* PC：比べる表 */
#plans .lp-plan-table { width: 100%; border-collapse: separate; border-spacing: calc(10 * var(--u)) 0; table-layout: fixed; }
#plans .lp-plan-table col.label { width: calc(210 * var(--u)); }
#plans .lp-plan-table thead th { padding: calc(22 * var(--u)) calc(12 * var(--u)) calc(20 * var(--u)); background: #fff; border-radius: calc(16 * var(--u)) calc(16 * var(--u)) 0 0; text-align: center; vertical-align: top; box-shadow: 0 calc(-2 * var(--u)) calc(10 * var(--u)) rgba(0,0,0,.04); }
#plans .lp-plan-table thead th.blank { background: transparent; box-shadow: none; }
#plans .lp-plan-kind { display: inline-block; padding: calc(2 * var(--u)) calc(14 * var(--u)); border-radius: 999px; background: #e3f5f4; color: #0f8f8b; font-size: calc(15 * var(--u)); font-weight: 700; }
#plans .lp-plan-name { display: block; margin: calc(10 * var(--u)) 0 calc(6 * var(--u)); font-size: calc(28 * var(--u)); font-weight: 900; color: #333; }
#plans .lp-plan-catch { display: block; font-size: calc(15 * var(--u)); font-weight: 500; color: #666; line-height: 1.6; }
#plans .lp-plan-table thead th.main { background: var(--lp-teal, #13b5b1); }
#plans .lp-plan-table thead th.main .lp-plan-kind { background: #fff; }
#plans .lp-plan-table thead th.main .lp-plan-name,
#plans .lp-plan-table thead th.main .lp-plan-catch { color: #fff; }
#plans .lp-plan-table tbody th { padding: calc(18 * var(--u)) calc(10 * var(--u)); text-align: left; font-size: calc(17 * var(--u)); font-weight: 700; color: #333; vertical-align: middle; border-bottom: 1px solid #d7e6e5; }
#plans .lp-plan-table tbody td { padding: calc(18 * var(--u)) calc(18 * var(--u)); background: #fff; text-align: center; font-size: calc(17 * var(--u)); line-height: 1.6; color: #333; vertical-align: middle; border-bottom: 1px solid #e6eeee; }
#plans .lp-plan-table tbody td.main { background: #f6fdfc; }
#plans .lp-plan-table tbody tr:last-child td { border-radius: 0 0 calc(16 * var(--u)) calc(16 * var(--u)); border-bottom: 0; }
#plans .lp-plan-table tbody tr:last-child th { border-bottom: 0; }
#plans .lp-plan-table td small { display: block; font-size: calc(14 * var(--u)); color: #777; }
#plans .lp-plan-table td strong { font-size: calc(22 * var(--u)); font-weight: 900; color: #0f8f8b; }
#plans .lp-ok { display: inline-block; width: calc(30 * var(--u)); height: calc(30 * var(--u)); border-radius: 50%; background: var(--lp-teal, #13b5b1); color: #fff; font-size: calc(18 * var(--u)); line-height: calc(30 * var(--u)); font-weight: 900; }
#plans .lp-dash { color: #bbb; }

#plans .lp-plan-notes { margin: calc(26 * var(--u)) 0 0; padding: 0; list-style: none; font-size: calc(15 * var(--u)); line-height: 1.8; color: #555; }
#plans .lp-plan-notes li::before { content: "※"; }
#plans .lp-plan-notes li.lp-plan-notes-key { font-weight: 700; color: #333; }

/* 有償オプション */
#plans .lp-options { margin: calc(60 * var(--u)) 0 0; padding: calc(40 * var(--u)) calc(44 * var(--u)); background: #fff; border-radius: calc(20 * var(--u)); }
#plans .lp-options h3 { font-size: calc(26 * var(--u)); font-weight: 900; color: #333; }
#plans .lp-options h3 small { margin-left: calc(12 * var(--u)); font-size: calc(15 * var(--u)); font-weight: 500; color: #777; }
#plans .lp-options ul { display: grid; grid-template-columns: repeat(3, 1fr); gap: calc(16 * var(--u)); margin: calc(22 * var(--u)) 0 0; padding: 0; list-style: none; }
#plans .lp-options li { padding: calc(18 * var(--u)) calc(20 * var(--u)); border-radius: calc(12 * var(--u)); background: #f3f8f8; }
#plans .lp-options li b { display: block; font-size: calc(18 * var(--u)); color: #0f8f8b; }
#plans .lp-options li span { display: block; margin-top: calc(6 * var(--u)); font-size: calc(15 * var(--u)); line-height: 1.6; color: #555; }

#plans .lp-plans-cta { margin: calc(44 * var(--u)) 0 0; text-align: center; }
#plans .lp-plans-cta p { font-size: calc(18 * var(--u)); font-weight: 700; color: #333; }
#plans .lp-plans-cta-buttons { display: flex; justify-content: center; gap: calc(20 * var(--u)); margin-top: calc(16 * var(--u)); }

/* SP：プランごとのカード */
#plans .lp-plan-cards { display: none; }
@media screen and (max-width: 768px) {
	#plans { padding: calc(50 * var(--u)) 0 calc(56 * var(--u)); }
	#plans .inner { width: auto; padding: 0 calc(16 * var(--u)); }
	#plans .lp-plans-head h2 { font-size: calc(24 * var(--u)); }
	#plans .lp-plans-lead { margin: calc(12 * var(--u)) 0 calc(22 * var(--u)); font-size: calc(14 * var(--u)); text-align: left; }
	#plans .lp-plan-table { display: none; }
	#plans .lp-plan-cards { display: block; }
	#plans .lp-plan-card { margin: 0 0 calc(14 * var(--u)); border-radius: calc(14 * var(--u)); background: #fff; overflow: hidden; }
	#plans .lp-plan-card header { padding: calc(14 * var(--u)) calc(16 * var(--u)); background: #fff; border-bottom: 1px solid #e6eeee; }
	#plans .lp-plan-card.main header { background: var(--lp-teal, #13b5b1); }
	#plans .lp-plan-card.main .lp-plan-name, #plans .lp-plan-card.main .lp-plan-catch { color: #fff; }
	#plans .lp-plan-card.main .lp-plan-kind { background: #fff; }
	#plans .lp-plan-kind { font-size: calc(11 * var(--u)); padding: calc(1 * var(--u)) calc(10 * var(--u)); }
	#plans .lp-plan-name { margin: calc(6 * var(--u)) 0 calc(2 * var(--u)); font-size: calc(19 * var(--u)); }
	#plans .lp-plan-catch { font-size: calc(12 * var(--u)); }
	#plans .lp-plan-card dl { margin: 0; padding: calc(4 * var(--u)) calc(16 * var(--u)) calc(10 * var(--u)); }
	#plans .lp-plan-card dl div { display: flex; gap: calc(10 * var(--u)); padding: calc(9 * var(--u)) 0; border-bottom: 1px dashed #e0e8e8; }
	#plans .lp-plan-card dl div:last-child { border-bottom: 0; }
	#plans .lp-plan-card dt { flex: 0 0 calc(92 * var(--u)); font-size: calc(12 * var(--u)); font-weight: 700; color: #0f8f8b; }
	#plans .lp-plan-card dd { margin: 0; font-size: calc(13 * var(--u)); line-height: 1.6; color: #333; }
	#plans .lp-plan-card dd strong { font-weight: 900; }
		#plans .lp-plan-notes { font-size: calc(12 * var(--u)); }
	#plans .lp-options { margin: calc(28 * var(--u)) 0 0; padding: calc(20 * var(--u)) calc(16 * var(--u)); }
	#plans .lp-options h3 { font-size: calc(18 * var(--u)); }
	#plans .lp-options h3 small { display: block; margin: calc(4 * var(--u)) 0 0; font-size: calc(12 * var(--u)); }
	#plans .lp-options ul { grid-template-columns: 1fr; gap: calc(8 * var(--u)); margin-top: calc(12 * var(--u)); }
	#plans .lp-options li { padding: calc(10 * var(--u)) calc(14 * var(--u)); }
	#plans .lp-options li b { font-size: calc(14 * var(--u)); }
	#plans .lp-options li span { font-size: calc(12 * var(--u)); }
	#plans .lp-plans-cta p { font-size: calc(14 * var(--u)); }
	#plans .lp-plans-cta-buttons { flex-direction: column; align-items: stretch; gap: calc(10 * var(--u)); }
	#plans .lp-plan-cards-note { margin: calc(4 * var(--u)) 0 0; font-size: calc(12 * var(--u)); color: #555; }
}
