@charset 'utf-8';

/* =============================================================================
Update
============================================================================= */
/*--start 20140905 --*/
/*20140805_yourvision*/
/*20140805_logo-size*/
/* 20140801 */
/* 20140730 */

/* -----------------------------------------------------------------
    Block
----------------------------------------------------------------- */
.fixedWrap {
	margin: 0 auto;
	max-width: 960px;
}
.clearfix:after{
	content:".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix{
	min-height: 1px;
}

*html .clearfix{
	height: 1px;
	/*\*//*/
	height: 1px;
	overflow: hidden;
	/**/
}
/* =============================================================================
    Layout
============================================================================= */
/* -----------------------------------------------------------------
    Header
----------------------------------------------------------------- */
#header {
	padding-bottom: 12px;
	border-bottom: 1px solid #ccc;
	position: relative;
	z-index: 300;
}
#header ul {
	list-style: none;
}
#headerContent {
	margin: 0 auto;
	padding-top: 15px;
	max-width: 960px;
	text-align: right;
}
#logoOlympus {
	margin: 8px 0 0 0;
}
 #logoOlympus img {
	width: 113px;
	height: 30px;
}
#logoOlympusImaging {
	height: 15px;
	text-align: center;
	margin-bottom: 10px;
}
#logoOlympusImaging img {
	width: 89px;
	height: 20px;
}
#logoOMSystem {
	margin: 5px 8px 0 0;
	height: 24px;
	vertical-align: top;
	float: left;
}
#logoOMSystem img {
	margin-top: 2px;
	width: 308px;
	height: auto;
}
#logoOlympus .image,
#logoOlympus .svgSp,
#logoOlympusImaging .image, 
#logoOMSystem .image {
	display: none;
}
#logoOlympusSub {
	margin-top: 3px;	/* 20140801 */
	display: inline-block;
}
#logoOlympusSub p {
	padding-left: 5px;	/* 20140801 */
	display: table-cell;	/* 20140801 */
	line-height: 1.3;
	vertical-align: middle;	/* 20140801 */
	font-size: 12px;
}
#logoOlympusSub p:first-child {
	/* 20140801 */
	padding-left: 0;
}
#navHeader {
	margin-top: 15px;
}
#navHeader .fixedWrap {
	position: relative;
	clear: both;
}
#navHeader .navHdg {
	display: none;
	/* 20140730 */
	position: relative;
}
#navHeader .navHdg > .userLinks {
	/* 20140730 */
	display: none;
	position: absolute;
	top: 11px;
	right: 0;
}
#navHeader .navHdg > .userLinks li a {
	padding-left: 0;
	display: block;
	width: 25px;
	height: 25px;
	background: url(/content/000006511.png) no-repeat center center;
	background-size: 25px;
	text-indent: -9999px;
}
#navHeader .navHdg > .userLinks li:first-child a {
	background: url(/content/000006512.png) no-repeat center center;
	background-size: 25px;
}
/*--start 20140905 --*/
	#navHeader .navLocal {
	position: absolute;
	visibility: hidden;
	height: 0;
	}
/*--//end 20140905 --*/
#navHeader .navLocal.navOpened {
	display: block;
	position: absolute;
	z-index: 500;
	width: 100%;
	background-color: rgba(246, 246, 246, 0.96);
}
#navHeader .btnClose {
	display: none;
}
#navHeader .userLinks {
	float: right;
}
#navHeader .userLinks li {
	padding-left: 20px;
	display: table-cell;
	vertical-align: top;
}
#navHeader .userLinks li a {
	padding-left: 20px;
	color: #666;
	background-image: url(/content/000000018.gif);
	background-repeat: no-repeat;
	background-position: left center;
}
#navHeader .userLinks li:first-child a {
	background-image: url(/content/000000019.gif);
}
#navGlobal {
	float: left;
	line-height: 1.3;
	zoom: 1;
}
#navGlobal li {
	position: relative;
	float: left;
	font-weight: bold;
	font-size: 75%;
}
#navGlobal li a {
	padding: 5px 0;
	display: block;
	color: #666;
	font-size: 13px;
	text-align: left;
	text-decoration: none;
}
#navGlobal li a:hover,
#navGlobal li.active a {
	color: #fff;
	background: #08107b;
	text-decoration: none;
}
#navGlobal li a span {
	padding: 0 10px;
	display: block;
}
#navGlobal li.home a span {
	border-left: none;
	right: 0;
}
#navGlobal li br {
	display: none;
}
#productNameTop {
	padding: 20px;
	display: none;
	line-height: 120%;
	font-weight: bold;
	font-size: 257.1%;
	text-align: center;
}
#productNameTop span {
	padding-left: 10px;
	font-weight: normal;
	font-size: 75%;
}

