.kj-hero .kj-hero__badge,
.kj-badge {
	display: inline-block;
	padding: 0.15rem 0.55rem;
	border-radius: 3px;
	background: #004488;
	color: #fff;
	font-size: 12px;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: 0.02em;
}

.kj-hero .kj-hero__badge {
	margin-bottom: 0.65rem;
}

.kj-lead,
.kj-muted {
	color: #666;
	font-size: 15px;
	line-height: 1.7;
}

.kj-profile,
.kj-archive {
	margin-top: 0;
	padding-bottom: 12px;
}

.single-vps_brand .post-wrapper,
.single-plan .post-wrapper {
	padding-bottom: 36px !important;
}

.kj-archive__head {
	margin: 0 0 18px;
}

.kj-archive__head h1 {
	margin: 0 0 8px;
}

.kj-archive__head .kj-lead {
	margin: 0;
}

.kj-archive .kj-sheet-block h3 {
	margin: 0 -1.25vw 16px;
	padding: 12px 1.25vw;
	font-size: 18px;
}

.kj-archive .kj-sheet-block h3::before {
	height: 20px;
}

.kj-home-block,
.kj-filter-block {
	margin: 0 0 1.5rem;
}

.kj-filter-block h3,
.kj-profile h2,
.kj-archive h2 {
	margin: 0 0 0.65rem;
	font-size: 16px;
	font-weight: 600;
}

.kj-chip-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.kj-chip-row--compact {
	gap: 0.3rem;
}

.kj-chip {
	display: inline-block;
	padding: 0.15rem 0.55rem;
	border: 1px solid #cfd8e3;
	border-radius: 3px;
	background: #f4f7fb;
	color: #004488 !important;
	font-size: 12px;
	line-height: 1.5;
	text-decoration: none !important;
}

.kj-chip:hover {
	background: #004488;
	border-color: #004488;
	color: #fff !important;
}

.kj-chip--pay {
	background: #fff4d6;
	border-color: #f0c14b;
	color: #8a5a00 !important;
	border-radius: 999px;
}

.kj-chip--loc {
	background: #e6f7ee;
	border-color: #7dcea0;
	color: #1a7a46 !important;
	border-radius: 999px;
}

.kj-chip--line {
	background: #e8efff;
	border-color: #7ea0f0;
	color: #2b5bd7 !important;
	border-radius: 999px;
}

.kj-chip.kj-chip--loc:hover {
	background: #d5f0e2;
	border-color: #5fba88;
	color: #1a7a46 !important;
}

.kj-chip.kj-chip--line:hover {
	background: #dce6ff;
	border-color: #5b86e8;
	color: #2b5bd7 !important;
}

.kj-chip.kj-chip--pay:hover {
	background: #ffe9b0;
	border-color: #e0b03a;
	color: #8a5a00 !important;
}

.kj-plan-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 12px 2px 4px;
}

.kj-table-wrap {
	width: 100%;
	overflow-x: auto;
}

.kj-plan-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
}

.kj-plan-table th,
.kj-plan-table td {
	padding: 14px 12px;
	border-bottom: 1px solid #ececec;
	text-align: left;
	vertical-align: middle;
}

.kj-plan-table td:first-child {
	min-width: 180px;
}

