/*
 * パートナー企業募集への導線(全ページ共通)
 *   赤 #e34234 / 黄 #ffe05c / 紺 #354560
 */

/* ---------- ヘッダーメニューのボタン ---------- */
@media (min-width: 1025px) {
	#mainnav .menu > li.menu-item-partner > a {
		display: inline-block;
		background: #e34234;
		color: #fff !important;
		font-weight: 700;
		padding: 8px 20px !important;
		border-radius: 999px;
		line-height: 1.4;
		box-shadow: 0 4px 12px rgba(227, 66, 52, .35);
		transition: background-color .15s, transform .15s;
	}
	#mainnav .menu > li.menu-item-partner > a:hover {
		background: #c5321f;
		transform: translateY(-1px);
	}
	#mainnav .menu > li.menu-item-partner > a::after { display: none; }
}
/* スマホのメニュー(ドロワー)内 */
.sydney-offcanvas-menu .menu-item-partner > a,
.mainnav.toggled .menu-item-partner > a,
#mainnav-mobi .menu-item-partner > a {
	color: #e34234 !important;
	font-weight: 700;
}

/* ---------- ヘッダー直下のバナー ---------- */
.jp-partner-banner {
	background: #ffe05c;
	background-image: radial-gradient(rgba(255, 255, 255, .55) 2px, transparent 2px);
	background-size: 20px 20px;
	border-bottom: 3px solid #e34234;
}
.jp-partner-banner__link {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	max-width: 1170px;
	margin: 0 auto;
	padding: 14px 16px;
	text-align: center;
	text-decoration: none !important;
	color: #354560;
}
.jp-partner-banner__text { display: flex; flex-direction: column; gap: 4px; }
.jp-partner-banner__eyebrow {
	align-self: center;
	background: #485b79;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.5;
	padding: 3px 14px;
	border-radius: 999px;
}
.jp-partner-banner__eyebrow em { font-style: normal; color: #ffe05c; }
.jp-partner-banner__copy { font-size: 16px; font-weight: 700; line-height: 1.5; color: #354560; }
.jp-partner-banner__copy > span { display: inline-block; }
.jp-partner-banner__btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	flex: none;
	background: #e34234;
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
	padding: 10px 24px;
	border-radius: 999px;
	box-shadow: 0 4px 12px rgba(227, 66, 52, .35);
	transition: background-color .15s, transform .15s;
}
.jp-partner-banner__link:hover .jp-partner-banner__btn { background: #c5321f; transform: translateY(-1px); }
.jp-partner-banner__link:focus-visible { outline: 3px solid #354560; outline-offset: -3px; }

@media (min-width: 768px) {
	.jp-partner-banner__link {
		flex-direction: row;
		justify-content: center;
		gap: 28px;
		padding: 16px 24px;
		text-align: left;
	}
	.jp-partner-banner__eyebrow { align-self: flex-start; font-size: 13px; }
	.jp-partner-banner__copy { font-size: 20px; }
	.jp-partner-banner__btn { font-size: 16px; padding: 12px 28px; }
}

@media (prefers-reduced-motion: reduce) {
	.jp-partner-banner__btn,
	#mainnav .menu > li.menu-item-partner > a { transition: none; }
}