/* -----------------------------------------------------------------
    Breadcrumb Navigation
----------------------------------------------------------------- */
#navBreadcrumb {
	border-width: 1px 0;
	border-color: #c9c9c9;
	border-style: solid;
	background-color: #222;
}
#navBreadcrumb .inner {
	margin: 0 auto;
	padding: 6px 0;
	display: table;
	position: relative;
	width: 100%;
	max-width: 960px;
	min-height: 38px;
}
#navBreadcrumb .inner > ul,
#navBreadcrumb .inner > div {
	display: table-cell;
	vertical-align: middle;
}
#navBreadcrumb ul {
	list-style: none;
	text-align: left;
}
#navBreadcrumb ul li {
	margin-right: 10px;
	float: left;
	color: #8e8e8e;
	font-size: 75%;
}
#navBreadcrumb ul li a {
	margin-right: 10px;
	display: inline-block;
	color: #dedede;
}
#navBreadcrumb ul li p {
	display: block;
	color: #fff;
	font-style: normal;
	font-weight: bold;
}
#navBreadcrumb .siteSearch {
	width: 349px;
	text-align: right;
}
#navBreadcrumb .siteSearch input {
	vertical-align: middle;
}
#navBreadcrumb .siteSearch .wordsSearch {
	padding: 2px 5px;
	border: 1px solid #444;
	width: 300px;
	height: 30px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	color: #FFF;
	background-color: #555;
	font-size: 85.7%;
}
#navBreadcrumb .siteSearch .searchBtn {
	width: 49px;
}

