@charset "utf-8";

/*---------------------------------------
    リセットCSS（編集不要）
----------------------------------------*/
html{overflow-y:scroll;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td{margin:0;padding:0;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;}table{border-collapse:collapse;border-spacing:0;}caption,th{text-align:left;}q:before,q:after{content:'';}object,embed{vertical-align:top;}hr,legend{display:none;}h1,h2,h3,h4,h5,h6,small{font-size:100%;}img,abbr,acronym,fieldset{border:0;}ul li{list-style-type:none;}a,label{cursor:pointer;}img{vertical-align:bottom;margin:0;padding:0;}
a img{vertical-align:bottom;}


/*--------------------------------
    共通
---------------------------------*/

/*  clearfix
----------------------------------------*/
#footer .inner:after,
#content:after,
#nav_global .nav_global_sub ul li:after,
#nav_global .nav_global_sub ul:after,
#nav_global:after {
	content: "."; display: block; visibility: hidden; height: 0.1px; font-size: 0.1em; line-height: 0; clear: both;
}

/*  背景画像
----------------------------------------*/
.pagetop a,
#nav_side li a,
#nav_global > li > a,
#nav_utility li a,
#form_site_search span {
	display:block;
	height:0;
	overflow:hidden;
	background:no-repeat 0 0;
}

/*  ボックス
----------------------------------------*/

*+html {
	overflow-x:auto !important;
}

body {
	background:#f3f2e8;
	font-size:76%;
	min-width:970px;
}
body.sp {
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}
#footer .inner,
#content,
#header .inner {
	position:relative;
	width:960px;
	margin:auto;
	padding:0 5px;
}

/*  リンク ロールオーバー
----------------------------------------*/
#nav_side li a:hover,
#form_site_search .btn:hover,
#nav_utility li a:hover,
img.hover {
	opacity:.6;
	filter: alpha(opacity=60); /* ie 6 7 */
	-ms-filter: "alpha(opacity=60)"; /* ie 8 */
	zoom:1;
}
#footer .pagetop:hover {
	top:-30px;
	border-bottom:solid 2px #E62D2D;
}
#nav_utility li.global a:hover {
	border-top:solid 2px #E62D2D;
	opacity:1;
	filter: alpha(opacity=100); /* ie 6 7 */
	-ms-filter: "alpha(opacity=100)"; /* ie 8 */
}
#header #logo img.hover {
	filter: none; /* ie 6 7 */
	-ms-filter: none; /* ie 8 */
}

/*--------------------------------
    ヘッダー
---------------------------------*/
#header {
	padding-top:58px;
	border:solid 4px #e62d2d;
	border-left:none;
	border-right:none;
	background:url(/img/bg-header.png) repeat-x 0 0 #fff;
	color:#2c2c2c;
}
#header .inner {
	position:relative;
	max-width:960px;
	margin:auto;
}

#header #logo {
	position:absolute;
	top:-38px;
	left:25px;
	width:58px;
}
#header #logo a {
	display:block;
	margin:auto;
}
#header #logo img {
	width:100%;
}

/*  グローバルメニュー
----------------------------------------*/
#nav_global {
	margin-left:109px;
	border-right:solid 1px #e5e5e5;
}
#nav_global > li {
	float:left;
	width:20%;
}
#nav_global > li > a {
	padding-top:52px;
	border-left:solid 1px #e5e5e5;
	background-image:url(/img/btn-menu_header_off.png);
}
#nav_global > li:hover > a {
	background-color:#e60012;
	background-image:url(/img/btn-menu_header_on.png);
}
#nav_global > li.products > a {
	background-position:center 9px;
}
#nav_global > li.medical > a {
	background-position:center -51px;
}
#nav_global > li.corporate > a {
	background-position:center -111px;
}
#nav_global > li.ir > a {
	background-position:center -171px;
}
#nav_global > li.fun > a {
	background-position:center -231px;
}

#nav_global .nav_global_sub {
	display:none;
	position:absolute;
	top:52px;
	left:0;
	z-index:50001;
	width:100%;
}
#nav_global > li:hover .nav_global_sub {
	display:block;
}
#nav_global .nav_global_sub ul {
	margin:0 5px;
	padding:20px;
	border:solid 4px #e62d2d;
	background:#fff;
}
#nav_global .nav_global_sub ul li {
	float:left;
	width:25%;
}
#nav_global .nav_global_sub span {
	display:block;
	margin-bottom:8px;
	padding:4px 10px;
	border-right:solid 6px #fff;
	font-weight:bold;
}
#nav_global .nav_global_sub span ~ span {
	margin-top:18px;
}
#nav_global .nav_global_sub span.nostrum {
	background:#bfbfbf;
}
#nav_global .nav_global_sub span.general {
	background:#e8e8e8;
}
#nav_global .nav_global_sub ul li dl {
	padding:0 10px;
	border-left:solid 1px #e5e5e5;
}
#nav_global .nav_global_sub ul li dl.first {
	padding-left:0;
	border-left:none;
}
#nav_global .nav_global_sub ul li dl dt,
#nav_global .nav_global_sub ul li dl dd a {
	color:#555;
}
#nav_global .nav_global_sub ul li dl dt {
	margin-top:18px;
	font-weight:bold;
}
#nav_global .nav_global_sub ul li dl dt {
	line-height:20px;
}
#nav_global .nav_global_sub ul li dl dt:before {
	content:"";
	display:inline-block;
	width:.75em;
	height:.75em;
	margin-right:2px;
	background:#555;
}
#nav_global .nav_global_sub ul li dl dt:first-child {
	margin-top:0;
}
#nav_global .nav_global_sub ul li dl dd {
	margin-top:3px;
	margin-left:1em;
}
#nav_global .nav_global_sub ul li dl dd a {
	text-decoration:none;
}
#nav_global .nav_global_sub ul li dl dd a:hover {
	color:#e60012;
	text-decoration:underline;
}

