/*======================================================
   Header: logo, top menu area
  ====================================================== */
  /* Common */
#headmenu {
	padding-top: 20px;
	padding-right: 65px;
}
#masthead_logo {
	position: absolute;
/*	z-index: 9999; */
}
#masthead_logo #headlogo {
	display: flex;
	flex-direction: column;
	margin: 0;
}
#masthead_logo #headlogo img.su_logo {
}
#masthead_logo #headlogo img.j-peaks_logo {
	height: auto;
	margin-left: 5px;
}
#my-top .l-header:not(.is-normal) .l-header_logo {
	display: none;
}
.l-header #headmenu {
}
.l-header #headmenu ul {
}
.l-header #headmenu ul li {
}
#my-top .l-header:not(.is-normal) #headmenu ul li a {
	color: white;
}
#my-top .l-header:not(.is-normal) #headmenu #lang_wrap {
	color: white;
	background-image: url(/research/j-peaks/assets/img/ic_lang_white.svg);
}
#my-top .l-header:not(.is-normal) #headmenu #lang_wrap a {
	color: white;

}

/* 追従時 & 下位ページ用 */
.l-header.is-normal {
}
.l-header.is-normal #headmenu ul li a,
#headmenu ul li a {
	position: relative;
	color: black;
	font-weight: 600;
	text-decoration: none;
	letter-spacing: 0.11em;
}
.l-header.is-normal #headmenu #lang_wrap,
#headmenu #lang_wrap,
.l-footer_link #ft_lang_wrap {
	color: var(--jpeaks-gray-color);
	letter-spacing: 0.11em;
	background: url(/research/j-peaks/assets/img/ic_lang_black.svg)no-repeat top left;
	padding-left: 35px;
}
.l-header.is-normal #headmenu #lang_wrap a,
#headmenu #lang_wrap a,
.l-footer_link #ft_lang_wrap a {
	color: var(--jpeaks-gray-color);
	text-decoration: none;
	font-weight: 500;
}
.l-header.is-normal #headmenu #lang_wrap a.is-current,
#headmenu #lang_wrap a.is-current,
.l-footer_link #ft_lang_wrap a.is-current {
	color: black;
}

.l-header.is-normal #headmenu ul li.is-current a::after,
#headmenu ul li.is-current a::after,
#my-news #headmenu ul li:nth-child(3) a::after,
#my-document #headmenu ul li:nth-child(4) a::after {
	content :"";
	display: inline-block;
	width: 100%;
	height: 5px;
	background-color: var(--jpeaks-ex-blue-color);
	position: absolute;
}


