/*==============================
        header
==============================*/
@charset "utf-8";

#header{
	position: sticky;
	top:0;
	left:0%;
	z-index: 999999;
	background-color:#FFFFFF;
}
.header {
	width: 100%;
}
.header_h1 {
	background: repeating-linear-gradient(-45deg, #efefef, #efefef 3px, #FFFFFF 3px, #FFFFFF 6px);
}
.header_h1_inner {
	max-width:1260px;
	width:calc(100% - 40px);
	margin:0 auto;
	font-size:1.3rem;
	display:grid;
	grid-template-columns:1fr 10em;
	align-items:center;
	grid-column-gap:1em;
	min-height:30px;
}
.header_h1_inner h1 {
	font-size:inherit;
	line-height:1.2;
	padding:.5em 0;
	font-weight:400;
}
.header_h1_inner a {
	background-color:#fbffe6;
	text-align:center;
	height:100%;
	display:grid;
	align-items:center;
	mix-blend-mode:multiply;
}
.header_inner {
	max-width:1260px;
	width:calc(100% - 40px);
	margin:0 auto;
	padding:30px 0;
	position:relative;
	display:grid;
	grid-template-columns:210px 1fr 140px;
	align-items:start;
	grid-column-gap:20px;
}
.header_inner .report {
	position:relative;
	transition:.3s;
}
.header_inner .report:hover {
	transform:translateY(5px);
}
.header_inner .report img {
	display:block;
	position:absolute;
	left:0;
	top:0;
}

.header .menu-gmenu-container ul {
	width:100%;
	display:inline-flex;
	align-items:flex-start;
	justify-content:flex-end;
	font-size:1.2rem;
	font-weight:600;
}
.header .menu-gmenu-container li {
	position:relative;
}
.header .menu-gmenu-container li:not(:last-child) {
	margin-right:2.5em;
}
.header .menu-gmenu-container li a {
	display:grid;
	grid-row-gap:1em;
	transition:.3s;
	white-space:nowrap;
}
.header .menu-gmenu-container li a span {
	font-family: 'Bebas Neue', sans-serif;
	font-size:3.6rem;
	letter-spacing:.025em;
	font-weight:400;
	transition:.3s;
}
.header .menu-gmenu-container li.contact a span {
	color:#be050f;
}
.header .menu-gmenu-container li ul {
	position:absolute;
	z-index:1;
	left:50%;
	transform:translateX(-50%);
	bottom:auto;
	align-items:center;
	width:445px;
	height:90px;
	justify-content:center;
	padding-top:20px;
}
.header .menu-gmenu-container li:not(:hover) ul {
	display:none;
}
.header .menu-gmenu-container li ul::before {
	content:'';
	display:block;
	width:18px;
	height:16px;
	position:absolute;
	left:50%;
	transform:translateX(-50%);
	top:0;
	background-color:#f2eee5;
	z-index:-1;
	clip-path:polygon(50% 0,100% 100%, 0 100%);
}
.header .menu-gmenu-container li ul::after {
	content:'';
	display:block;
	width:100%;
	height:75px;
	position:absolute;
	left:0;
	bottom:0;
	background-color:#f2eee5;
	z-index:-1;
}
.header .menu-gmenu-container li ul li {
	height:70px;
	display:grid;
	align-items:center;
}
.header .menu-gmenu-container li ul a {
	font-family: 'Bebas Neue', sans-serif;
	font-size:2.6rem;
	white-space:nowrap;
}
.header .menu-gmenu-container li ul .en a {
	font-size:3.2rem;
}
.header .menu-gmenu-container li ul .en {
	grid-template-columns:auto auto;
	grid-gap:2em;
}
.header .menu-gmenu-container li ul .en::before {
	content:'';
	height:2em;
	width:2px;
	background-color:#000000;
	transform:rotate(30deg);
}
.header .menu-gmenu-container li a:hover,
.header .menu-gmenu-container li a:hover span,
.header .menu-gmenu-container li.current-menu-item > a,
.header .menu-gmenu-container li.current-menu-item a span,
.header .menu-gmenu-container li.current_page_parent > a,
.header .menu-gmenu-container li.current_page_parent a span,
.header .header_inner.works .menu-gmenu-container li.works a,
.header .header_inner.works .menu-gmenu-container li.works a span,
.header .header_inner.voice .menu-gmenu-container li.voice a,
.header .header_inner.voice .menu-gmenu-container li.voice a span {
	color:#f27700;
}



@media screen and (max-width:1140px){

	.header_inner {
		grid-template-columns:180px 1fr 120px;
	}
		
	.header .menu-gmenu-container ul {
		font-size:1.2rem;
	}
	.header .menu-gmenu-container li:not(:last-child) {
		margin-right:2.0em;
	}
	.header .menu-gmenu-container li a span {
		font-size:3.0rem;
	}
	
}


@media screen and (max-width:1024px){
	
	.header_h1_inner {
		width:calc(100% - 20px);
	}
	.header_inner {
		grid-template-columns:minmax(130px,180px) 1fr 100px;
		width:calc(100% - 20px);
	}
		
	.header .menu-gmenu-container ul {
		font-size:1.0rem;
	}
	.header .menu-gmenu-container li:not(:last-child) {
		margin-right:1.5em;
	}
	.header .menu-gmenu-container li a span {
		font-size:2.6rem;
	}
	
}


@media screen and (max-width:768px){

	.header_h1_inner {
		font-size:1.0rem;
	}
	.header_inner {
		grid-template-columns:120px auto;
		padding:0;
		height:60px;
		align-items:center;
		justify-content:space-between;
	}
	.header_inner .menu-gmenu-container {
		display:none;
	}
	.header_inner .report {
		display:none;
	}
	
	.header .spbtn {
		width:30px;
		height:40px;
		display:grid;
		grid-row-gap:2px;
		grid-template-rows:auto 1fr;
	}
	.header .spbtn .hbtxt {
		font-family: 'Bebas Neue', sans-serif;
		font-size:1.8rem;
	}
	.header .spbtn .hbtxt.close {
		display:none;
	}
	.header .spbtn .hbbtn {
		position:relative;
	}
	.header .spbtn .hbbtn::before {
		content:'';
		display:block;
		width:100%;
		height:3px;
		background-color:#000000;
		position:absolute;
		top:0;
		left:50%;
		transition:.5s;
		transition-timing-function:ease-in-out;
		transform-origin:center center;
		transform:translateX(-50%);
	}
	.header .spbtn .hbbtn::after {
		content:'';
		display:block;
		width:100%;
		height:3px;
		background-color:#000000;
		position:absolute;
		bottom:0;
		left:50%;
		transition:.5s;
		transition-timing-function:ease-in-out;
		transform-origin:center center;
		transform:translateX(-50%);
	}
	.header .spbtn .hbbtn span {
		display:block;
		width:100%;
		height:3px;
		background-color:#000000;
		position:absolute;
		top:50%;
		left:0;
		transform:translateY(-50%);
		transition:.5s;
		transition-timing-function:ease-in-out;
	}
	body.menuopen {
		overflow: hidden;
	}
	body.menuopen .header .spbtn .hbtxt:not(.close) {
		display:none;
	}
	body.menuopen .header .spbtn .hbtxt.close {
		display:block;
	}
	body.menuopen .header .spbtn .hbbtn::before {
		transform:translateX(-50%) rotate(45deg);
		top:8.5px;
	}
	body.menuopen .header .spbtn .hbbtn::after {
		transform:translateX(-50%) rotate(-45deg);
		bottom:8.5px;
	}
	body.menuopen .header .spbtn .hbbtn span {
		opacity:0;
		transform:translate(-50%,-50%) scaleX(0);
	}
	
	.spmenu {
		position:fixed;
		top:-105vh;
		right:0;
		max-width:320px;
		opacity:0;
		width:100%;
		background-color:#FFFFFF;
		height:auto;
		z-index:999;
		text-align:center;
		transition:.5s;
		background-color:#f2eee5;
	}
	body.menuopen .spmenu {
		opacity:1;
		top:150px;
	}
	.spmenu_inner {
		padding:30px;
	}
	.spmenu_inner ul {
		font-size:1.2rem;
		font-weight:600;
	}
	.spmenu_inner .menu > li {
		border-bottom:1px solid #000000;
		padding-bottom:.5em;
		margin-bottom:1em;
	}
	.spmenu_inner .menu > li > a {
		display:grid;
		grid-template-columns:auto auto auto;
		justify-content:start;
		grid-column-gap:1em;
		align-items:center;
	}
	.spmenu_inner .menu li a::before {
		content:'';
		width:.6em;
		height:.6em;
		border-right:3px solid #000000;
		border-bottom:3px solid #000000;
		grid-area:1/1/2/2;
		transform-origin:center center;
		transform:translateY(-.15em) rotate(-45deg);
	}
	.spmenu_inner li a span {
		font-family: 'Bebas Neue', sans-serif;
		font-size:3.2rem;
		letter-spacing:.025em;
		grid-area:1/2/2/3;
	}
	.spmenu_inner li.contact {
		border:none;
		padding-top:.75em;
	}
	.spmenu_inner li.contact a span {
		color:#be050f;
	}
	.spmenu_inner li ul {
		display:grid;
		grid-template-columns:repeat(3,auto);
		justify-content:space-between;
		align-items:center;
		grid-column-gap:1.5em;
		padding:1em 2em 1em 1.75em;
	}
	.spmenu_inner li ul a {
		font-family: 'Bebas Neue', sans-serif;
		font-size:1.6rem;
		white-space:nowrap;
		display:grid;
		grid-template-columns:auto auto;
		align-items:center;
		grid-column-gap:.33em;
	}
	.spmenu_inner .menu li ul a::before {
		width:.25em;
		height:.25em;
		font-size:1.6rem;
		border-right:2px solid #000000;
		border-bottom:2px solid #000000;
	}
	.spmenu_inner li ul .en a {
		font-size:2.2rem;
	}

}