@charset "UTF-8";

/*
	リセット部分ベース
	Eric Meyer					:: http://ericmeyer.com
	HTML5 Doctor				:: http://html5doctor.com
	and the HTML5 Boilerplate	:: http://html5boilerplate.com
	
	その他
	
	
-------------------------------------------------------------------------------*/

/* リセット
-------------------------------------------------------------------------------*/

html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}									

#main div.productsBox { background: url(../03products/img/bg.gif); }

article, aside, figure, footer, header, hgroup, nav, section {display: block;}

/* Responsive images and other embedded objects
   Note: keeping IMG here will cause problems if you're using foreground images as sprites.
   If this default setting for images is causing issues, you might want to replace it with a .responsive class instead. */
img,
object,
embed {max-width: 100%;}

/* force a vertical scrollbar to prevent a jumpy page */
html {overflow-y: scroll;}

/* we use a lot of ULs that aren't bulleted. 
	don't forget to restore the bullets within content. */
ul {list-style: none;}

blockquote, q {quotes: none;}

blockquote:before,
blockquote:after,
q:before,
q:after {content: ''; content: none;}

a {margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent;}

del {text-decoration: line-through;}

abbr[title], dfn[title] {border-bottom: 1px dotted #000; cursor: help;}

/* tables still need cellspacing="0" in the markup */
table {border-collapse: collapse; border-spacing: 0;}
th {font-weight: bold; vertical-align: bottom;}
td {font-weight: normal; vertical-align: top;}

hr {display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0;}

input, select {vertical-align: middle;}

pre {
	white-space: pre; /* CSS2 */
	white-space: pre-wrap; /* CSS 2.1 */
	white-space: pre-line; /* CSS 3 (and 2.1 as well, actually) */
	word-wrap: break-word; /* IE */
}

input[type="radio"] {vertical-align: text-bottom;}
input[type="checkbox"] {vertical-align: bottom; *vertical-align: baseline;}
.ie6 input {vertical-align: text-bottom;}

select, input, textarea {font: 99% sans-serif;}

table {font-size: inherit; font: 100%;}
 
/* Accessible focus treatment
	people.opera.com/patrickl/experiments/keyboard/test */
a:hover, a:active {outline: none;}

small {font-size: 85%;}

strong, th {font-weight: bold;}

td, td img {vertical-align: top;} 

/* Make sure sup and sub don't screw with your line-heights
	gist.github.com/413930 */
sub, sup {font-size: 75%; line-height: 0; position: relative;}
sup {top: -0.5em;}
sub {bottom: -0.25em;}

/* standardize any monospaced elements */
pre, code, kbd, samp {font-family: monospace, sans-serif;}

/* hand cursor on clickable elements */
.clickable,
label, 
input[type=button], 
input[type=submit], 
button {cursor: pointer;}

/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea {margin: 0;}

/* make buttons play nice in IE */
button {width: auto; overflow: visible;}
 
/* scale images in IE7 more attractively */
.ie7 img {-ms-interpolation-mode: bicubic;}

/* prevent BG image flicker upon hover */
.ie6 html {filter: expression(document.execCommand("BackgroundImageCache", false, true));}

/* let's clear some floats */
.clearfix:before, .clearfix:after, figure:before { content: "\0020"; display: block; height: 0; overflow: hidden; }  
.clearfix:after { clear: both; }  
.clearfix { zoom: 1; }  

/*ie6で画像の下に隙間をなくす*/
img { vertical-align:bottom; }

/* floatとclearfix
-------------------------------------------------------------------------------*/
.floatLeft{ float:left; }
.floatRight{ float:right; }

div{
	*display:inline-block;
}


div:after, .clearfix:after {
	content:"";
	clear:both;
	display:block;
	height:0;
	visibility:hidden;
}

/*\*/
* html div{ height:0; }
div{ display:block; }
/**/


/* 共通部分（ボディ要素、リンク）
-------------------------------------------------------------------------------*/

html, body {
	font-family: Myriad Pro, Arial, Helvetica,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS P Gothic","ＭＳ Ｐゴシック",sans-serif;
	font-size: 13px;
	color: #000;
	line-height: 0;
	/* [disabled]margin-bottom: 15px; */
}

a {
	color: #031d86;
/*color: #1b8be0;*/
	text-decoration: none;
}
a:link {color: #031d86;}
a:visited {color: #4c5888;}
a:hover {color: #009FA8;}

.bold { font-weight: bold; }

address {
    display: inline;
    font-style: italic;
}

figcaption {
	line-height: 1.3;
}

/* 調整
-------------------------------------------------------------------------------*/

.mb5 { margin-bottom: 5px; }
.mb10 { margin-bottom: 10px; }
.mb15 { margin-bottom: 15px; }
.mb20 { margin-bottom: 20px; }
.mb25 { margin-bottom: 25px; }
.mb30 { margin-bottom: 30px; }
.mb35 { margin-bottom: 35px; }
.mb40 { margin-bottom: 40px; }
.mb45 { margin-bottom: 45px; }
.mb50 { margin-bottom: 50px; }
.mb55 { margin-bottom: 55px; }
.mb60 { margin-bottom: 60px; }

.mt30 { margin-top: 30px; }

.mr10 { margin-right: 10px; }
.mr20 { margin-right: 20px; }
.mr30 { margin-right: 30px; }
.mr39 { margin-right: 39px; }
.mr50 { margin-right: 50px; }
.mr51 { margin-right: 51px; }
.mr52 { margin-right: 52px; }
.mr78 { margin-right: 78px; }

.ml10 { margin-left: 10px; }
.ml20 { margin-left: 20px; }
.ml37 { margin-left: 37px; }

.pr10 { padding-right: 10px; }
.pr20 { padding-right: 20px; }

.w290 { width: 290px; }

.txtr { text-align:right; }
.txtc { text-align:center; }


/* 共通部分レイアウト
-------------------------------------------------------------------------------*/

body {
	width: 100%;
	background: url(../img/bg.gif) no-repeat top center;
}

.container {
	width: 1002px;
	margin: 0 auto;
	background: url(../img/bg.jpg) no-repeat center top;
}

.topicPath:after {
	display: block;
	content: "";
	clear: both;
	height: 0;
}

.sidebar1 {
	float: right;
	width: 253px;
	margin-right:16px;
}
.content {
	float: right;
	width: 694px;
	margin-right:17px;
}

/* パンくず
-------------------------------------------------------------------------------*/

.topicPath {
	position: absolute;
	width:400px;
	left: 24px;
	top: 177px;
	line-height: 1;
}

.topicPath p {
	/* [disabled]line-height: 1; */
	margin: 0 3px 0 0;
	font-size: 10px;
	float: left;
	padding-top: 2px;
	}

.topicPath p a {
	margin: 0 3px 0 0;
	padding: 0 15px 0 0;
	background: url(../img/topicPathArrow.gif) no-repeat right center;
}


#container header a .CLogo { margin-left: 42px; }

#container header nav {
	width: 495px;
	position: absolute;
	top: 18px;
	left: 510px;
}

#container header nav ul li { float: left; }

#container header {
	position: relative;
	height: 196px;
}

#container header .CTitle {
	position: absolute;
	top: 81px;
	right: 0px;
	background-image: url(Q&A);
}

#container footer {
	background: url(../img/footerBg.gif);
	height: 95px;
	width: 1002px;
	clear: both;
	position: relative;
}