.kj-plan-spec {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.kj-plan-spec em {
	display: inline-block;
	min-width: 2.6em;
	margin-right: 6px;
	color: #888;
	font-style: normal;
	font-size: 12px;
}

.kj-plan-actions {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.kj-plan-actions .kj-btn {
	margin: 0;
	padding: 6px 12px;
	text-align: center;
	white-space: nowrap;
}

.kj-plan-table th {
	background: #f4f7fb;
	font-weight: 600;
	white-space: nowrap;
}

.kj-plan-table tr.is-recommended {
	background: #f7fbff;
}

.kj-plan-name {
	font-weight: 600;
	color: #004488;
	text-decoration: none;
}

.kj-plan-tagline {
	margin-top: 0.25rem;
	color: #777;
	font-size: 12px;
	font-weight: 400;
}

.kj-price {
	color: #b42318;
	font-weight: 700;
	white-space: nowrap;
}

.kj-btn {
	display: inline-block;
	margin: 0.15rem 0.15rem 0 0;
	padding: 0.28rem 0.7rem;
	border-radius: 3px;
	font-size: 13px;
	line-height: 1.4;
	text-decoration: none !important;
}

.kj-btn--primary {
	background: #004488;
	color: #fff !important;
}

.kj-btn--primary:hover {
	background: #266aae;
}

.kj-btn--ghost {
	background: #fff;
	border: 1px solid #cfd8e3;
	color: #004488 !important;
}

.kj-brand-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.85rem;
}

.kj-brand-card {
	padding: 0.9rem 1rem;
	border: 1px solid #e5e8ee;
	border-radius: 8px;
	background: #fff;
}

.kj-brand-card__link {
	display: flex;
	gap: 0.85rem;
	color: inherit;
	text-decoration: none !important;
}

.kj-brand-card__logo {
	flex: 0 0 52px;
	width: 52px;
	height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	border: 1px solid #ececec;
	border-radius: 8px;
	background: #f7f8fa;
}

.kj-brand-card__logo--lg {
	width: 72px;
	height: 72px;
	flex-basis: 72px;
}

.kj-brand-card__logo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.kj-brand-card h3 {
	margin: 0 0 0.2rem;
	font-size: 18px;
	line-height: 1.35;
}

.kj-brand-card__en {
	margin: 0 0 0.35rem;
	color: #888;
	font-size: 13px;
	line-height: 1.4;
}

.kj-profile h1 em {
	font-style: normal;
	color: #888;
	font-weight: 400;
	font-size: 0.85em;
}

.kj-brand-card__tagline {
	margin: 0;
	font-size: 13px;
	color: #666;
	line-height: 1.6;
}

.kj-brand-card .kj-chip-row {
	margin-top: 0.65rem;
}

.kj-side-brands .kj-brand-grid,
.kj-brand-grid--stack {
	gap: 10px;
}

.kj-brand-card--stack {
	padding: 16px 14px 14px;
	border: 1px solid #e6ebf2;
	border-radius: 10px;
	background: #f8fafc;
	box-shadow: none;
	transition: border-color 0.15s ease, background 0.15s ease;
}

.kj-brand-card--stack:hover {
	border-color: #b9cce0;
	background: #fff;
}

.kj-brand-card--stack .kj-brand-card__link {
	flex-direction: column;
	align-items: center;
	gap: 0;
	text-align: center;
}

.kj-brand-card--stack .kj-brand-card__logo {
	flex: none;
	width: auto;
	height: auto;
	margin: 0 0 10px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

.kj-brand-card--stack .kj-brand-card__logo img {
	width: auto;
	max-width: 140px;
	height: 36px;
	object-fit: contain;
}

.kj-brand-card--stack .kj-brand-card__body {
	width: 100%;
}

.kj-brand-card--stack h3 {
	margin: 0;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
	color: #1f2a37;
}

.kj-brand-card--stack .kj-brand-card__en {
	margin: 3px 0 0;
	font-size: 12px;
	color: #8a93a0;
	letter-spacing: 0.02em;
}

.kj-brand-card--stack .kj-brand-card__tagline {
	margin: 10px 0 0;
	padding-top: 10px;
	border-top: 1px solid #e6ebf2;
	font-size: 12px;
	line-height: 1.65;
	color: #5c6570;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-align: left;
}

.kj-brand-sheet {
	margin: 0 0 16px;
	padding: 18px 18px 8px;
	border: 1px solid #e6ebf2;
	border-radius: 12px;
	background: #fff;
}

.kj-sheet-block {
	margin: 0 0 22px;
}

.kj-sheet-block h3 {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 -18px 12px;
	padding: 8px 18px;
	background: #f4f5f7;
	border-bottom: 1px solid #e5e7eb;
	color: #243044;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
}

.kj-sheet-block h3::before {
	content: "";
	flex: 0 0 auto;
	width: 4px;
	height: 16px;
	border-radius: 2px;
	background: #2f7cf6;
}

.kj-fact {
	color: #5c6775;
	font-size: 13px;
}

.kj-tabs {
	position: relative;
	margin: 0 0 28px;
	border: 1px solid #e6ebf2;
	border-radius: 12px;
	background: #fff;
	overflow: hidden;
}

.kj-tabs__input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.kj-tabs__nav {
	display: flex;
	gap: 0;
	background: #f4f5f7;
	border-bottom: 1px solid #e5e7eb;
}

.kj-tabs__nav label {
	margin: 0;
	padding: 12px 18px;
	color: #5c6775;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	border-bottom: 2px solid transparent;
}

.kj-tabs__panel {
	display: none;
	padding: 14px 16px 28px;
}

.kj-tabs__input:checked ~ .kj-tabs__nav label {
	color: #1d62d6;
	border-bottom-color: #1d62d6;
}

.kj-tabs__input:checked ~ .kj-tabs__panel--posts {
	display: block;
}

.kj-profile__head {
	display: flex;
	align-items: center;
	gap: 1.15rem;
	margin-bottom: 1rem;
}

.kj-profile__head .kj-profile__logo {
	flex: 0 0 auto;
	width: auto;
	min-width: 120px;
	min-height: 48px;
	justify-content: flex-start;
}

.kj-profile__head .kj-profile__logo img {
	max-width: 148px;
	max-height: 44px;
	width: auto;
	height: auto;
}

.kj-kicker {
	margin: 0 0 0.35rem;
	color: #888;
	font-size: 13px;
}

.kj-profile h1 {
	margin: 0 0 0.4rem;
	font-size: 26px;
	line-height: 1.35;
}

.kj-plan-profile__tagline {
	margin: 0 0 10px;
	color: #e11d2e;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.7;
	text-decoration: underline;
}

.kj-meta-line {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	align-items: center;
}

.kj-action-row,
.kj-price-bar {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	align-items: center;
	margin: 0 0 1.25rem;
}

.kj-action-row .kj-btn,
.kj-action-row .kj-coupon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-height: 42px;
	margin: 0;
	padding: 0 18px;
	border-width: 1px;
	border-style: solid;
	border-radius: 6px;
	font-size: 15px;
	line-height: 1;
}

.kj-action-row .kj-btn--primary {
	border-color: #004488;
}

.kj-action-row .kj-coupon {
	border-style: dashed;
}

.kj-price-bar strong {
	color: #b42318;
	font-size: 22px;
}

.kj-coupon {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0.3rem 0.7rem;
	background: #fff8e8;
	border: 1px dashed #d4b45a;
	border-radius: 3px;
	font-size: 13px;
}

.kj-coupon__copy {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 28px;
	height: 24px;
	padding: 0 6px;
	gap: 4px;
	border: 0;
	border-radius: 4px;
	background: transparent;
	color: #8a6d1b;
	font-size: 12px;
	line-height: 1;
	cursor: pointer;
}

.kj-coupon__copy:hover,
.kj-coupon__copy.is-copied {
	background: #f3e4b8;
	color: #6b5414;
}

.kj-coupon__icon {
	display: block;
}

.kj-spec-grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 0;
	margin: 0;
	border: 1px solid #e5e7eb;
}

