/* ---- ⑤ 特集ピックアップ ---- */
.pickup {
	background: var(--pickup-bg, #111111);
	padding: 80px 0;
}
.pickup__inner {
	position: relative;
	display: flex;
	gap: 64px;
	align-items: center;
}
.pickup__stretched-link {
	position: absolute;
	inset: 0;
	z-index: 1;
}
.pickup__img {
	position: relative;
	width: 40%;
	max-width: 480px;
	aspect-ratio: 3 / 2;
	background: #1f2937;
	flex-shrink: 0;
	min-width: 0;
}
.pickup__label {
	position: relative;
	z-index: 2;
	display: inline-block;
	background: var(--accent);
	color: var(--btn-text, #fff);
	font-size: 12px;
	padding: 4px 12px;
	border-radius: 999px;
	width: fit-content;
	text-decoration: none;
	transition: background 0.2s ease;
}
.pickup__label:hover {
	background: var(--accent-hover);
	color: var(--btn-text, #fff);
}
.pickup__bookmark {
	position: absolute;
	z-index: 2;
	top: 12px;
	right: 12px;
	width: 34px;
	height: 34px;
	padding: 0;
	border-radius: 50%;
	background: rgba(255,255,255,0.15);
	border: none;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	color: rgba(255,255,255,0.7);
	transition: color 0.2s ease, background 0.2s ease, transform 0.15s ease;
}
.pickup__bookmark:hover {
	background: rgba(255,255,255,0.92);
	color: var(--accent);
	transform: scale(1.12);
}
.pickup__bookmark svg {
	width: 14px;
	height: 16px;
	display: block;
	flex-shrink: 0;
}
.pickup__bookmark .icon-bookmark-filled { display: none; }
.pickup__bookmark.is-bookmarked {
	background: rgba(255,255,255,0.92);
	color: var(--accent);
	animation: bookmark-pop 0.25s ease;
}
.pickup__bookmark.is-bookmarked .icon-bookmark { display: none; }
.pickup__bookmark.is-bookmarked .icon-bookmark-filled { display: block; }
.pickup__content {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 24px;
}
.pickup__title {
	font-family: var(--font-heading);
	font-size: 40px;
	font-weight: 700;
	color: var(--pickup-text, #ffffff);
	line-height: 1.3;
	margin: 0;
}
.pickup__desc {
	font-family: var(--font-heading);
	font-size: 18px;
	font-weight: 500;
	color: var(--pickup-text, #ffffff);
	line-height: 1.6;
	margin: 0;
}
.pickup__cta {
	position: relative;
	z-index: 2;
	font-family: var(--font-heading);
	font-size: 16px;
	font-weight: 500;
	padding: 16px 32px;
	width: fit-content;
}

/* ---- Mobile ---- */
@media (max-width: 768px) {
	.pickup { padding: 20px 0; }
	.pickup__inner { flex-direction: column; gap: 16px; }
	.pickup__img { width: 100%; height: 200px; border-radius: 8px; }
	.pickup__content { gap: 12px; }
	.pickup__title { font-size: 20px; line-height: 1.4; }
	.pickup__desc { font-size: 13px; color: var(--pickup-text, #ffffff); }
	.pickup__cta {
		width: 100%;
		justify-content: center;
		font-size: 14px;
		height: 44px;
		padding: 0;
	}
}
