/* EN pages: language toggle (top-right, PC navin2 markup on all viewports) */
.en-site-header {
	position: fixed;
	top: 8px;
	right: 8px;
	z-index: 9999;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	width: auto;
	height: auto;
}
.en-site-header .navin2__lang {
	position: static;
	left: auto;
	right: auto;
	bottom: auto;
	margin: 0;
	margin-left: 0;
	display: flex;
	background: #000;
	width: 120px;
}
.en-site-header .navin2__langin {
	height: 40px;
	width: 60px;
	flex: 0 0 60px;
}
.en-site-header .navin2__langin a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 40px;
	background: #000;
	color: #fff;
	font-weight: 700;
	line-height: 1;
	font-size: 24px;
	text-decoration: none;
}
.en-site-header .navin2__langin a.is-active {
	background: rgba(255, 0, 102, 1);
	pointer-events: none;
	color: #fff;
}

@media screen and (min-width: 661px) {
	.en-site-header {
		top: 12px;
		right: 12px;
	}
	.en-site-header .navin2__lang {
		width: 60px;
	}
	.en-site-header .navin2__langin {
		height: 20px;
		width: 30px;
		flex: 0 0 30px;
	}
	.en-site-header .navin2__langin a {
		height: 20px;
		font-size: 12px;
	}
}

/* layout_sp.css header / headerin__lang 打ち消し */
@media screen and (max-width: 660px) {
	header.en-site-header {
		background: transparent;
		height: auto;
		width: auto;
		margin-left: 0;
		border-bottom: none;
		position: fixed;
		z-index: 9999;
		left: auto;
		right: 8px;
		top: 8px;
		bottom: auto;
		transform: none;
		overflow: visible;
		transition: none;
	}
	header.en-site-header:before,
	header.en-site-header:after {
		display: none;
		content: none;
	}
	header.en-site-header.active {
		background: transparent;
	}
	.en-site-header .headerin__lang,
	.en-site-header .navin2__lang {
		position: static;
		left: auto;
		right: auto;
		bottom: auto;
		margin: 0;
		margin-left: 0;
		width: 120px;
		z-index: 9999;
		display: flex;
		background: #000;
	}
	.en-site-header .headerin__langin,
	.en-site-header .navin2__langin {
		height: 40px;
		width: 60px;
		flex: 0 0 60px;
	}
	.en-site-header .headerin__langin a,
	.en-site-header .navin2__langin a {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 40px;
		background: #000;
		color: #fff;
		font-weight: 700;
		line-height: 1;
		font-size: 24px;
		text-decoration: none;
	}
	.en-site-header .headerin__langin a.is-active,
	.en-site-header .navin2__langin a.is-active {
		background: rgba(255, 0, 102, 1);
		pointer-events: none;
		color: #fff;
	}
}

/* JA-layout backup under en/bk (navin2 only, top-right) */
#fullWrap.is-en-page .headerin__lang {
	display: none;
}
#fullWrap.is-en-page header.en-site-header .navin2__lang {
	position: static;
	top: auto;
	right: auto;
	left: auto;
	bottom: auto;
	margin: 0;
	margin-left: 0;
	z-index: 9999;
	display: flex;
	background: #000;
	width: 120px;
}
#fullWrap.is-en-page header.en-site-header .navin2__langin {
	height: 40px;
	width: 60px;
	flex: 0 0 60px;
}
#fullWrap.is-en-page header.en-site-header .navin2__langin a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 40px;
	background: #000;
	color: #fff;
	font-weight: 700;
	line-height: 1;
	font-size: 24px;
	text-decoration: none;
}
#fullWrap.is-en-page header.en-site-header .navin2__langin a.is-active {
	background: rgba(255, 0, 102, 1);
	pointer-events: none;
	color: #fff;
}

@media screen and (min-width: 661px) {
	#fullWrap.is-en-page header.en-site-header .navin2__lang {
		width: 60px;
	}
	#fullWrap.is-en-page header.en-site-header .navin2__langin {
		height: 20px;
		width: 30px;
		flex: 0 0 30px;
	}
	#fullWrap.is-en-page header.en-site-header .navin2__langin a {
		height: 20px;
		font-size: 12px;
	}
}

@media screen and (max-width: 660px) {
	#fullWrap.is-en-page header.en-site-header {
		background: transparent;
		height: auto;
		width: auto;
		margin-left: 0;
		border-bottom: none;
		position: fixed;
		z-index: 9999;
		left: auto;
		right: 8px;
		top: 8px;
		bottom: auto;
		transform: none;
		overflow: visible;
		transition: none;
	}
	#fullWrap.is-en-page header.en-site-header:before,
	#fullWrap.is-en-page header.en-site-header:after {
		display: none;
		content: none;
	}
	#fullWrap.is-en-page header.en-site-header.active {
		background: transparent;
	}
}

@media screen and (hover: hover) {
	.en-site-header .navin2__langin a:hover,
	#fullWrap.is-en-page header.en-site-header .navin2__langin a:hover {
		background: rgba(255, 0, 102, 0.5);
	}
}
