/* Generated by scripts/build.mjs from admission CSS and src/guide-header-overrides.css. */
#header div,#header span,#header applet,#header object,#header iframe,#header h1,#header h2,#header h3,#header h4,#header h5,#header h6,#header p,#header blockquote,#header pre,#header a,#header abbr,#header acronym,#header address,#header big,#header cite,#header code,#header del,#header dfn,#header em,#header img,#header ins,#header kbd,#header q,#header s,#header samp,#header small,#header strike,#header strong,#header sub,#header sup,#header tt,#header var,#header b,#header u,#header i,#header center,#header dl,#header dt,#header dd,#header ol,#header ul,#header li,#header fieldset,#header form,#header label,#header legend,#header table,#header caption,#header tbody,#header tfoot,#header thead,#header tr,#header th,#header td,#header article,#header aside,#header canvas,#header details,#header embed,#header figure,#header figcaption,#header footer,#header header,#header hgroup,#header menu,#header nav,#header output,#header ruby,#header section,#header summary,#header time,#header mark,#header audio,#header video{
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
#header article,#header aside,#header details,#header figcaption,#header figure,#header footer,#header header,#header hgroup,#header menu,#header nav,#header section,#header main{
	display: block;
}
#header ol,#header ul{
	list-style: none;
}
#header blockquote,#header q{
	quotes: none;
}
#header blockquote:before,#header blockquote:after,#header q:before,#header q:after{
	content: '';
	content: none;
}
#header table{
	border-collapse: collapse;
	border-spacing: 0;
}