.kj-spec-grid div {
	padding: 12px 10px;
	background: #fff;
	border-right: 1px solid #eef1f5;
	text-align: center;
}

.kj-spec-grid div:last-child {
	border-right: 0;
}

.kj-spec-grid span {
	display: block;
	margin-top: 4px;
	color: #8a93a0;
	font-size: 12px;
	font-weight: 400;
}

.kj-spec-grid strong {
	display: block;
	color: #243042;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.35;
}

.kj-plan-review {
	margin: 0;
	padding: 14px 12px 10px;
	border: 1px solid #e5e7eb;
	border-top: 0;
}

.kj-plan-review h4 {
	margin: 0 0 8px;
	color: #243044;
	font-size: 14px;
	font-weight: 700;
}

.kj-plan-review p {
	margin: 0;
	color: #444;
	font-size: 15px;
	line-height: 1.75;
}

.kj-plan-profile__price {
	color: #b42318;
	font-size: 22px;
	font-weight: 700;
	line-height: 1;
}

.kj-plan-profile .kj-muted {
	margin: -4px 0 18px;
}

.kj-plan-profile .kj-action-row {
	margin-top: 4px;
}

.kj-plan-brand {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 4px 0 8px;
}

.kj-plan-brand__main {
	display: flex;
	align-items: center;
	gap: 14px;
	flex: 1 1 auto;
	min-width: 0;
	color: inherit;
	text-decoration: none !important;
}

