@font-face {
	font-family: 'GenJyuuGothic';
	src: url('../font/GenJyuuGothic-Regular.woff') format('truetype');
	/* 通常のウェイト（Regular） */
    font-display: swap;
}

@font-face {
	font-family: 'GenJyuuGothic';
    src: url('../font/GenJyuuGothic-Normal.woff') format('truetype');
	font-weight: 500; /* Normalのウェイト */
    font-display: swap;
}

@font-face {
	font-family: 'GenJyuuGothic';
    src: url('../font/GenJyuuGothic-Medium.woff') format('truetype');
	font-weight: 600; /* Mediumのウェイト */
    font-display: swap;
}

@font-face {
	font-family: 'GenJyuuGothic';
    src: url('../font/GenJyuuGothic-Bold.woff') format('truetype');
	font-weight: bold; /* Boldのウェイト 700 */
    font-display: swap;
}

@font-face {
	font-family: 'GenJyuuGothic';
    src: url('../font/GenJyuuGothic-Heavy.woff') format('truetype');
	font-weight: 800; /* Heavyのウェイト */
    font-display: swap;
}

/*--------------------------------------------------------- header.l-NewHeader */
header.l-NewHeader {
	width: 100%;
	height: min(calc((138/1440*100vw) + 32px), 170px);
	font-family: 'GenJyuuGothic','Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
	font-weight: 600;
	background-color: transparent;
	border-bottom: none;
}
header.l-NewHeader .l-NewHeader__button {
	display: none;
}
header.l-NewHeader .l-NewHeader__top {
	height: 32px;
	width: 100%;
	margin: 0 auto;
}
header.l-NewHeader .l-NewHeader__top .l-NewHeader__topText {
	padding-top: 8px;
	text-align: center;
	line-height: 1.5;
	letter-spacing: 0;
}
header.l-NewHeader .l-NewHeader__main {
	background-color: #fff;
	position: fixed;
	padding-left: min(calc(120/1440*100vw), 120px);
	overflow: hidden;
	width: 100%;
	height: min(calc(138/1440*100vw), 138px);
	top: 32px;
	z-index: 99998;
}
header.l-NewHeader .l-NewHeader__main .l-NewHeader__mainInner {
	width: min(calc(311/1440*100vw), 398px);
}
header.l-NewHeader .l-NewHeader__main .logo {
	padding: min(calc(17/1440*100vw), 17px) 0 min(calc(11/1440*100vw), 11px);
}
header.l-NewHeader .l-NewHeader__main .logo a img {
	width: 100%;
}
header.l-NewHeader .l-NewHeader__main div.tel {
	width: min(calc(188/1440*100vw), 188px);
	margin: 0 auto;
	text-align: center;
}
/*--------------------------------------------------------- header.l-NewHeader > nav.global */
header.l-NewHeader > nav.l-NewHeader__global {
	position: fixed;
	right: 0;
	width: min(calc(832/1440*100vw), 832px);
	padding-right: min(calc(70/1440*100vw), 70px);
	padding-right: min(calc(194.5/1440*100vw), 194.5px);
	overflow:hidden;
	z-index: 99999;
}
header.l-NewHeader > nav.l-NewHeader__global ul.link02,
header.l-NewHeader > nav.l-NewHeader__global ul.link03,
header.l-NewHeader > nav.l-NewHeader__global ul.form {
	display:none;
}
header.l-NewHeader > nav.l-NewHeader__global .link01 {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	flex-wrap: wrap;
}
header.l-NewHeader > nav.l-NewHeader__global .link01 li {
	position: relative;
	width: 25%;
}
header.l-NewHeader > nav.l-NewHeader__global .link01 li::after {
	position: absolute;
	content: "";
	background-image : linear-gradient(to bottom, #A8A8A8 3px, transparent 3px);
	background-size: 1px 6px;
	background-repeat: repeat-y; 
	width: 1px;
	height: min(calc(82/1440*100vw), 82px);
	top: min(calc(22/1440*100vw), 22px);
	right: 0;
}
header.l-NewHeader > nav.l-NewHeader__global .link01 .classroom::after {
	background-image : none;
}
header.l-NewHeader > nav.l-NewHeader__global .link01 .instagram::after {
	background-image : none;
}
header.l-NewHeader > nav.l-NewHeader__global .link01 li:last-child::after {
	background-image: none;
}
header.l-NewHeader > nav.l-NewHeader__global .link01 li a {
	display: block;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	width: 100%;
	height: min(calc(112/1440*100vw), 112px);
	margin-top: min(calc(9/1440*100vw), 9px);
	overflow: hidden;
	text-align: center;
}
header.l-NewHeader > nav.l-NewHeader__global .link01 li a img {
	width: auto;
	height: 100%;
	display: inline;
}
header.l-NewHeader > nav.l-NewHeader__global .link01 li a:hover {
	opacity: 0.8;
}
header.l-NewHeader > nav.l-NewHeader__global .link01 .sns {
	position: absolute;
	right: min(calc(70/1440*100vw), 70px);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: min(calc(13/1440*100vw), 13px);
	width: min(calc(98/1440*100vw), 98px);
}
header.l-NewHeader > nav.l-NewHeader__global .link01 .sns > span {
	margin-top: min(calc(9/1440*100vw), 9px);
}
header.l-NewHeader > nav.l-NewHeader__global .link01 .sns > ul {
	display: flex;
	gap: min(calc(8/1440*100vw), 8px);
}
header.l-NewHeader > nav.l-NewHeader__global .link01 .sns > ul > li {
	width: min(calc(40/1440*100vw), 40px);
	height: min(calc(40/1440*100vw), 40px);
}
header.l-NewHeader > nav.l-NewHeader__global .link01 .sns > ul > li > a {
	width: min(calc(40/1440*100vw), 40px);
	height: min(calc(40/1440*100vw), 40px);
	margin-top: 0;
	overflow: unset;
}
header.l-NewHeader > nav.l-NewHeader__global ul.sns {
	display: none;
}
/*--------------------------------------------------------- flow_menu */
.flow_menu {
	position: fixed;
	top: min(calc(240/1440*100vw), 240px);
	right: 0;
	z-index: 99997;
}
.flow_menu .form {
}
.flow_menu .form li {
}
.flow_menu .form a {
	display: block;
	background-repeat: no-repeat;
	background-position: top right;
	background-size: contain;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}
.flow_menu .form a:hover {
	opacity: 0.8;
}
.flow_menu .form li.experience a {
	width: min(calc(60/1440*100vw), 60px);
	height: min(calc(200/1440*100vw), 200px);
	margin-bottom: min(calc(12/1440*100vw), 12px);
	margin-right: 0;
	background-image:url(../img/new_header/header_form_pc_01.svg);
}
.flow_menu .form li.request a {
	width: min(calc(60/1440*100vw), 60px);
	height: min(calc(140/1440*100vw), 140px);
	background-image:url(../img/new_header/header_form_pc_02.svg);
}
@media screen and (max-width:767px) {
	/*--------------------------------------------------------- header.l-NewHeader */ 
	header.l-NewHeader {
		padding: 0;
		height: calc(84/375*100vw);
	}
	header.l-NewHeader .l-NewHeader__top {
		display: block;
		height: calc(20/375*100vw);
		width: 100%;
	}
	header.l-NewHeader .l-NewHeader__top .l-NewHeader__topText {
		font-size: calc(10/375*100vw);
		padding-top: calc(3/375*100vw);
	}
	header.l-NewHeader .l-NewHeader__button {
		display: block;
		position: fixed;
		top: calc(20/375*100vw);
		width: 100%;
		z-index: 99999;
	}
	header.l-NewHeader .l-NewHeader__button a,
	header.l-NewHeader .l-NewHeader__button span {
		display: block;
		position: absolute;
		top: calc(10/375*100vw);
		background-repeat: no-repeat;
		background-position: center bottom;
		background-size: calc(42/375*100vw) calc(42/375*100vw);
		border-radius: calc(21/375*100vw);
		width: calc(42/375*100vw);
		height: calc(42/375*100vw);
		overflow: hidden;
		text-indent: 100%;
		white-space: nowrap;
	}
	header.l-NewHeader .l-NewHeader__button .tel {
		background-position: center center;
		right: calc(74/375*100vw);
		background-color: #FABF13;
		background-image: url(../img/new_header/button_tel.png);
	}
	header.l-NewHeader .l-NewHeader__button .menu {
		right: calc(20/375*100vw);
		background-image: url(../img/new_header/button_menu.png);
		background-color: #5BB647;
		background-size: calc(40/375*100vw) calc(80/375*100vw);
	}
	header.l-NewHeader .l-NewHeader__button .menu.open {
		background-position:center top;
	}
	header.l-NewHeader .l-NewHeader__main {
		padding-left: calc(20/375*100vw);
		width: 100%;
		height: calc(64/375*100vw);
		top: calc(20/375*100vw);
	}
	header.l-NewHeader .l-NewHeader__main .l-NewHeader__mainInner {
		width: calc(200/375*100vw);
	}
	header.l-NewHeader .l-NewHeader__main .logo {
		width: 100%;
		padding: calc(20.3/375*100vw) 0;
	}
	header.l-NewHeader .l-NewHeader__main .tel {
		display: none;
	}
	/*--------------------------------------------------------- header.l-NewHeader > nav.l-NewHeader__global */
	header.l-NewHeader > nav.l-NewHeader__global {
		display: none;
		position: fixed;
		top: calc(84/375*100vw);
		left: 0;
		margin: 0;
		background-color: #F8F4EF;
		width: 100%;
		height: calc(100vh - (64/375*100vw));
		overflow: auto;
		padding: calc(20/375*100vw) 0;
	}	
	header.l-NewHeader > nav.l-NewHeader__global .link01 {
		width: calc(298/375*100vw);
		margin: 0 auto;
	}
	header.l-NewHeader > nav.l-NewHeader__global .link01 li {
		position: relative;
		width: 50%;
		border: solid calc(4/375*100vw) #fff;
	}
	header.l-NewHeader > nav.l-NewHeader__global .link01 li.sns {
		display: none;
	}
	header.l-NewHeader > nav.l-NewHeader__global .link01 li:nth-child(n+3)::before {
		position: absolute;
		content: "";
		background-image : linear-gradient(to right, #A8A8A8 3px, transparent 3px);
		background-size: 6px 1px;
		background-repeat: repeat-x; 
		width: 100%;
		height: 1px;
		top: calc(-4.5/375*100vw);
		left: 0;
	}
	header.l-NewHeader > nav.l-NewHeader__global .link01 li:nth-child(2n+1)::after {
		position: absolute;
		content: "";
		background-image : linear-gradient(to bottom, #A8A8A8 3px, transparent 3px);
		background-size: 1px 6px;
		background-repeat: repeat-y; 
		width: 1.25px;
		height: calc(134/375*100vw);
		top: 0;
		z-index: 2;
		right: calc(-4.5/375*100vw);
	}
	header.l-NewHeader > nav.l-NewHeader__global .link01 li:nth-child(2n)::after {
		background-image : none;
	}
	header.l-NewHeader > nav.l-NewHeader__global .link01 li a {
		display: block;
		background-position: center center;
		background-repeat: no-repeat;
		background-size: contain;
		width: calc(112/375*100vw);
		height: calc(104/375*100vw);
		margin: calc(15/375*100vw) auto;
		overflow: hidden;
	}
	header.l-NewHeader > nav.l-NewHeader__global .link01 li a img {
		width: 100%;
	}
	header.l-NewHeader > nav.l-NewHeader__global ul.link02 {
		display: block;
		margin: calc(15/375*100vw) auto 0;
		width: calc(300/375*100vw);
	}
	header.l-NewHeader > nav.l-NewHeader__global ul.link02 li a {
		display: block;
		font-size: calc(15/375*100vw);
		font-weight: bold;
		line-height: 1;
		letter-spacing: 0.05em;
		border-bottom: 1px dotted #A8A8A8;
		padding: calc(12.5/375*100vw) 0 calc(12.5/375*100vw) calc(40/375*100vw);
		height: auto;
		background: url(../img/new_header/list_icon.svg) left 0px top calc(10/375*100vw) no-repeat;
		background-size: calc(20/375*100vw) auto;
	}
	header.l-NewHeader > nav.l-NewHeader__global ul.link03 {
		display: block;
		align-items: center;
		margin: calc(10/375*100vw) auto 0;
		width: calc(300/375*100vw);
	}
	header.l-NewHeader > nav.l-NewHeader__global ul.link03 li a {
		display: block;
		font-size: calc(12/375*100vw);
		font-weight: bold;
		color: #5BB647;
		line-height: calc(27/375*100vw);
		letter-spacing: 0.05em;
		border: 1px solid #5BB647;
		border-radius: calc(4/375*100vw);
		width: calc(300/375*100vw);
		height: auto;
		background-image: url(../img/new_header/button_icon.svg);
		background-repeat: no-repeat;
		background-size: calc(5.12/375*100vw) auto;
	}
	header.l-NewHeader > nav.l-NewHeader__global ul.link03 li.member a {
		padding: 0 0 0 calc(66.8/375*100vw);
		background-position: right calc(68.8/375*100vw) top calc(9/375*100vw);
	}
	header.l-NewHeader > nav.l-NewHeader__global ul.form {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin: calc(28/375*100vw) auto 0;
		width: calc(322/375*100vw);
	}
	header.l-NewHeader > nav.l-NewHeader__global ul.form li a {
		display: block;
		background-repeat: no-repeat;
		background-position: center bottom;
		background-size: contain;
		overflow: hidden;
		text-indent: 100%;
		white-space: nowrap;
	}
	header.l-NewHeader > nav.l-NewHeader__global ul.form li.experience a {
		width: calc(190/375*100vw);
		height: calc(45/375*100vw);
		margin-right: calc(12/375*100vw);
		background-image:url(../img/new_header/global_form_sp_01.svg);
	}
	header.l-NewHeader > nav.l-NewHeader__global ul.form li.request a {
		width: calc(120/375*100vw);
		height: calc(45/375*100vw);
		background-image:url(../img/new_header/global_form_sp_02.svg);
	}
	header.l-NewHeader > nav.l-NewHeader__global ul.sns {
		margin: calc(20/375*100vw) auto calc(17.5/375*100vw);
		width: calc(200/375*100vw);
		display: flex;
		align-items: center;
	}
	header.l-NewHeader > nav.l-NewHeader__global ul.sns > span{
		font-size: calc(12/375*100vw);
		font-weight: bold;
		letter-spacing: .05em;
		position: relative;
		padding-right: calc(15.1/375*100vw);
		white-space: nowrap;
	}
	header.l-NewHeader > nav.l-NewHeader__global ul.sns > span:before{
		content: "";
		width: calc(22/375*100vw);
		height: 2px;
		background: #5BB647;
		border-radius: 2px;
		transform: rotate(24deg);
		position: absolute;
		right: 0;
		top: calc(-8/375*100vw);
	}
	header.l-NewHeader > nav.l-NewHeader__global ul.sns > span:after{
		content: "";
		width: calc(22/375*100vw);
		height: 2px;
		background: #5BB647;
		border-radius: 2px;
		transform: rotate(-24deg);
		position: absolute;
		right: 0;
		bottom: calc(-8/375*100vw);
	}
	header.l-NewHeader > nav.l-NewHeader__global ul.sns li {
		margin-left: calc(20/375*100vw);
		width: calc(40/375*100vw);
	}
	header.l-NewHeader > nav.l-NewHeader__global ul.sns li > a{}

	/*--------------------------------------------------------- flow_menu */
	.flow_menu {
		height: calc(54/375*100vw);
		top: unset;
		bottom: 0;
		left: 0;
		z-index: 99997;
		background: #fff;
	}
	.flow_menu .form {
		width: 100%;
		display: flex;
		justify-content: center;
		align-items: flex-end;
		padding-top: calc(9/375*100vw);
	}
	.flow_menu .form li {
	}
	.flow_menu .form a {
		display: block;
		background-repeat: no-repeat;
		background-position: center bottom;
		background-size: contain;
		overflow: hidden;
		text-indent: 100%;
		white-space: nowrap;
	}
	.flow_menu .form li.experience a {
		width: calc(200/375*100vw);
		height: calc(45/375*100vw);
		margin-bottom: 0;
		margin-right: calc(8/375*100vw);
		background-image:url(../img/new_header/footer_form_sp_01.svg);
	}
	.flow_menu .form li.request a {
		width: calc(140/375*100vw);
		height: calc(45/375*100vw);
		background-image:url(../img/new_header/footer_form_sp_02.svg);
	}
}