@font-face{
	font-family: "JosefinSans-Bold";
	src:url("../fonts/JosefinSans-Bold.ttf");
}
#header *,#header *:before,#header *:after{
    box-sizing: border-box;
}
#header main .wrap{
	margin:0 auto;
	width:100%;
}
#header img{
    max-width: 100%;
    height: auto;
}
#header a{
  color: #464749;
  text-decoration: none;
}
#header .header{
	z-index:100;
}
#header .drawer{
 display: flex;
 flex-direction: row;
 flex-wrap:  wrap;
 align-items: center;
 position: relative;
 height: 70px;
 padding: 0 0 0 5px;
}
#header #logo{
  width: calc(100% - 200px);
  display:block;
  margin:0 ;
}
#header #logo a.mainlogoImg{
	margin:5px 0 0 5px;
	background: url("../img/HeaderFooterN/headerNewMainLogo.svg") top 0px left no-repeat;
	display:block;
	width:175px;
	height:60px;	
}
#header #logo a.mainlogoImg:hover{
	opacity:0.7;
}
@media only screen and (min-width: 450px){#header #logo a.mainlogoImg{
	margin-left: 13px;	
}
}
@media only screen and (min-width: 500px){#header #logo a.mainlogoImg{
	margin-left: 20px;	
}
}
#header .headerTopLink{
	width:120px;
	margin:5px 0 0 ;
	display: flex;
	flex-wrap:  wrap;
	position: relative;	
	right:-5px ;
}
#header .headerTopLink a{
	display:block;
	width:60px;
	height:60px;
	margin:0;
}
#header .headerTopLink a:hover{
	opacity:0.7;
}
#header .headerTopLink a.studentButton{
	background: url("../img/HeaderFooterN/headerTopLink_student.svg") top 5px center no-repeat,
				#009BE0;	
	border-radius:20px 0 0 20px;
}
#header .headerTopLink a.visitorButton{
	background: url("../img/HeaderFooterN/headerTopLink_visitor.svg") top 5px center no-repeat,
				#003D85;	
	border-radius:0 20px 20px 0;	
}
@media only screen and (min-width: 850px){#header .headerTopLink{
	width:120px;
	margin:8px 0 0 ;
	right:410px ;
	z-index:10;
}
#header .headerTopLink a.studentButton{
	background: url("../img/HeaderFooterN/headerTopLink_student.svg") top 5px center no-repeat,
				#009BE0;		
}
#header .headerTopLink a.visitorButton{
	background: url("../img/HeaderFooterN/headerTopLink_visitor.svg") top 5px center no-repeat,
				#222;	
}
}
#header nav.headerNavi{
 width: 100%;
 height: 80px;
 position: relative;
 background: #fff;
 overflow: auto;
}
#header .menu ul li a{
	display:block;
	transition: all 0.2s 0s ease;
}
#header .menu ul li a:hover{
	opacity:0.75;
}
#header .menu{
  text-align:center;
  background:#fff;
  transition: .5s ease;
  -webkit-transform: translateX(-105%);
  transform: translateX(-105%);
}
@media screen and (max-width: 2799px){#header .menu{  
  position: fixed;
  width:100%;
  top:0px;
  z-index:101;
  text-align:left;
  overflow-y: auto;
  height:100%; 
  -webkit-overflow-scrolling: touch;
}
}
#header .menu.open{
 transform: translateX(0%);
}
#header .Toggle{
    display: block;
    position: fixed;    
    width: 70px;
    height: 70px;
    cursor: pointer;
    z-index: 200;
 	right:0;	
	background: url("../img/HeaderFooterN/headerHamburger_text.svg") bottom 5px center no-repeat,
				#000;
}
#header .Toggle.active{
	background:#ab0a40;
}
#header .Toggle span{
    display: block;
    position: absolute;
    width: 30px;
	right:21px;
    border-bottom: solid 3px #fff;
    -webkit-transition: .35s ease-in-out;	
    -moz-transition: .35s ease-in-out;		
    transition: .35s ease-in-out;			
}
#header .Toggle span:nth-child(1){
    top:22px;
}
#header .Toggle span:nth-child(2){
    top: 30px;
}
#header .Toggle span:nth-child(3){
    top: 38px;
}
#header .Toggle.active span:nth-child(1){
    top: 30px;   
    transform: rotate(-45deg);
}
#header .Toggle.active span:nth-child(2),#header .Toggle.active span:nth-child(3){
    top: 30px;   
    transform: rotate(45deg);
}
#header .Toggle.active span:nth-child(3){
    top: 30px;   
}
#header .headerMenuChoice{
	width: 90%;
	max-width:650px;
	margin: 30px auto;
}
#header .headerMenuChoice .btnLarea a{
	width:100%;
	color:#fff;
	display:block;
	padding: 20px 0;
	padding-left:85px;
	margin:10px 0;
	border-radius:75px;
	font-size:16px;
	line-height:15px;
	box-shadow: 0 3px #d6d6d6;
}
#header .headerMenuChoice .btnLarea a.student{
	background: url("../img/HeaderFooterN/hamMenuIconL_vispo.svg") left 13px center no-repeat,
  				url("../img/HeaderFooterN/button_arrow_W.svg") center right 15px no-repeat,
				#4d9ccd;
    background-size: 60px, 25px, auto;
}
#header .headerMenuChoice .btnLarea a.visitor{
	background: url("../img/HeaderFooterN/hamMenuIconL_student.svg") left 13px center no-repeat,
				url("../img/HeaderFooterN/button_arrow_W.svg") center right 15px no-repeat,
				#555;
	background-size: 60px, 25px, auto;
}
#header .headerMenuChoice .btnLarea a b{
	font-family: var(--font-gothic);
	font-weight: 700;
	font-size:1.6em;
	line-height:1.2em;
}
#header .headerMenuChoice .btnLarea a span{
	display:block;
	margin-top:3px;
	opacity:0.9;
}
@media screen and (min-width: 768px){#header .headerMenuChoice{
	display:flex;
	flex-wrap:  wrap;
}
#header .headerMenuChoice .btnLarea a{
	width:318px;
	color:#fff;
	display:block;
	padding: 33px 0 23px 95px;
	margin:8px 0;
	border-radius:65px;
	font-size:16px;
	line-height:20px;
}
#header .headerMenuChoice .btnLarea a span{
	margin-top:3px;
	opacity:0.9;
}
#header .headerMenuChoice .btnLarea a.visitor{
	margin-right:14px;
}
}
#header .headerMenuSNS{
	padding:30px 0 30px;
}
#header .headerMenuSNS .snsModalButton{
	width: 156px;
	margin:3px auto;
	display: flex;
	flex-wrap:  wrap;
}
#header .headerMenuSNS .snsModalButton a{
	width: 30px;	
	height:26px;
	display:block;
	margin-right:12px;
}
#header .headerMenuSNS .snsModalButton a:last-child{
	margin-right:0;
}
#header .headerMenuSNS .snsModalButton a.twitter{
	background:url("../img/HeaderFooterN/iconBanner_twitterG.svg") center center no-repeat;
}
#header .headerMenuSNS .snsModalButton a.instagram{
	background:url("../img/HeaderFooterN/iconBanner_instaG.svg") center center no-repeat;
}
#header .headerMenuSNS .snsModalButton a.youtube{
	background:url("../img/HeaderFooterN/iconBanner_youtubeG.svg") center center no-repeat;
}
#header .headerMenuSNS .snsModalButton a.line{
	background:url("../img/HeaderFooterN/iconBanner_lineG.svg") center center no-repeat;
}
@media screen and (min-width: 768px){#header .headerMenuSNS .snsModalButton{
	width: 198px;
	margin:-10px auto 12px;
}
#header .headerMenuSNS .snsModalButton a{
	width: 36px;	
	height:36px;
	margin:0 15px;
}
#header .headerMenuSNS .snsModalButton a.twitter{
	background:url("../img/HeaderFooterN/iconBanner_twitterG.svg") center center no-repeat;
	background-size:36px;
}
#header .headerMenuSNS .snsModalButton a.instagram{
	background:url("../img/HeaderFooterN/iconBanner_instaG.svg") center center no-repeat;
	background-size:36px;
}
#header .headerMenuSNS .snsModalButton a.youtube{
	background:url("../img/HeaderFooterN/iconBanner_youtubeG.svg") center center no-repeat;
	background-size:36px;
}
#header .headerMenuSNS .snsModalButton a.line{
	background:url("../img/HeaderFooterN/iconBanner_lineG.svg") center center no-repeat;
	background-size:36px;
}
}
#header .headerMenuWrap{
	width: 90%;
	max-width:650px;
	margin: 0 auto;
	border-bottom:3px solid #f5f5f5;
}
#header .headerAC .level{
	width: 100%;
	margin: 0 auto;
	background:#fff;
	border-bottom:none;
}
#header .headerAC .level:last-child{
	border-bottom:none;
}
#header .headerAC .level .acHeader{
  color: #464749;
  font-size: 14px;
  font-family: var(--font-gothic);
  font-weight: 700; 
  position: relative;
  z-index: +1;
  cursor: pointer;
  transition-duration: 0.2s;
  border-top:3px solid #f5f5f5;
	overflow: hidden;
  -webkit-overflow-scrolling:auto; 
}
#header .headerNavi .headerAC .level .level .acHeader{
	background:	#f6f6f6;
	border-bottom:4px solid #fff;
	border-top:none;
	padding-left:10px;
}
#header .headerAC .level .acHeader b{	 
	 font-size:1.5em;
}
@media screen and (min-width: 768px){#header .headerAC .level .acHeader{
  font-size: 17px; 
}
}
#header .headerAC .level .hamMenu_price,#header .headerAC .level .hamMenu_discount,#header .headerAC .level .hamMenu_feature,#header .headerAC .level .hamMenu_study,#header .headerAC .level .hamMenu_vistadia,#header .headerAC .level .hamMenu_test,#header .headerAC .level .hamMenu_school,#header .headerAC .level .hamMenu_mail,#header .headerAC .level .hamMenu_sns,#header .headerAC .level .hamMenu_vistOnline{
	display:block;
	padding: 30px 0 30px 70px;
}
#header .headerAC .level .hamMenu_price{ background: url("../img/HeaderFooterN/hamMenuIcon_price.svg") left center no-repeat; }
#header .headerAC .level .hamMenu_discount{ background: url("../img/HeaderFooterN/hamMenuIcon_discount.svg") left center no-repeat; }
#header .headerAC .level .hamMenu_feature{ background: url("../img/HeaderFooterN/hamMenuIcon_feature.svg") left center no-repeat; }
#header .headerAC .level .hamMenu_vistadia{ background: url("../img/HeaderFooterN/hamMenuIcon_vistadia.svg") left center no-repeat; }
#header .headerAC .level .hamMenu_vistadia{
	position: relative;
	box-sizing: border-box;
	min-height: 82px;
	padding: 28px 40px 8px 70px;
}
#header .headerAC .level .hamMenu_vistadia::before{
	content: "";
	position: absolute;
	top: 10px;
	left: 70px;
	width: 90px;
	height: 15px;
	background: url("../img/HeaderFooterN/hamMenuIcon_new.svg") left center no-repeat;
}
#header .headerAC .level .hamMenu_vistadia .vistadiaMenuTitle b,#header .headerAC .level .hamMenu_vistadia .vistadiaMenuTitle small{
	display: block;
}
#header .headerAC .level .hamMenu_vistadia .vistadiaMenuTitle b{
	font-size: 21px;
	line-height: 1.15;
}
#header .headerAC .level .hamMenu_vistadia .vistadiaMenuTitle small{
	font-size: 13px;
	line-height: 1.35;
}
#header .headerAC .level .hamMenu_study{ background: url("../img/HeaderFooterN/hamMenuIcon_study.svg") left center no-repeat; }
#header .headerAC .level .hamMenu_test{ background: url("../img/HeaderFooterN/hamMenuIcon_test.svg") left center no-repeat; }
#header .headerAC .level .hamMenu_school{ background: url("../img/HeaderFooterN/hamMenuIcon_school.svg") left center no-repeat; }
#header .headerAC .level .hamMenu_mail{ background: url("../img/HeaderFooterN/hamMenuIcon_mail.svg") left center no-repeat; }
#header .headerAC .level .hamMenu_sns{ background: url("../img/HeaderFooterN/hamMenuIcon_SNS.svg") left center no-repeat; }
#header .headerAC .level .hamMenu_vistOnline{ background: url("../img/HeaderFooterN/hamMenuIcon_vistOnline.svg") left center no-repeat; }
#header .headerAC .level .acInner a{
	font-size: 14px;
	font-family: var(--font-gothic);
	font-weight: 700;
	padding: 22px 0;
	border-bottom:1px solid #f5f5f5;
}
#header .headerNavi .headerAC .level .acInner a{
	background:url("../img/HeaderFooterN/button_arrow.svg") center right 10px no-repeat,
  			#f6f6f6;
	border-bottom:4px solid #fff;
	padding: 22px 10px;
}
#header .headerNavi .headerAC .level .acInner a:last-child{
	border-bottom:none;
}
#header .headerAC .level .acInner a.bgPR,#header .headerAC .level .acInner a.bgJH,#header .headerAC .level .acInner a.bgH{
	padding: 26px 0 26px 69px;
	margin:7px 0;
	border-radius:6px;
	border-bottom:1px solid #f5f5f5;
	color:#fff;
	font-size: 19px;
}
#header .headerAC .level .acInner a.bgPR{
	background:url("../img/HeaderFooterN/arrowNewBg_bk.svg") center right 15px no-repeat,
				url("../img/HeaderFooterN/hamMenuIcon_primarySchool.svg") center left 13px no-repeat,
  			#333;
}
#header .headerAC .level .acInner a.bgJH{
	background:url("../img/HeaderFooterN/arrowNewBg_bk.svg") center right 15px no-repeat,
				url("../img/HeaderFooterN/hamMenuIcon_JHSchool.svg") center left 13px no-repeat,
  			#333;
}
#header .headerAC .level .acInner a.bgH{
	background:url("../img/HeaderFooterN/arrowNewBg_bk.svg") center right 15px no-repeat,
				url("../img/HeaderFooterN/hamMenuIcon_HSchool.svg") center left 13px no-repeat,
  			#333;
}
#header .headerAC .level .acInner a b{
	font-size:1.6em;
}
#header .headerAC .level .acInner a span{
	display:block;
	font-size:0.8em;
	margin:0 0 3px;
}
#header .headerAC .level .acInner a span.subText{
	font-size:0.9em;
	margin:7px 0 0;
	color:#459ed1;
	font-family: var(--font-gothic);
	font-weight: 500;
}
#header .headerNavi .headerAC .level .level .acInner a{
	background:url("../img/HeaderFooterN/button_arrow_Gray.svg") center right 10px no-repeat,
  			#e6e6e6;
	border-bottom:4px solid #fff;
	padding: 22px 10px;
}
#header .headerAC .level .level .level .acInner a{
	background:url("../images/arrowR_Bk.svg") center right 15px no-repeat,
  			#ccc;
  	border-bottom:1px solid #bbb;
}
#header .headerAC .level .acInner .acHeader{
    font-size: 14px;
	font-family: var(--font-gothic);
	font-weight: 700;
	padding: 22px 0;
	background:	#fff;
	border-bottom:1px solid #f5f5f5;
	border-top:none;
}
#header .headerAC .level .acInner .acHeader b{
    font-size:1.4em;
}
#header .headerAC .level .acInner .acHeader.open{
    background: #f6f6f6;
    color:#009BE0;
}
@media screen and (min-width: 768px){#header .headerAC .level .acInner a{ font-size: 17px; }
#header .headerAC .level .acInner a.bgPR,#header .headerAC .level .acInner a.bgJH,#header .headerAC .level .acInner a.bgH{ font-size: 23px; }
#header .headerAC .level .level .acInner a{ font-size: 17px; }
#header .headerAC .level .acInner .acHeader{ font-size: 17px; }
}
#header .headerAC .level .level .acInner  .acHeader{
	background: url("../images/topPage_ArrowBg_darkblue.svg") center right -17px no-repeat,
    			#ddd;
	border-bottom:1px solid #ccc;
}
#header .headerAC .level .level .acInner  .acHeader.open{
	background: url("../images/topPage_ArrowBg_navy.svg") center right -17px no-repeat,
    			#444;
}
#header .headerAC .level .acInner .acInner .acInner .acHeader{
  background:#547294;
  padding: 12px 8%;
}
#header .headerAC .acHeader.open{
	background: #fff;
	color:#009BE0;
}
#header .headerAC .level .acInner .acInner .acInner .acHeader a{
  display:block;
  color:#222;
  background:url("../images/arrowIconR.svg") center right 10px no-repeat,
  			#fff;
  padding: 22px 0;
	border-radius:30px;
	text-align:center;
	margin:24px 0;
	transition: .3s;
}
#header .headerAC .level .acInner .acInner .acInner .acHeader a:hover{
	background:url("../images/arrowIconR.svg") center right 20px no-repeat, #f2e97e;	
	border-radius:12px;
}
#header .headerAC .level .acHeader .i_box{
  display: flex; justify-content: center; align-items: center; position: absolute;
  top: 50%; right: 0px; width: 40px; height: 40px; margin-top: -20px; box-sizing: border-box;
  -webkit-transform: rotate(45deg); transform: rotate(45deg); transform-origin: center center; transition-duration: 0.2s;
}
#header .headerAC .level .level .acHeader .i_box{ right: 0px; }
#header .headerAC .level .acHeader .i_box .one_i{
  display: block; width: 18px; height: 18px; -webkit-transform: rotate(45deg); transform: rotate(45deg); transform-origin: center center; transition-duration: 0.2s; position: relative;
}
#header .headerAC .level .acHeader.open .i_box{ -webkit-transform: rotate(-360deg); transform: rotate(-360deg); }
#header .headerAC .level .acHeader .i_box .one_i:before,#header .headerAC .level .acHeader .i_box .one_i:after{
  display: flex; content: ''; background-color: #333; border-radius: 10px; width: 20px; height: 2px; position: absolute; top: 9px; left: 0; -webkit-transform: rotate(0deg); transform: rotate(0deg); transform-origin: center center;
}
#header .headerAC .level .acHeader .i_box .one_i:before{ width: 2px; height: 20px; top: 0; left: 9px; }
#header .headerAC .level .acHeader.open .i_box .one_i:before{ content: none; }
#header .headerAC .level .acHeader.open .i_box .one_i:after{ -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
#header .headerAC .level .acInner{ display: none; padding: 0; box-sizing: border-box; }
#header .headerAC .level .acInner .box_one{ height: 300px; }
#header .headerAC .level .acInner p.txt_a_ac{ margin: 0; }
#header .headerAC .level .acHeader .i_box .one_i:before,#header .headerAC .level .acHeader .i_box .one_i:after{ background-color: #464749; }
#header .headerAC .level .acHeader.open .i_box .one_i:before,#header .headerAC .level .acHeader.open .i_box .one_i:after{ background-color: #009BE0; }
#header .menu ul li.headerMenuLogo{ padding:0px 0 0 20px; border-bottom:1px solid #ddd; height:70px; }
#header .menu ul li.headerMenuLogo a{ margin:0 0 ; background: url("../img/HeaderFooterN/changeNewSky/headerNewMainLogo.svg") top 10px left no-repeat; background-size: contain; display:block; width:140px; height:70px; border-top:none;	}
@media screen and (min-width: 768px){#header .menu ul li.headerMenuLogo{ height:80px; }
#header .menu ul li.headerMenuLogo a{ width:180px; height:77px; }
}
#header .menuSubTitleArea{ width:100%; color:#464749; padding:0px 0 15px; }
#header .menuSubTitleArea h3{ font-size:22px; margin-bottom:5px; font-family: var(--font-gothic); font-weight: 700; }
#header .menuSubTitleArea h4{ font-family: "JosefinSans-Bold"; font-size:12px; color: #7fa2db; }
#header .menuSubTitleArea p{ font-size:13px; margin:5px 0 0; font-family: var(--font-gothic); font-weight: 500; }
#header .menuSubTitleArea h4 span{ color: #aaa; }
#header .borderZone{ width:100%; border-top:5px solid #ccc; padding-top: 15px; margin-top: 25px; }
#header .borderZone h4{ font-family: "JosefinSans-Bold" !important; padding:0 !important; }
#header .headerTopMenu{
  	width:100%;
  	position:absolute;
  	top: 80px; 
  	left: 0;
  	z-index:100;
  	display: flex;
	flex-wrap:  wrap;
	background:#fff;
}
#header .et_pb_module{
	width:20%;
}
#header .secList{
    position: relative; /* ▲ 配置用 */
	display:block;
	width:100%;
	font-size:11.5px;
	line-height:14px;
	color:#000;
	background:#fff;
	text-decoration: none;
	border: none;
	transition: background-color 0.2s, color 0.2s;
	cursor: pointer;
	height:94px;
	padding:0 2px;
}
#header .headerTopMenu .price,#header .headerTopMenu .feature,#header .headerTopMenu .study,#header .headerTopMenu .experience,#header .headerTopMenu .online{
	display:block;
	width:100%;
	padding: 45px 0 7px;
}
#header .headerTopMenu .price{ background: url("../img/HeaderFooterN/headerTopIcon_price.svg") top 2px center no-repeat; }
#header .headerTopMenu .feature{ background: url("../img/HeaderFooterN/headerTopIcon_feature.svg") top 2px center no-repeat; }
#header .headerTopMenu .study{ background: url("../img/HeaderFooterN/headerTopIcon_study.svg") top 2px center no-repeat; }
#header .headerTopMenu .experience{ background: url("../img/HeaderFooterN/headerTopIcon_experience.svg") top 2px center no-repeat; }
#header .headerTopMenu .online{ background: url("../img/HeaderFooterN/headerTopIcon_online.svg") top 2px center no-repeat; }
#header .secList.active{
	background-color: #001e69; /* 紺色背景 */
	color: #fff; /* 白文字 */
	opacity: 1; 
	border: none;
}
#header .secList.active::after{
    content: "";
    position: absolute;
    bottom: -1px; /* メニューの上にかぶさるようにマイナス指定 */
    left: 50%;
    transform: translateX(-50%);
    border: 12px solid transparent;
    border-bottom: 12px solid #e6e7e8; /* ボタンと同じ紺色 */
    z-index: 120; /* メニュー(99)より前面へ */
}
#header .megaMenuWrapper{
    position: absolute;
    top: 174px; /* スマホ時は nav(80px) + ボタン(94px) の下 */
    left: 0;
    width: 100%;
    z-index: 99;
}
#header .section{
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.4s ease-out;
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
}
#header .section.is-open{
    grid-template-rows: 1fr;
    z-index: 10;
}
#header .headerMenuInner{
    background: #e6e7e8;
    width: 100%;
    padding: 0 4%; /* アニメーションのため上下の余白は子要素へ */
    border-bottom: none;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
    overflow: hidden; /* 高さが0になる時に隠すため必須 */
}
#header .headerMenuInnerContent{
    max-width: 1000px;
    margin: 0 auto;
    width: 100%;
    padding: 20px 0 30px;
}
#header .menuBtn_long{ width:100%; }
#header .menuBtn_long a,#header .menuBtn_longW a{ background: url("../img/topPageN/button_arrow_Wbg_W.svg") bottom 6px right 6px no-repeat, #fff; background-size: auto, 30px, auto; padding:20px 25px 20px 140px; margin: 0 0 20px; width: 100%; border-radius:20px; display:block; color:#464749; box-shadow: 0 3px #d6d6d6; }
#header .menuBtn_longW a{ color:#000; }
#header .menuBtn_long a h4,#header .menuBtn_longW a h4{ font-size:14px; font-family: var(--font-gothic); font-weight: 700; }
#header .menuBtn_long a h4 b,#header .menuBtn_longW a h4 b{ font-size:1.5em; }
#header .menuBtn_long a p,#header .menuBtn_longW a p{ font-size:13px; line-height:1.4em; margin: 12px 0 0; color:#464749; }
#header .priceBtn .menuBtn_long a p{ line-height:1.65em; margin-bottom:10px; }
#header .menuBtn_long a h6{ display:inline; font-size:9px; background:#444; color:#ddd; padding:1px 10px; margin:10px 0 }
#header .menuBtn_long a h5,#header .menuBtn_longW a h5{ font-size:10px; color:#464749;; margin-top:7px; font-family: var(--font-gothic); font-weight: 500; }
#header .menuBtn_long a h5 b{ font-size:2.4em; font-family: "JosefinSans-Bold"; }
#header .menuBtn_long a h5 small{ font-size:0.8em; }
#header .menuBtn_long a h5 small span{ font-size:1.4em; font-family: "JosefinSans-Bold"; }
#header .menuBtn_long a p b{ font-size:1.2em; font-family: var(--font-gothic); font-weight: 700; color:#464749; }
#header .menuBtn_longW a p{ color:#222; }
#header .menuBtn_sub{ width:100%; background: url("../img/topPageN/button_arrow_Wbg_W.svg") bottom 6px right 6px no-repeat, #fff; background-size: 30px, auto; margin: 0 0 10px; width: 100%; border-radius:20px; box-shadow: 0 3px #d6d6d6; }
#header .menuBtn_sub a{ background: #fff; padding:25px 30px 25px 95px; width: 100%; display:block; color:#464749; }
#header .priceBtn .menuBtn_sub a{ background: url("../img/HeaderFooterN/headerMenuSubIcon_coin.svg") left 20px center no-repeat; width: 100%; display:block; }
#header .menuBtn_sub a h4{ font-size:12px; font-family: var(--font-gothic); font-weight: 700; }
#header .menuBtn_sub a h4 b{ font-size:1.5em; }
#header .menuBtn_long a h4 span,#header .menuBtn_longW a h4 span{ display:block; }
#header .menuBtn_basic50{ width:100%; display:flex; flex-wrap: wrap; }
#header .menuBtn_basic50 a{ background: url("../img/topPageN/button_arrow_Wbg_W.svg") bottom 6px right 6px no-repeat, #fff; background-size: 30px, auto; padding: 10px 20px 19px; width: calc(50% - 5px); margin-right:10px; margin-bottom:10px; text-align:center; border-radius:20px; display:block; box-shadow: 0 3px #d6d6d6; }
#header .menuBtn_basic50 a:nth-child(2n){ margin-right:0; }
#header .menuBtn_basic50 h4{ font-size:12px; font-family: var(--font-gothic); font-weight: 700; padding: 80px 5px 5px; }
#header .menuBtn_basic50 h4 b{ font-size:1.8em; }
#header .menuBtn_basic50 h4 span{ display:block; }
#header .menuBtn_basic50 p{ font-size:11px; line-height:1.3em; margin: 1px 0 0; color:#444; text-align:left; }
#header .menuBtn_basic50 h4.startDiscount{ background: url("../img/HeaderFooterN/headerMenuSubIcon_startDiscount.svg") top 0px center no-repeat; }
#header .menuBtn_basic50 h4.changeVist{ background: url("../img/HeaderFooterN/headerMenuSubIcon_changeVist.svg") top 0px center no-repeat; background-size: 75px; }
#header .menuBtn_basic50 h4.phylosophy{ background: url("../img/HeaderFooterN/iconNew_philosophy.svg") top 0px center no-repeat; background-size: 75px; }
#header .menuBtn_basic50 h4.landscape{ background: url("../img/HeaderFooterN/iconNew_landscape.svg") top 0px center no-repeat; background-size: 75px; }
#header .menuBtn_basic50 h4.shingaku{ background: url("../img/HeaderFooterN/iconNew_shingaku.svg") top 0px center no-repeat; background-size: 75px; }
#header .menuBtn_basic50 h4.other{ background: url("../img/HeaderFooterN/iconNew_other.svg") top 0px center no-repeat; background-size: 75px; }
#header .menuBtn_basic50 h4.vistTest{ background: url("../img/HeaderFooterN/iconNew_test.svg") top 0px center no-repeat; background-size: 75px; }
#header .menuBtn_basic50 h4.vistBook{ background: url("../img/HeaderFooterN/iconNew_book.svg") top 0px center no-repeat; background-size: 75px; }
#header .menuBtn_basic50 p{ font-size:13px; line-height:1.4em; text-align:left; margin:8px 0 0; }
#header .priceBtn .menuBtn_long a{ margin-bottom: 10px; }
#header .priceBtn .menuBtn_long a.ELschool{ background: url("../img/HeaderFooterN/headerMenuIcon_ELschool.svg") left 15px center no-repeat, url("../img/topPageN/button_arrow_Wbg_W.svg") bottom 6px right 6px no-repeat, #fff; background-size: auto, 30px, auto; }
#header .priceBtn .menuBtn_long a.JHschool{ background: url("../img/HeaderFooterN/headerMenuIcon_JHschool.svg") left 15px center no-repeat, url("../img/topPageN/button_arrow_Wbg_W.svg") bottom 6px right 6px no-repeat, #fff; background-size: auto, 30px, auto; }
#header .priceBtn .menuBtn_long a.Hschool{ background: url("../img/HeaderFooterN/headerMenuIcon_Hschool.svg") left 15px center no-repeat, url("../img/topPageN/button_arrow_Wbg_W.svg") bottom 6px right 6px no-repeat, #fff; background-size: auto, 30px, auto; }
#header .priceBtn .menuBtn_long a h4{ font-size:15px; margin-bottom:15px; }
#header .priceBtn .menuBtn_long a h4 b{ font-size:1.7em; position: relative; z-index: 2; padding:0 5px; }
#header .priceBtn .menuBtn_long a h4 b::before{
	display: block; content: ""; width: 100%; height: 10px; background-color: #7fa2db; opacity:0.5; position:absolute; bottom: -2px; left: 0; border-radius: 10px; z-index: -1;
}
#header .subArea{ width:100%; border-top:5px solid #ccc; padding-top: 15px; margin-top: 25px; }
#header .priceBtn .menuBtn_sub a.coin{ background: url("../img/HeaderFooterN/icon_zero.svg") left 15px center no-repeat; }
#header .priceBtn .menuBtn_sub a.brother{ background: url("../img/HeaderFooterN/icon_brother.svg") left 15px center no-repeat; }
#header .priceBtn .menuBtn_sub a.start{ background: url("../img/HeaderFooterN/icon_start.svg") left 15px center no-repeat; }
#header .priceBtn .menuBtn_sub a.change{ background: url("../img/HeaderFooterN/icon_change.svg") left 15px center no-repeat; }
#header .priceBtn .menuBtn_sub a h4{ font-size:12px; }
#header .priceBtn .menuBtn_sub a h4 b{ font-size:1.9em; }
#header .priceBtn .menuBtn_sub a p{ font-size:13px; line-height:1.3em; margin: 7px 0 0; color:#444; }
#header .experienceBtn .menuBtn_long a{ margin-bottom: 10px; }
#header .experienceBtn .menuBtn_long a.taiken{ background: url("../img/HeaderFooterN/headerMenuIcon_experience.svg") left 20px center no-repeat, url("../img/topPageN/button_arrow_Wbg_W.svg") bottom 6px right 6px no-repeat, #fff; background-size: auto, 30px, auto; }
#header .experienceBtn .menuBtn_long a.brochure{ background: url("../img/HeaderFooterN/headerMenuIcon_brochure.svg") left 20px center no-repeat, url("../img/topPageN/button_arrow_Wbg_W.svg") bottom 6px right 6px no-repeat, #fff; background-size: auto, 30px, auto; }
#header .experienceBtn .menuBtn_long a h4 b{ font-size:24px; margin-bottom:8px; }
#header .experienceBtn .menuBtn_long a h4{ font-size:14px; font-family: var(--font-gothic); font-weight: 700; margin-bottom:6px; }
#header .experienceBtn .menuBtn_longW a{ background: url("../img/HeaderFooterN/headerMenuSubIcon_brochure.svg") left 20px center no-repeat, #fff; }
#header .featureBtn .menuBtn_long a,#header .featureBtn .menuBtn_longW a{ margin-bottom: 10px; }
#header .featureBtn .menuBtn_long a.features{ background: url("../img/HeaderFooterN/headerMenuIcon_feature.svg") left 20px center no-repeat, url("../img/topPageN/button_arrow_Wbg_W.svg") bottom 6px right 6px no-repeat, #fff; background-size: auto, 30px, auto; }
#header .featureBtn .menuBtn_long a.comparison{ background: url("../img/HeaderFooterN/headerMenuSubIcon_comparison.svg") left 20px center no-repeat, url("../img/topPageN/button_arrow_Wbg_W.svg") bottom 6px right 6px no-repeat, #fff; background-size: auto, 30px, auto; }
#header .featureBtn .menuBtn_long a h4 b{ font-size:22px; margin-bottom:8px; }
#header .featureBtn .menuBtn_long a h4{ font-size:14px; font-family: var(--font-gothic); font-weight: 500; margin-bottom:6px; }
#header .featureBtn .menuBtn_longW a.philosophy{ background: url("../img/HeaderFooterN/headerMenuSubIcon_philosophy.svg") left 20px center no-repeat, #fff; }
#header .featureBtn .menuBtn_longW a h4{ font-size:13px; font-family: var(--font-gothic); font-weight: 300; margin-bottom:6px; }
#header .featureBtn .menuBtn_longW a h4 b{ font-size:1.7em; font-family: var(--font-gothic); font-weight: 700; }
#header .studyBtn .subArea{ border-top:1px solid #fff; padding-top: 25px; margin-top: 25px; }
#header .studyBtn .menuBtn_long a,#header .studyBtn .menuBtn_longW a{ margin-bottom: 10px; }
#header .studyBtn .menuBtn_long a.vistadia{ background: url("../img/HeaderFooterN/iconL_vistadia.svg") left 20px center no-repeat, url("../img/topPageN/button_arrow_Wbg_W.svg") bottom 6px right 6px no-repeat, #fff; background-size: auto, 30px, auto; }
#header .studyBtn .menuBtn_long a.quiz{ background: url("../img/HeaderFooterN/iconL_quiz.svg") left 20px center no-repeat, url("../img/topPageN/button_arrow_Wbg_W.svg") bottom 6px right 6px no-repeat, #fff; background-size: auto, 30px, auto; }
#header .studyBtn .menuBtn_longW a.soundnovel{ background: url("../img/HeaderFooterN/iconL_novel.svg") left 20px center no-repeat, url("../img/topPageN/button_arrow_Wbg_W.svg") bottom 6px right 6px no-repeat, #fff; background-size: auto, 30px, auto; }
#header .studyBtn .menuBtn_longW a.japaneseIdiom{ background: url("../img/HeaderFooterN/iconL_japaneseIdiom.svg") left 20px center no-repeat, url("../img/topPageN/button_arrow_Wbg_W.svg") bottom 6px right 6px no-repeat, #fff; background-size: auto, 30px, auto; }
#header .studyBtn .menuBtn_long a.testTaisaku{ background: url("../img/HeaderFooterN/iconL_testTaisaku.svg") left 20px center no-repeat, url("../img/topPageN/button_arrow_Wbg_W.svg") bottom 6px right 6px no-repeat, #fff; background-size: auto, 30px, auto; }
#header .studyBtn .menuBtn_long a.exam{ background: url("../img/HeaderFooterN/iconL_exam.svg") left 20px center no-repeat, url("../img/topPageN/button_arrow_Wbg_W.svg") bottom 6px right 6px no-repeat, #fff; background-size: auto, 30px, auto; margin-bottom: 10px; }
#header .studyBtn .menuBtn_long a h4 b{ font-size:22px; margin-bottom:8px; }
#header .studyBtn .menuBtn_long a h4{ font-size:13px; font-family: var(--font-gothic); font-weight: 300; margin-bottom:6px; }
#header .studyBtn .menuBtn_longW a h4{ font-size:13px; font-family: var(--font-gothic); font-weight: 300; margin-bottom:6px; }
#header .studyBtn .menuBtn_basic50 h4.hyakunin{ background: url("../img/HeaderFooterN/iconNew_hyakunin.svg") top 0px center no-repeat; background-size: 75px; }
#header .studyBtn .menuBtn_basic50 h4.englishWord{ background: url("../img/HeaderFooterN/iconNew_englishWord.svg") top 0px center no-repeat; background-size: 75px; }
#header .studyBtn .menuBtn_basic50 h4.download{ background: url("../img/HeaderFooterN/iconNew_download.svg") top 0px center no-repeat; background-size: 75px; }
#header .studyBtn .menuBtn_basic50 h4.scienceLabo{ background: url("../img/HeaderFooterN/iconNew_scienceLabo.svg") top 0px center no-repeat; background-size: 75px; }
#header .studyBtn .menuBtn_basic50 h4.news{ background: url("../img/HeaderFooterN/iconNew_news.svg") top 0px center no-repeat; background-size: 75px; }
#header .studyBtn .menuBtn_basic50 h4.shinanjo{ background: url("../img/HeaderFooterN/iconNew_shinanjo.svg") top 0px center no-repeat; background-size: 75px; }
#header .menuBtn_basic{ width:100%; display:flex; flex-wrap: wrap; }
#header .menuBtn_basic a{ background: url("../img/topPageN/button_arrow_Wbg_W.svg") bottom 6px right 6px no-repeat, #fff; background-size: 30px, auto; padding:10px 20px 19px; width: 49%; margin-right:2%; margin-bottom:10px; text-align:center; border-radius:20px; display:block; box-shadow: 0 3px #d6d6d6; }
#header .menuBtn_long a.vistOnline{ background: url("../img/HeaderFooterN/iconL_vistONLINE.svg") left 20px center no-repeat, url("../img/topPageN/button_arrow_Wbg_W.svg") bottom 6px right 6px no-repeat, #fff; background-size: auto, 30px, auto; }
#header .experienceBtn .menuBtn_basic a:nth-child(2n){ margin-right:0; }
#header .onlineBtn .menuBtn_basic a{ padding:10px 20px 18px; width: 32%; margin-right:2%; }
#header .onlineBtn .menuBtn_basic a:nth-child(3n){ margin-right:0; }
#header .onlineBtn .menuBtn_basic h4{ font-size:22px; padding:75px 5px 0px; }
#header .menuBtn_basic h4{ font-size:18px; font-family: var(--font-gothic); font-weight: 700; padding:52px 5px 10px; }
#header .menuBtn_basic h4.math{ background: url("../img/HeaderFooterN/iconNew_math2.svg") top 0px center no-repeat; background-size: 70px; }
#header .menuBtn_basic h4.english{ background: url("../img/HeaderFooterN/iconNew_english2.svg") top 0px center no-repeat; background-size: 70px; }
#header .menuBtn_basic h4.japanese{ background: url("../img/HeaderFooterN/iconNew_japanese2.svg") top 0px center no-repeat; background-size: 70px; }
#header .menuBtn_basic h4.science{ background: url("../img/HeaderFooterN/iconNew_science2.svg") top 0px center no-repeat; background-size: 70px; }
#header .menuBtn_basic h4.socialS{ background: url("../img/HeaderFooterN/iconNew_socialS2.svg") top 0px center no-repeat; background-size: 70px; }
#header .menuBtn_basic p{ font-size:13px; line-height:1.35em; text-align:left; margin:0px 0; }
#header .experienceBtn .menuBtn_basic h4{ font-size:14px; padding:80px 5px 5px; line-height:1.4em; }
#header .experienceBtn .menuBtn_basic h4 span{ display:block; font-size:1.5em; }
#header .experienceBtn .menuBtn_basic h4.mail{ background: url("../img/HeaderFooterN/iconNew_mail.svg") top 0px center no-repeat; background-size:75px; }
#header .experienceBtn .menuBtn_basic h4.line{ background: url("../img/HeaderFooterN/iconNew_line.svg") top 0px center no-repeat; background-size:75px; }
#header .experienceBtn .menuBtn_basic h4.map{ background: url("../img/HeaderFooterN/iconNew_map.svg") top 0px center no-repeat; background-size:75px; }
#header .experienceBtn .menuBtn_basic h4.telephone{ background: url("../img/HeaderFooterN/iconNew_telephone.svg") top 0px center no-repeat; background-size:75px; }
#header .onlineBtn .menuBtn_sub a{ background: url("../img/HeaderFooterN/iconNew_entry.svg") left 10px center no-repeat, url("../img/topPageN/button_arrow_Wbg_W.svg") bottom 6px right 6px no-repeat, #fff; background-size: 75px, 30px, auto; padding:25px 20px 25px 90px; margin: 0 0 20px; width: 100%; border-radius:20px; display:block; }
#header .onlineBtn .menuBtn_sub a h4{ font-size:14px; }
#header .onlineBtn .menuBtn_sub a p{ font-size:13px; line-height:1.35em; margin-top:10px; }
#header .menuBtn_subM{ width:100%; margin-top: 25px; }
#header .menuBtn_subM a{ background: url("../img/HeaderFooterN/headerMenuSubIcon_telephone.svg") left 20px center no-repeat, #fff; padding:10px 20px 10px 90px; margin: 0 auto 30px; width: 66%; border-radius:20px; display:block; color:#000; }
#header .menuBtn_subM a h4{ font-size:12px; font-family: var(--font-gothic); font-weight: 700; }
#header .menuBtn_subM a h4 b{ font-size:1.65em; }
#header .menuBtn_subM a p{ font-size:11px; line-height:1.3em; margin: 4px 0 0; color:#444; }
#header .headerMenuInner h5.subMenu_text{ font-size:12px; width:100%; border-top:1px solid #fff; padding-top: 10px; margin: 15px 0 12px; color:#000; }
#header .headerMenuInner h5.subMenu_text b{ font-size:1.6em; font-family: var(--font-gothic); font-weight: 700; }
@media screen and (min-width: 750px){#header .headerTopMenu{
  	margin-top: -90px;
  	width: 400px;
  	right: 80px;
  	top: auto; 
  	left: auto;
  	position: absolute;
  	z-index: 100;
  	display: flex;
	flex-wrap: wrap;
	background: transparent;
}
#header .et_pb_module{
	width:80px;
	border-left:1px solid #ccc;
	border-bottom:1px solid #ccc;
	height:90px;
}
#header .Toggle{ height: 90px; width:80px; }
#header .Toggle span{ width: 30px; right:26px; }
#header .Toggle span:nth-child(1){ top:36px; }
#header .Toggle span:nth-child(2){ top: 44px; }
#header .Toggle span:nth-child(3){ top: 52px; }
#header .Toggle.active span:nth-child(1){ top: 44px; }
#header .Toggle.active span:nth-child(2),#header .Toggle.active span:nth-child(3){ top: 44px; transform: rotate(45deg); }
#header .Toggle.active span:nth-child(3){ top: 44px; }
#header nav.headerNavi{ height: 80px; background: #023F86; }
#header #logo a.mainlogoImg{ margin:5px 0 0 10px; background: url("../img/HeaderFooterN/headerNewMainLogoW.svg") top 0px left no-repeat; }
#header .secList{ height:89px; }
#header .megaMenuWrapper{
    top: 80px; /* navの直下に展開 */
}
#header .headerMenuInnerContent{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 40px;
}
#header .mega-column{
    flex: 1;
}
#header .headerMenuInnerContent > .subArea.mega-column{
    margin-top: 0;
    border-top: none;
    padding-top: 0;
    border-left: 2px dashed #ccc;
    padding-left: 40px;
}
#header .hide-on-pc{
    border-top: none !important;
    margin-top: 30px !important;
    padding-top: 0 !important;
}
}
#header #page-top label{ 
    background:url("../img/HeaderFooterN/modalWindowButton.svg") center center no-repeat; 
    filter: drop-shadow(0px 0px 8px rgba(0, 0, 0, 0.4)); 
    width:60px; 
    height:60px; 
    display:block; 
    position: fixed; 
    cursor: pointer; 
    z-index:30; 
    bottom: 20px; 
    left: 10px; 
    opacity: 0; 
    visibility: hidden; 
    transform: translateY(30px);
    transition: opacity 0.4s ease, visibility 0.4s ease, transform 0.4s ease; 
}
#header #page-top label.is-visible{ 
    opacity: 1; 
    visibility: visible; 
    transform: translateY(0);
}
#header #page-top label:hover{ opacity:0.9; }
#header #return-top{ 
    display: block; 
    position: fixed; 
    z-index: 30; 
    bottom: 20px; 
    right: 10px; 
    width: 50px; 
    height: 50px; 
    background-color: #111; 
    border: 5px solid #fff; 
    border-radius: 18px; 
    background-image: url("../img/HeaderFooterN/arrowUp.svg"); 
    background-repeat: no-repeat; 
    background-position: center; 
    background-size: 24px 24px; 
    cursor: pointer; 
    filter: drop-shadow(0px 0px 8px rgba(0, 0, 0, 0.4)); 
    opacity: 0; 
    visibility: hidden; 
    transform: translateY(30px);
    transition: opacity 0.4s ease, visibility 0.4s ease, transform 0.4s ease, background-color 0.2s ease; 
    box-sizing: border-box; 
}
#header #return-top.is-visible{ 
    opacity: 1; 
    visibility: visible; 
    transform: translateY(0);
}
#header #return-top:hover{ opacity: 0.9; }
@media only screen and (min-width: 700px){#header #page-top label{ background:url("../img/HeaderFooterN/modalWindowButtonL.svg") center center no-repeat; width:124px; height:60px; }
}
#header .modal_wrap input{ display: none; }
#header .modal_overlay{ display: flex; justify-content: center; overflow: auto; position: fixed; top: 0; left: 0; z-index: 9999; width: 100%; height: 100%; background: rgba(0,0,0,0.75); opacity: 0; transition: opacity 0.5s, transform 0s 0.5s; transform: scale(0); }
#header .modal_trigger{ position: absolute; width: 100%; height: 100%; }
#header .modal_content{ align-self: center; width: 92%; max-width: 650px; padding: 0px 0px; box-sizing: border-box; background: #fff; line-height: 1.4em; transform: scale(0.3); transition: 0.5s; border-radius:20px; filter: drop-shadow(0px 0px 8px rgba(0, 0, 0, 0.9)); }
#header .close_button{ position: absolute; top: 0px; right: 0px; font-size: 24px; width:44px; height:44px; cursor: pointer; background:#777; border-radius:0 19px 0 0; background:url("../img/HeaderFooterN/iconModal_closeBtn.svg") center center no-repeat; }
#header .modal_wrap input:checked ~ .modal_overlay{ opacity: 1; transform: scale(1); transition: opacity 0.5s; }
#header .modal_wrap input:checked ~ .modal_overlay .modal_content{ transform: scale(1); }
#header .modal_content .contactText{ padding:12px 0 12px 50px; font-size:12px; color:#999; border-bottom:1px solid #ccc; font-family: var(--font-gothic); font-weight: 700; background:url("../img/HeaderFooterN/iconBanner_contact.svg") center left 20px no-repeat; height:44px; text-align:left; }
#header .modal_content .mainWrap{ width:100%; padding:0 20px; }
#header .modal_content .btnLarea a{ width:100%; color:#fff; display:block; padding: 20px 0 12px 65px; margin:13px 0 7px; border-radius:7px; font-size:13px; line-height:15px; text-align:left; }
#header .modal_content .btnLarea a.student{ background: url("../img/HeaderFooterN/iconModal_student.svg") bottom 12px left 10px no-repeat, url("../img/HeaderFooterN/arrowNewBg_bk.svg") center right 15px no-repeat, #009BE0; }
#header .modal_content .btnLarea a.visitor{ background: url("../img/HeaderFooterN/iconModal_visitor.svg") bottom 12px left 10px no-repeat, url("../img/HeaderFooterN/arrowNewBg_bk.svg") center right 15px no-repeat, #003D85; }
#header .modal_content .btnLarea a b{ font-family: var(--font-gothic); font-weight: 700; font-size:1.7em; }
#header .modal_content .btnLarea a span{ display:block; margin-top:3px; opacity:0.9; }
#header .modal_content a.telBtn{ background: url("../img/HeaderFooterN/iconModal_telephone.svg") left 20px center no-repeat, #000; padding:10px 20px 10px 90px; margin: 25px auto; width: 250px; border-radius:30px; display:block; color:#fff; border:none; text-align:left; }
#header .modal_content a.telBtn h4{ font-size:12px; font-family: var(--font-gothic); font-weight: 700; }
#header .modal_content a.telBtn h4 b{ font-size:1.65em; }
#header .modal_content a.telBtn p{ font-size:10px; line-height:1.3em; margin: 0 0; color:#aaa; }
#header .modal_content ul{ width:100%; max-width:800px; margin:7px auto; display:flex; flex-wrap:wrap; }
#header .modal_content ul li{ width:32%; margin:0; margin-right:2%; margin-bottom:2%; border-radius:7px; text-align: center; background:#ddd; transition: all 0.25s ease; border:none; }
#header .modal_content ul li:hover{ background:#ebeef7; }
#header .modal_content ul li a{ display:block; padding:65px 5px 5px; font-size:12px; line-height:14px; color:#000; font-family: var(--font-gothic); font-weight: 700; }
#header .modal_content ul li a span{ display:block; }
#header .modal_content ul li a.blackboard{ background: url("../img/HeaderFooterN/iconModal_blackboard.svg") top 0px center no-repeat; }
#header .modal_content ul li a.mail{ background: url("../img/HeaderFooterN/iconModal_mail.svg") top 0px center no-repeat; }
#header .modal_content ul li a.catalog{ background: url("../img/HeaderFooterN/iconModal_catalog.svg") top 0px center no-repeat; }
#header .modal_content ul li a.absence{ background: url("../img/HeaderFooterN/iconModal_absence.svg") top 0px center no-repeat; }
#header .modal_content ul li a.late{ background: url("../img/HeaderFooterN/iconModal_late.svg") top 0px center no-repeat; }
#header .modal_content ul li a.interview{ background: url("../img/HeaderFooterN/iconModal_interview.svg") top 0px center no-repeat; }
#header .modal_content ul li:nth-child(3n){ margin-right:0; }
#header .modal_content .modalSNS{ padding:7px 0; border-top:1px solid #ccc; }
#header .modal_content .snsModalButton{ width: 138px; margin:3px auto; display: flex; flex-wrap: wrap; }
#header .modal_content .snsModalButton a{ width: 30px; height:26px; display:block; margin:0 8px; }
#header .modal_content .snsModalButton a.twitter{ background:url("../img/HeaderFooterN/iconBanner_twitterG.svg") center center no-repeat; }
#header .modal_content .snsModalButton a.instagram{ background:url("../img/HeaderFooterN/iconBanner_instaG.svg") center center no-repeat; }
#header .modal_content .snsModalButton a.line{ background:url("../img/HeaderFooterN/iconBanner_lineG.svg") center center no-repeat; }
@media only screen and (min-width: 700px){#header .modal_content .contactText{ padding:17px 0 12px 72px; font-size:15px; background:url("../img/HeaderFooterN/iconBanner_contact.svg") center left 25px no-repeat; background-size:36px; height:54px; }
#header .close_button{ width:54px; height:54px; background:url("../img/HeaderFooterN/iconModal_closeBtnL.svg") center center no-repeat; }
#header .modal_content .mainWrap{ padding:0 70px; }
#header .modal_content ul li a{ padding:65px 5px 10px; font-size:17px; line-height:20px; }
#header .modal_content .btnLarea a{ padding: 28px 0 20px 105px; font-size:16px; line-height:18px; }
#header .modal_content .btnLarea a.student{ background: url("../img/HeaderFooterN/iconModal_student.svg") top 5px left 20px no-repeat, url("../img/HeaderFooterN/arrowNewBg_bk.svg") center right 15px no-repeat, #009BE0; background-size:70px, 40px, 40px; }
#header .modal_content .btnLarea a.visitor{ background: url("../img/HeaderFooterN/iconModal_visitor.svg") top 5px left 20px no-repeat, url("../img/HeaderFooterN/arrowNewBg_bk.svg") center right 15px no-repeat, #003D85; background-size:70px, 40px, 40px; }
#header .modal_content .snsModalButton{ width: 174px; margin:5px auto; }
#header .modal_content .snsModalButton a{ width: 34px; height:34px; margin:0 12px; }
#header .modal_content .snsModalButton a.twitter{ background-size:34px; }
#header .modal_content .snsModalButton a.instagram{ background-size:34px; }
#header .modal_content .snsModalButton a.line{ background-size:34px; }
}
#header footer{ margin:0 auto; color: #fff; width:100%; text-align:center; background: url("../img/HeaderFooterN/image_FooterVISPO.svg") top center no-repeat; padding: 80px 0 0 0; margin-top:-120px; }
#header footer .GoToTop{ position: relative; z-index:4; }
#header footer .GoToTop:before{ content: ""; position: absolute; background: url("../img/HeaderFooterN/goToTop_vispo.svg") top center no-repeat; width: 100%; height: 50px; top:-50px; left:0; z-index: 3; }
#header footer .GoToTop a{ width:92%; max-width: 500px; margin:0 auto -46px; border-radius: 5px; border: solid 3px #000; background:#fff; position: relative; text-align:center; padding:30px 0; display:block; }
#header footer .GoToTop a p{ color:#000; font-size:12px; font-family: var(--font-gothic); font-weight: 700; display:inline-block; }
#header footer .GoToTop a p::before{ content: url("../img/HeaderFooterN/iconGoToTop.svg"); position: relative; vertical-align: middle; padding-right:8px; }
#header .footerArea{ background: #000; padding: 50px 0 0 0; }
#header footer .socialmedia{ padding:20px 0; margin:0; }
#header footer .socialmedia h4{ color: #009BE0; font-family: var(--font-gothic); font-weight: 700; margin:15px 0 25px; font-size: 12px; }
#header footer .socialmedia ul{ display: table; margin: 0px auto 0; padding:0px 0 0 0; }
#header footer .socialmedia ul li{ display: table-cell; }
#header footer .socialmedia ul li a{ width:40px; height:40px; margin:0 10px; display:block; transition: all 0.2s; }
#header footer .socialmedia ul li a:hover{ opacity:0.5; }
#header footer .socialmedia ul li:nth-child(1) >a{ background: url("../img/HeaderFooterN/iconFooter_Twitter.svg") top center no-repeat; }
#header footer .socialmedia ul li:nth-child(2) >a{ background: url("../img/HeaderFooterN/iconFooter_Facebook.svg") top center no-repeat; }
#header footer .socialmedia ul li:nth-child(3) >a{ background: url("../img/HeaderFooterN/iconFooter_Instagram.svg") top center no-repeat; }
#header footer .socialmedia ul li:nth-child(4) >a{ background: url("../img/HeaderFooterN/iconFooter_Line.svg") top center no-repeat; }
#header footer .feature{ text-align:left; padding:40px 0; }
#header footer .feature ul{ margin:0 auto; width:90%; border-top:1px solid #222; }
#header footer .feature ul li a{ font-size:12px; font-weight:bold; text-indent:10px; display:block; color:#eee; padding:15px 0; border-bottom:1px solid #222; position: relative; transition: all 0.2s; }
#header footer .feature ul li a span{ color:#097db0; font-size:11px; font-family: "TitilliumWeb-Light"; left:50%; position: absolute; }
#header footer .feature ul li a:hover{ color:#001e69; }
#header footer .feature ul li a:hover span{ color:#777; }
#header footer .contents{ margin:0 auto; padding:10px 0 10px; width:100%; display:flex; flex-wrap:wrap; text-align: left; }
#header footer .contents .subFooterLinks{ width:50%; margin:0 0 50px; }
#header footer .contents .subFooterLinks h4{ color:#aaa; font-size:14px; padding:13px 0 ; font-weight:bold; text-indent:35px; }
#header footer .contents .subFooterLinks:nth-child(1) h4{ background: url("../img/HeaderFooterN/footerIcon_contents.svg") left center no-repeat; }
#header footer .contents .subFooterLinks:nth-child(2) h4{ background: url("../img/HeaderFooterN/footerIcon_pencil.svg") left center no-repeat; }
#header footer .contents .subFooterLinks:nth-child(3) h4{ background: url("../img/HeaderFooterN/footerIcon_school.svg") left center no-repeat; }
#header footer .contents .subFooterLinks:nth-child(4) h4{ background: url("../img/HeaderFooterN/footerIcon_mail.svg") left center no-repeat; }
#header footer .contents .subFooterLinks:nth-child(5) h4{ background: url("../img/HeaderFooterN/footerIcon_etc.svg") left center no-repeat; }
#header footer .contents .subFooterLinks ul,#header footer .contents .subFooterLinks h4{ width:80%; margin:0 10%; }
#header footer .contents .subFooterLinks ul{ border-top:1px solid #222; }
#header footer .contents .subFooterLinks ul li a{ font-size:12px; color:#fff; padding:15px 0; border-bottom:1px solid #222; display:block; transition: all 0.2s; }
#header footer .contents .subFooterLinks ul li a:hover{ color:#ccc; }
#header footer .footerLink{ background: #222; padding:20px 0 20px 0; text-align:left; }
#header footer .footerLink ul{ margin:0 auto; width:90%; }
#header footer .footerLink ul li a{ font-size:10px; color:#fff; transition: all 0.2s; }
#header footer .footerLink ul li a:hover{ opacity:0.5; }
#header footer .footerLink ul li{ display:inline-block; padding:0 10px; margin:2px 0; }
#header footer .footerLink ul li:last-child{ border-right:none; }
#header footer .vistLogo{ padding:30px 0 20px ; margin:0; }
#header footer .vistLogo a{ width:150px; height:40px; display: block; background: url("../img/HeaderFooterN/footerVistLogo.svg"); margin:0 0 0 5%; transition: all 0.2s; }
#header footer .vistLogo a:hover{ opacity:0.7; }
#header footer h4.copyright{ text-align: center; font-size:11px; color:#ddd; padding:0px 0 30px 5%; display:block; }
@media only screen and (min-width: 768px){#header footer{ background-size:280px; padding: 0px 0 0 0; margin: -40px 0 0 0; }
#header footer .GoToTop a p{ font-size:16px; }
#header footer .socialmedia ul li a{ border-right:none; }
#header footer .feature ul{ margin:0 auto 40px; width:90%; max-width:1000px; display:flex; flex-wrap:wrap; border-top:none; }
#header footer .feature ul li{ width:48%; margin-right:4%; }
#header footer .feature ul li:nth-child(2n){ margin-right:0; }
#header footer .feature ul li a{ font-size:14px; font-weight:normal; text-indent:35px; background: url("../img/HeaderFooterN/footerIcon_contents.svg") left center no-repeat; color:#fff; padding:18px 0; border-bottom:1px solid #222; }
#header footer .feature ul li:nth-child(1) a{ background: url("../img/HeaderFooterN/footerIcon_vist.svg") left center no-repeat; border-top:1px solid #222; }
#header footer .feature ul li:nth-child(2) a{ background: url("../img/HeaderFooterN/footerIcon_price.svg") left center no-repeat; border-top:1px solid #222; }
#header footer .feature ul li:nth-child(3) a{ background: url("../img/HeaderFooterN/footerIcon_calendar.svg") left center no-repeat; }
#header footer .feature ul li:nth-child(4) a{ background: url("../img/HeaderFooterN/footerIcon_discount.svg") left center no-repeat; }
#header footer .feature ul li a span{ color:#bbb; font-size:13px; left:50%; }
#header footer .feature ul li a:hover{ color:#ccc; }
#header footer .feature ul li a:hover span{ color:#888; }
#header footer .contents{ margin:0 auto; padding:0; width:100%; max-width:1000px; width:90%; }
#header footer .contents .subFooterLinks{ width:30%; margin:0 0 50px 0; margin-right:5%; }
#header footer .contents .subFooterLinks:nth-child(3n){ margin-right:0; }
#header footer .contents .subFooterLinks h4{ color:#aaa; font-size:15px; text-indent:37px; }
#header footer .contents .subFooterLinks ul{ border-top:1px solid #222; }
#header footer .contents .subFooterLinks ul li a{ border-bottom:1px solid #222; font-size:14px; }
#header footer .contents .subFooterLinks ul,#header footer .contents .subFooterLinks h4{ width:100%; margin:0 0 ; }
#header footer .companyArea{ display:flex; flex-flow: row-reverse; max-width:1000px; width:90%; margin:0 auto; }
#header footer .companyArea .footerLink{ width: calc( 100% - 230px ) ; }
#header footer .footerLink{ background: #000; padding: 0; }
#header footer .footerLink ul{ width:100%; }
#header footer .footerLink ul li{ margin:3px 0; }
#header footer .footerLink ul li a{ font-size:11px; }
#header footer .companyArea .vistLogo{ width:190px; padding:0 0 0 0px; margin-right:40px; }
#header footer .vistLogo a{ width:190px; height:50px; background: url("../img/HeaderFooterN/footerVistLogo.svg"); background-size:contain; margin:0; }
#header footer h4.copyright{ text-align: center; font-size:12px; color:#aaa; padding:25px 0 50px 0; }
}
@media only screen and (min-width: 1000px){#header footer .contents .subFooterLinks{ width:22%; margin-right:4%; }
#header footer .contents .subFooterLinks:nth-child(3n){ margin-right:4%; }
#header footer .contents .subFooterLinks:nth-child(4n){ margin-right:0; }
#header footer .companyArea{ width:100%; }
#header footer .companyArea .vistLogo{ padding:0; }
}
#header .cd-auto-hide-header{ background-color: #001e69; }
#header .cd-auto-hide-header .logo a{ background: url("../img/HeaderFooter/VistLogo.svg"); }
#header .cd-auto-hide-header .nav-trigger{ border-left: 1px solid #444; background-position: top center; background-repeat: no-repeat; }
#header .cd-primary-nav > ul a:hover,#header .cd-primary-nav > ul a.active{ color: #bbb; }
#header #footer{ background: none; }
#header .Toggle.active{ background: url("../images/headerHamburger_textClose.svg") bottom 5px center no-repeat, #a30a30; }

