@charset "utf-8";
/* ==================================================
		
		navの共通 PC・SP

================================================== */

/* --------------------------------------------------
		header
-------------------------------------------------- */
header {
 border-top: none;
 min-width: auto;
}
header:before {
 background-color: none;
}

/*	#header
-------------------------------------------------- */ 
#header {
	position: fixed;
	width: 100%;
	z-index: 10;
}
#header .headerInner {
	position: relative;
	height: 80px;
}
#header .logoShimadzu {
	display: block;
	position: absolute;
	top: 22px;
	left: 30px;
	z-index: 99;
}
#header .logoShimadzu a svg {
	width: 172px;
	height: 37px;
	transition: 0.2s;
} 

/*----------------------------------------
	globalMenu
-----------------------------------------*/
#gNav {
	top: 0;
	right: -50%;
	position: fixed;
	height: 100%;
	width: 30%;
	z-index: 98;
	transition: all .5s;
	background: #54a6a5;
	/*border: 10px solid #FFf;*/
	overflow: hidden scroll;　
	-ms-overflow-style: none;
	scrollbar-width: none;
}
#gNav::-webkit-scrollbar{
  display: none;
}
.gNav__wrap {
	position: absolute;
	top: 80px;
	left: 5%;
	right: 5%;
	text-align: left;
 padding-bottom: 30px;
}
.gNav__wrap .tittop {
 font-size: 17px;
 letter-spacing: 1px;
}
#gNav ul {
 margin-top: 8px;
}
#gNav ul li {
 font-size: 13px;
 line-height: 1.3;
 letter-spacing: 1px;
 position: relative;
 padding-top: 11px;
}
#gNav ul li a {
 display: inline;
}
#gNav ul li:first-of-type {
 padding-top: 0;
}
#gNav ul.list-nav01 li a::after {
 content: "";
 background: url(/med/virtual-exhibition/common/images/arrow_nav01.png) no-repeat right center / 100%;
 width: 20px;
 height: 6px;
 margin-left: 11px;
 position: absolute;
 bottom: 6px;
}
#gNav ul.list-nav02, 
#gNav ul.list-nav03,
#gNav ul.list-nav04 {
 border-top: 1px solid #ffffff;
 margin-top: 17px;
 padding-top: 17px;
}
#gNav ul.list-nav02 li a::after, 
#gNav ul.list-nav03 li a::after, 
#gNav ul.list-nav04 li a::after {
 content: "";
 background: url(/med/virtual-exhibition/common/images/icon_nav01.png) no-repeat right center / 100%;
 width: 14px;
 height: 17px;
 margin-left: 10px;
 position: absolute;
 bottom: 3px;
}
/*　会員サイト化時に追加 */
#gNav ul.list-nav01 li{
 padding-left: 14px;
}
#gNav ul li.cat_type{
 font-size: 15px;
 color: #ffffff;
 font-weight: 400;
 padding-left: 0px;
}

/* 開閉時の挙動 */
.open #gNav {
	right: 0;
}
/* cp_arrow */
.cp_arrow_right {
	position: relative;
	display: inline-block;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	vertical-align: middle;
	color: #fff;
	top: 0;
	width: 9px;
	height: 10px;
	margin: 0.8em;
	border-width: 1px 1px 0 0;
	border-style: solid;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.cp_arrow_right:before, .cp_arrow_right:after {
	position: absolute;
	border-radius: 1px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	content: '';
}
.cp_arrow_right:before {
	top: -1px;
	right: 0;
	width: 15px;
	height: 1px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	-webkit-transform-origin: right top;
	transform-origin: right top;
	-webkit-box-shadow: inset 0 0 0 32px;
	box-shadow: inset 0 0 0 24px;
}
.cp_arrow_right:after {
	top: -2px;
	left: -1px;
	width: 1px;
	height: 1px;
}
/* siteTtl */
.siteTtl {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
	margin: auto;
	line-height: 1;
	width: 220px;
}
.siteTtl img {
	width: 100%;
	height: auto;
}

/* メニューボタン */
.btn_wrap {
	position: absolute;
	z-index: 100;
	top: 0;
	right: 0;
	margin: auto;
	width: 80px;
	height: 80px;
	cursor: pointer;
	background: #54a6a5;
}
.btn_vshsc {
 color: #ffffff;
 background: #ed8b05;
 cursor: pointer;
}
.btn_cu {
 color: #ffffff;
 background: #efb402;
 cursor: pointer;
}
.open .btn_wrap {
	background: #fff;
}
.btn_menu {
	height: 24px;
	width: 30px;
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	margin: auto;
	transform: translateY(-50%) translateX(-50%);
 -webkit-transform: translateY(-50%) translateX(-50%);
	z-index: 99;
	cursor: pointer;
}
.menu__line {
	background: #fff;
	display: block;
	height: 1px;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	transition: transform .2s;
	width: 100%;
	width: 30px;
}
.menu__line--center {
	top: 11px;
}
.menu__line--bottom {
	bottom: 0;
}
.active .menu__line--top {
	top: 11px;
	transform: rotate(45deg);
	background: #54a6a5;
}
.active .menu__line--center {
	transform: scaleX(0);
}
.active .menu__line--bottom {
	bottom: 12px;
	transform: rotate(135deg);
	background: #54a6a5;
}

/* OPEN時 背景固定　実験
.scroll-prevent {
position: fixed;
z-index: -1;
width: 100%;
height: 100%;
}*/

/* menu-bg */
.menu-bg {
	position: fixed;
	left: 0;
	top: 0;
	width: 100vw;
	height: 100vh;
	z-index: 95;
	background: #333;
	opacity: 0;
	visibility: hidden;
	transition: all 0.6s;
	cursor: pointer;
}
.open .menu-bg {
	opacity: 0.6;
	visibility: visible;
}

/* Safari用のハックは、Chromeに適用されないようにする */
@supports (-webkit-touch-callout: none) {
.menu-bg {
 
    /* Safari用のハック */
    height: -webkit-fill-available;
}
 
}
 

/* ==================================================
		
		nav PC

================================================== */
@media screen and (min-width:741px) {
 
/* --------------------------------------------------
		#header
-------------------------------------------------- */
#header {
	position: fixed;
	width: 100%;
	z-index: 10;
}
#header .headerInner {
	position: relative;
	height: 80px;
}
#header .logoShimadzu {
	display: block;
	position: absolute;
	top: 22px;
	left: 30px;
	z-index: 95;
}
#header .logoShimadzu a svg {
	width: 172px;
	height: 37px;
	transition: 0.2s;
} 

