/* スポンサー表示（inc/sponsor.php）: footer badge + 会社概要 banner. */

/* Footer badge (dark footer) */
.c-sponsor-badge {
	display: flex; align-items: center; flex-wrap: wrap; gap: 12px 20px;
	margin: 0 0 32px; padding: 16px 20px;
	border: 1px solid rgba(255, 255, 255, .2); border-radius: 14px;
	background: rgba(255, 255, 255, .04);
}
.c-sponsor-badge__logo { width: 56px; height: 56px; flex: none; object-fit: contain; border-radius: 50%; background: #fff; }
.c-sponsor-badge__logo--icon { background: none; }
.c-sponsor-badge__body { margin: 0; flex: 1 1 260px; display: flex; flex-direction: column; gap: 2px; }
.c-sponsor-badge__label { font-family: var(--f-en); font-size: 12px; font-weight: 600; letter-spacing: .2em; color: var(--c-main-soft); }
.c-sponsor-badge__text { color: #fff; font-weight: 700; font-size: 14.5px; line-height: 1.6; }
.c-sponsor-badge__links { margin: 0; display: flex; flex-wrap: wrap; gap: 0 18px; font-size: 13px; }
.c-sponsor-badge__link { display: inline-flex; align-items: center; gap: 4px; min-height: 44px; /* v0.9.23 tap target */ color: rgba(255, 255, 255, .86); text-decoration: underline; text-decoration-color: rgba(255, 255, 255, .35); }
.c-sponsor-badge__link:hover, .c-sponsor-badge__link:focus-visible { color: #fff; text-decoration-color: var(--c-main-soft); }
.c-sponsor-badge__link .c-icon { width: 14px; height: 14px; }

/* 会社概要 banner */
.c-sponsor-banner {
	display: flex; align-items: center; gap: 24px;
	margin: 56px 0 0; padding: 24px 28px;
	border: 1px solid var(--c-sub); border-left: 6px solid var(--c-main); border-radius: 14px;
	background: var(--c-tint-2);
}
.c-sponsor-banner__logo { width: 96px; height: 96px; flex: none; object-fit: contain; border-radius: 50%; }
.c-sponsor-banner__body { min-width: 0; }
.c-sponsor-banner__body p { margin: 0; }
.c-sponsor-banner .c-sponsor-banner__label { font-family: var(--f-en); font-size: 12.5px; font-weight: 600; letter-spacing: .2em; color: var(--c-main-deep); }
.c-sponsor-banner .c-sponsor-banner__title { margin-top: 4px; color: var(--c-heading); font-weight: 700; font-size: 17px; line-height: 1.6; }
.c-sponsor-banner .c-sponsor-banner__text { margin-top: 6px; font-size: 14px; line-height: 1.8; }
.c-sponsor-banner .c-sponsor-banner__links { margin-top: 10px; display: flex; flex-wrap: wrap; gap: 0 20px; font-size: 14px; }
.c-sponsor-banner__link { display: inline-flex; align-items: center; gap: 4px; min-height: 44px; /* v0.9.23 tap target */ font-weight: 700; }
.c-sponsor-banner__link .c-icon { width: 15px; height: 15px; }

@media (max-width: 600px) {
	.c-sponsor-badge { padding: 14px 16px; }
	.c-sponsor-banner { flex-direction: column; align-items: flex-start; gap: 14px; padding: 20px; }
	.c-sponsor-banner__logo { width: 72px; height: 72px; }
}