.kj-plan-brand__btn {
	flex: 0 0 auto;
	align-self: center;
	min-width: 96px;
	padding: 8px 16px;
}

.kj-plan-brand__body {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.kj-plan-brand__name {
	color: #243042;
	font-size: 16px;
	font-weight: 700;
}

.kj-plan-brand__name em {
	color: #888;
	font-style: normal;
	font-weight: 400;
	font-size: 13px;
}

.kj-plan-brand__tagline {
	color: #666;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.65;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
}

.kj-review {
	margin: 0 0 1.25rem;
	padding: 1rem 1.1rem;
	background: #f7fbff;
	border-left: 3px solid #004488;
}

.kj-review h2 {
	margin-top: 0;
}

.kj-adv-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 8px;
}

.kj-adv-card {
	padding: 10px 12px 10px 14px;
	border: 1px solid #e6ebf2;
	border-left: 3px solid #2f7cf6;
	border-radius: 8px;
	background: #f7f9fc;
	color: #243044;
	font-size: 14px;
	line-height: 1.6;
}

.kj-prose {
	margin: 0 0 14px;
	color: #444;
	font-size: 15px;
	line-height: 1.8;
}

.kj-prose p {
	margin: 0 0 0.85em;
}

.kj-offer-table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	border-radius: 0;
	font-size: 12px;
	font-weight: 400;
}

.kj-offer-table th,
.kj-offer-table td {
	border: 1px solid #e5e7eb;
	border-radius: 0;
}

.kj-offer-table th {
	padding: 8px 6px;
	background: #f7f8fa;
	color: #8a93a0;
	font-size: 12px;
	font-weight: 400;
	text-align: center;
	white-space: nowrap;
}

.kj-offer-table th:first-child {
	text-align: left;
}

.kj-offer-table td {
	padding: 10px 8px;
	background: #fff;
	color: #3a4452;
	font-size: 12px;
	font-weight: 400;
	text-align: center;
	vertical-align: middle;
	white-space: nowrap;
}

.kj-offer-table td:first-child {
	text-align: left;
	white-space: normal;
}

.kj-offer-table td strong {
	display: block;
	color: #3a4452;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.4;
}

.kj-offer-table__name a {
	color: #3a4452;
	font-size: 12px;
	font-weight: 400;
	text-decoration: none;
}

.kj-offer-table__note {
	margin: 4px 0 0;
	color: #e11d2e;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.5;
	text-decoration: underline;
	white-space: normal;
}

.kj-offer-table__price span {
	display: block;
	margin-top: 2px;
	color: #8a93a0;
	font-size: 12px;
}

.kj-offer__order {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 56px;
	height: 28px;
	padding: 0 12px;
	border-radius: 6px;
	background: #f5b400;
	color: #1a1a1a !important;
	font-size: 12px;
	font-weight: 400;
	text-decoration: none !important;
}

.kj-offer__order:hover {
	background: #e0a500;
}

.kj-faq__item {
	margin: 0 0 12px;
	padding: 14px 0;
	border: 0;
	border-bottom: 1px solid #eef1f5;
	border-radius: 0;
	background: transparent;
}

.kj-faq__item:last-child {
	margin-bottom: 0;
	border-bottom: 0;
}

