@charset "utf-8";
/* CSS Document */

/*font*/
@import url("/font.css?a");

/*chrome*/
*:focus {
outline: none;
}


body{ font-family: 'Noto Sans JP',"游ゴシック", 'YuGothic', "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro",'Meiryo', sans-serif;
-webkit-text-size-adjust: none;
position: relative;
min-width: 1080px;
margin: 0 auto;
padding: 0;
width: 100%;
height: 100%;
overflow: visible;
transition: none;
}


header,#contWrap{ display: none; }

#contWrap{ display: flex; }


/*==============================================================================*/
/*hover */
/*==============================================================================*/
.mailBtn a,nav li a,#btnPagetop a, #submitBtn input:hover,#breadcrumb li a,
.externalIcon a,#entryBtn a,.btn a,.dlbtn a,#programBn a, #qrBox a,#loginBtn a,
.watchBtn a,.watchBtn2 a{	
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;}


/*==============================================================================*/
/*header */
/*==============================================================================*/
header{ background:rgba(255,255,255,0.8);
box-shadow: 1px 2px 3px #eee;
z-index: 3;
position: relative;
}

nav{ 
	width:250px;  box-sizing: border-box;
	background:#feffff; border-right: 1px solid #eee;
	z-index: 2;
	backface-visibility: hidden;
	transition: none;
	min-height: 1500px;
}

/*logo*/
#logo a{ display: block;  padding:15px 30px; transition: 1.0s ;}
#logo a:hover,#bannerCont li a:hover,.externalIcon a:hover,nav li a:hover,.dlbtn a:hover,
#programBn a:hover, #qrBox a:hover,#loginBtn a:hover,
.watchBtn a:hover,.watchBtn2 a:hover { opacity: 0.6 ;}


/*==============================================================================*/
/* nav*/

nav::before,nav li a,
#mainNav{ position: relative; }

nav{ letter-spacing: 0;  }
nav::before,
#mainNav::after{ position: absolute;  content: ""; width: 250px;}

#mainNav{   padding-bottom: 40px; font-weight: 400; }

