/*--- ヘッダーメニュー ---*/
html {
    scroll-behavior: smooth;
}
.fixed{
	position:fixed;
	width:100%;
	z-index:5;
	top:0;
}

.header_nav {
	width: 100%;
	height: 70px;
	position: sticky;
	top: 0;
	z-index: 3;
font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  background:#fff;
}

.header_nav.on {
	position: fixed;
	z-index: 1000;
}

.header_nav > div {
	width: 100%;
	background: #fff;
	box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.12);
}

.header_nav a {
	display: block;
	transition: .3s;
}

.header_nav a:hover,
.header_nav a.on {
	text-decoration: none;
}

.header_nav .bg_blind {
	background: rgba(0, 0, 0, .5);
	opacity: 0;
}

.header_nav .bg_blind.on {
	width: 100%;
	height: 100%;
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	opacity: 1;
}

.header_nav .main_menu2 {
	height: 70px;
	display: flex;
	align-items: center;
	gap: 3vw;
	justify-content:space-between;
	position: relative;
	z-index: 3;
	padding: 0 30px;
	margin: 0 auto;
	width: 100vw;
}
.header_nav .main_menu2 .leftBox {
	display: flex;
	align-items: center;
	gap: 3vw;
	justify-content:space-between;
}

.header_nav .main_menu2 .rightBox{
	display: flex;
	align-items: center;
	gap: 1rem;
	width:30%;
	justify-content:flex-end;
}



.header_nav .main_menu2 > div > div:nth-of-type(1) a {
	transition: .3s;
}

.header_nav .main_menu2 > div > div:nth-of-type(1) a:hover {
	opacity: 0.3;
	color:#fff;
}

.header_nav .main_menu2 > div > div:nth-of-type(1) img {
	width: 100px;
	vertical-align: bottom;
}

.header_nav .main_menu2 ul {
	display: flex;
	gap: 0 3vw;
	padding-left: 1vw;
	/* background: #fff; */
}

.header_nav .main_menu2 ul > li {
	width: min-content;
	position: relative;
}

.header_nav .main_menu2 ul > li > a {
	height: 70px;
	display: flex;
	flex-flow: column;
	align-items: center;
	justify-content: center;
	white-space: nowrap;
	position: relative;
	font-size:0.9vw;
	line-height:1.6;
	font-weight:bold;
	text-align:center;
	position:relative;
	color:#333;
}

.header_nav .main_menu2 ul > li > a:after {
	content: "\f107";
	font-family: "Font Awesome 5 Free";
	font-weight: 600;
	position:absolute;
	right: -2rem;
	font-size: 20px;
	color:#333;
}



.header_nav .main_menu2 ul > li:nth-of-type(-n+3) > a.on::after {
	border-right: solid 2px #4CBFC6;
	border-top: solid 2px #4CBFC6;
	transform: rotate(-45deg);
}

.header_nav .main_menu2 ul > .pdf> a::after {
	content: "\f1c1";
	font-family: Font Awesome\ 5 Free;
	font-weight: 600;
	margin: 0 0 0 5px;
	position: absolute;
	right: 0;
}

.header_nav .main_menu2 ul > li div > div {
	display: flex;
	flex-flow: column;
	gap: 30px;
}

.header_nav .main_menu2 ul > li div > div img {
	width: 100%;
	max-width: 250px;
	transition: .3s;
}

.header_nav .main_menu2 ul > li div > div img:hover {
	opacity: 0.3;
}

.header_nav .main_menu2 ul > li a + ul {
	width: 250px;
	height: 0;
	background: #fff;
	border-radius: 0 0 10px 10px;
	box-shadow: 0 5px 4px 0 rgb(0, 0, 0, 20%);
	position: absolute;
	top: 60px;
	left: -90px;
	opacity: 0;
	overflow: hidden;
	padding: 0 20px;
	transition: .3s;
}

.header_nav .main_menu2 ul > li:nth-of-type(1) a + ul {
	width: 250px;
	left: -90px;
}

.header_nav .main_menu2 ul > li a.on + ul {
	height: auto;
	opacity: 1;
	padding: 20px;
}

.header_nav .main_menu2 ul > li:nth-of-type(4) a + ul {
	left: -70px;
}

.header_nav .main_menu2 > ul > li a + ul li,
.header_nav .main_menu2 > ul > li a + div ul li {
	border-bottom: 1px solid #ccc;
	padding: 0 0 20px;
	margin: 0 0 20px;
}

.header_nav .main_menu2 > ul > li a + ul li:last-of-type,
.header_nav .main_menu2 > ul > li a + div ul li:last-of-type {
	border-bottom: none;
	padding: 0;
	margin: 0;
}

.header_nav .main_menu2 > ul > li a + div {
	width: 520px;
	height: 0;
	display: flex;
	gap: 30px;
	background: #fff;
	box-shadow: 0 5px 4px 0 rgb(0, 0, 0, 20%);
	border-radius: 0 0 10px 10px;
	overflow: hidden;
	position: absolute;
	top: 60px;
	left: -80px;
	opacity: 0;
	padding: 0 20px;
	transition: .3s;
}

.header_nav .main_menu2 > ul > li a.on + div {
	height: auto;
	opacity: 1;
	padding: 20px;
}

.header_nav .main_menu2 > ul > li a + div ul {
	width: 220px;
}

.header_nav .main_menu2 > div:nth-of-type(3) {
	display: flex;
	gap: 20px;
	position: absolute;
	right: 30px;
}

