

@charset "UTF-8";
html {
	scroll-padding-top: 60px; /* 上に固定ヘッダーがある場合など、ずらしたい分の高さを指定 */
}
html{
	scroll-behavior: smooth;
}















@media screen and (max-width:767px) { 
	.pc{
		display: none;
	}
	.sp{
		display: block;
	}
}
@media screen and (min-width:768px) { 
	.pc{
		display: block;
	}
	.sp{
		display: none;
	}
}
/*TOPページ*/
.ej-banner-top {
	height: 230px;
	padding-top: 100px;
	width: 100%;
}
.top-mv.ej-banner{
	background: url(./../../uploads/20250301/img-1.png) no-repeat 0% 70%;
}
.mv-catch h1 {
	font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-weight: bold;
	color: white;
	font-size: 2em !important;
	text-transform: uppercase;
	line-height: 1.6em;
}
.mv-catch {
	background: #1E4BA7;
	padding: 24px;
	font-weight: bold;
}
.mv-catch p {
	color: white;
	font-size: 1.4em;
	margin-top: 10px;
}
.index-about-right {
	margin-bottom: 40px;
}


/*about usページ*/
.ej-banner {
	height: 230px;
	padding-top: 100px;
	width: 100%;
}
.ab.ej-banner{
	background: url(./../../uploads/20250301/img-2.png) no-repeat center 80%;
}
.message-div {
	display: flex;
	justify-content: space-between;
	width: 100%;
}
.about-message-right {
	width: 100%;
	padding-top: 16px;
}

.about-message-left {
	max-width: 270px;
	width: 100%;
	text-align: center;
	padding-right: 40px;
}
.about-message-left img{
	width: 100%;
	height: auto;
}
h2.message-h2 {
	width: 100%;
	margin-bottom: 20px;
	font-weight: bold;
}
.message-txt {
	line-height: 1.8em;
	color: #666666;
}
p.message-p {
	font-size: 1.1em;
	font-weight: bold;
	margin-bottom: 10px;
	position: relative;
}
p.message-p span.sp1 {
	display: inline-block;
	padding: 0px 8px;
	background: #1e4ba7;
	color: white;
	margin-left: 8px;
	font-size: 0.8em;
	position: absolute;
	right: 0;
	top: -2px;
}
p.message-p span.sp2 {
	padding: 2px 0px;
	font-size: 20px;
}
h3.grouph3:before {
	content: '- ';
	color: #1e4ba7;
}
h3.grouph3 {
	font-weight: bold;
	padding-left: 8px;
	font-size: 1.4em;
	margin-top: 40px;
}
.list-detail {
	margin-top: 12px;
	padding: 16px;
	border: 1px solid #bbb;
}
.list-detail h4 {
	font-weight: bold;
	margin-bottom: 6px;
}
p.message-p2 {
	color: #aaa;
	margin-bottom: 40px;
	font-style: italic;
}
.message-div {
	margin-bottom: 40px;
	padding-bottom: 40px;
	border-bottom: 1px solid #ccc;
}
.message-div:last-child {
	margin-bottom: 0px;
	padding-bottom: 0px;
	border-bottom: 0px solid #ccc;
}
@media screen and (max-width:850px) { 
	.about-a {
		padding-right: 10px;
		padding-left: 10px;
	}
	.about-info{
		padding-right: 10px;
		padding-left: 10px;
	}
}
@media screen and (max-width:700px) { 
	.message-div{
		flex-wrap: wrap;
	}
	.about-message-left {
		max-width: 189px;
		width: 100%;
		text-align: center;
		padding-right: 0;
		margin: auto;
		margin-bottom: 20px;
	}
	p.message-p span.sp2 {
		font-size: 18px;
	}
}



/*QAページ*/
.qa.ej-banner{
	background: url(./../../uploads/20250301/img-4.png) no-repeat  50% 70%;
}
.faq-content{
	padding: 80px 10px 0;
}
ul.faq-ul {
	margin: 40px 0 0;
}