.kj-faq__q,
.kj-faq__a {
	margin: 0;
	line-height: 1.7;
}

.kj-faq__q {
	color: #243044;
	font-size: 15px;
	font-weight: 700;
}

.kj-faq__a {
	margin-top: 6px;
	color: #666;
	font-size: 14px;
}

.post-wrapper .kj-related-posts.wp-block-post-template {
	gap: 0;
}

.post-wrapper .kj-related-posts > .wp-block-post {
	padding: 20px 0 22px;
	border-bottom: 1px solid #eef1f5;
}

.post-wrapper .kj-related-posts > .wp-block-post:last-child {
	border-bottom: 0;
	padding-bottom: 8px;
}

.post-wrapper .kj-related-posts .wp-block-separator {
	display: none !important;
}

.post-wrapper .kj-related-posts .wp-block-columns {
	gap: 20px !important;
}

.post-wrapper .kj-related-posts .wp-block-columns > .wp-block-column:last-child {
	gap: 10px !important;
}

.post-wrapper .kj-related-posts .wp-block-columns > .wp-block-column:first-child,
.post-wrapper .kj-related-posts .wp-block-post-featured-image,
.post-wrapper .kj-related-posts .wp-block-post-featured-image a,
.post-wrapper .kj-related-posts .wp-block-post-featured-image img {
	width: 168px !important;
	max-width: 168px;
	height: 112px !important;
	max-height: 112px;
}

.post-wrapper .kj-related-posts .wp-block-columns > .wp-block-column:first-child {
	flex: 0 0 168px !important;
}

.post-wrapper .kj-related-posts .wp-block-post-title,
.post-wrapper .kj-related-posts .wp-block-post-title a {
	font-size: 17px !important;
	font-weight: 600;
	line-height: 1.45 !important;
	text-decoration: none !important;
}

.post-wrapper .kj-related-posts .wp-block-group.has-gray-color {
	gap: 0.35em !important;
	color: #8a93a0;
}

.post-wrapper .kj-related-posts .wp-block-post-excerpt p,
.post-wrapper .kj-related-posts .wp-block-post-excerpt .wp-block-post-excerpt__excerpt {
	margin-top: 2px !important;
	color: #666;
	font-size: 14px !important;
	line-height: 1.75 !important;
	-webkit-line-clamp: 2;
	line-clamp: 2;
}

.kj-empty {
	color: #888;
	font-size: 14px;
}

.footer-widget .kj-chip {
	background: transparent;
	border-color: rgba(255, 255, 255, 0.35);
	color: #fff !important;
}

.footer-widget .kj-chip:hover {
	background: #fff;
	color: #2a2a2a !important;
}

.kj-site-logo {
	display: flex;
	align-items: center;
	flex: 0 0 auto;
	line-height: 0;
}

.kj-header-logo-rule {
	flex: 0 0 auto;
	width: 1px;
	height: 52px;
	margin-left: 16px;
	background: #d8dde6;
}

.kj-site-logo img {
	display: block;
	width: auto;
	height: 68px;
	max-width: min(280px, 52vw);
}

.kj-header-brand {
	padding-top: 10px !important;
	padding-bottom: 10px !important;
}

