@charset "utf-8";
/* CSS Document */

/*font*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@600&display=swap');

/*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;
}



/*==============================================================================*/
/*hover */
/*==============================================================================*/
.mailBtn a,nav li a,#btnPagetop a, #humberger,#placeName a, #place a,#linkWrap li a, .btn a,.btn2 a,#submitBtn input,
#sponsorBox li a{	
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;}

#placeName a:hover{  filter: alpha(opacity=85); -moz-opacity:0.85; opacity:0.85; }
/*==============================================================================*/
/*header */
/*==============================================================================*/
header{  width:240px; box-sizing: border-box;position:absolute;left: 0;top: 0;z-index: 9999;
	box-shadow: 1px -4px 3px #ddd; height:100%;
	background:#fff;
}

/*logo*/
#logo a{ display: block;
padding:20px 0; width:220px; margin:0 auto; transition: 1.0s ;}

#logo a:hover,#bannerCont li a:hover,#sponsorBox li a:hover { opacity: 0.6 ;}


/*==============================================================================*/
/* nav*/

nav{  margin-bottom:40px; letter-spacing: 0; }

nav li a{ padding:13px 4% 13px 18px;  display: block;  color:#333; }

/* > */
#btnPagetop a::before{ 
	content: '';
	position: absolute;
	top: 50%;
	right: 15px;
	display: block;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-top: 2px solid #fff;
	border-left: 2px solid #fff;
}


/*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; }
.redTxt{color: #db5f53;}

/*==============================================================================*/
/*content */
/*==============================================================================*/
main{width:auto; padding-left:240px; position:relative; z-index: 1;}

/**/
.innerBox{margin: 0 auto;box-sizing: border-box; }


#infoTitle,
.maintitle{ font-size:1.75em; text-align:center;}