/* PC
-----------------------------------------------------------*/
@media print, screen and (min-width: 1171px) {

	.sponly {
		display: none !important;
	}

	#masthead_logo {
		max-width: 30%;	/* for smartphone in landscape */
		top: min(13vw, 150px);	/* 2026.6 Aki was 13vw, 190px / 2026.1 Aki was 12vw | ChkHTML: was calc(25vh - 12px) */
		left: max(2.5362%, 50% - 643px);	/* 35 / 1380; ChkHTML: was 1.6541% 22 / 1330 */
	}
	#masthead_logo #headlogo {
		gap: 19px;
	}
	#masthead_logo #headlogo img.su_logo {
		width: 214.46px;
	}
	#masthead_logo #headlogo img.j-peaks_logo {
		width: 183.25px;
	}
	#masthead_logo #headlogo img.aqua_logo {
		width: 230px;
	}

	.l-header.is-normal .l-header_logo,
	.l-header_logo {
		display: block;
/*		height: 43px; 2026.6 Aki c/o */
		position: absolute;
		top: 50%;	/* 2026.6 Aki was 55px from MAT */
		transform: translatey(-50%);	/* 2026.6 Aki from MAT */
		left: 70px;
	}
	.l-header.is-normal .l-header_logo a, .l-header_logo a {	/* 2026.6 Aki */
	display: inline-block;
		line-height: 0;
	}
	.l-header.is-normal .l-header_logo img ,
	.l-header_logo img {
		max-width: 100%;
		max-height: 100%;
		height: 43px;	/* 2026.2 Aki added */
	}
	.l-header .l-header_logo :is(.j-peaks_logo, .aqua_logo) {
		margin-left: 30px;	/* 2026.2 Aki was right */
	}
	.l-header.is-normal #headmenu,
	.my-child #headmenu  {
		position: fixed;
		width: 100%;
		top: 0;
		right: 0;
		background-color: white;
		filter: drop-shadow(0px 2px 3px rgba(0,0,0,0.2));
		padding-top: 36px;	/* 2026.6 Aki was 65px from MAT */
		padding-bottom: 36px;
		z-index: 9999;
	}
	#headmenu ul {
		display: flex !important;
		gap: 0 40px;
	}
	.l-header.is-normal #headmenu ul li.is-current a::after,
	#headmenu ul li.is-current a::after,
	#my-news #headmenu ul li:nth-child(3) a::after,
	#my-document #headmenu ul li:nth-child(4) a::after {
		left: 0;
		bottom: -34px;
	}
	#my-top .l-header:not(.is-normal) #headmenu ul li.is-current a::after {
		content: none;
	}

	#headmenu {
		display: flex;
		justify-content: flex-end;
		gap: 0 45px;	/* Aki */
	}
	#my-top .l-header:not(.is-normal) #headmenu #lang_wrap,
	.l-header.is-normal #headmenu #lang_wrap, 
	#headmenu #lang_wrap {	/* 2026.6 Aki added */
		display: block !important;
	}

	@media (any-hover: hover) {
		.l-header.is-normal #headmenu #lang_wrap a:hover {
		}
		.l-header.is-normal #headmenu ul li a:hover::after,
		.my-child #headmenu ul li a:hover::after {
			content :"";
			display: inline-block;
			width: 100%;
			height: 5px;
			background-color: var(--jpeaks-ex-blue-color);
			position: absolute;
			left: 0;
			bottom: -34px;
		}
		#headmenu #lang_wrap a:hover,
		.l-footer_link #ft_lang_wrap a:hover {
			color: black;
		}
	}

	#top_mainvisual {
		border-radius: 5px;
		width: 56.5217%;	/* 780 / 1380; ChkHTML: was 58.6466% 780 / 1330 */
		max-width: 780px;
		top: 70px;	/* Aki was 78px | ChkHTML: was bottom: calc(50vh - 79px) */
		right: max(9.7826%, 50% - 555px);	/* 135 / 1380; ChkHTML: was 8.2707% 110 / 1330 */
	}
	#top_mainvisual .mainvideo {
/*		max-height: calc(50vh + 69px); */	/* ChkHTML: c/o */
	}

}

/* Special Break Point for Header */
 @media (max-width: 1600px) {
	#headmenu {
		padding-right: 30px;
	}
	.l-header.is-normal .l-header_logo, .l-header_logo {
		left: 30px;
	}
	.l-header.is-normal .l-header_logo img, .l-header_logo img {
		margin-left: 15px;
	}
	#headmenu ul {
		gap: 0 20px;
	}
}
@media (max-width: 1440px) {
	.l-header.is-normal .l-header_logo img, .l-header_logo img {
		height: 35px;
	}
}
@media (max-width: 1305px) {
	.l-header.is-normal .l-header_logo img, .l-header_logo img {
		height: 25px;
	}
}