#container .content .cBg1 {
	background: url(../img/contentsBg.jpg) no-repeat center top;
	padding: 25px 25px 25px 26px;
	border: 1px solid #CCC;
}

#container .content h1 {
	margin-top: 4px;
	margin-bottom: 17px;
}

#container .sidebar1 .sideNavi { margin-bottom: 30px; }

#container .sidebar1 .sideCont { background: url(../img/sideContBg.gif) center bottom; }

#container .sidebar1 .sideCont .sideContBanner { padding: 4px 8px 5px; }



#container footer a .pageTop {
	position: absolute;
	top: 33px;
	right: 20px;
	height: 17px;
	width: 160px;
}

#container footer hr {
	border-top: 1px dotted #000;
	position: absolute;
	left: 22px;
	top: 55px;
	height: 1px;
	width: 960px;
	margin: 0px;
	padding: 0px;
}

#container footer .miscLink {
	line-height: 1.2;
	width: 350px;
	position: absolute;
	left: 68px;
	top: 63px;
}

#container footer .miscLink li {
	float: left;
	font-size: 10px;
	padding-left: 4px;
	border-left: 1px solid #000;
	padding-right: 4px;
}

#container footer .copyright {
	font-size: 10px;
	line-height: 1;
	width: 350px;
	position: absolute;
	top: 63px;
	right: 20px;
	text-align: right;
}

