@charset "UTF-8";

/*================================================
 *  グローバルナビゲーション
 ================================================*/
nav {
	width:100%;
	background:#fff;
}

nav:after {
	content:'';
	display:block;
	clear:both;
}

@media print, screen and (min-width:992px) {
	nav {
		background: #064086;
		border-bottom:1px solid #FFF;
		z-index:3;
	}

	/* 共通 */
		nav ul {
			margin:0;
			padding:0;
		}

	nav ul li {
		position:relative;
		margin:0;
		padding:0;
		list-style:none;
	}

	nav ul li a {
		display:block;
		margin:0;
		padding:12px 0;
		background:#064086;
		color:#fff;
		font-size:1.4rem;
		line-height:1;
		text-decoration:none;
	}

	nav ul li:hover > a,
	nav ul li a.cur {
		color:#fff;
		background: #02326B;/*ホバー、選択時の親メニューの背景色*/
	}
	nav ul li a.cur {
		font-weight: 900;
	}

	/* 1段目 */
	nav ul.gnav > li {
		position:relative;
		width:9.5%;
		float:left;
		margin:0;
		padding:0;
		text-align:center;
		list-style:none;
	}
	nav ul.gnav > li:first-of-type,
	nav ul.gnav > li:nth-of-type(2) { /* ご挨拶 */
		width:8.25%;
	}
	nav ul.gnav > li:nth-of-type(7), /* 発表者の皆様へ */
	nav ul.gnav > li:nth-of-type(8), /* ご参加の皆様へ */
	nav ul.gnav > li:nth-of-type(9) { /* 会場のご案内 */
		width:12%;
	}

	/* 2段目 */
	nav ul li ul {
		position:absolute;
		z-index:3;
		top:100%;
		left:0;
		width:100%;
		margin:0;
		padding:0;
	}

	nav ul li ul li {
		overflow:hidden;
		width:140%;
		height:0;
		color:#fff;
		transition:.5s;
	}

	nav ul li ul li a {
		padding:12px;
		text-align:left;
		background: #EC8C64;/*サブメニューの背景色*/
		font-weight:normal;
		font-size: 1.2rem;
	}

	nav ul li ul li a:hover {
		background: #F4BDA6;/*ホバー時のサブメニューの背景色*/
		color: #7D300F;/*ホバー時の親メニューの文字色*/
	}

	nav ul li ul li a.cur {
		background: #D23D11;/*選択時の子メニューの背景色*/
		color: #FFF;/*選択時の子メニューの文字色*/
	}

	nav ul li:hover > ul > li {
		overflow:visible;
		height:36px;
	}

	nav ul li:hover ul li:last-child {
		border-bottom:none;
	}

	nav ul.gnav > li:last-child > ul {
		left:-50%;
	}

	nav ul li ul li ul:before {
		position:absolute;
		content:"";
		top:13px;
		left:-20px;
		width:0;
		height:0;
		border:5px solid transparent;
		border-left-color:#fff;
	}

	nav ul.gnav > li:last-child ul li ul:before {
		position:absolute;
		content:"";
		top:13px;
		left:200%;
		margin-left:-20px;
		border:5px solid transparent;
		border-right-color:#fff;
	}

	/* 3段目 */
	nav ul li ul li ul {
		top:0;
		left:100%;
	}

	nav ul li ul li ul li {
		width:100%;
	}

	nav ul.gnav > li:last-child > ul li ul {
		left:-100%;
	}

	nav ul li ul li ul li a {
	    background: #EC8C64;/*サブメニューの背景色*/
	}

	nav ul li ul li ul li a:hover {
        background: #02326B;/*ホバー時のサブメニューの背景色*/
        color: #7D300F;/*ホバー時の親メニューの文字色*/
	}

	nav ul li ul li ul li a.cur {
		background: #D23D11;/*選択時の子メニューの背景色*/
		color: #FFF;/*選択時の子メニューの文字色*/
	}

	.gnav {
		display:block !important;
	}

	#spMenu {
		display:none;
	}

	.fixed {
		position:fixed;
		top:0;
		left:0;
	}
}