/* -----------------------------------------------------------------
    Footer
----------------------------------------------------------------- */
#footer {
	background-color: #e5e5e5;
	font-size: 85.7%;
}
#footer #footerContent {
	padding: 20px 0;
	border-top: 1px solid #fff;
}
#footer .navUtility {
	margin: 0 auto 10px;
	display: table;
}
#footer .navUtility li {
	padding: 0 10px;
	border-left: 1px solid #bbb;
	display: table-cell;
	vertical-align: middle;
}
#footer .navUtility li a {
	color: #222;
}
#footer .navUtility li:first-child {
	border-left: 0;
}
#footer #copyright {
	color: #222;
	text-align: center;
}
#footer #copyright img {
    vertical-align: middle;
}
/* -----------------------------------------------------------------
    Local Navigation
----------------------------------------------------------------- */
#footer .navLocal {
	font-size: 14px;
}
#footer .navLocal .navGlobalSub {
	display: none;
}
#footer .navLocalContent .productList {
	margin-bottom: 0;
	border-bottom: 0;
}
.productList li a:visited,
.subLinks li a:visited{
	color: #660099 !important;
}
.navLocal {
	overflow: hidden;
	background: #d9d9d9; /* Old browsers */
	background: -moz-linear-gradient(top,  #d9d9d9 0%, #e4e4e4 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#d9d9d9), color-stop(100%,#e4e4e4)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #d9d9d9 0%,#e4e4e4 100%); /* Chrome10+,Safari5.1+ */
	background: -ms-linear-gradient(top,  #d9d9d9 0%,#e4e4e4 100%); /* IE10+ */
	background: linear-gradient(to bottom,  #d9d9d9 0%,#e4e4e4 100%); /* W3C */

	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d9d9d9', endColorstr='#e4e4e4',GradientType=0 ); /* IE6-9 */
}
.navLocal ul {
	list-style: none;
}
.navLocalContent {
	padding: 30px 0 0;
}
.navLocalContent .catList > div {
	display: none;
}
.navLocalContent .productList {
	margin: 0 auto 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #ccc;
	display: table;
	width: 100%;
	max-width: 960px;
}
.navLocalContent .productList > li {
	padding: 0 1.58%;
	display: table-cell;
	width: 16.6%;
	vertical-align: top;
	font-size: 85.7%;
}
.navLocalContent .productList > li .thumb {
	text-align: left;
}
.navLocalContent .productList > li .hdg {
	padding: 10px 0;
	line-height: 120%;
	background: url(/content/000000020.png) no-repeat left top;
	font-weight: bold;
}
.navLocalContent .productList > li > ul > li {
	margin-bottom: 10px;
	padding-left: 10px;
	background: url(/content/000000021.png) no-repeat left 8px;
}
.navLocalContent .subLinks {
	margin: 0 auto;
	padding-bottom: 30px;
	width: 960px;
	font-size: 85.7%;
}
.navLocalContent .subLinks li {
	padding: 0 20px 0 10px;
	display: table-cell;
	vertical-align: top;
	background: url(/content/000000021.png) no-repeat left center;
}
.navLocalContent .subLinks li a {
	color: #333;
}
.navLocalContent .navGlobalSub {
	padding: 15px 0;
	border-top: 1px solid #101010;
	clear: both;
	background-color: #222;
}
.navLocalContent .navGlobalSub ul {
	margin: 0 auto;
	display: table;
}
.navLocalContent .navGlobalSub li {
	padding: 0 15px;
	display: table-cell;
	vertical-align: top;
	font-size: 75%;
}
.navLocalContent .navGlobalSub li a {
	display: inline-block;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
}
.navLocalContent .navGlobalSub li.current a {
	margin-top: -24px;
	padding-top: 24px;
	padding-bottom: 5px;
	border-bottom: 2px solid #fff;
	display: block;
	background: url(/content/000000022.png) no-repeat center top;
}

/* =============================================================================
    Clearfix
============================================================================= */
#headerContent:after,
#navHeader:after,
#navHeader .fixedWrap:after,
#navGlobal:after,
#navBreadcrumb ul:after {
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
	content: '.';
	font-size: 0;
}

/* =============================================================================
    Responsive
============================================================================= */
/* -----------------------------------------------------------------
    Below 980px
----------------------------------------------------------------- */
@media screen and (max-width: 980px) {
	/* Layout
-----------------------------------------------*/
	#footer .navLocalContent {
		padding-right: 20px;
		padding-left: 20px;
	}
	#footer .navLocal img {
		width: 100%;
		height: auto;
	}
}

/*20140805_yourvision*/
/* -----------------------------------------------------------------
    Below 960px
----------------------------------------------------------------- */
@media screen and (max-width: 960px) {
	/* 20140730 */
	/* Layout
-----------------------------------------------*/
	#logoOlympus .svg,
	#logoOlympus .image {
		display: none;
	}
	#logoOlympus .svgSp {
		display: inline-block;
	}
	#logoOlympus,
	#logoOlympus img {
		width: auto;
		height: 20px;
	}
	#logoOlympus {
		margin-top: 13px;
	}
}

