@charset "UTF-8";
/* =========================================================
   Linkwin Affiliate
   ========================================================= */
:root {
	--lwa-main: #41709a;
	--lwa-accent: #e2483d;
	--lwa-cta: #e05a4a;
	--lwa-btn: #e8743a;
	--lwa-yellow: #f8d96b;
	--lwa-bg: #eceef2;
	--lwa-text: #3a3a3a;
	--lwa-light: #eaf3fa;
	--lwa-cream: #fff8e3;
	--lwa-cream2: #faf8f1;
	--lwa-gray: #f3f4f6;
	--lwa-line: #c9d6e2;
	--lwa-green: #4a9a45;
	--lwa-serif: "Noto Serif JP", "Hiragino Mincho ProN", serif;
	--lwa-en: "Playfair Display", "Noto Serif JP", serif;
	--lwa-w: 800px;
	--lwa-pad: 60px;
}
@media (max-width: 600px) {
	:root { --lwa-pad: 16px; }
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
	margin: 0;
	background: var(--lwa-bg);
	color: var(--lwa-text);
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 15px;
	line-height: 1.8;
	letter-spacing: .02em;
	-webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; vertical-align: middle; }
img:not([src]), img[src=""] { display: none; }
a { color: var(--lwa-main); }
h1, h2, h3, h4 { line-height: 1.45; }