/*================================================
 *  スマートフォン向けデザイン
 ================================================*/
@media screen and (max-width:991.98px) {
	nav {
	    background: #064086;
	}
	nav ul {
		margin:0;
		padding:0;
		}

	nav .inner > ul {
		z-index:2;
		overflow:auto;
		position:fixed;
		top:100px;
		right:0;
		width:100%;
		height:88%;
		height:-webkit-calc(100% - 100px);
		height:calc(100% - 100px);
	}
	nav li {
		position:relative;
		width:100%;
		float:none;
		margin:0;
		text-align:left;
		list-style:none;
		border-bottom:1px solid #C1DAE7;
		background:#064086;
	}

	nav li:first-child {
		border-top:0;
	}
	nav li:last-child {
		border-bottom:0;
	}

	nav li a {
		display:block;
		padding:10px 30px;
		color:#fff;
		text-decoration:none;
		background:#064086;
	}
	nav li a:hover {
		color:#fff;
		background: #02326B;/*ホバー、選択時の親メニューの背景色*/
	}
	nav ul ul {
		display:none;
		position:relative;
	}
	nav li li a {
		box-sizing:border-box;
		width:100%;
		padding:10px 30px 10px 50px;
		text-align:left;
	}

	nav li li li a {
		padding:10px 30px 10px 70px;
	}

	.subnav > a:before {
		display:block;
		content:"";
		position:absolute;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
		top:20px;
		right:30px;
		width:10px;
		height:10px;
		margin-top:-5px;
		background:#f1f1f1;
	}
	.subnav > a:after {
		display:block;
		content:"";
		position:absolute;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
		top:20px;
		right:30px;
		width:10px;
		height:10px;
		margin-top:-10px;
		background: #d0d8dc;
	}
	.subnav a:hover:after {
		background: #D23D11;
	}

	.active > a:before {
		margin-top:0;
	}
	.active > a:after {
		margin-top:5px;
	}

	.gnav {
		display:none;
	}

	#spMenu {
		display:block;
		z-index:2;
		position:fixed;
		top:45px;
		right:10px;
	}
	#spMenu:hover {
		cursor:pointer;
	}

	#navBtn {
		display:inline-block;
		position:relative;
		/*width:30px;
		height:30px;*/
		width:40px;
		height:40px;
		border-radius:5%;
		background: #C1DAE7;
	}
	#navBtnIcon {
		display:block;
		position:absolute;
		top:50%;
		left:50%;
		/*width:14px;
		height:2px;*/
        width:22px;
		height:2px;
		/*margin:-1px 0 0 -7px;*/
        margin:-1px 0 0 -11px;
		background:#FFF;
		transition:.2s;
	}
	#navBtnIcon:before,
	#navBtnIcon:after {
		display:block;
		content:'';
		position:absolute;
		top:50%;
		left:0;
		/*width:14px;
		height:2px;*/
        width:22px;
		height:2px;
		background:#FFF;
		transition:0.3s;
	}
	#navBtnIcon:before {
		/*margin-top:-6px;*/
        margin-top:-8px;
	}
	#navBtnIcon:after {
		/*margin-top:4px;*/
        margin-top:6px;
	}
	#navBtn .close {
		background:transparent;
	}
	#navBtn .close:before,
	#navBtn .close:after {
		margin-top:0;
	}
	#navBtn .close:before {
		transform:rotate(-45deg);
		-webkit-transform:rotate(-45deg);
	}
	#navBtn .close:after {
		transform:rotate(-135deg);
		-webkit-transform:rotate(-135deg);
	}
}

/*================================================
 *  スマートフォン向けデザイン
 ================================================*/
@media screen and (max-width:767.98px) {
	#spMenu {
		top:28px;
	}
}