
/*----- nav -----*/
.nav_area{
	background: rgba(200,215,238,.5);
	box-shadow: 0 0 5px rgba(0, 0, 0, .3);
}

nav{
	position:relative;
	width:230px;
}
nav ul.main li a.emphasis{
	background-image: none;
	background-color: rgb(255,255,0);
	box-shadow: 0 0 4px rgba(0,0,0,.3);
	color: rgb(250,80,80);
}
nav ul.main li a.bg_blue{
	background-image: none;
	background-color: rgb(142,184,255);
	box-shadow: 0 0 4px rgba(0,0,0,.3);
}

nav ul.main li.disabled a {
    pointer-events: none;
    cursor: default;
    color: rgb(197, 197, 197);
    background: url(../img/common_deco03.svg) left .2rem center no-repeat rgb(238, 238, 238);
}

nav #sp_menu_button{
	display:none;
}
nav #sp_menu_button + label{
	box-sizing:border-box;
	position:fixed;
	top:18px;
	right:20px;
	display:none;
	padding:10px 8px;
	width:40px;
	background:rgb(58,76,101);
	color:rgb(255, 255, 255);
	transition:.2s ease-out;
	transition-property:border-color,box-shadow,transform;
	z-index:1600;
}
nav #sp_menu_button + label span{
	box-sizing:border-box;
	display:block;
	margin:0 auto;
	width:100%;
	height:3px;
	background:rgb(255,255,255);
	transition:.2s ease-out;
	transition-property:width,height,margin,box-shadow,transform;
	overflow:hidden;
}
nav #sp_menu_button + label span:nth-child(1),
nav #sp_menu_button + label span:nth-child(2){
	margin-bottom:5px;
}
	/*---- cheked ----*/
	nav #sp_menu_button:checked + label{
		/*transform:rotate(90deg);*/
		box-shadow:0 0 8px rgba(255,255,255,.45);
	}
	nav #sp_menu_button:checked + label span:nth-child(2){
		background:rgba(0,0,0,0);
		width:20px;
		height:20px;
		text-shadow:0 0 8px rgba(255,255,255,.6);
	}
	nav #sp_menu_button:checked + label span:nth-child(2)::before{
		content:"×";
		display:block;
		font-size:20px;
		line-height:20px;
		text-align:center;
	}
	nav #sp_menu_button:checked + label span:nth-child(1),
	nav #sp_menu_button:checked + label span:nth-child(2){
		margin-bottom:0;
	}
	nav #sp_menu_button:checked + label span:nth-child(1),
	nav #sp_menu_button:checked + label span:nth-child(3){
		height:0;
	}
nav ul.sub{
	box-sizing:border-box;
	margin:0;
	padding:10px;
	width:100%;
	background:rgb(178,141,79);
}
nav ul.sub li{
	display:flex;
	list-style:none;
	margin-bottom:12px;
}
nav ul.sub li:last-child{
	margin-bottom:0;
}
nav ul.sub li a{
	position:relative;
	box-sizing:border-box;
	display:flex;
	justify-content:space-around;
	align-items:center;
	align-content:center;
	padding:.7rem 0 ;
	width:100%;
	font-size:1.5rem;
	color:rgb(255,255,255);
	text-decoration:none;
	transition:.2s ease-out;
	transition-property:background,color;
	text-align:center;
}

nav ul.main{
	box-sizing:border-box;
	margin:0;
	padding:20px 10px;
	width:100%;
}
nav ul.main li{
	display:flex;
	list-style:none;
}
nav ul.main li:not(.banner):not(.banner-related) a{
	position:relative;
	box-sizing:border-box;
	display:block;
	padding:.8rem 1.6rem;
	margin: 5px;
	width:100%;
	font-size:1em;
	background: url("../img/common_deco01.svg") left 0.2rem center no-repeat;
	background-size: 6px;
	/*box-shadow:0 0 3px rgba(0,0,0,.3);*/
	background-color: white;
	color:black;
	line-height:1.4;
	text-decoration:none;
	transition:.2s ease-out;
	transition-property:background,border-bottom,color;
	overflow:hidden;
}
/*新規ページを作成したら↓に新規ページのクラス名を追加
　例） .（クラス名）　nav ul.main li a.(クラス名)*/
.home nav ul.main li a.home,
.message nav ul.main li a.message,
.overview nav ul.main li a.overview,
.program nav ul.main li a.program,
.abstract nav ul.main li a.abstract,
.registration nav ul.main li a.registration,
.participant nav ul.main li a.participant,
.speakers nav ul.main li a.speakers,
.cooperation nav ul.main li a.cooperation,
.access nav ul.main li a.access,