.lwa-site {
	max-width: var(--lwa-w);
	margin: 0 auto;
	background: #fff;
	min-height: 100vh;
	box-shadow: 0 0 24px rgba(30, 50, 80, .08);
	overflow: hidden;
}
.lwa-red { color: var(--lwa-accent); font-weight: 700; }
.lwa-marker { background: linear-gradient(transparent 60%, #fde98b 60%); font-weight: 700; }
.lwa-c-main { color: var(--lwa-main); }
.lwa-c-green { color: var(--lwa-green); }
.lwa-c-yellow { color: var(--lwa-yellow); }
.lwa-note { font-size: 11px; color: #777; line-height: 1.6; margin: 8px 0 0; }
.lwa-small { font-size: 13px; }

/* placeholder */
.lwa-ph {
	display: flex; align-items: center; justify-content: center;
	width: 100%; aspect-ratio: 4 / 3;
	background: repeating-linear-gradient(45deg, #f1f4f8, #f1f4f8 10px, #e8edf3 10px, #e8edf3 20px);
	color: #8a9bb0; font-size: 13px; font-weight: 700; text-align: center; padding: 8px;
}
span.lwa-ph.lwa-ph--banner { aspect-ratio: 16 / 9; }
.lwa-item__banner img { height: auto; }

/* ---------- header ---------- */
.lwa-header {
	display: flex; align-items: center; justify-content: space-between;
	padding: 10px 16px; background: #fff; border-bottom: 1px solid #eef0f3;
}
.lwa-header__title { margin: 0; font-size: 18px; font-weight: 900; line-height: 1.3; }
.lwa-header__title a { color: var(--lwa-main); text-decoration: none; }
.lwa-header__title img { max-height: 36px; width: auto; }
.lwa-header__pr { font-size: 10px; color: #8a96a3; border: 1px solid #c8d0d8; padding: 0 6px; border-radius: 2px; line-height: 1.6; }

/* ---------- FV ---------- */
.lwa-fv img { display: block; width: 100%; height: auto; }
.lwa-fv a { display: block; }
.lwa-fv__ph {
	aspect-ratio: 16 / 9; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px;
	background: linear-gradient(135deg, #e3edf6, #f6f9fc 55%, #dfe9f3);
	color: var(--lwa-main); text-align: center; padding: 16px;
}
.lwa-fv__ph strong { font-size: 28px; letter-spacing: .1em; }
.lwa-fv__ph span { font-size: 12px; color: #6d8299; }

/* ---------- logos ---------- */
.lwa-logos { background: #eef1f5; padding: 10px 0; overflow: hidden; }
.lwa-logos__track { display: flex; width: max-content; animation: lwa-marquee 30s linear infinite; }
.lwa-logos:hover .lwa-logos__track { animation-play-state: paused; }
.lwa-logos ul { display: flex; gap: 10px; margin: 0; padding: 0 5px; list-style: none; }
.lwa-logos li a {
	display: flex; align-items: center; justify-content: center;
	width: 160px; height: 48px; background: #fff; border-radius: 3px; padding: 6px 10px; text-decoration: none;
	box-shadow: 0 1px 2px rgba(0,0,0,.05);
}
.lwa-logos img { max-height: 34px; width: auto; }
.lwa-logo-text { font-weight: 700; font-size: 13px; color: #333; line-height: 1.3; text-align: center; }
@keyframes lwa-marquee { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .lwa-logos__track { animation: none; } }

/* ---------- section heading ---------- */
.lwa-section { padding: 48px var(--lwa-pad); }
.lwa-sechead { text-align: center; margin: 0 0 24px; }
.lwa-sechead__sub {
	margin: 0; font-family: var(--lwa-serif); font-size: 17px; font-weight: 700; color: #555; letter-spacing: .1em;
}
.lwa-sechead__sub::before, .lwa-sechead__sub::after { content: "⋱"; color: var(--lwa-main); margin: 0 .5em; font-size: .8em; }
.lwa-sechead__sub::after { content: "⋰"; }
.lwa-sechead__sub--tri::before, .lwa-sechead__sub--tri::after {
	content: ""; display: inline-block; width: 0; height: 0; border-left: 9px solid transparent; border-right: 9px solid transparent; border-top: 14px solid #b9d3ea; vertical-align: middle;
}
.lwa-sechead__main {
	margin: 4px 0 0; font-size: 28px; font-weight: 900; color: #444; letter-spacing: .04em;
}
.lwa-sechead__main small { font-size: .65em; font-weight: 700; }
.lwa-cmpsec .lwa-sechead__main, .lwa-ranking__title { color: var(--lwa-main); }
.lwa-top { font-family: var(--lwa-en); font-weight: 700; margin-left: .15em; letter-spacing: 0; color: #444; }
.lwa-top b { font-size: 1.6em; line-height: 1; vertical-align: -0.08em; }
.lwa-num { font-family: var(--lwa-en); font-size: 1.5em; color: var(--lwa-main); line-height: 1; margin: 0 .05em; }
.lwa-num--gold { color: #e3b23c; font-size: 1.8em; }
.lwa-wavy { text-decoration: underline wavy #f4d35e; text-underline-offset: 8px; font-family: var(--lwa-serif); }
.lwa-quote::before { content: "“"; color: #999; font-family: var(--lwa-en); margin-right: .1em; }
.lwa-quote::after { content: "”"; color: #999; font-family: var(--lwa-en); margin-left: .1em; }
.lwa-sechead--line .lwa-sechead__main::after {
	content: ""; display: block; width: 60%; margin: 8px auto 0; height: 2px; background: linear-gradient(90deg, transparent, #bcd6ec, transparent);
}
@media (max-width: 600px) {
	.lwa-sechead__main { font-size: 22px; }
	.lwa-sechead__sub { font-size: 14px; }
}

.lwa-tag {
	display: table; margin: 0 auto 16px; padding: 4px 16px; background: #6e93b8; color: #fff; font-weight: 700; font-size: 15px; position: relative;
}
.lwa-tag::after { content: ""; position: absolute; left: 50%; bottom: -8px; transform: translateX(-50%); border: 8px solid transparent; border-bottom: 0; border-top-color: #6e93b8; }
.lwa-tag--lg { font-size: 20px; padding: 6px 20px; background: var(--lwa-main); }
.lwa-tag--lg::after { border-top-color: var(--lwa-main); }

/* ---------- CTA ---------- */
.lwa-cta { text-align: center; margin: 22px 0; }
.lwa-cta__micro { margin: 0 0 4px; color: var(--lwa-cta); font-size: 12px; font-weight: 700; }
.lwa-cta__btn {
	position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	width: min(100%, 420px); min-height: 64px; padding: 10px 24px;
	border-radius: 999px; border: 2px solid #fff; outline: 2px solid var(--lwa-cta);
	background: linear-gradient(180deg, color-mix(in srgb, var(--lwa-cta) 80%, #fff) 0%, var(--lwa-cta) 50%, color-mix(in srgb, var(--lwa-cta) 85%, #000) 100%);
	color: #fff; font-size: 19px; font-weight: 900; letter-spacing: .04em; text-decoration: none;
	box-shadow: 0 4px 0 color-mix(in srgb, var(--lwa-cta) 70%, #000), 0 8px 16px rgba(224, 90, 74, .25);
	transition: transform .15s, box-shadow .15s;
	animation: lwa-pulse 2.4s ease-in-out infinite;
}
.lwa-cta__btn:hover { transform: translateY(2px); box-shadow: 0 2px 0 color-mix(in srgb, var(--lwa-cta) 70%, #000); }
.lwa-cta__arrow { width: 20px; height: 20px; border-radius: 50%; background: #fff; position: relative; flex: none; }
.lwa-cta__arrow::after { content: ""; position: absolute; left: 6px; top: 6px; width: 6px; height: 6px; border-top: 2px solid var(--lwa-cta); border-right: 2px solid var(--lwa-cta); transform: rotate(45deg); }
@keyframes lwa-pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.025); } }
@media (prefers-reduced-motion: reduce) { .lwa-cta__btn { animation: none; } }
@media (max-width: 600px) { .lwa-cta__btn { font-size: 16px; min-height: 56px; } }

/* ---------- TOP compare ---------- */
.lwa-cmp-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.lwa-cmp {
	width: 100%; min-width: calc(var(--cols) * 150px); border-collapse: collapse; table-layout: fixed;
	border: 1px solid #e6e9ee; font-size: 12px; text-align: center; line-height: 1.5;
}
.lwa-cmp th, .lwa-cmp td { border-left: 1px solid #e6e9ee; padding: 12px 8px; vertical-align: top; }
.lwa-cmp thead th { padding: 22px 10px 14px; position: relative; font-weight: 400; background: #fff; }
.lwa-cmp .is-first { background: var(--lwa-cream); }
.lwa-rankbadge {
	position: absolute; top: 0; left: 50%; transform: translateX(-50%);
	padding: 0 12px; font-size: 11px; font-weight: 700; color: #fff; line-height: 18px;
	clip-path: polygon(0 0, 100% 0, 88% 100%, 12% 100%);
}
.lwa-rankbadge--1 { background: #e3b23c; }
.lwa-rankbadge--2 { background: #a7adb5; }
.lwa-rankbadge--3 { background: #cf9862; }
.lwa-rankbadge--4 { background: #7f9cb8; }
.lwa-cmp__logo {
	display: flex; align-items: center; justify-content: center; height: 54px; background: #fff; border: 1px solid #e3e6ea; border-radius: 3px; padding: 6px; text-decoration: none; margin-bottom: 10px;
}
.lwa-cmp__logo img { max-height: 40px; width: auto; }
.lwa-cmp__detail, .lwa-cmp__btn {
	position: relative; display: block; padding: 9px 22px 9px 12px; border-radius: 4px; color: #fff; font-weight: 700; font-size: 13px; text-decoration: none;
	background: linear-gradient(180deg, color-mix(in srgb, var(--lwa-btn) 85%, #fff), var(--lwa-btn));
	box-shadow: 0 3px 0 color-mix(in srgb, var(--lwa-btn) 70%, #000); border: 1px solid #fff; outline: 1px solid var(--lwa-btn);
}
.lwa-cmp__detail::after, .lwa-cmp__btn::after { content: "›"; position: absolute; right: 9px; top: 50%; transform: translateY(-52%); font-size: 16px; }
.lwa-cmp__btn { background: linear-gradient(180deg, color-mix(in srgb, var(--lwa-cta) 85%, #fff), var(--lwa-cta)); box-shadow: 0 3px 0 color-mix(in srgb, var(--lwa-cta) 70%, #000); outline-color: var(--lwa-cta); }
.lwa-cmp__label th { background: #eef1f5; color: var(--lwa-main); font-weight: 700; font-size: 12px; padding: 6px; border-left: 0; }
.lwa-cmp td .lwa-mark { display: block; margin: 0 auto 6px; }
.lwa-cmp__txt { display: block; }
.lwa-cmp td { border-bottom: 1px solid #e6e9ee; }
.lwa-cmp__official td { padding: 10px 6px 14px; }
@media (max-width: 600px) {
	.lwa-cmp { min-width: calc(var(--cols) * 112px); font-size: 11px; }
	.lwa-cmp thead th { padding: 22px 5px 10px; }
	.lwa-cmp th, .lwa-cmp td { padding-left: 5px; padding-right: 5px; }
	.lwa-cmp__logo { height: 46px; font-size: 11px; }
	.lwa-cmp__logo .lwa-logo-text { font-size: 11px; }
	.lwa-cmp__detail, .lwa-cmp__btn { font-size: 11px; padding: 8px 16px 8px 6px; }
	.lwa-cmp__detail::after, .lwa-cmp__btn::after { right: 5px; }
}

.lwa-mark { width: 26px; height: 26px; display: inline-block; vertical-align: middle; }
.lwa-mark--dc { color: #d9534f; }
.lwa-mark--c { color: #f0923a; }
.lwa-mark--t { color: #4fb3b0; }
.lwa-mark--x { color: #8b8b8b; }
.lwa-mark--d { color: #aaa; }

/* ---------- content (editor) ---------- */
.lwa-content { padding: 8px var(--lwa-pad) 24px; }
.lwa-cmpsec { padding-bottom: 24px; }
:where(.lwa-entry) > * + * { margin-top: 1.2em; }
:where(.lwa-entry) p { margin: 0; }
:where(.lwa-entry) > p, :where(.lwa-entry .wp-block-group) > p { margin-top: 1em; }
.lwa-content > .wp-block-group, .lwa-content > .wp-block-image, .lwa-content > .wp-block-table { margin-top: 40px; }
.lwa-content > .lwa-tag { margin-top: 48px; }
.lwa-content > .lwa-tag + .lwa-sechead { margin-top: 8px; }
.lwa-wideimg { margin-left: 0; margin-right: 0; }
.lwa-wideimg img { width: 100%; }
.lwa-band {
	margin-left: calc(var(--lwa-pad) * -1) !important; margin-right: calc(var(--lwa-pad) * -1) !important;
	padding: 40px var(--lwa-pad); background: var(--lwa-gray);
	clip-path: polygon(0 24px, 40px 0, calc(100% - 40px) 0, 100% 24px, 100% 100%, 0 100%);
}
.lwa-band--gray { background: #f1f3f6; }

/* 2列比較表 */
.lwa-compare2 table { width: 100%; border-collapse: collapse; font-size: 12px; text-align: center; table-layout: fixed; }
.lwa-compare2 thead { border-bottom: 0; }
.lwa-compare2 thead th { border: 0; padding: 8px 4px; font-weight: 700; color: #444; }
.lwa-compare2 thead th:nth-child(2)::before, .lwa-compare2 thead th:nth-child(3)::before {
	content: ""; display: block; width: 38px; height: 38px; margin: 0 auto 4px; border-radius: 50%; background: var(--lwa-main);
	-webkit-mask: radial-gradient(circle at 50% 70%, transparent 5px, #000 5.5px); mask: radial-gradient(circle at 50% 70%, transparent 5px, #000 5.5px);
}
.lwa-compare2 thead th:nth-child(3)::before { background: var(--lwa-green); }
.lwa-compare2 thead th:first-child { width: 26%; }
.lwa-compare2 tbody td { border: 1px solid var(--lwa-line); padding: 10px 6px; vertical-align: middle; }
.lwa-compare2 tbody td:first-child { background: #496f94; color: #fff; font-weight: 700; border-color: #6b8db0; }
.lwa-compare2 tbody td:nth-child(2) { background: var(--lwa-cream); }
.lwa-compare2 .lwa-mark { display: block; margin: 0 auto 4px; width: 28px; height: 28px; }
.lwa-compare2 figcaption { display: none; }

/* ランキング誘導ボタン */
.lwa-rankbtn { text-align: center; margin: 32px 0 8px; }
.lwa-rankbtn__crown { display: block; width: 64px; margin: 0 auto -6px; position: relative; z-index: 1; }
.lwa-rankbtn a {
	display: flex; align-items: center; justify-content: center; gap: 10px; padding: 16px; border-radius: 4px;
	background: linear-gradient(180deg, #fde27d, var(--lwa-yellow)); color: var(--lwa-main); font-weight: 900; font-size: 19px; text-decoration: none;
	box-shadow: 0 3px 0 #e5c04f;
}
.lwa-rankbtn a i { width: 20px; height: 20px; border-radius: 50%; background: var(--lwa-main); position: relative; }
.lwa-rankbtn a i::after { content: ""; position: absolute; left: 6px; top: 4px; width: 6px; height: 6px; border-right: 2px solid #fff; border-bottom: 2px solid #fff; transform: rotate(45deg); }

/* Voice */
.lwa-voice { position: relative; margin-top: 48px !important; padding: 0 0 28px; }
.lwa-voice::before {
	content: ""; position: absolute; z-index: 0; left: calc(var(--lwa-pad) * -1); right: 0; top: 80px; bottom: 0; background: linear-gradient(180deg, #eaf3fa, #eef5fa);
}
.lwa-voice > * { position: relative; z-index: 1; }
.lwa-voice__img { margin: 0 0 0 auto !important; width: 60%; }
.lwa-voice__img img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.lwa-voice__num { font-family: var(--lwa-en); font-size: 48px; font-weight: 700; color: var(--lwa-main); line-height: 1; margin: -40px 0 0 !important; }
.lwa-voice__num::before { content: "Voice"; display: block; font-size: 48px; color: #d7e9f8; font-weight: 400; margin-bottom: -6px; }
.lwa-voice__title { font-size: 20px; margin: 20px 0 0; padding-bottom: 14px; border-bottom: 1px solid #fff; position: relative; }
.lwa-voice__title::after { content: ""; position: absolute; right: 0; bottom: -5px; width: 9px; height: 9px; border-radius: 50%; background: #fff; }
.lwa-voice p:not(.lwa-voice__num) { font-size: 13px; padding-right: 8px; }
.lwa-voice--right::before { left: 0; right: calc(var(--lwa-pad) * -1); }
.lwa-voice--right .lwa-voice__img { margin: 0 auto 0 0 !important; }
.lwa-voice--right .lwa-voice__num { text-align: right; }
.lwa-voice--right > :not(.lwa-voice__img):not(.lwa-voice__num) { padding-left: 40px; }
@media (max-width: 600px) {
	.lwa-voice__img { width: 75%; }
	.lwa-voice__num, .lwa-voice__num::before { font-size: 36px; }
	.lwa-voice__title { font-size: 17px; }
	.lwa-voice--right > :not(.lwa-voice__img):not(.lwa-voice__num) { padding-left: 0; }
}

/* Q&A */
.lwa-qa { background: #f3f6f9; padding: 0 0 24px; margin-top: 28px !important; }
.lwa-qa > *:not(.lwa-qa__q) { margin-left: 32px; margin-right: 32px; }
.lwa-qa__q {
	position: relative; margin: 0 0 24px !important; padding: 10px 16px 10px 56px; background: var(--lwa-main); color: #fff; font-size: 17px;
	clip-path: polygon(0 0, calc(100% - 30px) 0, 100% 10px, 100% 100%, 0 100%);
}
.lwa-qa__q::before {
	content: "Q"; position: absolute; left: 8px; top: 50%; transform: translateY(-50%); width: 34px; height: 34px; background: #fff; color: var(--lwa-main);
	font-family: var(--lwa-en); font-size: 24px; text-align: center; line-height: 34px;
}
@media (max-width: 600px) { .lwa-qa > *:not(.lwa-qa__q) { margin-left: 12px; margin-right: 12px; } .lwa-qa__q { font-size: 15px; } }

/* cost rows */
.lwa-cost { display: grid; grid-template-columns: 74px 1fr 140px; background: #fff; border-bottom: 1px dashed #c6d3df; margin-top: 0 !important; }
.lwa-entry .lwa-cost + .lwa-cost, .wp-block-shortcode + .wp-block-shortcode .lwa-cost { margin-top: 0; }
.lwa-cost__head { background: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 6px; gap: 2px; }
.lwa-cost__head img { width: 46px; height: 46px; object-fit: contain; }
.lwa-cost__icon { width: 40px; height: 44px; border-radius: 50% 50% 46% 46%; background: radial-gradient(circle at 50% 30%, #333 45%, transparent 46%), #f6e0cf; border: 2px solid #333; }
.lwa-cost__label { background: #555; color: #fff; font-size: 11px; font-weight: 700; width: 100%; text-align: center; border-radius: 2px; }
.lwa-cost__price { background: linear-gradient(90deg, #eaf3fa, #f6f9fc); text-align: center; display: flex; flex-direction: column; justify-content: center; padding: 6px; }
.lwa-cost__price p { margin: 0 !important; color: #555; font-weight: 700; }
.lwa-cost__price b { font-size: 30px; color: var(--lwa-main); line-height: 1.1; letter-spacing: 0; }
.lwa-cost__avg { font-size: 13px; }
.lwa-cost__avg b { font-size: 17px !important; }
.lwa-cost__meta { display: flex; flex-direction: column; justify-content: center; padding: 6px 10px; gap: 4px; }
.lwa-cost__meta p { margin: 0 !important; }
.lwa-cost__sub { color: var(--lwa-main); font-weight: 700; font-size: 15px; }
.lwa-cost__stars { display: flex; align-items: center; font-size: 11px; border: 1px solid #c6d3df; border-radius: 999px; overflow: hidden; background: #fff; }
.lwa-cost__stars > span:first-child { background: var(--lwa-main); color: #fff; padding: 1px 6px; font-weight: 700; margin-right: 4px; }
.lwa-cost__stars .lwa-stars { font-size: 12px; }
.lwa-qa .wp-block-shortcode { margin-top: 0; }
.lwa-qa .lwa-balloon { margin-top: 20px; }
@media (max-width: 600px) {
	.lwa-cost { grid-template-columns: 60px 1fr; }
	.lwa-cost__meta { grid-column: 1 / -1; flex-direction: row; justify-content: space-between; align-items: center; }
	.lwa-cost__price b { font-size: 24px; }
}

/* balloon */
.lwa-balloon { display: flex; gap: 18px; align-items: flex-start; }
.lwa-balloon--right { flex-direction: row-reverse; }
.lwa-balloon__who { flex: none; width: 76px; text-align: center; display: flex; flex-direction: column; align-items: center; gap: 2px; }
.lwa-balloon__av { width: 64px; height: 64px; border-radius: 50%; overflow: hidden; background: #fff; display: block; box-shadow: 0 0 0 3px #fff; }
.lwa-balloon__av img, .lwa-balloon__av svg { width: 100%; height: 100%; object-fit: cover; display: block; }
.lwa-balloon__name { font-size: 12px; font-weight: 700; line-height: 1.3; }
.lwa-balloon__tag { font-size: 10px; font-weight: 700; color: var(--lwa-main); border: 1px solid #e5c35a; background: #fffbe9; padding: 0 5px; }
.lwa-balloon__body { position: relative; flex: 1; background: #fff; padding: 12px 16px; font-size: 13px; border-radius: 3px; }
.lwa-balloon__body p { margin: 0 !important; }
.lwa-balloon__body p + p { margin-top: .6em !important; }
.lwa-balloon__body::before { content: ""; position: absolute; top: 20px; left: -10px; border: 6px solid transparent; border-right: 10px solid #fff; border-left: 0; }
.lwa-balloon--right .lwa-balloon__body::before { left: auto; right: -10px; border-right: 0; border-left: 10px solid #fff; }

/* bar chart */
.lwa-bar { background: #fff; padding: 20px 22px 14px; }
.lwa-bar__title { text-align: center; font-weight: 900; font-size: 19px; margin: 0 0 14px !important; }
.lwa-bar__title::before { content: "＼"; color: var(--lwa-main); margin-right: .3em; }
.lwa-bar__title::after { content: "／"; color: var(--lwa-main); margin-left: .3em; }
.lwa-bar__title em { font-style: normal; color: var(--lwa-accent); font-size: 1.25em; background: linear-gradient(transparent 65%, #fde98b 65%); }
.lwa-bar__chart { position: relative; }
.lwa-bar__row { display: grid; grid-template-columns: 34% 1fr; align-items: center; margin-bottom: 12px; }
.lwa-bar__label { text-align: center; font-weight: 700; color: var(--lwa-main); font-size: 14px; line-height: 1.35; padding-right: 8px; }
.lwa-bar__track { border-left: 2px solid #8fb2d1; height: 42px; display: flex; align-items: center; background: repeating-linear-gradient(90deg, transparent 0 calc(25% - 1px), #d7e5f1 calc(25% - 1px) 25%); }
.lwa-bar__fill {
	height: 100%; background: linear-gradient(180deg, #7aa1c4, #5d88b0); border-radius: 0 21px 21px 0; color: #f8d96b; font-weight: 900; font-size: 13px;
	display: flex; align-items: center; justify-content: center; white-space: nowrap; min-width: 46px; transform-origin: left; animation: lwa-grow 1s ease-out both;
}
.lwa-bar__fill b { font-size: 24px; font-family: var(--lwa-en); }
.lwa-bar__row.is-top .lwa-bar__label { color: var(--lwa-accent); }
.lwa-bar__row.is-top .lwa-bar__fill { background: linear-gradient(90deg, #e05547, #f0975a); }
.lwa-bar__axis { display: grid; grid-template-columns: 34% 1fr; font-size: 12px; color: #555; }
.lwa-bar__ticks { display: flex; justify-content: space-between; margin-left: -4px; }
.lwa-bar__ticks i { font-style: normal; }
@keyframes lwa-grow { from { transform: scaleX(0); } }
@media (max-width: 600px) { .lwa-bar { padding: 14px 10px; } .lwa-bar__label { font-size: 11px; } .lwa-bar__fill b { font-size: 18px; } .lwa-bar__title { font-size: 15px; } }

/* card slider (editor groups) */
.lwa-cards { display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 6px; scrollbar-width: none; }
.lwa-cards::-webkit-scrollbar { display: none; }
.lwa-cards > .lwa-card { flex: 0 0 calc(50% - 6px); scroll-snap-align: start; margin: 0 !important; }
.lwa-card { background: #fff; padding: 18px 16px; text-align: center; }
.lwa-card__av { margin: 0 auto !important; width: 56px; }
.lwa-card__av img { width: 56px; height: 56px; border-radius: 50%; object-fit: cover; }
.lwa-card__av:not(:has(img[src])) { width: 56px; height: 56px; border-radius: 50%; background: #eaf3fa url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 80'%3E%3Ccircle cx='40' cy='32' r='13' fill='%23fff' stroke='%2341709a' stroke-width='2'/%3E%3Cpath d='M16 68c3-12 13-18 24-18s21 6 24 18' fill='%23cfe2f3' stroke='%2341709a' stroke-width='2'/%3E%3C/svg%3E") center / cover; }
.lwa-card__name { display: inline-block; margin: 8px 0 0 !important; background: #fdf3cf; font-size: 12px; font-weight: 700; padding: 0 8px; }
.lwa-card__text { text-align: left; font-size: 12px; }
@media (max-width: 600px) { .lwa-cards > .lwa-card { flex-basis: 85%; } }

/* choose points */
.lwa-pointboxes { counter-reset: lwapb; }
.lwa-pointbox { counter-increment: lwapb; background: #fff; border: 1px solid #d9e2ea; padding: 0 32px 24px; margin-top: 22px !important; }
.lwa-pointbox__title {
	position: relative; margin: 0 -32px 24px !important; padding: 12px 16px 12px 66px; color: var(--lwa-main); font-size: 19px; border-bottom: 1px dashed #c6d3df;
}
.lwa-pointbox__title::before {
	content: counter(lwapb); position: absolute; left: 16px; top: 50%; transform: translateY(-50%); width: 34px; height: 34px; border-radius: 50%; border: 2px solid var(--lwa-main);
	text-align: center; line-height: 30px; font-family: var(--lwa-en); font-size: 20px; background: #fff;
}
.lwa-pointbox__title::after { content: ""; position: absolute; left: 0; top: 0; border: 16px solid transparent; border-top-color: #a9c0d6; border-left-color: #a9c0d6; }
.lwa-pointbox p { font-size: 13px; }
.lwa-notebar { background: var(--lwa-cream); border-left: 4px solid #e9c55b; padding: 8px 12px; font-weight: 700; font-size: 14px !important; }
@media (max-width: 600px) { .lwa-pointbox { padding: 0 14px 18px; } .lwa-pointbox__title { margin: 0 -14px 18px !important; font-size: 16px; padding-left: 58px; } }

/* ---------- ranking ---------- */
.lwa-ranking { background: var(--lwa-cream2); padding-bottom: 40px; }
.lwa-ranking__head { background: var(--lwa-main); color: #fff; text-align: center; padding: 0 16px 14px; position: relative; margin-top: 30px; }
.lwa-ranking__head::before, .lwa-ranking__head::after { content: "◆"; position: absolute; top: 50%; color: rgba(255,255,255,.2); font-size: 14px; }
.lwa-ranking__head::before { left: 24px; }
.lwa-ranking__head::after { right: 24px; }
.lwa-ranking__sub { margin: 0; transform: translateY(-50%); }
.lwa-ranking__sub span { display: inline-block; background: #eaf3fa; color: #444; font-family: var(--lwa-serif); font-weight: 700; font-size: 18px; padding: 2px 28px; border-radius: 6px 6px 0 0; clip-path: polygon(8% 0, 92% 0, 100% 100%, 0 100%); }
.lwa-ranking__title { margin: -6px 0 0; font-size: 28px; font-weight: 900; color: var(--lwa-yellow) !important; }
.lwa-ranking__title .lwa-top { color: #fff; }
.lwa-ranking__body { padding: 40px var(--lwa-pad) 0; }
.lwa-ranking--single { padding-top: 0; }
@media (max-width: 600px) { .lwa-ranking__title { font-size: 21px; } .lwa-ranking__sub span { font-size: 14px; } }

.lwa-item { background: #fff; margin-bottom: 32px; box-shadow: 0 1px 4px rgba(0,0,0,.05); border-radius: 0 0 6px 6px; padding-bottom: 8px; scroll-margin-top: 12px; }
.lwa-item__title { display: flex; align-items: center; gap: 14px; margin: 0; padding: 10px 14px 10px 10px; border-top: 3px solid #bfd3e6; border-bottom: 1px solid #c9d6e2; font-size: 24px; font-weight: 900; color: #444; }
.lwa-ribbon {
	flex: none; width: 36px; height: 52px; display: flex; align-items: flex-start; justify-content: center; padding-top: 4px; margin-top: -13px;
	font-family: var(--lwa-en); font-size: 28px; color: #fff; clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 86%, 0 100%);
}
.lwa-ribbon--1 { background: linear-gradient(180deg, #f0c24b, #e3a72c); }
.lwa-ribbon--2 { background: linear-gradient(180deg, #c3c8ce, #9da4ac); }
.lwa-ribbon--3 { background: linear-gradient(180deg, #e2b082, #c98b52); }
.lwa-ribbon--4 { background: linear-gradient(180deg, #9ab8d4, #6f93b6); }
.lwa-item__in { padding: 22px 32px 0; }
.lwa-item__banner a { display: block; }
.lwa-item__banner img { width: 100%; display: block; border: 1px solid #e5e5e5; }
@media (max-width: 600px) { .lwa-item__in { padding: 16px 12px 0; } .lwa-item__title { font-size: 19px; } }

/* rating + radar */
.lwa-eval { position: relative; margin-top: 12px; padding: 0 64px 22px; background: linear-gradient(90deg, #e3f0fa, #f6f9fb 45%, #fbf6e3 75%, #fdf3d3); }
.lwa-eval__head {
	display: flex; align-items: center; justify-content: center; gap: 6px; margin: 0 auto; width: max-content; max-width: 100%; padding: 8px 40px;
	background: #fff; clip-path: polygon(0 0, 100% 0, calc(100% - 26px) 100%, 26px 100%); font-weight: 700; font-size: 13px;
}
.lwa-eval__head .lwa-stars { font-size: 22px; }
.lwa-eval__head b { color: var(--lwa-accent); font-size: 26px; font-family: "Noto Sans JP", sans-serif; line-height: 1; }
.lwa-eval__chart { background: #fff; padding: 8px; }
.lwa-radar { display: block; width: 100%; height: auto; max-width: 420px; margin: 0 auto; }
.lwa-radar__ring { fill: none; stroke: #e2e6ea; stroke-width: 1; }
.lwa-radar__axis { stroke: #e2e6ea; stroke-width: 1; }
.lwa-radar__tick { font-size: 9px; fill: #888; text-anchor: middle; }
.lwa-radar__area { fill: rgba(65, 112, 154, .25); stroke: #5d8db8; stroke-width: 2; stroke-linejoin: round; }
.lwa-radar__dot { fill: #5d8db8; }
.lwa-radar__label { font-size: 11px; fill: #444; font-weight: 700; }
@media (max-width: 600px) { .lwa-eval { padding: 0 12px 16px; } .lwa-eval__head { padding: 8px 24px; } .lwa-eval__head .lwa-stars { font-size: 18px; } }

.lwa-stars { position: relative; display: inline-block; line-height: 1; letter-spacing: 0; font-size: 14px; vertical-align: middle; white-space: nowrap; }
.lwa-stars__bg { color: #e6e1cf; }
.lwa-stars__fg { position: absolute; left: 0; top: 0; overflow: hidden; color: #f0b400; }

/* spec table */
.lwa-spec { position: relative; margin-top: 4px; }
.lwa-spec table { width: 100%; border-collapse: collapse; font-size: 13px; }
.lwa-spec th, .lwa-spec td { border-top: 1px dashed #b8c6d4; border-bottom: 1px dashed #b8c6d4; padding: 9px 10px; vertical-align: middle; line-height: 1.55; }
.lwa-spec th { width: 80px; background: #e9f3fb; font-weight: 700; text-align: center; font-size: 12px; border-right: 2px solid #fff; }
.lwa-spec.is-collapsible:not(.is-open) tr.is-more { display: none; }
.lwa-spec.is-collapsible:not(.is-open)::after {
	content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 56px; background: linear-gradient(transparent, #fff 70%); pointer-events: none;
}
.lwa-spec.is-collapsible:not(.is-open) table { margin-bottom: 30px; }
.lwa-morebtn {
	position: relative; z-index: 1; display: block; margin: -20px auto 0; padding: 7px 34px 7px 20px; background: #fff; border: 1px solid #888; border-radius: 2px; font: inherit; font-size: 12px; cursor: pointer; color: #444;
}
.lwa-morebtn::after { content: ""; position: absolute; right: 14px; top: 50%; width: 5px; height: 5px; border-right: 1px solid #666; border-bottom: 1px solid #666; transform: translateY(-70%) rotate(45deg); }
.lwa-spec.is-open .lwa-morebtn { margin-top: 12px; }
.lwa-spec.is-open .lwa-morebtn::after { transform: translateY(-20%) rotate(-135deg); }

/* recommend points */
.lwa-points { position: relative; margin-top: 36px; border: 1px solid #8fa8bf; background: var(--lwa-cream); padding: 20px 14px 8px; }
.lwa-points__title { position: absolute; top: 0; left: 50%; transform: translate(-50%, -60%); margin: 0; white-space: nowrap; }
.lwa-points__title span { display: inline-block; background: #6e93b8; color: #fff; font-family: var(--lwa-serif); font-size: 16px; font-weight: 700; letter-spacing: .1em; padding: 2px 12px; position: relative; }
.lwa-points__title span::after { content: ""; position: absolute; left: 50%; bottom: -6px; transform: translateX(-50%); border: 6px solid transparent; border-bottom: 0; border-top-color: #6e93b8; }
.lwa-points ul { list-style: none; margin: 0; padding: 0; }
.lwa-points li { position: relative; padding: 6px 4px 6px 26px; border-bottom: 1px dashed #d2c9a5; font-weight: 700; font-size: 13px; line-height: 1.6; }
.lwa-points li:last-child { border-bottom: 0; }
.lwa-points li::before { content: ""; position: absolute; left: 6px; top: 10px; width: 7px; height: 12px; border-right: 2.5px solid var(--lwa-main); border-bottom: 2.5px solid var(--lwa-main); transform: rotate(40deg); }

/* cases */
.lwa-cases { margin: 32px 0 6px; background: #f2f8fd; border: 1px solid #e0ebf4; }
.lwa-cases__title { margin: 0; background: var(--lwa-main); color: #fff; text-align: center; font-weight: 700; font-size: 16px; padding: 10px; line-height: 1.5; }
.lwa-cases__title span { color: var(--lwa-yellow); }
.lwa-case { padding: 14px 40px 12px; }
.lwa-case__ba { display: flex; align-items: center; justify-content: center; gap: 8px; }
.lwa-case__ba figure { margin: 0; flex: 0 1 42%; text-align: center; }
.lwa-case__ba figcaption { display: inline-block; font-size: 11px; font-weight: 700; color: #fff; padding: 0 8px; margin-bottom: 2px; }
.lwa-case__ba .is-before { background: #8a8f95; }
.lwa-case__ba .is-after { background: #e8b93b; }
.lwa-case__ba img, .lwa-case__ba .lwa-ph { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: flex; }
.lwa-case__arrow { border: 6px solid transparent; border-left: 8px solid #a7c0d8; border-right: 0; }
.lwa-case__prof { text-align: center; font-size: 12px; font-weight: 700; margin: 10px 0 !important; line-height: 1.6; }
.lwa-case__tbl { width: 100%; border-collapse: collapse; font-size: 12px; background: #fff; }
.lwa-case__tbl th { width: 30%; background: #7c9fc0; color: #fff; font-weight: 700; padding: 8px; border-bottom: 1px solid #fff; }
.lwa-case__tbl td { padding: 8px; border-bottom: 1px solid #e6edf3; }
.lwa-case__src { text-align: right; font-size: 10px; color: #888; margin: 6px 0 0 !important; word-break: break-all; }
.lwa-case__src a { color: #888; }
@media (max-width: 600px) { .lwa-case { padding: 12px 30px; } }

/* features */
.lwa-features { margin-top: 32px; padding: 0 32px 20px; background: linear-gradient(180deg, #f8e7a8, #fbf0c5 40%, #f8e8ae); position: relative; }
.lwa-features::before { content: ""; position: absolute; left: 50%; top: 0; transform: translateX(-50%); width: 60px; height: 8px; background: #a7c0d8; clip-path: polygon(0 0, 100% 0, 85% 100%, 15% 100%); }
.lwa-features__head { text-align: center; padding: 32px 0 20px; }
.lwa-features__head p { margin: 0; display: inline-block; font-size: 24px; font-weight: 900; color: #444; line-height: 1.4; padding-bottom: 10px; background: linear-gradient(var(--lwa-main), var(--lwa-main)) bottom / 100% 1px no-repeat; }
.lwa-features__head span { color: var(--lwa-main); }
.lwa-features__head small { font-size: .7em; }
.lwa-features__hand::before { content: "☝"; font-style: normal; margin-right: 4px; }
.lwa-feature { background: #fff; margin-top: 22px; padding-bottom: 20px; }
.lwa-feature__no { margin: 0; display: inline-block; background: var(--lwa-main); color: #fff; font-family: var(--lwa-en); font-size: 12px; padding: 2px 22px 2px 8px; clip-path: polygon(0 0, 85% 0, 100% 100%, 0 100%); }
.lwa-feature__no b { font-size: 16px; }
.lwa-feature__title { margin: 0; background: #e5f1fb; padding: 8px 10px; font-size: 16px; }
.lwa-feature__body { padding: 16px 32px 0; font-size: 13px; }
.lwa-feature__body p { margin: 0 0 1em; }
.lwa-feature__img { margin-bottom: 16px; }
.lwa-feature__img img { width: 100%; }
.lwa-features .lwa-item__in { padding: 0; }
@media (max-width: 600px) { .lwa-features { padding: 0 12px 16px; } .lwa-feature__body { padding: 14px 14px 0; } .lwa-features__head p { font-size: 19px; } }

/* reviews */
.lwa-reviews { padding-bottom: 20px; }
.lwa-reviews__sub { text-align: center; font-family: var(--lwa-serif); color: var(--lwa-main); font-weight: 700; margin: 10px 0 4px; }
.lwa-reviews__sub::before { content: "⋱ "; } .lwa-reviews__sub::after { content: " ⋰"; }
.lwa-reviews__title { margin: 0; background: var(--lwa-main); color: #fff; text-align: center; font-weight: 700; padding: 6px; }
.lwa-reviews .lwa-slider { border: 1px solid #e3eaf1; border-top: 0; }
.lwa-review { padding: 16px 44px; }
.lwa-review__head { display: flex; gap: 12px; align-items: center; margin-bottom: 8px; }
.lwa-review__av { width: 52px; height: 52px; border-radius: 50%; overflow: hidden; flex: none; display: block; }
.lwa-review__av img, .lwa-review__av svg { width: 100%; height: 100%; object-fit: cover; }
.lwa-review__name { margin: 0; font-weight: 700; }
.lwa-review__meta { margin: 0; font-size: 11px; display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.lwa-review__badge { background: #fdf3cf; border: 1px solid #ecd583; padding: 0 5px; font-weight: 700; }
.lwa-review__text { font-size: 12px; }
.lwa-review__text p { margin: 0 0 .6em; }
@media (max-width: 600px) { .lwa-review { padding: 14px 34px; } }

/* clamp + more */
.lwa-clamp.is-clamped:not(.is-open) { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.lwa-clampbtn { display: block; margin: 8px auto 0; padding: 6px 30px 6px 16px; background: #f1f3f5; border: 1px solid #e1e5ea; font: inherit; font-size: 12px; position: relative; cursor: pointer; color: #444; }
.lwa-clampbtn::after { content: ""; position: absolute; right: 12px; top: 50%; width: 5px; height: 5px; border-right: 1px solid #666; border-bottom: 1px solid #666; transform: translateY(-70%) rotate(45deg); }

/* ---------- slider ---------- */
.lwa-slider { position: relative; }
.lwa-slider__track { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; }
.lwa-slider__track::-webkit-scrollbar { display: none; }
.lwa-slide { flex: 0 0 100%; scroll-snap-align: start; min-width: 0; }
.lwa-slider__prev, .lwa-slider__next {
	position: absolute; top: 50%; transform: translateY(-50%); width: 22px; height: 22px; border-radius: 50%; border: 0; padding: 0; cursor: pointer;
	background: var(--lwa-main); z-index: 2;
}
.lwa-slider__prev { left: 8px; } .lwa-slider__next { right: 8px; }
.lwa-slider__prev::after, .lwa-slider__next::after { content: ""; position: absolute; top: 8px; width: 6px; height: 6px; border-top: 2px solid #fff; border-right: 2px solid #fff; }
.lwa-slider__next::after { left: 6px; transform: rotate(45deg); }
.lwa-slider__prev::after { left: 9px; transform: rotate(-135deg); }
.lwa-slider__prev[disabled], .lwa-slider__next[disabled] { opacity: .35; cursor: default; }
.lwa-slider__dots { display: flex; justify-content: center; gap: 6px; padding: 6px 0 12px; }
.lwa-slider__dots button { width: 7px; height: 7px; padding: 0; border: 0; border-radius: 50%; background: #d3d9df; cursor: pointer; }
.lwa-slider__dots button.is-active { background: #7d8a96; }
.lwa-cards-wrap { position: relative; }
.lwa-cards-wrap .lwa-slider__prev { left: -10px; } .lwa-cards-wrap .lwa-slider__next { right: -10px; }

/* ---------- final ---------- */
.lwa-final { background: linear-gradient(90deg, #dbe4ef, #edf2f8 50%, #dbe4ef); padding: 40px var(--lwa-pad) 40px; clip-path: polygon(0 18px, 30px 0, calc(100% - 30px) 0, 100% 18px, 100% 100%, 0 100%); }
.lwa-final__intro { text-align: center; }
.lwa-final__bubble { display: inline-block; position: relative; background: #fff; color: var(--lwa-main); font-weight: 700; padding: 6px 14px; margin: 0; font-size: 15px; }
.lwa-final__bubble::after { content: ""; position: absolute; left: 50%; bottom: -8px; transform: translateX(-50%); border: 8px solid transparent; border-bottom: 0; border-top-color: #fff; }
.lwa-final__lead { margin: 14px 0 0; font-family: var(--lwa-serif); font-weight: 700; font-size: 22px; }
.lwa-final__arrows { display: flex; justify-content: center; gap: 8px; margin: 10px 0 0; }
.lwa-final__arrows i { width: 16px; height: 30px; background: linear-gradient(#a6bed4 0 0) center top / 4px 16px no-repeat; position: relative; animation: lwa-down 1.4s infinite; }
.lwa-final__arrows i::after { content: ""; position: absolute; left: 0; bottom: 0; border: 8px solid transparent; border-bottom: 0; border-top: 12px solid #a6bed4; }
.lwa-final__arrows i:nth-child(2) { animation-delay: .15s; } .lwa-final__arrows i:nth-child(3) { animation-delay: .3s; }
@keyframes lwa-down { 50% { transform: translateY(4px); opacity: .6; } }
.lwa-final__card { margin-top: 34px; background: #fff; }
.lwa-final__plate { position: relative; text-align: center; padding-top: 30px; background: linear-gradient(#a6bed4, #a6bed4) 0 58px / 100% 4px no-repeat; }
.lwa-final__crown { position: absolute; left: 50%; top: -22px; transform: translateX(-50%); width: 64px; }
.lwa-final__plate p { position: relative; display: inline-block; margin: 0; padding: 8px 40px; min-width: 60%; background: linear-gradient(180deg, #fde27d, var(--lwa-yellow)); border: 2px solid #fff; outline: 1px solid #e5c04f; color: var(--lwa-main); font-weight: 900; font-size: 26px; }
.lwa-final .lwa-item { box-shadow: none; margin-bottom: 0; }
@media (max-width: 600px) { .lwa-final__plate p { font-size: 20px; padding: 6px 20px; } .lwa-final__lead { font-size: 17px; } }

/* ---------- search ---------- */
.lwa-search__head { text-align: center; margin-bottom: 24px; }
.lwa-search__sub { margin: 0; font-weight: 700; font-size: 18px; color: #444; }
.lwa-search__title { margin: 0; font-size: 28px; font-weight: 900; color: #444; }
.lwa-search__box { background: var(--lwa-gray); padding: 18px 22px; border-radius: 3px; }
.lwa-search__grid { display: grid; grid-template-columns: 1fr 1fr; column-gap: 20px; }
.lwa-search__field { display: grid; grid-template-columns: 96px 1fr; align-items: center; gap: 8px; padding: 6px 0; border-bottom: 1px dashed #c6d3df; font-size: 13px; font-weight: 700; color: #444; }
.lwa-search__field > span:first-child { text-align: center; line-height: 1.4; }
.lwa-select { position: relative; display: block; }
.lwa-select select { width: 100%; appearance: none; -webkit-appearance: none; border: 0; background: #fff; padding: 8px 40px 8px 10px; font: inherit; font-size: 13px; font-weight: 400; color: #555; border-radius: 2px; }
.lwa-select::after { content: ""; position: absolute; right: 0; top: 0; bottom: 0; width: 30px; background: #a9bfd3 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M0 0h10L5 6z' fill='%23fff'/%3E%3C/svg%3E") center / 9px no-repeat; pointer-events: none; border-radius: 0 2px 2px 0; }
.lwa-search__checks { display: flex; justify-content: center; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.lwa-check { display: flex; align-items: center; gap: 16px; background: #fff; padding: 8px 10px 8px 22px; font-size: 13px; font-weight: 700; color: var(--lwa-main); cursor: pointer; box-shadow: 0 1px 2px rgba(0,0,0,.05); }
.lwa-check input { position: absolute; opacity: 0; pointer-events: none; }
.lwa-check i { width: 22px; height: 22px; background: #a9bfd3; position: relative; }
.lwa-check i::after { content: ""; position: absolute; left: 7px; top: 3px; width: 7px; height: 12px; border-right: 2px solid #fff; border-bottom: 2px solid #fff; transform: rotate(45deg); opacity: .6; }
.lwa-check input:checked + i { background: var(--lwa-main); }
.lwa-check input:checked + i::after { opacity: 1; }
.lwa-check input:focus-visible + i { outline: 2px solid var(--lwa-main); outline-offset: 2px; }
.lwa-search__btns { display: flex; justify-content: center; gap: 12px; margin-top: 28px; }
.lwa-search__reset { display: flex; align-items: center; justify-content: center; border: 1px solid #888; background: #fff; padding: 0 12px; height: 40px; color: #444; font-size: 13px; text-decoration: none; border-radius: 2px; }
.lwa-search__submit { width: 200px; max-width: 60%; height: 40px; border: 0; background: #6b77d1; color: #fff; font: inherit; font-weight: 700; font-size: 15px; border-radius: 2px; cursor: pointer; }
.lwa-search__submit:hover { filter: brightness(1.08); }
.lwa-search__result { margin-top: 28px; }
.lwa-search__count { text-align: center; font-weight: 700; margin: 0 0 12px; }
.lwa-search__count b { color: var(--lwa-accent); font-size: 1.4em; }
.lwa-search__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.lwa-search__list li { display: grid; grid-template-columns: 140px 1fr auto; gap: 12px; align-items: center; border: 1px solid #e1e6eb; padding: 10px; border-radius: 3px; }
.lwa-search__logo { display: flex; align-items: center; justify-content: center; height: 48px; border: 1px solid #eee; text-decoration: none; }
.lwa-search__logo img { max-height: 38px; width: auto; }
.lwa-search__name { margin: 0; font-weight: 700; }
.lwa-search__rate { margin: 0; display: flex; align-items: center; gap: 6px; }
.lwa-search__rate b { color: var(--lwa-accent); }
.lwa-search__go { display: flex; flex-direction: column; gap: 6px; }
.lwa-search__go a { display: block; text-align: center; font-size: 12px; font-weight: 700; padding: 6px 12px; border-radius: 3px; text-decoration: none; }
.lwa-search__more { border: 1px solid var(--lwa-main); color: var(--lwa-main); }
.lwa-search__official { background: var(--lwa-cta); color: #fff !important; }
.lwa-search__none { text-align: center; font-size: 13px; color: #777; }
@media (max-width: 600px) {
	.lwa-search__grid { grid-template-columns: 1fr; }
	.lwa-search__box { padding: 12px; }
	.lwa-search__title { font-size: 22px; }
	.lwa-search__list li { grid-template-columns: 90px 1fr; }
	.lwa-search__go { grid-column: 1 / -1; flex-direction: row; }
	.lwa-search__go a { flex: 1; }
}

/* ---------- footer ---------- */
.lwa-footer__brand { text-align: center; padding: 24px 16px 14px; background: linear-gradient(transparent 60%, #f1f3f6 60%); }
.lwa-footer__brand a { display: inline-block; background: #fff; padding: 4px 24px; color: var(--lwa-main); font-weight: 900; font-size: 18px; text-decoration: none; }
.lwa-footer__brand img { max-height: 32px; width: auto; }
.lwa-footer__bar { background: #4a4b4d; color: #fff; text-align: center; padding: 18px 16px 14px; }
.lwa-footer__nav ul { list-style: none; margin: 0; padding: 0; display: flex; justify-content: center; flex-wrap: wrap; gap: 6px 22px; }
.lwa-footer__nav a { color: #fff; font-size: 13px; text-decoration: none; }
.lwa-footer__nav a::before { content: "• "; }
.lwa-footer__copy { margin: 14px 0 0; font-size: 10px; }

/* ---------- normal pages ---------- */
.lwa-page { padding: 32px var(--lwa-pad) 48px; }
.lwa-page__title { font-size: 24px; margin: 0 0 8px; border-bottom: 3px solid var(--lwa-main); padding-bottom: 8px; }
.lwa-page__date { font-size: 12px; color: #888; margin: 0 0 16px; }
.lwa-page__thumb img { width: 100%; }
.lwa-entry h2:not([class*="lwa-"]) { background: var(--lwa-main); color: #fff; padding: 10px 14px; font-size: 20px; margin-top: 2em; }
.lwa-entry h3:not([class*="lwa-"]) { border-left: 5px solid var(--lwa-main); padding: 4px 10px; font-size: 18px; margin-top: 1.8em; }
.lwa-entry table:not(.lwa-cmp):not(.lwa-case__tbl) { border-collapse: collapse; }
.lwa-postlist { list-style: none; margin: 16px 0; padding: 0; display: grid; gap: 14px; }
.lwa-postlist a { display: grid; grid-template-columns: 140px 1fr; gap: 14px; text-decoration: none; color: inherit; border-bottom: 1px solid #eee; padding-bottom: 14px; }
.lwa-postlist__thumb { aspect-ratio: 16 / 10; background: #eef2f6; overflow: hidden; }
.lwa-postlist__thumb img { width: 100%; height: 100%; object-fit: cover; }
.lwa-postlist time { display: block; font-size: 12px; color: #888; }
.custom-logo-link { display: inline-block; }

/* =========================================================
   v1.1 追加パーツ（両スキン共通）
   ========================================================= */
.lwa-ph small { display: block; font-size: 10px; font-weight: 400; margin-top: 2px; }
.lwa-ph { flex-direction: column; }
.lwa-imgph { margin: 0; }
.lwa-imgph .lwa-ph { aspect-ratio: 16 / 9; }
.lwa-ph--av { width: 64px; height: 64px; aspect-ratio: 1; border-radius: 50%; margin: 0 auto; padding: 0;
	background: #eaf3fa url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 80'%3E%3Ccircle cx='40' cy='32' r='13' fill='%23fff' stroke='%2341709a' stroke-width='2'/%3E%3Cpath d='M16 68c3-12 13-18 24-18s21 6 24 18' fill='%23cfe2f3' stroke='%2341709a' stroke-width='2'/%3E%3C/svg%3E") center / cover; }
.lwa-voice__img.lwa-imgph .lwa-ph { aspect-ratio: 16 / 9; }
.lwa-card__av.lwa-imgph .lwa-ph--av { width: 56px; height: 56px; }
.lwa-wideimg.lwa-imgph .lwa-ph { aspect-ratio: 2 / 1; }

/* タブバー */
.lwa-tabbar { display: flex; gap: 4px; margin: 0; padding: 0; }
.lwa-tabbar__btn { flex: 1; border: 0; padding: 10px 6px; font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; background: #c9ccd1; color: #fff; }
.lwa-tabbar__btn.is-active { background: var(--lwa-main); }
.lwa-tabbar__btn:focus-visible { outline: 2px solid var(--lwa-yellow); outline-offset: -2px; }
.lwa-scrollhint { text-align: right; font-size: 11px; color: #999; margin: 4px 0 0; }
.lwa-cmp tbody[hidden] { display: none; }

/* 比較表：行見出し列レイアウト */
.lwa-cmp--side { min-width: calc(var(--cols) * 130px + 80px); }
.lwa-cmp--side .lwa-cmp__corner, .lwa-cmp--side .lwa-cmp__rowhead { width: 80px; background: #ecebe8; font-size: 11px; font-weight: 700; color: #555; vertical-align: middle; border-bottom: 1px solid #fff; }
.lwa-cmp--side thead th { padding-top: 10px; }
.lwa-cmp__name { display: block; font-size: 12px; font-weight: 700; color: #333; text-decoration: underline; line-height: 1.4; }
.lwa-cmp__rate { display: flex; flex-direction: column; align-items: center; }
.lwa-cmp__rate b { font-size: 22px; line-height: 1.2; color: #333; }
.lwa-cmp td.is-first .lwa-cmp__rate b { color: var(--lwa-accent); }
.lwa-crown { position: relative; display: block; width: 34px; margin: 0 auto 4px; }
.lwa-crown svg { display: block; }
.lwa-crown b { position: absolute; left: 0; right: 0; top: 11px; text-align: center; font-size: 11px; color: #fff; }
.lwa-crown--2 svg path, .lwa-crown--2 svg circle { fill: #9aa3ad; } .lwa-crown--2 svg rect { fill: #7d8791; }
.lwa-crown--3 svg path, .lwa-crown--3 svg circle { fill: #c99364; } .lwa-crown--3 svg rect { fill: #a8764b; }
.lwa-crown--4 svg path, .lwa-crown--4 svg circle { fill: #8aa3bd; } .lwa-crown--4 svg rect { fill: #6c87a2; }
.lwa-cmp__btn.is-sub { background: linear-gradient(180deg, #9b9892, #85827b); box-shadow: 0 3px 0 #66635e; outline-color: #85827b; }
.lwa-cmpbox { background: #fff; padding: 16px; border-radius: 4px; box-shadow: 0 2px 10px rgba(0,0,0,.05); }
.lwa-cmpsec__tags { list-style: none; display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; margin: 8px 0 4px; padding: 0; }
.lwa-cmpsec__tags li { background: #e8d18c; color: #4a3d1a; font-size: 12px; font-weight: 700; padding: 2px 8px; }

/* FV下の帯 */
.lwa-fvstrip { background: #6b6fd0; color: #fff; text-align: center; font-weight: 700; font-size: 15px; }
.lwa-fvstrip a { color: inherit; text-decoration: none; display: block; }
.lwa-fvstrip span, .lwa-fvstrip b { display: inline-block; padding: 8px 10px; }
.lwa-fvstrip b { background: #fff; color: #5b5fc7; }
@media (max-width: 600px) { .lwa-fvstrip { font-size: 12px; } .lwa-fvstrip b { display: block; } }

/* 体験者の声・解説（Q&A2） */
.lwa-tabs { margin-top: 24px !important; }
.lwa-tabbar--qa .lwa-tabbar__btn { background: #bdbab4; }
.lwa-tabbar--qa .lwa-tabbar__btn.is-active { background: #36322d; }
.lwa-tabpanel { background: #ecebe8; padding: 20px 24px 24px; margin: 0 !important; }
.lwa-qa2__q { display: flex; align-items: center; gap: 10px; font-size: 18px; margin: 0 0 14px !important; }
.lwa-qa2__q::before { content: "Q"; flex: none; width: 34px; height: 32px; border-radius: 4px; background: #36322d; color: #e8c55a; font-weight: 900; display: grid; place-items: center; font-size: 20px; }
.lwa-users { background: #fff; margin: 0 !important; }
.lwa-users__head { margin: 0 !important; background: #8b8780; color: #fff; text-align: center; font-weight: 700; padding: 6px; font-size: 14px; }
.lwa-user { display: flex; gap: 16px; padding: 16px 20px; border-bottom: 1px dashed #d5d2cc; background: #fff; }
.lwa-users > :last-child .lwa-user, .lwa-users .lwa-user:last-child { border-bottom: 0; }
.lwa-users .wp-block-shortcode { margin: 0 !important; }
.lwa-user__who { flex: none; width: 76px; display: flex; flex-direction: column; align-items: center; gap: 2px; text-align: center; }
.lwa-user__av { width: 64px; height: 64px; border-radius: 50%; overflow: hidden; display: block; background: #f4f2ee; }
.lwa-user__av img, .lwa-user__av svg { width: 100%; height: 100%; object-fit: cover; display: block; }
.lwa-user__name { font-size: 11px; color: #555; line-height: 1.3; }
.lwa-user__age { font-size: 11px; font-weight: 700; background: #ecebe8; padding: 0 6px; }
.lwa-user__body { flex: 1; min-width: 0; font-size: 13px; }
.lwa-user__body p { margin: 0 0 .6em !important; }
.lwa-explain { background: #fff; margin-top: 18px !important; padding: 0 16px 14px; font-size: 13px; }
.lwa-explain__title { margin: 0 -16px 12px !important; background: #f4f4f6; color: var(--lwa-main); text-align: center; font-weight: 700; padding: 6px; }
.lwa-explain__title::before { content: "✎ "; }
@media (max-width: 600px) { .lwa-tabpanel { padding: 14px 10px; } .lwa-user { padding: 12px; gap: 10px; } .lwa-user__who { width: 64px; } .lwa-user__av { width: 52px; height: 52px; } }

/* 手術方法の違い */
.lwa-methods table { width: 100%; border-collapse: collapse; font-size: 12px; text-align: center; table-layout: fixed; }
.lwa-methods thead { border: 0; }
.lwa-methods thead th { border: 0; color: #fff; font-size: 12px; padding: 8px 4px 70px; position: relative; }
.lwa-methods thead th:first-child { background: transparent; width: 22%; }
.lwa-methods thead th:nth-child(2) { background: linear-gradient(#6266c4 0 34px, #a6a8e4 34px); }
.lwa-methods thead th:nth-child(3) { background: linear-gradient(#b89a3e 0 34px, #e8cf7d 34px); }
.lwa-methods thead th:nth-child(n+2)::after { content: "✂"; position: absolute; left: 50%; bottom: 10px; transform: translateX(-50%); width: 52px; height: 52px; border-radius: 50%; background: #fff; color: #555; font-size: 24px; line-height: 52px; }
.lwa-methods thead th:nth-child(3)::after { content: "⌇"; }
.lwa-methods tbody td { border: 0; border-bottom: 1px solid #ecebe8; padding: 10px 6px; vertical-align: middle; }
.lwa-methods tbody td:first-child { background: #ecebe8; font-weight: 700; }
.lwa-methods figcaption { display: none; }
.lwa-targets { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-left: 22% !important; }
.lwa-target { position: relative; display: grid; grid-template-columns: 56px 1fr; align-items: center; gap: 6px; border: 1px solid #a6a8e4; border-radius: 6px; padding: 18px 8px 10px; margin: 26px 0 0 !important; background: #fff; }
.lwa-target:nth-child(2) { border-color: #e8cf7d; }
.lwa-target::before { content: ""; position: absolute; left: 50%; top: -30px; transform: translateX(-50%); border: 18px solid transparent; border-top: 20px solid #a6a8e4; border-bottom: 0; }
.lwa-target:nth-child(2)::before { border-top-color: #e8cf7d; }
.lwa-target__img { margin: 0 !important; grid-row: span 2; }
.lwa-target__img img { width: 56px; height: 56px; object-fit: cover; border-radius: 50%; }
.lwa-target__img .lwa-ph--av { width: 52px; height: 52px; }
.lwa-target__tag { position: absolute; top: -11px; left: 50%; transform: translateX(-50%); margin: 0 !important; background: #6266c4; color: #fff; font-size: 11px; font-weight: 700; border-radius: 999px; padding: 0 10px; white-space: nowrap; }
.lwa-target:nth-child(2) .lwa-target__tag { background: #b89a3e; }
.lwa-target__text { margin: 0 !important; font-size: 12px; line-height: 1.4; }
.lwa-target__text b { font-size: 17px; }
@media (max-width: 600px) { .lwa-targets { margin-left: 0 !important; } .lwa-target { grid-template-columns: 1fr; text-align: center; } .lwa-target__img { grid-row: auto; justify-self: center; } .lwa-target__text b { font-size: 14px; } }

/* STEP */
.lwa-band--cream { background: #fdf3d6; }
.lwa-steps { position: relative; background: #fff; border: 2px solid #36322d; border-radius: 6px; padding: 16px 22px 18px; margin-top: 16px !important; }
.lwa-tabbar--step { gap: 6px; margin-bottom: 14px; }
.lwa-tabbar.lwa-tabbar--step .lwa-tabbar__btn { background: #ecebe8; color: #999; font-size: 13px; clip-path: polygon(0 0, calc(100% - 8px) 0, 100% 50%, calc(100% - 8px) 100%, 0 100%); }
.lwa-tabbar.lwa-tabbar--step .lwa-tabbar__btn.is-active { background: #36322d; color: #fff; }
.lwa-step { margin: 0 !important; padding: 0 22px; }
.lwa-step__img { margin: 0 !important; }
.lwa-step__img img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.lwa-step__title { margin: 12px 0 0 !important; font-weight: 900; font-size: 16px; padding-bottom: 6px; border-bottom: 1px dashed #ccc; }
.lwa-step__title b { color: #b89a3e; margin-right: 8px; font-size: 13px; }
.lwa-step p:not(.lwa-step__title) { font-size: 13px; margin-top: 8px !important; }
.lwa-steps__prev, .lwa-steps__next { position: absolute; top: 45%; width: 24px; height: 40px; border: 0; background: #36322d; color: #fff; cursor: pointer; font-size: 14px; }
.lwa-steps__prev { left: 8px; } .lwa-steps__next { right: 8px; }
.lwa-steps__prev::after { content: "‹"; } .lwa-steps__next::after { content: "›"; }
.lwa-steps__prev[disabled], .lwa-steps__next[disabled] { background: #bbb; cursor: default; }
.lwa-boxword { display: inline-block; background: #36322d; color: #e8c55a; padding: 0 8px; margin-right: 4px; }

/* ポジショニングマップ */
.lwa-map { position: relative; background: #fbf7ea; border: 10px solid #e5dcc4; padding: 34px 40px; margin-top: 16px !important; }
.lwa-map__plot { position: relative; aspect-ratio: 1 / 1.05; background:
	linear-gradient(90deg, transparent calc(50% - 1px), #c9bf9f calc(50% - 1px), #c9bf9f 50%, transparent 50%),
	linear-gradient(transparent calc(50% - 1px), #c9bf9f calc(50% - 1px), #c9bf9f 50%, transparent 50%); }
.lwa-map__hl { position: absolute; right: 2%; top: 0; width: 46%; height: 34%; background: #fbe7b0; color: #e2483d; font-family: var(--lwa-serif); font-weight: 700; padding: 4px 8px; font-size: 14px; }
.lwa-map__pin { position: absolute; transform: translate(-50%, -50%); background: #fff; padding: 4px 8px; box-shadow: 0 1px 3px rgba(0,0,0,.12); text-decoration: none; z-index: 1; max-width: 42%; text-align: center; }
.lwa-map__pin img { max-height: 30px; width: auto; display: block; }
.lwa-map__pin .lwa-logo-text { font-size: 11px; white-space: nowrap; }
.lwa-map__y, .lwa-map__x { position: absolute; margin: 0; display: flex; align-items: center; gap: 4px; font-weight: 700; font-size: 13px; background: #fff; padding: 2px 0 2px 8px; z-index: 2; }
.lwa-map__y b, .lwa-map__x b { background: #36322d; color: #fff; padding: 2px 6px; }
.lwa-map__y--top b, .lwa-map__x b.is-hi { background: var(--lwa-accent); }
.lwa-map__y--top { top: -10px; left: 50%; transform: translateX(-50%); }
.lwa-map__y--bottom { bottom: -10px; left: 50%; transform: translateX(-50%); }
.lwa-map__x { writing-mode: vertical-rl; top: 50%; transform: translateY(-50%); padding: 6px 2px; }
.lwa-map__x--left { left: -10px; } .lwa-map__x--right { right: -10px; }
@media (max-width: 600px) { .lwa-map { padding: 30px 28px; border-width: 6px; } .lwa-map__pin { padding: 2px 4px; } .lwa-map__pin .lwa-logo-text { font-size: 9px; } }

/* 院一覧・キャンペーン・サブ見出し */
.lwa-subhead { text-align: center; font-weight: 900; font-size: 17px; margin: 28px 0 12px; }
.lwa-subhead::after { content: ""; display: block; width: 36px; height: 3px; margin: 6px auto 0; background: #36322d; }
.lwa-branch { background: #8b8780; color: #fff; border-bottom: 1px solid #a7a39c; }
.lwa-branch summary { cursor: pointer; list-style: none; padding: 7px 36px 7px 12px; font-size: 13px; font-weight: 700; position: relative; }
.lwa-branch summary::-webkit-details-marker { display: none; }
.lwa-branch summary::after { content: "+"; position: absolute; right: 10px; top: 50%; transform: translateY(-50%); width: 18px; height: 18px; border-radius: 50%; background: #fff; color: #8b8780; text-align: center; line-height: 18px; font-size: 14px; }
.lwa-branch[open] summary::after { content: "−"; }
.lwa-branch ul { list-style: none; margin: 0; padding: 8px 12px; background: #fff; color: #333; font-size: 12px; }
.lwa-branch li { padding: 4px 0; border-bottom: 1px dotted #ddd; }
.lwa-branch li span { display: block; color: #777; }
.lwa-campaign { margin: 22px auto 0; max-width: 400px; }
.lwa-campaign img { width: 100%; display: block; }
.lwa-moreitems { text-align: center; margin: 8px 0 24px; }
.lwa-moreitems__btn { border: 1px solid #999; background: #fff; border-radius: 999px; padding: 8px 40px 8px 28px; font: inherit; font-size: 13px; color: #666; cursor: pointer; position: relative; }
.lwa-moreitems__btn::after { content: "▼"; position: absolute; right: 16px; font-size: 9px; top: 50%; transform: translateY(-50%); }
.lwa-item[hidden] { display: none; }
.lwa-item__score, .lwa-final__score { display: none; }

/* 検索：ボタン選択 */
.lwa-search__group { display: grid; grid-template-columns: 70px 1fr; gap: 10px; border: 0; margin: 0 0 8px; padding: 0; }
.lwa-search__group legend { float: left; width: 70px; background: #ecebf6; font-size: 12px; font-weight: 700; display: grid; place-items: center; align-self: stretch; text-align: center; padding: 6px 2px; }
.lwa-opts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.lwa-opt { position: relative; display: flex; align-items: center; gap: 6px; border: 1px solid #ddd; background: #fff; padding: 8px; font-size: 12px; cursor: pointer; line-height: 1.3; }
.lwa-opt input { accent-color: var(--lwa-main); margin: 0; flex: none; }
.lwa-opt:has(input:checked) { background: #fff8e3; border-color: #e5c35a; }
.lwa-search__checkhead { text-align: center; font-weight: 700; font-size: 13px; margin: 16px 0 6px; border-bottom: 1px dotted #aaa; padding-bottom: 6px; }
.lwa-search__title em { font-style: normal; color: var(--lwa-main); }
@media (max-width: 600px) { .lwa-opts { grid-template-columns: 1fr 1fr; } .lwa-search__group { grid-template-columns: 1fr; } .lwa-search__group legend { width: 100%; float: none; } }

/* =========================================================
   スキン：チャコール×ゴールド（包茎サイト型）
   ========================================================= */
.lwa-skin-dark { --lwa-ink: #36322d; --lwa-gold: #c9a64a; --lwa-gold2: #e8d9a8; --lwa-paper: #f2f1ee; }
.lwa-skin-dark .lwa-header__title a { color: var(--lwa-ink); font-family: var(--lwa-en); font-style: italic; }
.lwa-skin-dark .lwa-logos { background: #fff; }
.lwa-skin-dark .lwa-logos li a { border: 1px solid #ddd; border-radius: 0; }

/* セクション見出し */
.lwa-skin-dark .lwa-sechead__main { color: #333; }
.lwa-skin-dark .lwa-sechead__sub::before, .lwa-skin-dark .lwa-sechead__sub::after { content: "?"; color: #e8c55a; font-family: var(--lwa-en); }
.lwa-skin-dark .lwa-sechead--line .lwa-sechead__sub::before, .lwa-skin-dark .lwa-sechead--line .lwa-sechead__sub::after { content: "———"; color: var(--lwa-gold); letter-spacing: -2px; }
.lwa-skin-dark .lwa-sechead--arrow .lwa-sechead__sub { display: inline-block; border-bottom: 2px solid #333; padding: 0 14px 4px; position: relative; }
.lwa-skin-dark .lwa-sechead--arrow .lwa-sechead__sub::before, .lwa-skin-dark .lwa-sechead--arrow .lwa-sechead__sub::after { content: none; }
.lwa-skin-dark .lwa-sechead--box .lwa-sechead__sub { display: inline-block; border: 2px solid var(--lwa-main); border-left-width: 6px; background: #fff; padding: 2px 12px; font-family: inherit; font-size: 14px; }
.lwa-skin-dark .lwa-sechead--box .lwa-sechead__sub::before, .lwa-skin-dark .lwa-sechead--box .lwa-sechead__sub::after { content: none; }
.lwa-skin-dark .lwa-tag--sm { background: var(--lwa-main); font-size: 13px; padding: 2px 12px; margin-top: 6px; }
.lwa-skin-dark .lwa-tag--sm::after { content: none; }
.lwa-skin-dark .lwa-sechead--q .lwa-sechead__main { font-size: 34px; }
.lwa-skin-dark .lwa-num { color: var(--lwa-main); font-style: italic; font-family: "Noto Sans JP", sans-serif; font-weight: 900; }
.lwa-skin-dark .lwa-num--gold { color: var(--lwa-gold); }
.lwa-skin-dark .lwa-ribbonhead { display: inline-block; background: var(--lwa-ink); color: #f2dd9b; font-size: 20px; padding: 2px 24px; clip-path: polygon(0 0, 100% 0, 96% 50%, 100% 100%, 0 100%, 4% 50%); margin-bottom: 4px; }
.lwa-skin-dark .lwa-band--best { clip-path: none; background: linear-gradient(#fff, #f2f1ee 140px); padding-top: 50px; }

/* PICKUP TOP3 */
.lwa-skin-dark .lwa-cmpsec { background: #4a4741; color: #fff; padding-top: 28px; }
.lwa-skin-dark .lwa-cmpsec .lwa-sechead__main { color: #fff; font-size: 28px; }
.lwa-skin-dark .lwa-cmpsec .lwa-top { color: #fff; font-family: inherit; font-style: italic; }
.lwa-skin-dark .lwa-cmpsec .lwa-sechead__sub { font-family: var(--lwa-en); font-size: 13px; color: #eee; letter-spacing: .2em; }
.lwa-skin-dark .lwa-cmpsec .lwa-sechead__sub::before, .lwa-skin-dark .lwa-cmpsec .lwa-sechead__sub::after { content: "————————"; color: #aaa; letter-spacing: -2px; font-family: inherit; }
.lwa-skin-dark .lwa-cmpsec .lwa-note { color: #ddd; }
.lwa-skin-dark .lwa-cmpsec .lwa-tabbar { padding: 0 8%; }
.lwa-skin-dark .lwa-cmp-wrap { background: #fff; }
.lwa-skin-dark .lwa-cmp { border: 0; color: #333; }
.lwa-skin-dark .lwa-cmp th, .lwa-skin-dark .lwa-cmp td { border-left: 0; border-bottom: 1px dashed #ddd; vertical-align: middle; }
.lwa-skin-dark .lwa-cmp .is-first { background: #fdf6dc; box-shadow: inset 2px 0 0 #ecd27a, inset -2px 0 0 #ecd27a; }
.lwa-skin-dark .lwa-cmp thead .is-first { box-shadow: inset 2px 2px 0 #ecd27a, inset -2px 0 0 #ecd27a; }
.lwa-skin-dark .lwa-cmp__official .is-first { box-shadow: inset 2px -2px 0 #ecd27a, inset -2px 0 0 #ecd27a; }
.lwa-skin-dark .lwa-cmp__logo { border: 0; margin-bottom: 4px; height: 46px; }
.lwa-skin-dark .lwa-cmp__btn { border-radius: 2px; outline: 0; border: 0; }
.lwa-skin-dark .lwa-cmp__btn.is-go { background: linear-gradient(180deg, #4fc274, var(--lwa-cta)); box-shadow: 0 3px 0 #2a8a4a; }
.lwa-skin-dark .lwa-cmp__btn::after { content: "↗"; font-size: 12px; }
.lwa-skin-dark .lwa-tabbar__btn { background: #9a978f; }
.lwa-skin-dark .lwa-tabbar__btn.is-active { background: var(--lwa-main); }
.lwa-skin-dark .lwa-mark--c { color: #f0923a; }

/* ランキング */
.lwa-skin-dark .lwa-ranking { background: #fff; }
.lwa-skin-dark .lwa-ranking__head { background: transparent; color: #333; padding-top: 40px; margin-top: 0; border-top: 0; }
.lwa-skin-dark .lwa-ranking__head::before, .lwa-skin-dark .lwa-ranking__head::after { content: none; }
.lwa-skin-dark .lwa-ranking__sub { transform: none; }
.lwa-skin-dark .lwa-ranking__sub span { background: linear-gradient(90deg, #b8963c, #e9cf7c, #b8963c); color: #fff; font-family: inherit; font-weight: 900; font-size: 20px; clip-path: polygon(0 0, 100% 0, 96% 50%, 100% 100%, 0 100%, 4% 50%); border-radius: 0; padding: 4px 30px; }
.lwa-skin-dark .lwa-ranking__title { color: #333 !important; font-size: 40px; margin-top: 6px; }
.lwa-skin-dark .lwa-ranking__title .lwa-top { color: #333; font-family: "Noto Sans JP", sans-serif; font-weight: 900; }
.lwa-skin-dark .lwa-ranking__title .lwa-top b { color: var(--lwa-gold); font-style: italic; }
.lwa-skin-dark .lwa-ranking__title::before, .lwa-skin-dark .lwa-ranking__title::after { content: "❦"; color: var(--lwa-gold); font-size: .6em; margin: 0 8px; vertical-align: middle; }
.lwa-skin-dark .lwa-ranking__body { padding-top: 20px; }
.lwa-skin-dark .lwa-item { border-radius: 0; box-shadow: none; background: #fdf3d6; padding-bottom: 24px; }
.lwa-skin-dark .lwa-item--r2 { background: #e2e8f1; }
.lwa-skin-dark .lwa-item--r3 { background: #f3e5d6; }
.lwa-skin-dark .lwa-item--r4 { background: #ebece9; }
.lwa-skin-dark .lwa-item__title { background: var(--lwa-ink); color: #fff; border: 0; border-bottom: 3px solid #1d1a17; padding: 8px 8px 8px 12px; font-size: 22px; }
.lwa-skin-dark .lwa-ribbon { width: 40px; height: 40px; margin: 0; padding: 0; align-items: center; border-radius: 50%; clip-path: none; font-family: var(--lwa-en); font-size: 22px; color: #6a5a2e; box-shadow: inset 0 0 0 3px rgba(255,255,255,.5); }
.lwa-skin-dark .lwa-ribbon--2 { color: #555; } .lwa-skin-dark .lwa-ribbon--3 { color: #5c3d22; }
.lwa-skin-dark .lwa-item__name { flex: 1; min-width: 0; }
.lwa-skin-dark .lwa-item__score { display: flex; flex-direction: column; align-items: center; background: #fff; color: #333; padding: 0 6px 2px; flex: none; line-height: 1.2; }
.lwa-skin-dark .lwa-item__score small { font-size: 10px; background: #8b8780; color: #fff; display: block; width: calc(100% + 12px); text-align: center; }
.lwa-skin-dark .lwa-item__score .lwa-stars { font-size: 12px; }
.lwa-skin-dark .lwa-item__score b { color: var(--lwa-accent); font-size: 20px; }
.lwa-skin-dark .lwa-item__in { padding-top: 26px; }
.lwa-skin-dark .lwa-item__banner img { border: 0; }
.lwa-skin-dark .lwa-tabbar--spec { margin-top: 22px; }
.lwa-skin-dark .lwa-tabbar--spec .lwa-tabbar__btn { background: #b5b2ac; }
.lwa-skin-dark .lwa-tabbar--spec .lwa-tabbar__btn.is-active { background: var(--lwa-ink); }
.lwa-skin-dark .lwa-spec { margin-top: 0; background: #fff; }
.lwa-skin-dark .lwa-tabbar--spec + div .lwa-spec, .lwa-skin-dark .lwa-item__in > .lwa-spec:first-child { margin-top: 0; }
.lwa-skin-dark .lwa-spec th { width: 36%; background: #ecebe8; border-right: 0; font-size: 12px; }
.lwa-skin-dark .lwa-spec td { text-align: center; font-weight: 700; font-size: 12px; }
.lwa-skin-dark .lwa-spec th, .lwa-skin-dark .lwa-spec td { border-top: 0; border-bottom: 1px dashed #ddd; }
.lwa-skin-dark .lwa-points { border: 2px solid #e2cb83; background: #fff; }
.lwa-skin-dark .lwa-points__title span { background: #8f7a3c; font-family: inherit; font-size: 13px; letter-spacing: .05em; }
.lwa-skin-dark .lwa-points__title span::after { content: none; }
.lwa-skin-dark .lwa-points li::before { content: "✓"; width: 15px; height: 15px; left: 2px; top: 9px; border: 1.5px solid #c9a64a; border-radius: 2px; transform: none; color: #e2483d; font-size: 13px; line-height: 12px; text-align: center; font-weight: 900; }
.lwa-skin-dark .lwa-cta__btn { border-radius: 4px; border: 0; outline: 0; width: 100%; max-width: 100%; justify-content: center; position: relative; padding-right: 60px; animation: none;
	background: linear-gradient(180deg, #52c47a 0%, var(--lwa-cta) 60%, #33a25a 100%); box-shadow: 0 4px 0 #2a8a4a; }
.lwa-skin-dark .lwa-cta__arrow { position: absolute; right: 0; top: 0; bottom: 0; width: 44px; height: auto; border-radius: 0 4px 4px 0; background: #2f9a55; }
.lwa-skin-dark .lwa-cta__arrow::after { left: 16px; top: 50%; margin-top: -6px; width: 0; height: 0; border: 6px solid transparent; border-left: 9px solid #fff; border-right: 0; transform: none; }
.lwa-skin-dark .lwa-cta__micro { color: #333; }
.lwa-skin-dark .lwa-reviews { padding-bottom: 0; }
.lwa-skin-dark .lwa-users { background: #fff; }

/* 最終おすすめ */
.lwa-skin-dark .lwa-final { background: linear-gradient(#fff, #fdf3d6 100px); clip-path: none; position: relative; }
.lwa-skin-dark .lwa-final::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 60px; background: radial-gradient(120% 60px at 50% 0, #fff 70%, transparent 71%); border-top: 3px solid var(--lwa-gold); border-radius: 50% 50% 0 0 / 30px 30px 0 0; }
.lwa-skin-dark .lwa-final__lead { font-family: inherit; font-weight: 900; font-size: 20px; position: relative; }
.lwa-skin-dark .lwa-final__arrows { display: none; }
.lwa-skin-dark .lwa-final__card { background: #fff; margin-top: 72px; }
.lwa-skin-dark .lwa-final__plate { background: none; padding-top: 0; }
.lwa-skin-dark .lwa-final__crown { top: -50px; width: 54px; }
.lwa-skin-dark .lwa-final__score { display: inline-flex; align-items: center; gap: 4px; position: absolute; left: 50%; top: -20px; transform: translateX(-50%); background: #fff; padding: 0 10px; font-size: 11px; font-weight: 700; white-space: nowrap; border: 1px solid #eee; z-index: 1; }
.lwa-skin-dark .lwa-final__score b { color: var(--lwa-accent); font-size: 18px; }
.lwa-skin-dark .lwa-final__plate p { display: flex; align-items: center; gap: 12px; width: 100%; min-width: 0; background: var(--lwa-ink); color: #fff; outline: 0; border: 0; text-align: left; font-size: 22px; padding: 10px 12px; }
.lwa-skin-dark .lwa-final .lwa-item { background: #fff; }

/* 検索 */
.lwa-skin-dark .lwa-search { padding-top: 70px; }
.lwa-skin-dark .lwa-search__head { margin: 0 calc(var(--lwa-pad) * -1) 20px; }
.lwa-skin-dark .lwa-search__sub { background: #6b6fd0; color: #fff; font-size: 16px; padding: 2px; }
.lwa-skin-dark .lwa-search__sub::before { content: "»»»»»»  "; letter-spacing: -2px; opacity: .6; }
.lwa-skin-dark .lwa-search__sub::after { content: "  ««««««"; letter-spacing: -2px; opacity: .6; }
.lwa-skin-dark .lwa-search__box { background: #fff; padding: 0; }
.lwa-skin-dark .lwa-check { box-shadow: none; padding: 2px 4px; gap: 6px; font-size: 12px; color: #555; font-weight: 400; flex-direction: row-reverse; }
.lwa-skin-dark .lwa-check i { width: 16px; height: 16px; background: #e8e8ef; }
.lwa-skin-dark .lwa-check i::after { left: 5px; top: 1px; width: 5px; height: 9px; }
.lwa-skin-dark .lwa-search__checks { justify-content: flex-start; margin-top: 4px; }
.lwa-skin-dark .lwa-search__submit { background: #4f8be0; }

/* フッター */
.lwa-skin-dark .lwa-footer__brand { background: var(--lwa-ink); padding-bottom: 0; }
.lwa-skin-dark .lwa-footer__brand a { background: transparent; color: #fff; font-family: var(--lwa-en); font-style: italic; }
.lwa-skin-dark .lwa-footer__bar { background: var(--lwa-ink); }
@media (max-width: 600px) {
	.lwa-skin-dark .lwa-item__title { font-size: 17px; gap: 8px; }
	.lwa-skin-dark .lwa-ribbon { width: 32px; height: 32px; font-size: 18px; }
	.lwa-skin-dark .lwa-ranking__title { font-size: 30px; }
	.lwa-skin-dark .lwa-final__plate p { font-size: 17px; }
	.lwa-skin-dark .lwa-sechead--q .lwa-sechead__main { font-size: 26px; }
}

.lwa-skin-dark .lwa-pointbox { border: 0; border-radius: 4px; }
.lwa-skin-dark .lwa-pointbox__title { color: #333; padding-left: 52px; border-bottom: 2px solid #ecebe8; }
.lwa-skin-dark .lwa-pointbox__title::before { border-radius: 2px; border: 0; background: var(--lwa-ink); color: #e8c55a; width: 26px; height: 28px; line-height: 28px; font-size: 17px; left: 16px; font-family: inherit; font-weight: 900; }
.lwa-skin-dark .lwa-pointbox__title::after { content: none; }

.lwa-adtag { text-align: center; line-height: 0; }
.lwa-adtag img { max-width: 100%; height: auto; }
.lwa-adtag img[width="1"], .lwa-adtag img[height="1"] { position: absolute; width: 1px; height: 1px; opacity: 0; }
.lwa-item__banner > a > img { width: 100%; display: block; }