.kj-header-brand > .wp-block-group {
	width: 100%;
	align-items: center;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.kj-header-latest {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	min-width: 0;
	flex: 1 1 auto;
	margin-left: 28px;
}

.kj-header-latest__table {
	width: 1050px;
	max-width: 100%;
	min-width: 0;
	border-collapse: collapse;
	border-spacing: 0;
	table-layout: fixed;
	border: 0;
}

.kj-header-latest__table td {
	padding: 3px 12px;
	border: 0;
	border-right: 1px solid #e5e7eb;
	border-bottom: 1px solid #e5e7eb;
	vertical-align: middle;
	color: #3a4452;
	font-size: 13px;
	line-height: 1.45;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.kj-header-latest__table td:last-child {
	padding-right: 12px;
	border-right: 0;
}

.kj-header-latest__table tr:last-child td {
	border-bottom: 0;
}

.kj-header-latest__table a {
	display: block;
	overflow: hidden;
	color: #3a4452 !important;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.45;
	white-space: nowrap;
	text-overflow: ellipsis;
	text-decoration: none !important;
}

.kj-header-latest__table a:hover {
	color: #004488 !important;
}

@media screen and (max-width: 782px) {
	.kj-header-latest {
		display: none;
	}
}

.sidebar-wrapper {
	padding-top: 8px !important;
}

.site-content .wp-block-columns > .post-wrapper {
	border-top: 8px solid #ececec;
}

.sidebar-wrapper .sidebar {
	padding-top: 0 !important;
}

.sidebar-wrapper .widget .wp-block-columns > .wp-block-column {
	min-width: 0;
}

.sidebar-wrapper .wp-block-post-title,
.sidebar-wrapper .wp-block-post-title a {
	display: block;
	margin: 0 0 4px;
	color: #243044 !important;
	font-size: 14px !important;
	font-weight: 600;
	line-height: 1.45 !important;
}

.is-style-sidebar-title.has-primary-background-color {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 12px;
	padding: 8px 2px !important;
	background: transparent !important;
	color: #243044 !important;
	border: 0;
	border-bottom: 1px solid #e5e7eb;
	border-radius: 0;
	box-shadow: none;
	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 1.4;
}

.sidebar-wrapper .widget .is-style-sidebar-title.has-primary-background-color,
.sidebar-wrapper .widget .is-style-sidebar-title.has-primary-background-color.has-white-color {
	margin: -1.25rem -1.25rem 14px !important;
	padding: 12px 16px !important;
	background: #f4f5f7 !important;
	color: #243044 !important;
	font-size: 18px !important;
	font-weight: 700 !important;
}

.sidebar-wrapper .widget .is-style-sidebar-title.has-primary-background-color::before {
	width: 4px;
	height: 20px;
}

.post-wrapper .is-style-sidebar-title.has-primary-background-color {
	margin-right: -1.25vw !important;
	margin-left: -1.25vw !important;
	padding: 10px 1.25vw !important;
	background: #f4f5f7 !important;
}

.is-style-sidebar-title.has-primary-background-color::before {
	content: "";
	flex: 0 0 auto;
	width: 4px;
	height: 16px;
	border-radius: 2px;
	background: #2f7cf6;
}

.kj-side-ad {
	margin: 0 0 0.5rem;
	padding: 10px;
	border: 1px solid #e3e7ee;
	border-radius: 8px;
	background: #fff;
	box-sizing: border-box;
}

.kj-side-ad a {
	display: block;
	line-height: 0;
}

.kj-side-ad img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 6px;
}

.kj-entry-row {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.kj-entry-btn {
	--note: #fff4c4;
	--ink: #5c4a12;
	--spine: #e2b93b;
	--fold: #ecd98a;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	box-sizing: border-box;
	padding: 10px 22px 10px 14px;
	border: 0;
	border-radius: 2px 3px 3px 2px;
	background: var(--note);
	box-shadow: inset 4px 0 0 var(--spine), 0 2px 0 rgba(60, 40, 10, 0.04), 2px 3px 8px rgba(60, 40, 10, 0.08);
	color: var(--ink) !important;
	font-size: 13px;
	line-height: 1.4;
	text-align: left;
	text-decoration: none !important;
}

.kj-entry-btn::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	border-style: solid;
	border-width: 0 12px 12px 0;
	border-color: #fff #fff var(--fold) var(--fold);
}

.kj-entry-btn::after {
	content: "›";
	flex: 0 0 auto;
	margin-left: 8px;
	color: var(--ink);
	font-size: 16px;
	line-height: 1;
	opacity: 0.7;
}

.kj-entry-btn:hover {
	transform: translateY(-1px);
	box-shadow: inset 4px 0 0 var(--spine), 0 6px 12px rgba(60, 40, 10, 0.12);
	color: var(--ink) !important;
}

.kj-entry-btn:nth-child(11n+1) { --note: #fff4c4; --ink: #5c4a12; --spine: #e2b93b; --fold: #ecd98a; }
.kj-entry-btn:nth-child(11n+2) { --note: #ffe4ee; --ink: #7a3454; --spine: #e989b0; --fold: #f3c2d4; }
.kj-entry-btn:nth-child(11n+3) { --note: #e7f8e4; --ink: #2f6a38; --spine: #6fbf73; --fold: #c5e6c2; }
.kj-entry-btn:nth-child(11n+4) { --note: #e4f1ff; --ink: #1e4f86; --spine: #5aa0e6; --fold: #c5daf5; }
.kj-entry-btn:nth-child(11n+5) { --note: #ffe8d2; --ink: #8a4b16; --spine: #f0a15a; --fold: #f3d2b0; }
.kj-entry-btn:nth-child(11n+6) { --note: #f1e8ff; --ink: #5b3d8a; --spine: #a78bf0; --fold: #ddd0f5; }
.kj-entry-btn:nth-child(11n+7) { --note: #e3f7f5; --ink: #1d6560; --spine: #3db8ad; --fold: #c5e8e4; }
.kj-entry-btn:nth-child(11n+8) { --note: #ffe6e4; --ink: #8a3330; --spine: #ef7d78; --fold: #f5cfcb; }
.kj-entry-btn:nth-child(11n+9) { --note: #f4f8d4; --ink: #5a6418; --spine: #b5c44a; --fold: #e0e8ae; }
.kj-entry-btn:nth-child(11n+10) { --note: #e8edff; --ink: #33407a; --spine: #7b8de0; --fold: #d0d7f5; }
.kj-entry-btn:nth-child(11n+11) { --note: #fff0dc; --ink: #7a4e1c; --spine: #e8a15a; --fold: #f0d8b4; }

.kj-topboard {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 0 0 16px;
	padding: 16px 18px;
	background: linear-gradient(105deg, #123a78 0%, #1d62d6 70%, #3d8bff 100%);
	border-radius: 16px;
	box-shadow: 0 8px 18px rgba(18, 58, 120, 0.16);
}

.kj-topboard__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	min-width: 62px;
	height: 42px;
	padding: 0 10px;
	border-radius: 10px;
	background: #fff;
	color: #1d4ed8;
	font-size: 16px;
	font-weight: 800;
	letter-spacing: 0.06em;
	line-height: 1;
}

.kj-topboard__text {
	min-width: 0;
}

.kj-topboard h2 {
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	color: #fff !important;
	font-family: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif !important;
	font-size: 22px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
}

.kj-topboard p {
	margin: 4px 0 0;
	color: rgba(255, 255, 255, 0.86);
	font-size: 13px;
	line-height: 1.5;
}

.sidebar-wrapper .kj-side-brand {
	margin: 0 0 0.5rem;
}

.sidebar-wrapper .kj-side-brand .kj-rank {
	margin: 0;
}

.sidebar-wrapper .kj-side-brand .kj-rank-card {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 10px;
	padding: 14px;
	border-radius: 12px;
}

.sidebar-wrapper .kj-side-brand .kj-rank-card__logo {
	flex: 0 0 auto;
	width: 100%;
	justify-content: flex-start;
}

.sidebar-wrapper .kj-side-brand .kj-rank-card__body,
.sidebar-wrapper .kj-side-brand .kj-rank-card__actions {
	flex: 0 0 auto;
	width: 100%;
	order: unset;
}

.sidebar-wrapper .kj-side-brand .kj-rank-card__actions {
	flex-direction: column;
	gap: 8px;
}

.sidebar-wrapper .kj-side-brand .kj-rank-btn {
	flex: 0 0 auto;
	width: 100%;
	box-sizing: border-box;
}

.sidebar-wrapper .kj-side-brand .kj-coupon {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	margin: 0;
	min-height: 36px;
	padding: 0 12px;
	box-sizing: border-box;
	font-size: 12px;
}

.sidebar-wrapper .kj-side-brand .kj-rank-card__tagline {
	display: block;
	-webkit-line-clamp: unset;
	line-clamp: unset;
	overflow: visible;
}

.kj-rank {
	display: flex;
	flex-direction: column;
	gap: 14px;
	margin: 0 0 0.5rem;
}

.kj-rank-card {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 16px 18px;
	background: #fff;
	border: 1px solid #eef1f6;
	border-radius: 12px;
	box-shadow: none;
}

.kj-rank-card__no {
	flex: 0 0 28px;
	font-size: 22px;
	font-weight: 600;
	line-height: 1;
	color: #c5cad3;
	text-align: center;
}

.kj-rank-card__logo {
	flex: 0 0 132px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	min-height: 44px;
}

.kj-rank-card__logo img {
	display: block;
	max-width: 128px;
	max-height: 40px;
	width: auto;
	height: auto;
	object-fit: contain;
}

.kj-rank-card__name {
	font-size: 16px;
	font-weight: 700;
	color: #243042;
}

.kj-rank-card__body {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.kj-rank-card__tagline {
	margin: 0;
	color: #666;
	font-size: 13px;
	line-height: 1.65;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
}

.kj-rank-card__points {
	margin: 0;
	padding: 0;
	list-style: none;
	min-width: 0;
}

.kj-rank-card__points li {
	position: relative;
	margin: 0;
	padding: 2px 0 2px 20px;
	color: #5c6775;
	font-size: 14px;
	line-height: 1.55;
}

.kj-rank-card__points li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 2px;
	color: #2f9e44;
	font-weight: 700;
}

.kj-rank-card__actions {
	flex: 0 0 118px;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.kj-rank-btn {
	display: block;
	padding: 7px 12px;
	border-radius: 999px;
	font-size: 14px;
	line-height: 1.4;
	text-align: center;
	text-decoration: none !important;
	white-space: nowrap;
}

.kj-rank-btn--ghost {
	background: #fff;
	border: 1px solid #4d7cff;
	color: #3d6bff !important;
}

.kj-rank-btn--ghost:hover {
	background: #f3f6ff;
}

.kj-rank-btn--primary {
	background: #3d6bff;
	border: 1px solid #3d6bff;
	color: #fff !important;
}

.kj-rank-btn--primary:hover {
	background: #2f5af0;
	border-color: #2f5af0;
}

@media screen and (max-width: 782px) {
	.kj-spec-grid {
		grid-template-columns: 1fr 1fr;
	}

	.kj-spec-grid div {
		border-bottom: 1px solid #eef1f5;
	}

	.kj-plan-brand {
		flex-wrap: wrap;
	}

	.kj-plan-table thead {
		display: none;
	}

	.kj-plan-table tr,
	.kj-plan-table td {
		display: block;
		width: 100%;
	}

	.kj-plan-table td {
		padding: 0.35rem 0;
	}

	.kj-plan-table td::before {
		content: attr(data-label);
		display: inline-block;
		min-width: 4em;
		color: #888;
		font-size: 12px;
	}

	.post-wrapper .kj-related-posts .wp-block-columns > .wp-block-column:first-child,
	.post-wrapper .kj-related-posts .wp-block-post-featured-image,
	.post-wrapper .kj-related-posts .wp-block-post-featured-image a,
	.post-wrapper .kj-related-posts .wp-block-post-featured-image img {
		width: 120px !important;
		max-width: 120px;
		height: 84px !important;
		max-height: 84px;
	}

	.post-wrapper .kj-related-posts .wp-block-columns > .wp-block-column:first-child {
		flex: 0 0 120px !important;
	}

	.kj-rank-card {
		flex-wrap: wrap;
		align-items: flex-start;
	}

	.kj-rank-card__body {
		flex: 1 1 100%;
		order: 3;
	}


	.kj-rank-card__actions {
		flex-direction: row;
		flex: 1 1 auto;
		justify-content: flex-end;
	}
}