nav ul.main li:not(.banner):not(.banner-related) a.current,
nav ul.main li:not(.banner):not(.banner-related) a:hover{
	background-color:rgb(255,255,255);
	background: url("../img/common_deco02.svg") right 0.5rem center no-repeat rgb(160,140,40);
	background-size: 6px;
	color:rgb(255,255,255);
	font-weight: 400;
}

nav ul.main li a:hover::before,
nav ul.main li a.current::before{
	left:.2rem;
}
nav ul li.banner{
	margin-top:20px;
	/*padding: 0 16px;*/
}
nav ul li.banner.poster{
	padding: 0;
}
nav ul li.banner a{
	height: auto;
}
nav ul li.banner + .banner{
	margin-top:5px;
}
nav ul li.banner a{
	padding:0;
	border-bottom:none;
	line-height:0;
	text-align:center;
	transition:opacity .2s ease-out;
}
nav ul li.banner.poster a{
	padding: 5px;
	line-height: 1.6em;
	background-image: none;
}
nav ul li.banner a img{
	width:100%;
	vertical-align:bottom;
}
nav ul li.banner a img.sp{
	display:none;
	max-width:500px;
}
nav ul li.banner a:hover img{
	background:none;
	border-bottom:none;
	opacity:.5;
}
nav ul li.banner.poster a:hover{
	background:rgb(242, 242, 240);	
	opacity: 1;
}
nav ul p.abstract_note{
	font-size:1.2rem;
	line-height: 1.5rem;
	color:rgb(255,0,0);
	margin-top: 0.8rem;
}

nav ul li.menu-notice{
	display:block;
	margin-top:20px;
	padding:1em;
	background: rgb(255, 252, 226);
	color:rgb(255, 0, 0);
	font-size:.8em;
	line-height:1.2;
	text-align:justify;
	border-radius:8px;
}
nav ul li.menu-notice .title{
	display:flex;
	justify-content:center;
	margin:0;
	margin-bottom:.5em;
	font-size:1.1em;
	font-weight:700;
	text-align:center;
}


nav ul li a[target="_blank"]::after{
	content:"";
	display:inline-block;
	background:url(../img/icon_external_white.svg) center center no-repeat;
	background-size:cover;
	width:.8em;
	height:.8em;
	margin-left:.5em;
	transition:background .2s ease-out;
}
	nav ul li a[target="_blank"]:hover::after{
		content:"";
		display:inline-block;
		background:url("../img/icon_external_black.svg") center center no-repeat;
		background-size:cover;
	}
nav ul li.banner a:hover::after,
nav ul li.banner a::after{
	content: none;
}


/*関連学会バナー*/
nav ul li.banner-related{
	margin-top:20px;
	/*padding: 0 16px;*/
}

nav ul li.banner-related a{
	position:relative;
	box-sizing:border-box;
	display:block;
	padding:4px;
	width:100%;
	font-size:1em;
	background:rgb(200,80,25);
	border:solid 2px rgb(255,255,255);
	border-radius:4px;
	box-shadow:0 0 3px rgba(0,0,0,.3);
	font-size:.86em;
	color:rgb(255,255,255);
	text-align:center;
	line-height:1.4;
	text-decoration:none;
	transition:.2s ease-out;
	transition-property:opacity,background,border-bottom,color;
	overflow:hidden;
	font-feature-settings:'palt';
}

nav ul li.banner-related.pink a{
	background:rgb(230,92,180);
}

nav ul li.banner-related a:hover{
	content: none;
	opacity:.6;
}

nav ul li.banner-related + .banner-related{
	margin-top:5px;
}


#menu nav ul li address{
	font-size: 12px;
	color: white;
	margin-top: 10px;
	p{
		text-align: left;
		margin: 0;
		padding: 0;
		font-weight: 400;
		a{
			display:inline;
			color: white;
			padding:0;
			margin: 0;
			width:100%;
			background: none;
			background-color: rgba(0,0,0,0);
			line-height:1.4;
			text-decoration:none;
			transition:.2s ease-out;
			transition-property:background,border-bottom,color;
			overflow:hidden;
		}		}
	}