#accordion div ul {
	padding: 6px 6px 6px 45px;
	line-height: 1.4;
	vertical-align:middle;
}

#accordion div ul li a {
	padding: 4px 0px 2px 18px;
}

#accordion div ul li a:hover,
#accordion div ul li a:active { background: url(../img/sideNaviBt.gif) no-repeat 0px center; }

#accordion { background: url(../img/sideContBg.gif) repeat-y; }

#container .content p {
	font-size: 14px;
	line-height: 1.6;
}

.indexProductsList ul {
	line-height: 1.3;
	padding: 8px;
	margin-top: 5px;
	list-style: outside;
	margin-left: 16px;
}

.indexProductsList ul li { padding-left: 0px; }

.indexProductsList {
	width: 231px;
	/* [disabled]display: inline-block; */
	float: left;
}

#container .content section .productsHr { border-top: 3px solid #3C6B9F; }

#container .content .productsMain {
	background: url(../img/contentsBg.jpg) no-repeat center top;
	padding: 25px 26px 25px 25px;
	border: 1px solid #CCC;
	margin-bottom: 30px;
}

#container .content .productsTitle h1 {
	height: 69px;
	width: 694px;
	margin-bottom: 0px;
}

#container .content .productsTitle table {
	text-align: center;
	width: 643px;
	margin-left: 27px;
	margin-bottom: 25px;
}

#container .content .productsTitle table tr th {
	line-height: 1;
	font-weight: bold;
	text-align: left;
	padding: 10px 4px 10px 10px;
	border-top: 2px solid #2641b0;
	border-bottom: 2px solid #2641b0;
	vertical-align: top;
}

#container .content .productsTitle table tr th span {
	font-size: 10px;
	line-height: 1;
	font-weight: normal;
	padding-top: 10px;
	display: inline-block;
}

#container .content .productsTitle table tr td {
	line-height: 1;
	font-weight: normal;
	text-align: left;
	padding: 10px 4px 10px 10px;
	border-bottom: 1px solid #555;
	vertical-align: top;
}

#container .content .cBg1 .companyBdr {
	border-top: 1px solid #CCC;
	margin-top: 20px;
	margin-bottom: 20px;
}

#container .content .cBg1 .outline,
#container .content .cBg1 .history,
#container .content .recruit table,
#container .content .recruit .inquiry {
	width: 640px;
	line-height: 1;
}
#container .content .recruit .inquiry {
	width: 640px;
	line-height: 1;
	border-top: 1px solid #CCC;
	margin-top: 25px;
}

#container .content .cBg1 .facilities {
	width: 438px;
	line-height: 1;
	float: left;
}

#container .content .cBg1 .outline tr th {
	font-weight: bold;
	text-align: right;
	padding: 10px 30px 10px 20px;
	border-bottom: 1px solid #CCC;
	vertical-align: top;
}
#container .content .recruit table tr th {
	font-weight: bold;
	text-align: right;
	padding: 10px 30px 10px 20px;
	border-bottom: 1px solid #CCC;
	vertical-align: top;
	width: 70px;
	line-height: 1.6;
}
#container .content .recruit .inquiry tr th,
 #container .content .recruit .inquiry tbody tr th{
	font-weight: bold;
	text-align: right;
	padding: 10px 30px 10px 20px;
	border-bottom: 1px solid #CCC;
	vertical-align: top;
	line-height: 1.6;
	width: 120px;
}

#container .content .cBg1 .history tr th {
	font-weight: bold;
	text-align: right;
	padding: 5px 30px 5px 20px;
	border-bottom: 1px solid #CCC;
	vertical-align: top;
	width: 60px;
}
#container .content .cBg1 .facilities tr th {
	font-weight: bold;
	text-align: center;
	padding: 7px 30px 5px 20px;
	border-bottom: 2px solid #3B6A9D;
	border-top: 2px solid #3B6A9D;
}

#container .content .cBg1 .outline tr td {
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
	border-bottom: 1px solid #CCC;
	line-height: 1.6;
}
#container .content .cBg1 .history tr td {
	padding: 5px 10px;
	border-bottom: 1px solid #CCC;
	line-height: 1.4;
}
#container .content .recruit table tr td {
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
	border-bottom: 1px solid #CCC;
	line-height: 1.6;
	width:500px;
	vertical-align: top;
}
#container .content .recruit .inquiry tr td,
#container .content .recruit .inquiry tdoby tr td {
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
	border-bottom: 1px solid #CCC;
	line-height: 1.6;
	vertical-align: top;
	border-left: 1px dotted #CCC;
}