ul.faq-ul li {
	display: inline-block;
	margin-right: 12px;
	margin-bottom: 6px;
	background: #1e4ba7;
	color: white;
	border: 1px solid #1e4ba7;
}
ul.faq-ul li a{
	padding: 6px 12px;
	display: inline-block;
}
.faq-aq {
	margin-bottom: 40px;
}
.faq-aq:last-child{
	margin-bottom: 0px;
}
.faq-q {
	padding: 10px;
}
.faq-a {
	padding: 10px 20px;
	background: #f0f0f0;
	display: flex;
}
.faq-q {
	display: flex;
}
p.faq-p1 {
	font-size: 24px;
	font-weight: bold;
	width: 65px;
	text-align: center;
}
p.faq-p2 {
	width: calc(100% - 80px);
}
.faq-q p.faq-p2 {
	font-size: 22px;
	font-weight: bold;
}
.faq-a p.faq-p2 {
	line-height: 1.8em;
	font-size: 18px;
}
.faq-q p.faq-p2 a,.faq-a p.faq-p2 a{
	color: #1e4ba7;
}
h3.faqh3 {
	font-weight: bold;
	font-size: 22px;
	background: #1e4ba7;
	color: white;
	padding: 12px 24px;
}
.faq-aqdiv{
	padding: 100px 10px 0;
	margin-top: -40px;
}

@media screen and (max-width:700px) { 
	p.faq-p1 {
		width: 40px;
	}
	.faq-a {
		padding: 10px;
	}
	p.faq-p2 {
		width: calc(100% - 40px);
	}
	ul.faq-ul li a {
		padding: 6px;
		font-size: 0.9em;
	}
	ul.faq-ul li {
		margin-right: 6px;
	}
	.faq-aqdiv {
		padding: 80px 10px 0;
		margin-top: -40px;
	}
	.faq-content {
		padding: 60px 10px 0;
	}
	ul.faq-ul {
		margin: 24px 0 0;
	}
}

/*NEWS EVENT*/

.news.ej-banner {
	background: url(./../../uploads/20250301/img-3.png) no-repeat 82% 70%;
}
.index-even {
	padding-top: 80px;
	margin-top: 0px;
}

.index-title{
	margin-top: 0;
	padding-top: 50px;
}
div.ne-inner {
	max-width: 1220px;
	margin: auto;
	padding: 0 10px;
}