/* -----------------------------------------------------------------
    Below 940px
----------------------------------------------------------------- */
@media screen and (max-width: 940px) {
	/* Layout
-----------------------------------------------*/
	#headerContent,
	.navLocalContent .catList,
	.fixedWrap {
		padding-right: 20px;
		padding-left: 20px;
		width: auto;
	}
	.navLocalContent .productList > li .thumb img {
		width: 100%;
		height: auto;
	}
	#navBreadcrumb {
		border-bottom: 0;
	}
	#navBreadcrumb .siteSearch {
		padding-right: 15px;
	}
	.navLocalContent .productList > li {
		padding: 0 1%;
	}
	#content {
		padding: 0 15px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	#navBreadcrumb ul {
		padding-right: 20px;
		padding-left: 20px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	#footerContent {
		padding-right: 15px;
		padding-left: 15px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	#navHeader .userLinks {
		right: 20px;
	}
}

/* -----------------------------------------------------------------
    Below 767px
----------------------------------------------------------------- */
@media screen and (max-width: 767px) {
	/* Layout
-----------------------------------------------*/
	#navHeader .navLocal {
		display: block;
	}
	#navHeader .navLocal .navLocalContent {
		padding: 0;
		display: block !important;
	}
	#navHeader .navLocal .catList {
		display: none;
	}
	#navHeader .navLocalContent .navGlobalSub {
		padding: 10px 0;
	}
	#navHeader .navLocalContent .navGlobalSub li {
		padding-top: 5px;
		padding-bottom: 5px;
		display: inline-block;
	}
	#navHeader .navLocalContent .navGlobalSub li.current a {
		padding-bottom: 0;
		border-bottom: 0;
		background: no-repeat;
	}
}