nav li { padding-right: 20px; }
nav li a{ padding:20px 10px 20px 30px;  display: block;  color:#404040; height: 65px;} 


nav li:not(:last-child) a{ border-bottom: 1px dotted #aaa; }

.navName{  position: relative; }


nav li a.active{ color:#004595; }

nav li a:hover .navName{ color:#033c7c ; border-bottom:1px solid #19458e }

/**/
nav li a::after,#entry .entryNoticeBox a:after,.dlbtn a:after{
 border-top: 2px solid #19458e;
 border-right: 2px solid #19458e; 
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	right: 15px;
}

nav li.nolink a::after{ border-color: #ccc; }
nav li a.active::after{ border-color:#a6eaff }


/* > */
nav li a::after,#entry .entryNoticeBox a:after,.btn a:after, .dlbtn a:after,#loginBtn a:after,
.watchBtn a:after,.watchBtn2 a:after{ 
	content: '';
	position: absolute;
	top: 50%;
	display: block;
	width: 6px;
	height: 6px;
	margin-top: -2px;
}


/* > */
/*font awesome共通設定*/
#btnPagetop a::before{ font-family: "Font Awesome 5 Free";font-weight: 900;font-size: 0.7em; }


/*linkない*/
.nolink a{ pointer-events: none; color:#ccc; } 

.txtbr span span{ font-size:0.9em; }
.navName span br{ display:none; }


#subNav{ font-size: 0.8666666666666667em; position:relative; }

/*外部リンクアイコン*/
.externalIcon a i {
    position: relative;
	font-style: normal;
}

.externalIcon a i::after {
    background: url(../img/externallinkIcon.svg) 0 0 no-repeat;
    position: absolute;
    content: "";
    width: 50px;
    height: 50px;
    margin-left: 8px;
}

#programBn{ text-align: center; }
#programBn a img{ border:#eee 1px solid }

#programBn.nolink a{ opacity: 0.5; }

/*==============================================================================*/
/*content */
/*==============================================================================*/
main{ 
	position:relative; z-index: 1;
	/*display: flex;
	flex-wrap: wrap;*/
}

#wrapper{  display: block;}


#redTxt{ color: #a52e2a; }


.innerBox{margin: 0 auto; box-sizing: border-box; }
/*title*/
.maintitle{ font-size:1.5625em;  color:#003c89; font-weight: 400;  line-height: 1.4em; position: relative;
	padding-bottom: 10px;
}

/*事務局*/
#officeBox dl:first-child{ margin-bottom: 40px; }

#secretariatBox,.managementBox{ padding:0 2%;  box-sizing: border-box; width: 47%; font-weight: 400;}
#officeBox{ 
	display: flex;
	margin-top:-2px;
padding: 40px 0 0; }



.secretariatTitle{font-weight: 400;
 padding:4px 0 6px; margin-bottom:14px;  border-radius:4px ; background:#fff;
color:#225281; position:relative;}


.secretariatTitle:before,
.maintitle:after{ content: ""; position: absolute; 
	background:#19458e; height:2px; width: 12px;
	bottom: -10px;
	margin-bottom: 10px;
	left: 0;
	}

.secretariatBox{ font-weight: 400; }	
.secretariatBox dt{ font-size: 1.05em;}
.secretariatBox dt span{ font-size: 0.9em;}



/*運営事務局*/
#managementTitle{background:#698dcd;}
address{ padding-top: 8px; line-height: 1.6em; margin-bottom:20px; }
address p{ margin-bottom: 18px; }
.addtel{ color:#001c7a;padding-right:5px; }
.telnum, .faxnum{ display:inline-block; }
.telnum{margin-right:20px;}
.telnum span, .faxnum span{ color:#001c7a; font-size: 0.9em; }
.telnum br{ display:none; }

/*mail*/
.mailBtn { letter-spacing: 2px; }

.icon-mail{ position: relative; margin-left: 20px;}
.icon-mail::before{background: url(../img/mailHover.svg) center 0 no-repeat; position: absolute; content: "";  
    width: 18px; height: 12px; left: -23px; top: 25%; }



.mailBtn, .mailBtn2,#entryBtn li,.entryBtn2 li,.dlbtn { position:relative; }
.mailBtn a{  color:#fff;background: #ff7257; font-weight: 500; }
.mailBtn a,.mailBtn2 a,.btn a{ max-width:280px; padding: 14px 0; text-align: center;}
.mailBtn a,.mailBtn2 a,#entryBtn a,.entryBtn2 a,.dlbtn a,.programList li a,#programList li a {border-radius:10px;display: block; 
  box-sizing:border-box;}
.mailBtn a:hover{ background-color:#f85f40; color:#fff; }

.btn a{ color:#fff; background: #1f4f87; position: relative; width: 300px; border-radius: 4px; display: block;}
.btn a:hover{ background: #3194cb }
.btn a:after{ border-top: 2px solid #fff;
	border-right: 2px solid #fff; 
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	right: 15px; }

.external{ position: absolute; content:""; background: url(../img/externalIcon.png) 6px 0 no-repeat;
	width: 16px; height: 10px; padding-left: 5px;
}


/*pdf*/
.pdfIcon{ background: url(../img/pdfIcon.png) 0 0 no-repeat; background-size: 18%; 
	content: "";  width: 130px;  height: 50px;   left: 38px;}


/*==============================================================================*/
/* footer
============================================================================== */
/*pagetop btn*/
#btnPagetop{position: fixed;bottom: 55px;right: 10px;font-size: 21px; z-index: 10;}
#btnPagetop a { width: 50px;  height: 50px;  padding: 17px 0;
	background:rgba(0, 60, 137,0.8); text-decoration: none;color: #fff;box-sizing: border-box;
text-align: center;display: block;border-radius: 100%;
}
#btnPagetop a:hover{ background: rgba(18,47,123,0.8) }



#btnPagetop a span {display: none;}
/* arrow */
#btnPagetop a::before { display: block; content: "\f077";}

footer{ background:#225281; color:#fff; padding:20px 0; text-align: center; 
	width: 100%; bottom: 0; z-index: 2; position: relative; }


/*=========================================================*/
/*sp-----------------------------------------------------*/



@media screen and (max-width: 1270px) {
body{ width: 100%; }
nav{ position:absolute;left: 0;  height:94%; }

/*nav*/
nav li:last-child a{ border-bottom:none; }
nav li:last-child a::after{ line-height: 2em; }


#subNav li a:after{color:#ccc; }
/*外部リンクアイコン*/
#mainNav .externalIcon a span { background-position:135px 4px; }
#subNav .externalIcon a span { background-position:100px 4px; }
.externalIcon a:after{ margin-top:-9px; line-height: 0; }
.externalIcon3 a{ background-position:168px 14px; }

main{padding-left:250px;  width: 100%; box-sizing: border-box; }
#wrapper{ width: 100%; }
}




/*pc-----------------------------------------------------*/
@media screen and (min-width: 1271px) {
main{ width:calc(100% - 250px); }


/*nav*/
nav li a{ padding-right:10px; }
.externalIcon a span{ border-bottom:#fff 1px solid; }



/*外部リンクアイコン*/
#mainNav .externalIcon a span{ width:133px;  }

.externalIcon a span{ width: 108px; margin-bottom:-1px; padding-bottom:1px ; }

/*IE*/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
.externalIcon a span{ background-position: 96px 0; }
 }

 #mainNav .externalIcon a span,
 #subNav .externalIcon a span{ background-position:right 4px; }

 /*
.innerBox{ width:1270px;max-width: 90%;}*/

#bannerCont{ padding: 4% 2%; }	

/*footer*/

#officeBox{ padding-top: 30px ; }

}