/*news-event*/
.ne-div {
	padding: 0 12px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
.ne-div .news-div {
	width: 49%;
	background: white;
	padding: 20px;
}
.ne-div .events-div {
	width: 49%;
	background: white;
	padding: 20px;
}
.ne-div h3.ne-h3 {
	font-weight: bold;
	margin-bottom: 24px;
	color: #888;
}
.ne-div ul.ne-ul li span {
	display: block;
}
.ne-div span.ne-s-time {
	padding: 4px 8px;
	color: white;
	background: #1e4ba7;
	width: 144px;
	text-align: center;
	font-size: 0.9em;
}
.ne-div span.ne-s-tile {
	font-size: 1.1em;
	/* font-weight: bold; */
	margin-top: 5px;
}
.ne-div ul.ne-ul li {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid #ccc;
}
.ne-div ul.ne-ul li:first-child {
	border-top: 0;
	margin-top: revert-layer;
	padding-top: 0;
}
ul.ne-ul a{
	transition: color 0.3s ease;
}
ul.ne-ul a:hover {
	color: #1e4ba7;
}


/* post */
.top-page-news ul.ne-ul li+li+li+li {
	display: none;
}
.detail-page-news ul.ne-ul li+li+li+li {
	display: none;
}


/* DETAILページ */
.detail-page-news .ne-div .news-div {
	width: 100%;
	margin-bottom: 20px;
}
.detail-page-news .ne-div .events-div{
	width: 100%;
}
h3.detail-side-h3 {
	font-weight: bold;
	color: #888;
	text-align: center;
	margin-bottom: 20px;
	font-size: 1.8em;
}
.news-view {
	padding: 80px 10px;
}
.new-info-right-1 {
	padding: 15px 0;
}


/*スマホ時*/
@media screen and (max-width:767px) { 
	.ne-div .news-div {
		width: 100%;
		margin-bottom: 20px;
	}
	.ne-div .events-div{
		width: 100%;
	}
	.mv-catch h1 {
		font-size: 1.6em !important;
	}
	.ne-div ul.ne-ul li {
		margin-top: 12px;
		padding-top: 12px;
	}
	.news-view {
		padding: 30px 10px;
	}
	.index-title{
		padding-top: 0;
	}
	.index-even{
		padding-top: 40px;
	}
	.index-about{
		padding-top: 40px;
	}
}





/*header*/
.hamburger {
	display: block;
	height: 60px;
	margin-left: auto;
	position: relative;
	z-index: 10;
	width: 60px;
	border: none;
	background-color: transparent;
}
.hamburger.-active .hamburger__line {
	background-color: transparent;
}
.hamburger.-active .hamburger__line::before {
	top: 0;
	transform: rotate(45deg);
}
.hamburger.-active .hamburger__line::after {
	top: 0;
	transform: rotate(-45deg);
}
.hamburger.-active .hamburger__text::before {
	content: 'CLOSE';
}
.hamburger__line {
	display: block;
	height: 2px;
	position: absolute;
	top: 23px;
	left: 50%;
	transform: translateX(-50%);
	width: 24px;
	background-color: white;
	transition: 0.4s;
}
.hamburger__line:before,
.hamburger__line:after {
	content: "";
	display: block;
	height: 100%;
	position: absolute;
	width: 100%;
	background-color: white;
	transition: inherit;
}
.hamburger__line:before {
	top: -6px;
}
.hamburger__line:after {
	top: 6px;
}
.hamburger__text {
	position: absolute;
	bottom: 8px;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
}
.hamburger__text::before {
	content: "MENU";
	text-align: center;
	color: white;
	font-size: 10px;
	font-weight: 900;
}

.header__nav-area {
	position: fixed;
	top: 0;
	left: -100%;
	z-index: 9;
	height: 100vh;
	width: 300px;
	visibility: hidden;
	padding-top: 60px;
	background-color: #fff;
	transition: 0.4s;
}
.header__nav-area.-active {
	left: 0;
	visibility: visible;
}
.global-navigation {
	padding-top: 40px;
	padding-right: 25px;
	padding-bottom: 120px;
	padding-left: 25px;
}
.global-navigation__list > li {
	padding-bottom: 20px;
	border-bottom: 2px solid #e7e9ee;
}
.global-navigation__list > li + li {
	margin-top: 20px;
}
.global-navigation__link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	color: #172e59;
	font-weight: 900;
	transition: color 0.4s;
	font-size: 0.95em;
}
.global-navigation__link.-accordion {
	position: relative;
	background: none;
	border: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	padding: 0;
}
.global-navigation__link.-accordion::after {
	content: '';
	display: block;
	height: 12px;
	position: absolute;
	top: 50%;
	right: 5px;
	width: 2px;
	background-color: #ed3242;
	transform: translateY(-50%);
	transition: transform 0.4s;
}
.global-navigation__link.-accordion::before {
	content: '';
	display: block;
	height: 2px;
	position: absolute;
	top: 50%;
	right: 0;
	width: 12px;
	background-color: #ed3242;
	transform: translateY(-50%);

}
.global-navigation__link.-active::after {
	transform: translateY(-50%) rotate(-90deg);
}
.accordion {
	height: 0;
	overflow: hidden;
	visibility: hidden;
	transition: 0.4s;
}
.accordion.-active {
	height: auto;
	padding-top: 30px;
	visibility: visible;
}
.accordion__list li {
	font-size: 0.75rem;
}
.accordion__list li + li {
	margin-top: 21px;
}
.accordion__link {
	color: #172e59;
}
header.header {
	position: fixed;
	top: 0;
	width: 100%;
	background: #1e4ba7;
	z-index: 999;
}
.header-pc {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 1200px;
	margin: auto;
}
.header-menu {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.header-menu .header-list a {
	color: white;
}

.header-menu .header-list {
	margin-right: 16px;
	padding: 4px;
}
@media screen and (max-width:767px) { 
	.header-pc .header-menu{
		display: none;
	}
}

.header-nav-logo img {
	max-width: 350px;
	padding: 15px;
}

body {
	padding-top: 76px;
}


@media screen and (max-width:767px) { 
	.header-nav-logo img {
		max-width: 295px;
		padding: 10px;
	}
	body {
		padding-top: 60px;
	}
}

@media screen and (max-width:390px) { 
	.header-nav-logo img {
		max-width: 270px;
		padding: 11px;
	}
}






/*footer*/
.foot-navc a {
	font-size: 1em;
}
.foot-logo img {
	max-width: 320px;
}


/*mfg EVENT*/
.mfg.ej-banner {
	background: url(./../../uploads/20250301/img-7.png) no-repeat 82% 70%;
}

.mfg-box {
	padding-top: 80px;
	margin-top:-20px;
}

.mfg-content {
	max-width: 1100px;
	width: 100%;
	margin: auto;
	padding: 10px;
	margin-bottom: 80px;
}

.mfg-content .mfg-lead ul li a {
	color: #1e4ba7;
	text-decoration: underline !important;
	font-size: 16px;
}
.mfg-content .mfg-lead ul li {
	margin-right: 12px;
}
.mfg-content .mfg-lead ul {
	display: flex;
	flex-wrap: wrap;
}
.mfg-content .mfg-lead h3 {
	margin-right: 20px;
	font-size: 20px;
	font-weight: bold;
}
.mfg-content .mfg-lead {
	display: flex;
}
.mfg-content h3.mfg-h3-2 {
	color: white;
	padding: 10px;
	background: #1e4ba7;
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 20px;
}
.mfg-content .mfg-p-1{
	margin-bottom: 12px;
}
.mfg-content p.message-p{
	margin-bottom: 6px;
}

.mfg-content .about-message-left{
	max-width: 320px;
	width: 80%;
}




.org-list{
	margin-top: 60px;
}

ul.org-ul li {
	display: flex;
	justify-content: space-between;
	border-top: 1px solid #ccc;
}
p.org1 {
	font-weight: bold;
	width: 20%;
	padding: 10px 10px;
	border-right: 1.5px solid white;
}
p.org2 {
	font-weight: bold;
	width: 58%;
	padding: 10px 10px;
	border-right: 1.5px solid white;
}
p.org3 {
	font-weight: bold;
	width: 20%;
	padding: 10px 10px;
}
ul.org-ul .org-first{
	border-top: 0px;
}

ul.org-ul .org-first {
	background: #1e4ba7;
	color: white;
}
ul.org-ul .org-first+li {
	margin-top: 0;
}
p.org3 img {
	max-height: 40px;
}
p.org3.bg-black{
	background: #666;
}
p.org2 a {
	color: #082767;
}
p.org2 a:hover {
	color: #7588af;
}


.zoomimg img {
	transition: transform 0.3s ease;
}

.zoomimg img:hover {
	transform: scale(1.02);
}
.Contact-div{
	background: #f8f8f8;
	border-bottom: 1px solid #ccc;
	margin-top: 40px;
}
.contact-inner {
	max-width: 1150px;
	margin: auto;
	padding: 40px 10px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.contactbox {
	width: 48.5%;
	text-align: center;
	background: white;
	padding: 40px;
}
.contactbox .Partner-title {
	font-size: 30px;
	margin-bottom: 0;
}
.contact-p {
	font-size: 1.1em;
}
.contact-p a {
	color: #1e4ba7;
}

.events-school p.message-p {
	color: black;
}
.events-school .mfg-p-1 {
	margin-bottom: 0 !important;
	color: black !important;
}
.contact-p a{
	text-decoration: underline !important;
}
@media screen and (max-width:767px) { 
	.contactbox {
		width: 100%;
		margin-bottom: 10px;
	}
}


.resource.ej-banner {
	background: url(./../../img/img_bk1.png) no-repeat 82% 70%;
}

.events.ej-banner {
	background: url(./../../img/img_bk2.png) no-repeat 82% 70%;
}

.resoure-div .inner {
	max-width: 1100px;
	padding: 60px 10px;
	margin: auto;
}
.resoure-small {
	margin-bottom: 60px;
}
.resoure-small table {
	width: 100%;
	margin-top: 20px;
}

.resoure-small table td {
	border: 1px solid #ccc;
	width: 33.33333%;
	padding: 12px 6px;
}
.resoure-small {
	margin-bottom: 60px;
}
.resoure-small table .tr1 {
	color: white;
	text-align: center;
	font-size: 1.1em;
	font-weight: bold;
}
.resoure-small table .tr1 {
	background: #1e4ba7;
}
/*.resoure-small#table2 table .tr1 {
	background: #4a90e2;
}

.resoure-small#table3 table .tr1 {
	background: #0d1a45;
}*/
p.button_p a {
	display: block;
	padding: 12px 6px;
	width: 300px;
	margin: auto;
	background: #1e4ba7;
	color: white;
	font-weight: bold;
}

p.button_p {
	text-align: center;
}


p.message-p a:hover {
	color: #1e4ba7;
}

.flex-img-events>div {
	width: 24%;
	margin: 8px 0;
}

.flex-img-events {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.page-link-button {
	display: flex;
	flex-wrap: wrap;
	max-width: 500px;
	margin: 80px auto 0;
	padding: 0 8px;
}
.page-link-button a {
	display: block;
	padding: 8px 16px;
	background: #1e4ba7;
	color: white;
	margin: 0 8px 8px 0;
	font-size: 0.95em;
}


@media screen and (max-width:767px) { 
	.flex-img-events>div {
		width: 48%;
		margin: 16px 0;
	}
	.ej-banner h2 {
		padding-left: 12px;
	}
	.new-info-right {
		margin-top: 40px;
	}
}







.ne-div .news-div{
	width: 100% !important; 
}
ul.ne-ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
ul.ne-ul li{
	width: 48% !important;
}
.ne-div ul.ne-ul li:first-child{
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid #ccc;
}
#detail-page .ne-ul li{
	width: 100% !important;
}
.top-page-news ul.ne-ul li+li+li+li {
	display: block;
}
.top-page-news ul.ne-ul li+li+li+li+li {
	display: block;
}
.top-page-news ul.ne-ul li+li+li+li+li+li {
	display: block;
}
.top-page-news ul.ne-ul li+li+li+li+li+li+li {
	display: none;
}
@media screen and (max-width:767px) { 
	ul.ne-ul li{
		width: 100%;
	}
}


li.parent-menu {
	border-bottom: 0;
}

li.child-menu {
	margin-top: 0 !important;
	border-bottom: 0;
}
li.child-menu.child-menu-last {
	border-bottom: 2px solid #e7e9ee;
}



.header-menu {
	position: relative;
}

.header-list.has-children {
	position: relative;
}
.child-menu-wrapper {
	display: block;
	opacity: 0;
	visibility: hidden;
	position: absolute;
	top: 100%;
	left: 0;
	background: white;
	padding: 10px 0;
	box-shadow: 0 4px 6px rgba(0,0,0,0.1);
	transition: opacity 0.3s ease, transform 0.3s ease;
	transform: translateY(-10px);
	z-index: 1000;
	min-width: 200px; /* 必要に応じ調整 */
}

.header-list.has-children:hover .child-menu-wrapper {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.child-menu-pc {
	display: block;
	padding: 8px 20px;
	white-space: nowrap;
}

.child-menu-pc a {
	color: #004098 !important;
	text-decoration: none;
	display: block;
}

.child-menu-pc a:hover {
	background: #f0f4f8;
}