/* -----------------------------------------------------------------
Below 640px
----------------------------------------------------------------- */
@media screen and (max-width: 640px) {
	/* Layout
-----------------------------------------------*/
	* {
		-webkit-text-size-adjust: 100%;
	}
	body {
		font-size: 12px;
	}
	#header {
		margin-bottom: 0;
		z-index: 600;
		border-bottom: none;
	}
	#headerContent {
		padding: 8px 8px 8px 10px;
	}
	#logoOlympus {
		margin: 8px 0 0;
		height: auto;
	}
	#logoOlympus img {
		width: 96px;
		height: auto;
	}
	#logoOlympusImaging a {
		display: inline-block;
	}
	#logoOlympusImaging img {
		width: 75px;
	}
	#logoOMSystem {
		margin: 0;
	}
	#logoOMSystem img {
 		width: 250px;
 		height: auto;
	}
	#logoOlympusSub {
		display: none;
	}
	#navHeader {
		margin-top: 0;	/* 20140730 4L >Del*/
		width: 100%;
	}
	#navHeader .navHdg {
		background-color: #404040;
		box-shadow: 0 1px 2px #000;
		display: block;
		position: relative;
		background-color: #404040;	/* 20140730 */
		font-size: 87.5%;
		padding: 6px 14px 5px 14px;
		position: relative;
	}
	#navHeader .navHdg > a {
		/* 20140730 */
		display: block;
		width: 30px;
		height: 30px;
		background: url(/content/000006513.png) no-repeat center center;
		background-size: 30px;
		text-indent: -9999px;
	}
	/* 20140730 #navHeader .navHdg a:after >Del */
	#navHeader .navContent {
		display: none;
	}
	/* 20140730 #navHeader.navOpened .navHdg a:after >Del */
	#navHeader.navOpened .navContent {
		padding: 0;
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 700;
		width: 100%;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		color: #fff;
		background: url(/content/000000023.png) repeat left top;
	}
	#navGlobal {
		margin: 10px auto;
		border-top-left-radius: 0;
		border-top-right-radius: 0;
		display: table;
		width: 100%;
	}
	#navGlobal li {
		margin-bottom: 25px;
		margin-left: 0;
		position: static;
		width: 50%;
	}
	#navGlobal li a {
		margin: 0 auto;
		padding-top: 85px;
		display: table;
		width: 80px;
		color: #fff;
		background-repeat: no-repeat;
		background-position: center top;
		background-size: 80px !important;
		font-weight: normal;
		text-align: center;
	}
	#navGlobal li.active a {
		color: #fff;
		background-color: transparent;
		background-repeat: no-repeat;
	}
	#navGlobal li.home a {
		background-image: url(/content/000000024.png);
	}
	#navGlobal li.product a {
		background-image: url(/content/000048374.png);
	}
	#navGlobal li.events a {
		background-image: url(/content/000000026.png);
	}
	#navGlobal li.support a {
		background-image: url(/content/000045029.png);
	}
	#navGlobal li.wheretobuy a {
		background-image: url(/content/000048375.png);
	}
	#navGlobal li.shop a {
		background-image: url(/content/000043368.png);
	}
	#navGlobal li.fotopus a {
		background-image: url(/content/000043367.png);
	}
	#navGlobal li.about a {
		background-image: url(/content/000048373.png);
	}
	#navGlobal li a:hover {
		color: #fff;
		background-color: transparent;
		background-repeat: no-repeat;
	}
	#navGlobal li a span {
		padding: 0;
		border-left: none;
		display: inline;
		position: static;
	}
	#navHeader .btnClose {
		display: block;
		float: right;
		text-align: center;
	}
	#navHeader .btnClose a {
		display: block;
		width: 50px;
		height: 40px;
		line-height: 40px;
		color: #fff;
		background-color: #000;
		font-size: 20px;
		text-decoration: none;
	}
	#navBreadcrumb .inner {
		min-height: inherit;
	}
	#navBreadcrumb .inner .siteSearch {
		display: none;
	}
	#navBreadcrumb ul li {
		font-size: 100%;
	}
	.navLocalContent {
		padding: 20px;
	}
	#navHeader .navHdg > .userLinks {
		/* 20140730 */
		display: block;
		margin-right: 14px;
	}
	#navHeader .navContent .userLinks {
		/* 20140730 */
		display: none;
	}
	.navLocalContent .productList > li {
		width: 100%;
		padding: 0;
		border-top: 1px solid #555;
	}
	.navLocalContent .productList > li:first-child {
		border-top: 0;
	}
	.navLocalContent .subLinks {
		padding-bottom: 0;
		width: auto;
		background: url(/content/000000023.png) repeat left top;
	}
	.navLocalContent .subLinks li {
		padding: 0;
		border-top: 1px solid #555;
		display: block;
		background: none;
	}
	.navLocalContent .subLinks li:first-child {
		border-top: 0;
	}
	.navLocalContent .subLinks li a {
		padding: 20px;
		display: block;
		color: #fff;
		background: url(/content/000000028.png) no-repeat 95% center;
		background-size: 7px;
		font-size: 14px;
		text-decoration: none;
	}
	#navHeader .navLocal {
		background: transparent;
	}
	#navHeader .navLocalContent .navGlobalSub {
		margin: 10px;
		background: transparent;
	}
	#navHeader .navLocalContent .navGlobalSub ul {
		width: 100%;
	}
	#navHeader .navLocalContent .navGlobalSub li {
		margin: 0;
		padding: 0;
		border-top: 1px solid #555;
		display: block;
	}
	#navHeader .navLocalContent .navGlobalSub li:first-child {
		border-top: 0;
	}
	#navHeader .navLocalContent .navGlobalSub li a,
	#navHeader .navLocalContent .navGlobalSub li.current a {
		padding: 20px 30px 20px 20px;
		display: block;
		color: #fff;
		background: #333 url(/content/000000028.png) no-repeat 95% center;
		background-size: 7px;
		font-weight: normal;
		font-size: 14px;
		text-decoration: none;
		margin-top: 0;
	}
	/*--start 20140905--*/
	#navHeader .navLocal {
		position: static;
	}
	/*--//end 20140905 --*/
	/*--start 20141107 iact--*/
	.navLocalContent .navGlobalSub li.current a {
		margin-top: 0;
	}
	/*--//end 20141107 iact--*/
	#footer{
		padding-bottom: 60px;
	}
}