.nBtn{
	background: #FBC02D;
	background: linear-gradient(180deg,rgba(251, 192, 45, 1) 0%, rgba(225, 172, 41, 1) 100%);
	color: #020202;
	border: 2px solid #fff;
	border-radius: 10px;
	font-size: clamp(8px, 1vw, 16px);
	line-height: 50px;
	font-weight: bold;
	display:block;
	text-align:center;
	max-width: 160px;
	width:100%;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
	position:relative;
}
.nBtn::after {
	content: "\f107";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	position:absolute;
	right: 1rem;
	font-size: 20px;
}
.nBtn:hover {
	transition:0.3s;
	opacity: 0.3;
	color:#020202;

}
.nBtn.green {
	max-width: 190px;
	width:100%;
background: #CDDC39;
background: linear-gradient(180deg,rgba(205, 220, 57, 1) 0%, rgba(191, 205, 46, 1) 100%);
	color: #020202;
}
.nBtn.green::after {
	content: "\f105";
	font-family: "Font Awesome 5 Free";
}



.header_nav .main_menu2 a:hover {
	opacity: 0.3;
}

/* .header_nav .main_menu2 > div:nth-of-type(3) a:nth-of-type(2)::before {
	content: "\f234";
	font-family: Font Awesome\ 5 Free;
	font-weight: 600;
	position: absolute;
	margin: 0 0 0 -25px;
} */

.header_nav .sp_btn2 {
	display: none;
}

/*--- ヘッダーメニューここまで ---*/


@media screen and (max-width:1024px) {
.header_nav .main_menu2 .rightBox{
	position: absolute;
	right: 60px;
	width:40%;
}
.nBtn{
	font-size:clamp(12px, 1vw, 16px);
	max-width:180px;
}
	/*--- ヘッダーメニュー ---*/

	body.fixed {
		width: 100%;
		height: 100%;
		position: fixed;
		overflow-y: scroll;
	}

	.header_nav .bg_blind.on {
		background: #dbe5e5;
	}

	.header_nav .main_menu2 {
		padding: 0 10px;
	}

	.header_nav .main_menu2 ul {
		width: 100%;
		height: 0;
		overflow-y: hidden;
		flex-flow: column;
		background: #dbe5e5;
		position: absolute;
		top: 90px;
		left: 0;
		opacity: 0;
		transition: .3s;
	}
	.header_nav .main_menu2 ul > li > a{
		font-size:3vw;
		height:auto;
		min-height:70px;
		padding: 2rem 0;
	}
	.header_nav .main_menu2 ul > li > a:after{
		display:none;
	}
	.header_nav .main_menu2 ul li a + ul,
	.header_nav .main_menu2 ul li a + div {
		width: 100%;
		position: initial;
		border-radius: 0;
	}

	.header_nav .main_menu2 ul li:nth-of-type(1) a + ul {
		width: 100%;
	}

	.header_nav .main_menu2 ul li:nth-of-type(4) a::after {
		right: 50%;
		margin: 0 -50px 0 0;
	}

	.header_nav .main_menu2 ul li a + div ul {
		width: 100%;
	}

	.header_nav .main_menu2 ul li a + div ul + div {
		display: none;
	}

	.header_nav .main_menu2 div.sp_btn2.on + ul {
		height: 76vh;
		overflow-y: scroll;
		opacity: 1;
		padding: 0 0 50px;
	}

	.header_nav .main_menu2 ul li {
		width: 100%;
		border-bottom: 1px solid #f6f6f6;
	}

	.header_nav .main_menu2 div div:nth-of-type(1) img {
		max-width: 100px;
	}

	.header_nav .main_menu2 a:nth-of-type(2):before {
		margin: 0 0 0 -20px;
	}

	.header_nav .sp_btn2 {
		width: 30px;
		height: 30px;
		display: flex;
		flex-flow: column;
		align-items: center;
		justify-content: center;
		gap: 5px 0;
		position: absolute;
		right: 10px;
	}

	.header_nav .sp_btn2 div {
		width: 20px;
		height: 3px;
		background: #797979;
		transition: .3s;
	}


	.header_nav .sp_btn2 div:nth-of-type(1) {
		position: absolute;
		transform: rotate(-45deg);
        right:-2px;
	}

	.header_nav .sp_btn2 div:nth-of-type(2) {
		position: absolute;
		transform: rotate(45deg);
        left:-1px
	}

    .header_nav .sp_btn2.on div {	width: 30px;}

	.header_nav .sp_btn2.on div:nth-of-type(1) {
		position: absolute;
		transform: rotate(45deg);
        right:0px;
	}

	/* .header_nav .sp_btn2.on > div:nth-of-type(2) {
		opacity: 0;
	} */

	.header_nav .sp_btn2.on div:nth-of-type(2) {
		position: absolute;
		transform: rotate(-45deg);
        left:0px;
	}

	.header_nav .main_menu2 div:nth-of-type(3) {
		gap: 10px;
		right: 60px;
	}

	.header_nav .main_menu2 div:nth-of-type(3) a:nth-of-type(1) {
		font-size: 1.2rem;
		line-height: 1.2;
		/* padding: 5px; */
	}

	.header_nav .main_menu2 div:nth-of-type(3) a:nth-of-type(2) {
		display: flex;
		align-items: center;
		font-size: 1.2rem;
		line-height: 1.2;
		padding: 10px 10px 10px 10px;
	}

	.header_nav .main_menu2 div:nth-of-type(3) a:nth-of-type(2)::before {
		margin: 0 0 0 -20px;
	}

	/*--- ヘッダーメニュー ここまで---*/
}


@media screen and (max-width:767px) {
	.header_nav .main_menu2 .rightBox{
		display:none;
	}
	.header_nav .main_menu2 ul > li > a{
		font-size: 5vw;
		height:auto;
		min-height:70px;
		padding: 2rem 0;
	}
}