#nav_global > li.menu > a {
	display:none;
}

/*  一番上のメニュー
----------------------------------------*/
#nav_utility {
	position:absolute;
	top:-58px;
	right:5px;
	width:300px;
	height:20px;
	text-align:right;
}
#nav_utility li {
	display:inline-block;
	float:none;
	width:auto;
	vertical-align:top;
}
#nav_utility li a {
	position:relative;
	margin-right:10px;
	padding-top:20px;
	background-image:url(/img/txt-utility.gif);
	color:#2c2c2c;
	font-size:92%;
	text-decoration:none;
}
#nav_utility li.home a {
	width:38px;
	background-position:0 0;
}
#nav_utility li.sitemap a {
	width:65px;
	background-position:-48px 0;
}
#nav_utility li.contact a {
	width:69px;
	background-position:-123px 0;
}
#nav_utility li.global a {
	width:69px;
	margin-right:0;
	background-image:url(/img/btn-grobal.gif);
}

/*  サイト内検索
----------------------------------------*/
#form_site_search {
	position:absolute;
	top:-27px;
	right:5px;
	overflow:hidden;
}
#form_site_search * {
	display:inline-block;
	vertical-align:bottom;
}
#form_site_search span {
	display:inline-block;
	width:61px;
	padding-top:18px;
	background-image:url(/img/txt-site_search.png);
}
#form_site_search #site_search {
	width:131px;
	height:16px;
	line-height:16px;
	margin-right:-.4em;
	border:solid 1px #d6d6d6;
}
#form_site_search .btn {
	width:39px;
	height:18px;
	border:none;
	background:url(/img/btn-search.png) no-repeat;
	text-indent:100%;
	cursor:pointer;
}

#utility .close {
	display:none;
}


/*--------------------------------
    content
---------------------------------*/
#content a {
	color:#0088dd;
}
#content a:hover {
	color:#0088dd;
	text-decoration:none;
}

/*  左カラム
----------------------------------------*/
#sidebar {
	float:left;
	width:23.44%;
}

/*  左メニュー
----------------------------------------*/
#nav_side li {
	margin-bottom:6px;
	background:url(/img/bg-menu_side.png) repeat-x right 1px #fbfbfb;
}
#nav_side li a {
	padding-top:44px;
	border:solid 1px #ccc;
	background-image:url(/img/txt-menu_side.png);
}
#nav_side li.corporate a {
	background-position:center 14px;
}
#nav_side li.recruit a {
	background-position:center -38px;
}
#nav_side li.medical a {
	background-position:center -91px;
}
#nav_side li.ir a {
	background-position:center -143px;
}
#nav_side li.products a {
	background-position:center -195px;
}
#nav_side li.step a {
	background-position:center -248px;
}
#nav_side li.auth a {
	background-position:center -300px;
}

/*  バナー
----------------------------------------*/
#banner {
	margin-top:18px;
	padding-top:18px;
	border-top:solid 1px #c2c2ba;
}
#banner li {
	margin-bottom:6px;
	border:solid 1px #ccc;
	background:#fff;
}
#banner li a {
	display:block;
}
#banner li a img {
	width:100%;
}


/*--------------------------------
    フッター
---------------------------------*/
#footer {
	margin-top:26px;
	border-top:solid 4px #e62d2d;
	border-bottom:solid 1px #3d3d3d;
	background:#333;
}
#footer .inner {
	padding-top:20px;
	padding-bottom:32px;
}
#footer .inner,
#footer .inner a {
	color:#bdbdbd;
}

#footer .pagetop {
	position:absolute;
	top:-28px;
	right:5px;
}
#footer .pagetop a {
	width:78px;
	padding-top:24px;
	background-image:url(/img/btn-pagetop.png);
	outline:none;
}

#nav_footer {
	float:left;
}
#nav_footer li {
	display:inline-block;
	margin-left:10px;
	padding-left:10px;
	border-left:solid 1px #555;
}
#nav_footer li.guide {
	margin-left:0;
	padding-left:0;
	border-left:none;
}
#nav_footer li a {
	text-decoration:none;
}
#nav_footer li a:hover {
	text-decoration:underline;
}

#footer .txt {
	float:right;
	max-width:60%;
	padding-bottom:90px;
	background:url(/img/logo-taikouyakuhin_footer.gif) no-repeat right bottom;
	text-align:right;
}
#law {
	margin-top:8px;
	color:#7d7d7d;
}