#header .headerTopMenu .price{
  	background: url("../img/HeaderFooterN/changeNewSky/headerTopIcon_price.svg") top 2px center no-repeat;
}
#header .headerTopMenu .feature{
  	background: url("../img/HeaderFooterN/changeNewSky/headerTopIcon_feature.svg") top 2px center no-repeat;
}
#header .headerTopMenu .study{
  	background: url("../img/HeaderFooterN/changeNewSky/headerTopIcon_study.svg") top 2px center no-repeat;
}
#header .headerTopMenu .experience{
  	background: url("../img/HeaderFooterN/changeNewSky/headerTopIcon_experience.svg") top 2px center no-repeat;
}
#header .headerTopMenu .online{
  	background: url("../img/HeaderFooterN/changeNewSky/headerTopIcon_online.svg") top 2px center no-repeat;
}
#header #logo a.mainlogoImg{
	background: url("../img/HeaderFooterN/changeNewSky/headerNewMainLogo.svg") top 0px left no-repeat;	
}
#header .headerTopLink a{
	box-shadow: 0 2px #bbb;	
}
#header .headerTopLink a.studentButton{
	background: url("../img/HeaderFooterN/changeNewSky/headerTopLink_student.svg") top 5px center no-repeat,
				#4d9ccd;
	border-radius: 30px 0 0 30px;
}
#header .headerTopLink a.visitorButton{
	background: url("../img/HeaderFooterN/changeNewSky/headerTopLink_visitor.svg") top 5px center no-repeat,
				#555;
	border-radius: 0 30px 30px 0;
}
@media screen and (min-width: 750px){#header nav{
 height: 80px;/*headerの高さ*/
 background: #0c5e94;
}
#header nav.headerNavi{
    background: #074975;
}
#header #logo a.mainlogoImg{
	background: url("../img/HeaderFooterN/changeNewSky/headerNewMainLogoW.svg") top 0px left no-repeat;
}
#header .headerTopLink a{
	box-shadow: 0 3px #333;	
}
#header .headerTopMenu .price,#header .headerTopMenu .feature,#header .headerTopMenu .study,#header .headerTopMenu .experience,#header .headerTopMenu .online{
    padding: 50px 0 2px;
}
#header .headerTopMenu .price{
  	background: url("../img/HeaderFooterN/changeNewSky/headerTopIcon_price.svg") top 8px center no-repeat;
}
#header .headerTopMenu .feature{
  	background: url("../img/HeaderFooterN/changeNewSky/headerTopIcon_feature.svg") top 8px center no-repeat;
}
#header .headerTopMenu .study{
  	background: url("../img/HeaderFooterN/changeNewSky/headerTopIcon_study.svg") top 8px center no-repeat;
}
#header .headerTopMenu .experience{
  	background: url("../img/HeaderFooterN/changeNewSky/headerTopIcon_experience.svg") top 8px center no-repeat;
}
#header .headerTopMenu .online{
  	background: url("../img/HeaderFooterN/changeNewSky/headerTopIcon_online.svg") top 8px center no-repeat;
}
#header .headerTopLink a.studentButton{
	background: url("../img/HeaderFooterN/changeNewSky/headerTopLink_student.svg") top 5px center no-repeat,
				#5699c4;	
}
#header .headerTopLink a.visitorButton{
	background: url("../img/HeaderFooterN/changeNewSky/headerTopLink_visitor.svg") top 5px center no-repeat,
				#555;	
}
}
#header .Toggle{
    background: url("../img/HeaderFooterN/headerHamburger_text.svg") bottom 5px center no-repeat, #222;
}
#header .secList{
    color: #464749;
}
#header .footerArea{
	background: #222;
}
#header footer .GoToTop a{
    border-radius: 16px;
    border: solid 5px #222;
    margin: 0 auto -50px;
}
#header footer .GoToTop a p::before{
    content: url("../img/HeaderFooterN/changeNewSky/iconGoToTop.svg");
}
#header footer .GoToTop a p{
    color: #222;
}
#header footer .feature ul,#header footer .contents .subFooterLinks ul{
	border-top:1px solid #333;
}
#header footer .feature ul li a,#header footer .contents .subFooterLinks ul li a{
	border-bottom:1px solid #333;
}
#header footer .footerLink{
	background: #333;
}
#header footer .socialmedia h4,#header footer .feature ul li a span{
	color: #aaddf7;
}
#header footer .feature ul li a:hover{
	color:#007d88;
}
#header footer .GoToTop:before{
    background: url("../img/HeaderFooterN/changeNewSky/goToTop_vispo.svg") top center no-repeat;
}
#header footer .vistLogo a{/* メインのロゴ */
	background: url("../img/HeaderFooterN/changeNewSky/footerVistLogo.svg");
}
#header footer .contents .subFooterLinks:nth-child(1) h4{
	background: url("../img/HeaderFooterN/changeNewSky/footerIcon_contents.svg") left center no-repeat;
}
#header footer .contents .subFooterLinks:nth-child(2) h4{
	background: url("../img/HeaderFooterN/changeNewSky/footerIcon_pencil.svg") left center no-repeat;
}
#header footer .contents .subFooterLinks:nth-child(3) h4{
	background: url("../img/HeaderFooterN/changeNewSky/footerIcon_school.svg") left center no-repeat;
}
#header footer .contents .subFooterLinks:nth-child(4) h4{
	background: url("../img/HeaderFooterN/changeNewSky/footerIcon_mail.svg") left center no-repeat;
}
#header footer .contents .subFooterLinks:nth-child(5) h4{
	background: url("../img/HeaderFooterN/changeNewSky/footerIcon_etc.svg") left center no-repeat;
}
@media only screen and (min-width: 768px){#header footer .vistLogo a{/* メインのロゴ */
  background: url("../img/HeaderFooterN/changeNewSky/footerVistLogo.svg") left center no-repeat;
  background-size:contain;
}
}