/* SP
-----------------------------------------------------------*/
@media screen and (max-width: 1170px) {
	.pconly {
		display: none !important;
	}
	.l-header.is-normal .l-header_logo, .l-header_logo  {
		left: 0;
		padding-left: 0 !important;
	}
	.l-header.is-normal #headmenu,
	.my-child #headmenu {
		position: fixed;
		top: 0;
		right: 0;
		filter: drop-shadow(0px 2px 3px rgba(0,0,0,0.2));
		padding-bottom: 0;
		z-index: 9999;
	}
	#masthead {	/* 2026.6 Aki added */
		background-color: white;
	}
	#masthead_logo {
		width: auto;
		height: 75px;
		top: 32px;
		left: 20px;
	}
	#masthead_logo #headlogo img.su_logo {
	}
	#masthead_logo #headlogo img.j-peaks_logo {
	}

	/* MENU */
	.l-header .l-header_logo {
		display: block !important;
		position: relative;
		background-color: white;
/*		height: 100px;	/* 2026.6 Aki c/o */
		padding: 10px 0 10px 20px;	/* 2026.6 Aki top was 33px bottom was 7px */
		z-index: 1;
	}
	.l-header .l-header_logo .inner {	/* 2026.6 Aki added */
		display: inline-block;
		width: calc(100% - 43px);
	}
	.l-header .l-header_logo .j-peaks_logo {
		width: 143px;
		margin-left: 26px;	/* 2026.2 Aki was right */
	/*	margin-right: 26px;	/* 2026.6 Aki added */
	}
	.l-header .l-header_logo .su_logo {
		width: 75px;
	}
	.l-header .l-header_logo .aqua_logo {
		width: 200px;
		margin-top: 10px;
	}
	#menu_open_btn,
	#menu_close_btn {
		position: absolute;
		top: 22px;	/* 2026.6 Aki was 32px */
		right: 20px;
		width: 23px;
		height: 23px;
		background-color: #ffffff;
		z-index: 2;
	}
	#menu_open_btn img, #menu_close_btn img {
		width: 100%;
		height: auto;
	}
	#menu_open_btn a {
		display: block;
	}
	#menu_overlay,
	#menu_close_btn,
	#headmenu ul,
	#headmenu #lang_wrap {
		display: none;
	}
	#menu_overlay {
		background-color: rgba(0,0,0,0.3);
		position: fixed;
		width: 100%;
		height: 100vh;
		top: 70px;
		left: 0;
		z-index: 1;
	}
	#headmenu {
		width: 100%;
		background-color: #FFFFFF;
		padding: 0;
	}
	#menu_close_btn {
		position: absolute;
		z-index: 10;
	}
	#menu_close_btn a {
		display: block;
	}
	#headmenu ul {
		width: 100%;
		position: relative;
		text-align: center;
		background-color: white;
		padding: 65px 5.1282% 40px;	/* 20/390 */
		margin-top: 0;
		z-index: 1;
	}
	#headmenu ul li {
		position: relative;
		margin-right: 0;
	}
	#headmenu ul li:not(:last-child) {
		margin-bottom: 15px;	/* 2026.2 Aki added currentで下線を付けるようにしたため */
	}
	#headmenu ul li a {
		display: inline-block;
		color: var(--jpeaks-text-color) !important;
		font-size: 1.375rem;	/* 22px */
		padding-bottom: 15px;	/* was 8px from chkHTML */
	}
	#headmenu ul li.aquareg a {
		letter-spacing: -0.05em;
	}
	#headmenu ul li.aquareg a span {
		letter-spacing: 0.11em;
	}
	#headmenu ul li a .en {
		display: block;
		color: var(--jpeaks-gray-color);
		font-size: 0.75rem;	/* 12px */
		font-weight: 600;
		line-height: 1;
	}
	#headmenu #lang_wrap {
		position:relative;
		background-color: white !important;
	}
	#my-top .l-header:not(.is-normal) #headmenu #lang_wrap,
	#my-top .l-header #headmenu #lang_wrap,
	.my-child .l-header #headmenu #lang_wrap {
		color: black;
		text-align: center;
		background: transparent;
		padding: 0 0 66px;
		z-index: 1;
	}
	#my-top .l-header #headmenu #lang_wrap::before,
	.my-child .l-header #headmenu #lang_wrap::before {
		content: "";
		display: inline-block;
		width: 26px;
		height: 26px;
		background: url(/research/j-peaks/assets/img/ic_lang_black.svg)no-repeat center /cover;
		vertical-align: -6px;
		margin-right: 5px;
	}
	#my-top .l-header:not(.is-normal) #headmenu #lang_wrap,
	#my-top .l-header #headmenu #lang_wrap a,
	.my-child .l-header #headmenu #lang_wrap a {
		color: var(--jpeaks-gray-color) !important;
	}

	.l-header.is-normal #headmenu ul li.is-current a::after,
	#headmenu ul li.is-current a::after,
	#my-news #headmenu ul li:nth-child(3) a::after,
	#my-document #headmenu ul li:nth-child(4) a::after {
		width: 100%;
		left: 50%;
		transform: translatex(-50%);
		bottom: 5px;
	}

	#top_mainvisual {
		width: 100%;
		top: 62px;	/* 2026.6 Aki was 100px 2026.6 Aki was 115px */
		left: 0;
		text-align: center;
	}
	@media (max-width: 531px) {	/* 2026.6 Aki added */
		#top_mainvisual {
			top: 94px;
		}
	}

}