#container .content .cBg1 .facilities tr td {
	padding: 5px 10px;
	border-bottom: 1px solid #CCC;
	line-height: 1.4;
}
#container .content .cBg1 .outline tr .borderNone,
#container .content .cBg1 .history tr .borderNone,
#container .content .recruit table tr .borderNone { border-style: none; }

#container .content .cBg1 .outline tr td span {
	font-weight: bold;
	/* [disabled]text-decoration: underline; */
}

#container .content .cBg1 ol {
	line-height: 1.6;
	margin-top: 35px;
	margin-left: 35px;
	margin-right: 35px;
}

#container .content .cBg1 ol li { margin-bottom: 15px; }

#container .content .facilitiesSec h2 { margin-bottom: 15px; }

#container .content .facilitiesSec .txtc figcaption {
	line-height: 1;
	margin-top: 8px;
	font-size: 11px;
	font-weight: bold;
}

#container .content .facilitiesSec .facilitiesImgR {
	width: 177px;
	float: right;
}

.figBdr {
	border-top: 1px solid #CCC;
	border-right: 2px solid #999;
	border-bottom: 3px solid #666;
	border-left: 1px solid #CCC;
}

#container .content .recruit h2 { margin-bottom: 20px; }

#container .content .recruit p {
	line-height: 1.6;
	margin-right: 20px;
	margin-left: 20px;
}

span.red { color: #F00; }


#container .content .recruit .inquiry tr td p {
	margin-left: 0px;
	margin-top: 5px;
}

hr.dotHr { border-top: 1px dotted #CCC; }

#container .content .productsTitle .productsMain .productsUl {
	margin-left: 25px;
	line-height: 1.6;
	list-style: disc;
}

#container .content .cBg1 .ppH2 {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 29px;
	margin-top: 20px;
}

#container .content .cBg1 .ppH3 {
	font-size: 14px;
	margin-bottom: 10px;
}

#container .content .cBg1 .pp { padding-left: 20px; }

#container .content .cBg1 .ppOl {
	padding-left: 20px;
	padding-top: 0px;
	margin-top: 10px;
	margin-bottom: 35px;
}

#container .content .cBg1 .ppOl li {
	line-height: 1;
	margin-bottom: 10px;
}

/*      */

#container .content .cBg1 .sitemap {
	width: 640px;
	line-height: 1;
}

#container .content .cBg1 .sitemap tr th {
	font-weight: bold;
	text-align: left;
	padding: 15px 30px 10px 20px;
	border-bottom: 1px solid #CCC;
	vertical-align: top;
	width: 100px;
}

#container .content .cBg1 .sitemap tr th p {
	background: url(../../misc/img/arrow_sitemap.gif) no-repeat left top;
	padding-left: 15px;
	line-height: 1;
}

#container .content .cBg1 .sitemap tr td {
	padding-top: 15px;
	padding-bottom: 10px;
	padding-left: 10px;
	border-bottom: 1px solid #CCC;
	line-height: 1.6;
}

#container .content .cBg1 .sitemap tr .borderNone { border-style: none; }

#container .content .cBg1 .sitemap tr td span {
	font-weight: bold;
	/* [disabled]text-decoration: underline; */
}

#container .content .productsTitle .specH3 {
	margin-left: 27px;
	line-height: 1;
	font-weight: bold;
	margin-bottom: 5px;
	font-size: 14px;
}

#container .content .cBg1.recruit form { line-height: 2; }

#container .sidebar1 .sideNavi h3 img { vertical-align: baseline; }

header,
#container .sidebar1,
footer {display:none;}

#container .content {margin:0 auto; padding:none; float:none; width:679px;}

#container {
	background-image: none;
	width:auto;
}

#container .content .ISOMark {
		float:right;
}
#container .content .ISOMark figure {
		display:inline-block;
		padding-left:7px;
}
#container .content .ISOMark figure figcaption {
		display:none;
}

#container .content .ISOMark2 figure {
	margin-right: 40px !important;
}
	@-moz-document url-prefix() {
		#container .content .ISOMark2 figure {
			margin-right: 28px !important;
		}
	}

	
#container .content .ISOMark2 figure:last-child,
#container .content .ISOMark2 figure.lastChild {
		margin-right: 0 !important;
}

#container .content .ISOMark2 figure figcaption {
	font-weight: 600;
	padding-top:7px;
}
