/* LP一覧（ホーム） */
.lwa-lpl { --lpl-main: #1d5f7a; --lpl-line: #e3e8ec; --lpl-sub: #6b7680; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; color: #23303b; }
.lwa-lpl__nav { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 8px; }
.lwa-lpl__nav a { display: inline-flex; align-items: center; gap: 6px; padding: 6px 14px; border: 1px solid var(--lpl-line); border-radius: 999px; font-size: 14px; font-weight: 700; color: #23303b; text-decoration: none; background: #fff; transition: .15s; }
.lwa-lpl__nav a:hover { border-color: var(--lpl-main); color: var(--lpl-main); }
.lwa-lpl__nav small { font-size: 11px; background: #eef3f6; color: var(--lpl-main); border-radius: 999px; padding: 0 7px; line-height: 1.7; }
.lwa-lpl__sec { margin: 40px 0 0; scroll-margin-top: 20px; }
.lwa-lpl__h { font-size: 22px; font-weight: 900; margin: 0 0 16px; padding: 0 0 10px; border-bottom: 2px solid var(--lpl-line); position: relative; line-height: 1.4; }
.lwa-lpl__h::after { content: ""; position: absolute; left: 0; bottom: -2px; width: 72px; height: 2px; background: var(--lpl-main); }
.lwa-lpl__lead { margin: -6px 0 16px; font-size: 14px; color: var(--lpl-sub); }
.lwa-lpl__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 24px 20px; }
.lwa-lpl__card { margin: 0; }
.lwa-lpl__card > a { display: flex; flex-direction: column; height: 100%; text-decoration: none; color: inherit; background: #fff; border: 1px solid var(--lpl-line); border-radius: 10px; overflow: hidden; transition: box-shadow .2s, transform .2s; }
.lwa-lpl__card > a:hover { box-shadow: 0 8px 24px rgba(20, 40, 60, .12); transform: translateY(-2px); }
.lwa-lpl__thumb { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; background: #eef3f6; }
.lwa-lpl__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s; }
.lwa-lpl__card > a:hover .lwa-lpl__thumb img { transform: scale(1.04); }
.lwa-lpl__ph { box-sizing: border-box; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; padding: 16px 20px; background: linear-gradient(135deg, #1d5f7a, #2c86a8); color: #fff; text-align: center; }
.lwa-lpl__ph b { width: 100%; font-size: 15px; line-height: 1.6; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.lwa-lpl__new { position: absolute; left: 10px; top: 10px; background: #e2483d; color: #fff; font-style: normal; font-size: 11px; font-weight: 900; padding: 1px 8px; border-radius: 3px; letter-spacing: .05em; }
.lwa-lpl__body { display: flex; flex-direction: column; gap: 6px; padding: 14px 16px 16px; }
.lwa-lpl__meta { display: flex; align-items: center; gap: 10px; font-size: 12px; color: var(--lpl-sub); }
.lwa-lpl__cat { background: #eef3f6; color: var(--lpl-main); font-weight: 700; padding: 0 8px; border-radius: 3px; }
.lwa-lpl__title { font-size: 16px; font-weight: 700; line-height: 1.55; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.lwa-lpl__card > a:hover .lwa-lpl__title { color: var(--lpl-main); }
.lwa-lpl__desc { font-size: 13px; color: var(--lpl-sub); line-height: 1.7; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.lwa-lpl__empty { color: var(--lpl-sub); }
@media (max-width: 600px) {
	.lwa-lpl__grid { grid-template-columns: 1fr; gap: 12px; }
	.lwa-lpl__card > a { flex-direction: row; border-radius: 8px; }
	.lwa-lpl__thumb { flex: 0 0 38%; aspect-ratio: auto; min-height: 96px; }
	.lwa-lpl__ph b { font-size: 11px; }
	.lwa-lpl__body { padding: 10px 12px; gap: 4px; }
	.lwa-lpl__title { font-size: 14px; }
	.lwa-lpl__desc { display: none; }
	.lwa-lpl__h { font-size: 19px; }
}