/*----------------------------------------
	globalMenu
-----------------------------------------*/ 
.btn_vshsc {
 width: 236px;
 position: absolute;
 right: 213px;
}
.btn_vshsc a {
 font-size: 13px;
 letter-spacing: 1.08px;
 line-height: 1.5;
 height: 80px;
 display: block;
 padding-top: 20px;
} 
.btn_cu {
 width: 133px;
 position: absolute;
 right: 80px;
 height: 80px;
}
.btn_cu a {
 font-size: 13px;
 letter-spacing: 1.08px;
 line-height: 1.5;
 height: 80px;
 display: block;
 padding-top: 30px;
} 
	
/* OPEN時 背景固定*/
.scroll-prevent {
	position: fixed;
	z-index: -1;
	width: 100%;
	height: 100%;
}
	
}


/* ==================================================
		
		nav SP

================================================== */
@media screen and (max-width:740px) {
 
/* --------------------------------------------------
		#header
-------------------------------------------------- */
#header .headerInner {
	height:60px;
}
#header .logoShimadzu {
	top: 14px;
	left: 9px;
}
.open #header .logoShimadzu {
	background: #54a6a5;
	padding-right: 66%;
	/*width: 80%;*/
	width: 100%;
	height: 60px;
	top: 0;
	left: 0;
	padding: 14px 0 0 9px;
}
#header .logoShimadzu a svg {
	width: 140px;
	height: 30px;
}
.open #header .logoShimadzu a svg {
	fill: #ffffff;
}

/*----------------------------------------
	globalMenu
-----------------------------------------*/
#gNav{
	width: 100%;
	height: 100%;
	right: -100%;
	overflow-y: scroll;
}
.gNav__wrap {
 top: 70px;
 transform: translateY(0);
 -webkit-transform: translateY(0);
}
.gNav__wrap .tittop {
 font-size: 14px;
}
#gNav ul {
 font-size: 14px;
 line-height: 1.2;
}
#gNav ul li {
 padding-top: 11px;
}
#gNav ul.list-nav01 li a::after {
 width: 18px;
 height: 5px;
 margin-left: 8px;
 bottom: 3px;
}
#gNav ul.list-nav02, 
#gNav ul.list-nav03, 
#gNav ul.list-nav04 {
 margin-top: 12px;
 padding-top: 12px;
}
#gNav ul.list-nav04 {
 margin-bottom: 30px;
}
#gNav ul.list-nav02 li a::after,
#gNav ul.list-nav03 li a::after, 
#gNav ul.list-nav04 li a::after {
 width: 12px;
 height: 15px;
 margin-left: 9px;
 bottom: 1px;
}
 
/* メニューボタン */
.btn_wrap {
	margin: auto;
	width: 60px;
	height: 60px;
} 
.btn_menu {
	height: 20px;
	width: 30px;
}
.menu__line {
	width: 28px;
}
.menu__line--center {
	top: 9px;
}
.active .menu__line--top {
	top: 9px;
}
.active .menu__line--bottom {
	bottom: 9px;
}
.btn_cu {
 font-weight: bold;
 width: 120px;
 position: absolute;
 right: 60px;
}
.btn_cu a {
 font-size: 12px;
 letter-spacing: 1px;
 line-height: 1.5;
 height: 60px;
 display: block;
 padding-top: 23px;
} 

}