/*external*/
.externalIcon i, .externalIcon2 i{  position: relative; }
.externalIcon i:before,.externalIcon i:after, .externalIcon2 i::before,.externalIcon2 i:after{ position: absolute; content:""; }
.externalIcon i:before{border-left:1px solid #db5f53; border-bottom:1px solid #db5f53;}
.externalIcon i:after{border:1px solid #db5f53;}

.externalIcon i:before, .externalIcon2 i::before{  width: 9px; height: 8px; right: -19px; }
.externalIcon i:after, .externalIcon2 i::after{  width: 7px; height: 5px; right: -20px; background:#fff; }

/*Information*/
#mainChairman .externalIcon i:before{ top: -4px;}
#mainChairman .externalIcon i:after{ top: -6px; }


#officeBox{ background:#efefef; margin-top:-2px; z-index: -1; position: relative;}

/*事務局*/
#secretariatBox,#managementBox{ padding:15px 3%;  box-sizing: border-box; width:49%;}
#secretariatBox{ background:#fcfcfc; }

.secretariatTitle{  text-align: center; font-size:1.2em; padding-bottom: 15px; margin-bottom:10px; color:#c23c3c; position:relative; }
.secretariatTitle:after{ content:""; border-bottom:2px solid #efc4bf;
	width: 30px;
	text-align: center;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
.secretariatBox dt{ font-size: 1.06em; }
.secretariatBox p{ margin-bottom:10px; line-height: 1.6em; }
.telnum span, .faxnum span{ background:#f5f6f6; padding: 2px 8px; margin-right: 8px; }

/*運営事務局*/
#managementBox{background:#fff; }
#managementTitle{background:#698dcd;}
address{ padding-top:7px;  line-height: 1.8em; margin-bottom:20px; }
.addtel{ color:#001c7a;padding-right:5px; }
.telnum, .faxnum{ display:inline-block; }
.telnum{margin-right:40px;}
.telnum br{ display:none; }

/*mail*/
.mailBtn, #linkWrap li a,.btn a,.btn2 a{ position:relative; }
.mailBtn a,.btn a{ border:1px solid #e18a81; color:#e18a81;background: #fff;
	border-radius: 4px;display: block; padding: 14px 0;	max-width: 340px; box-sizing:border-box; text-align: center;}
.mailBtn a:hover,
#linkWrap li a:hover,.btn a:hover{ background-color:#fcf1ef; border-color: #c23c3c; color:#c23c3c; }

.mailBtn a:before,.btn a:before{ color: #8e1c18; }

.mailBtn a i{ margin-right:10px; }
.mailBtn a:hover:before{ color:#ffd9e4; }


.btn2 a{  color:#fff;background: #c23c3c;
	border-radius: 4px;display: block; padding: 14px 0;	max-width: 340px; box-sizing:border-box; text-align: center;}
.btn2 a:hover{  background: #bd1111; }




/*>*/
#linkWrap li a:after, .btn a:after, .btn2 a:after{ 
	content: '';
	position: absolute;
	top: 50%;
	right: 15px;
	display: block;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-top: 2px solid #db5f53;
	border-right: 2px solid #db5f53;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);    
}

.btn2 a:after{ border-top: 2px solid #fff;
	border-right: 2px solid #fff; }

#linkWrap .externalIcon i::before{ height:8px; }

.txtline{background: url(../img/linethrough.png) 0 5px repeat-x }
#place li span{ max-width:20%; }
#mainNav li i{ font-size: 0.7em; margin-left: 10px;}
.txtUnd{ margin-bottom: 10px!important; display: inherit; }

#sponsorBox{ margin: 0 auto 50px;  justify-content: center;   color:#c23c3c;}
#sponsorBox, #sponsorBox li{ display: flex; align-items: center;}
#sponsorBox li{ /*width: 50%*/ position: relative; padding-left:20px}
#sponsorBox li span { width: 90px; display: block;}
#sponsorBox li img,#sponsorBox li a{ width: 100%; }

/*・*/
#sponsorBox li:before{ content:"・";  position: absolute; left:0; }
#sponsorBox li:not(:first-child){ margin-left: 10px; }
#sponsorBox li:first-child{ width: 30%; }

/*==============================================================================*/
/* footer
============================================================================== */
/*pagetop btn*/
#btnPagetop{position: fixed;bottom: 20px;right: 20px;font-size: 21px;}
#btnPagetop a { width: 40px;  height: 40px;  padding: 11px 0;
background:rgba(219,95,83,0.8);	text-decoration: none;color: #fff;box-sizing: border-box;
text-align: center;display: block;
transform    : rotate(45deg);
}
#btnPagetop a:hover{ background: rgba(194,60,60,0.8) }

#btnPagetop a span {display: none;}
/* arrow */
#btnPagetop a::before { display: block;}

#btnPagetop a::after{ transform : skewX(-30deg); }

footer{ background:#18406a; color:#fff; padding:25px 3%; text-align: center; }


/*=========================================================*/
/*sp-----------------------------------------------------*/
@media screen and (max-width: 1249px) {
.telnum {margin-right: 2%;}
}

@media screen and (min-width: 1060px) and (max-width: 1159px) {
#secretariatBox, #managementBox {padding: 3% 2%;}
.telnum span, .faxnum span{ padding: 2px 5px; }
}

@media screen and (min-width: 373px) and (max-width: 1059px) {
address{ letter-spacing:0.5px; }
}

@media screen and (min-width: 641px) and (max-width: 908px) {
.telnum{ margin-bottom:5px;}
}

@media screen and (max-width: 1059px) {
body{ width: 100%; }
/*header*/	
header{ left: -83%; }

/*nav*/
nav li a{ position: relative; }
nav li a::after{ 
	content: '';
	position: absolute;
	top: 50%;
	right: 15px;
	display: block;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-top: 2px solid #db5f53;
	border-right: 2px solid #db5f53;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);    
}
nav li:last-child a::after{ line-height: 2em; }
nav li a:hover{ background:#ffe0e6; }

#mainNav{ background:#fee; }
#mainNav li a:after{ color:#b85953; }

#subNav li a:after{color:#ccc; }



/*drawer 外部リンクアイコン*/
.drawer-opened #mainNav .externalIcon i:before{ width: 9px; height: 8px; right: -19px; }


main{ padding-left:0; }

img{ max-width: 100%; }

.innerBox{ width: 96%;}
/*title*/
.maintitle{ margin-bottom:3%}

#officeBox{ padding: 4% 0;}
}



@media screen and (min-width: 751px) {
#sponsorBox{  width: 70%; }
}

@media screen and (max-width: 750px) {
#sponsorBox{ flex-wrap: wrap; }
#sponsorBox li{ margin-bottom: 2%; }
#sponsorBox li:not(:first-child){ margin-left: 0; }
}



@media screen and (min-width: 481px) and (max-width: 750px) {
#sponsorBox li span{ width: 100px; }
#sponsorBox li img, #sponsorBox li a { width: 70%; }
#sponsorBox li:first-child { width: 30%;}
}

@media screen and (max-width: 721px) {
#officeBox address p br{ display:none; }
}



@media screen and (max-width: 700px) {
#secretariatBox, #managementBox{ width:100%; }
}

@media screen and (max-width: 640px) {
#secretariatBox{margin-bottom:2%; }
#infoTitle, .maintitle{font-size: 1.6em;}
}

@media screen and (max-width: 570px) {
#bannerWrap li{ width:48%; }
.mailBtn a,.mailBtn2 a{	width:100%; }
}

@media screen and (max-width: 510px) {
nav li.txtbr a:after { margin-top:-35px; }
.navName span{ display: block; }
}


@media screen and (max-width: 498px) {
#btnPagetop { bottom: 70px; }
}

@media screen and (max-width: 487px) {
	#officeBox address p br{ display:block; }
}
@media screen and (max-width: 480px) {
	#sponsorBox li,
	#sponsorBox li:first-child { width: 50%;}
	#sponsorBox li{ font-size: 0.9em; }
#sponsorBox li img, #sponsorBox li a { width: 90%; }
}

@media screen and (max-width: 373px) {
	#managementBox .secretariatBox p{ letter-spacing: 0.5px; }
	#officeBox	address br{ display:none; }
	.telnum{ margin-bottom:5px;}
	}

@media screen and (max-width: 328px) {
#officeBox address p br{ display:none; }
}


@media screen and (max-width: 320px) {
#btnPagetop { bottom: 95px; }
address{ letter-spacing: 0.2px; }
}

/*pc-----------------------------------------------------*/
@media screen and (min-width: 1060px) {
/*nav*/
#mainNav{ border-bottom:1px dotted #d9d9d9; padding-bottom: 20px; margin-bottom:20px}
nav li a{ padding-right:10px; }
nav li a .navName, #subNav li a span{ margin-bottom:-1px; padding-bottom:2px ;}

/*nav*/
#mainNav .externalIcon i:before{ top: 6px;}
#mainNav .externalIcon i:after{ top: 4px; }

nav li a.active, 
#subNav li a.active span, #subNav li a:hover span{ background:#ef9284;  color:#fff;}

nav li a:hover { color:#a52e2a ; }
nav li a:hover.active{ color:#fff; background:#c23c3c; }

 
.innerBox{ width: 90%;max-width: 1000px;}
.maintitle{ margin-bottom: 35px; }

/*footer*/
#officeBox{ padding: 40px 0;}
/*事務局*/
#officeBox{ padding-top: 30px ; }

}


@media screen and (min-width: 641px) {
#officeBox div{ display: flex; }
#managementBox{margin-left:2%; }
}

@media screen and (min-width: 392px) {
footer br{ display: none; }
}