/* Exam guide only. The shared site styles remain unchanged. */
#header{--font-gothic:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic",YuGothic,Meiryo,sans-serif;box-sizing:border-box;position:relative;z-index:100;min-height:174px;margin:0;padding:0;max-width:none;background:#fff;color:#464749;font:300 16px/1 var(--font-gothic);letter-spacing:normal}
#header .Toggle{position:absolute;top:0;right:0;width:70px;height:70px;border:0;padding:0}
#header .Toggle.active{background:#a30a30}
#header .Toggle.active::after{content:'閉じる';position:absolute;bottom:7px;left:0;right:0;color:#fff;font-size:11px;font-weight:700;line-height:1;text-align:center}
#header [hidden]{display:none!important}
#header .menu[aria-hidden="true"],#header .megaMenuWrapper .section[inert]{visibility:hidden}
#header .menu.open,#header .megaMenuWrapper .section.is-open{visibility:visible}
#header .menu .acInner:not([hidden]){display:block}
#header .headerMenuInner{max-height:calc(100dvh - 174px);overflow-y:auto;overscroll-behavior:contain}
#header .menu .headerMenuLogo>a{max-width:calc(100vw - 90px)}
#header :focus-visible,.portal-nav :focus-visible{outline:3px solid #567f92;outline-offset:4px}
@media(min-width:750px){
 #header{min-height:80px}
 #header .headerMenuInner{max-height:calc(100dvh - 80px)}
 #header .Toggle{width:80px;height:80px}
 #header .Toggle span:nth-child(1){top:26px}
 #header .Toggle span:nth-child(2){top:34px}
 #header .Toggle span:nth-child(3){top:42px}
 #header .Toggle.active span:nth-child(1),#header .Toggle.active span:nth-child(2),#header .Toggle.active span:nth-child(3){top:34px}
}
.portal-skip{position:fixed;left:16px;top:-100px;z-index:1000;padding:12px 20px;background:#fff;color:#294d63;border:1px solid #294d63;border-radius:5px}
.portal-skip:focus{top:12px}
/* Guide identity and navigation are separate rows on every viewport. */
@font-face{font-family:VistLabBold;src:url("../fonts/TitilliumWeb-Bold.ttf") format('truetype');font-style:normal;font-weight:700;font-display:swap}
:root{--guide-menu-height:54px;--guide-masthead-height:56px;--guide-sticky-height:calc(var(--guide-menu-height) + 1px)}
html{scroll-padding-top:calc(var(--guide-sticky-height) + 12px)}
nav.portal-nav{height:auto;border:0;border-bottom:1px solid #e7e9ec;background:#fff;position:sticky;top:calc(0px - var(--guide-masthead-height));z-index:80;margin:0;padding:0;color:#334651;font:400 15px/1.8 -apple-system,BlinkMacSystemFont,'Segoe UI','Noto Sans JP','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;letter-spacing:normal}
.exam-portal nav.portal-nav{background:#fff}
.portal-nav *{box-sizing:border-box}
.portal-nav a{text-decoration:none}
.portal-masthead{background:#102b46;color:#fff}
.portal-masthead-inner{width:min(1240px,calc(100% - 48px));min-height:56px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px}
.portal-nav .portal-brand{display:flex;align-items:center;flex:none;min-height:56px;color:#fff;font-size:18px;font-weight:800;line-height:1.3;letter-spacing:.04em;white-space:nowrap}
.portal-lab{display:inline-flex;align-items:baseline;flex:none;gap:3px;white-space:nowrap;color:#e0e9f2;line-height:1;opacity:.7}
.portal-lab>span{font-size:13px;font-weight:800;letter-spacing:.04em}
.portal-lab .portal-lab-mark{font-family:VistLabBold,Arial,sans-serif;font-size:21px;font-weight:700;line-height:1;letter-spacing:-.025em}
.portal-nav-inner{width:min(1240px,calc(100% - 48px));margin:0 auto;min-height:54px;display:flex;align-items:center;background:#fff}
/* Identify the compact menu only after it reaches the top of the viewport. */
.portal-nav .portal-sticky-brand{display:none;align-self:stretch;align-items:center;justify-content:center;flex:0 0 auto;min-height:var(--guide-menu-height);margin-right:24px;padding:0 12px;background:#102b46;color:#fff;font-size:12px;font-weight:800;line-height:1.3;letter-spacing:0;white-space:nowrap;text-align:center}
.portal-nav.is-pinned .portal-sticky-brand{display:flex}
.portal-nav-links{display:flex;align-items:center;gap:30px;min-width:0;width:100%;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain}
.portal-nav-links::-webkit-scrollbar{display:none}
.portal-nav-links a{display:flex;align-items:center;flex:none;min-height:54px;white-space:nowrap;font-size:13px;font-weight:700;color:#4d5b66;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}
/* Raise the category line away from the breadcrumb boundary. */
nav.portal-nav .portal-nav-links>a[data-guide-section]{position:relative;border-bottom:0;box-shadow:none}
nav.portal-nav .portal-nav-links>a[data-guide-section]::after{content:'';position:absolute;left:0;right:0;bottom:6px;height:2px;background:var(--entry-soft,#e7eef3);pointer-events:none}
nav.portal-nav .portal-nav-links>a[data-guide-section]:hover::after,nav.portal-nav .portal-nav-links>a[data-guide-section][aria-current]::after{background:var(--entry-accent,#2e6574)}
/* Existing page-specific sticky controls sit below the compact global menu. */
.school-page .section-nav,.score-page .score-status{top:var(--guide-sticky-height)}
@media(min-width:750px) and (max-width:1040px){#header .headerTopLink{display:none}#header #logo{width:calc(100% - 480px)}}
@media(max-width:749px){
 :root{--guide-menu-height:48px;--guide-masthead-height:48px}
 .portal-masthead-inner{width:100%;padding:0 18px;min-height:48px;gap:12px}
 .portal-nav .portal-brand{min-height:48px;font-size:16px;letter-spacing:.025em}
 .portal-lab>span{font-size:11px}
 .portal-lab .portal-lab-mark{font-size:18px}
 .portal-nav-inner{width:100%;min-height:48px}
 .portal-nav .portal-sticky-brand{flex-direction:row;width:auto;margin-right:0;padding:0 10px;font-size:12px;white-space:nowrap}
 .portal-nav-links{gap:24px;padding:0 18px}
 .portal-nav-links a{min-height:48px;font-size:12px}
}
@media(max-width:374px){#header #logo a.mainlogoImg{width:calc(100vw - 202px);background-size:contain;height:47px}.portal-masthead-inner{padding-inline:16px}.portal-nav-links{padding-inline:16px;gap:22px}}
@media(prefers-reduced-motion:reduce){#header *,.portal-nav *{transition:none!important;scroll-behavior:auto!important}}
@media print{#header,#footer,.portal-nav,.portal-skip{display:none!important}}

/* Official outlined brand logos. Keep the existing masthead and menu dimensions. */
.portal-nav .portal-brand-logo{display:block;width:auto;height:18px;max-width:none}
.portal-nav .portal-lab-logo{display:block;width:auto;height:16px;max-width:none}
.portal-nav .portal-sticky-brand-logo{display:block;width:auto;height:12px;max-width:none}
@media(max-width:749px){.portal-nav .portal-brand-logo{height:16px}.portal-nav .portal-lab-logo{height:14px}}
