@charset 'utf-8';

/**
 * reset css
 */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
	vertical-align: baseline;
}

:focus {
	outline: 0;
}

body {
	color: black;
	background: #fff;
	line-height: 1;
}

ol, ul {
	list-style: none;
	line-height: 160%;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

caption, th, td {
	text-align: left;
	font-weight: normal;
}

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

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}

p {
	line-height: 150%;
}

a {
	color: #333;
}

a img {
	border: none;
}

body {
	text-align: center;
	font-size: 14px;
	font-family: 'ヒラギノ明朝 Pro W3','メイリオ','ＭＳ Ｐゴシック','Hiragino Mincho Pro','ＭＳ Ｐ明朝','MS PMincho',serif;
	font-family: serif;
	color: #000;
	margin: 20px 0;
}

#container {
	text-align: left;
	margin: 0 auto;
	width: 940px;
}

#header {
	float: left;
	width: 220px;
	margin: 0 20px 0 0;
}

body#home #header {
	float: none;
	width: auto;
	margin: 0 0 20px 0;
}

body#home #header ul {
	width: auto;
	margin: 0 -10px 40px 0;
}

body#home #header ul li a {
	float: left;
	width: 150px;
	margin: 0 24px 0 0;
	padding: 8px 10px;
}

body#home #contents {
	float: none;
	width: auto;
	margin: 0 0 30px 0;
}

body#home #header h1 a {
	background: url(/images/logo_home.png) no-repeat top left;
	width: 243px;
	padding: 318px 0 0 0;
}

#header h1 a {
	display: block;
	background: url(/images/logo.png) no-repeat top left;
	width: 160px;
	height: 0;
	padding: 209px 0 0 0;
	overflow: hidden;
	margin: 0 auto;
	margin-bottom: 30px;
}

#header ul {
	width: 120px;
	margin: 0 auto;
	text-align: center;
}

#header ul li a {
	display: block;
	text-align: center;
	padding: 8px 10px;
	margin: 0 0 20px 0;
	width: 100px;
	font-size: 14px;
	color: #000;
	text-decoration: none;
}

#header ul li.current a, 
#header ul li a:hover {
	display: block;
	background: #ddd;
	text-align: center;
	padding: 8px 10px;
	text-decoration: none;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	behavior: url(/js/ie-css3.htc);
}

#contents {
	float: left;
	width: 700px;
	margin: 0 0 30px 0;
}

.row {
	margin: 0 -20px 40px 0;
}

.span220 {
	margin: 0 20px 0 0;
	width: 220px;
	float: left;
}

.span340 {
	margin: 0 20px 0 0;
	width: 340px;
	float: left;
}

.products {
	text-align: center;
}

.products h3 {
	font-size: 16px;
	margin: 0 0 10px 0;
}

.products ul {
	font-size: 13px;
}

.products ul li {
	margin: 0 0 5px 0;
}

.breadcrumb {
	margin: 0 0 20px 0;
}

.breadcrumb ul {
	font-size: 11px;
}

.breadcrumb ul li {
	display: inline;
}

p.lead {
	font-size: 16px;
	line-height: 160%;
	text-align: justify;
	margin: 0 0 30px 0;
}

h2 {
	font-size: 22px;
	border-bottom: 1px solid #ddd;
	padding: 0 0 5px 0;
	margin: 0 0 20px 0;
}

dl.press {
	line-height: 160%;
	font-size: 12px;
}

dl.press dt {
	float: left;
	width: 90px;
}

dl.press dd {
	margin: 0 0 10px 90px;
}

dl.information {
	line-height: 160%;
	font-size: 13px;
}

dl.information dt {
	float: left;
	width: 80px;
}

dl.information dd {
	margin: 0 0 10px 100px;
}

.main {
	text-align: center;
	margin: 0 0 30px 0;
}

.main p {
	font-size: 14px;
	margin: 0 0 5px 0;
}

.main h2 {
	font-size: 32px;
	border: none;
	margin: 0 0 5px 0;
}

.main h3 {
	font-size: 18px;
	margin: 0 0 30px 0;
}

.main ul {
	font-size: 12px;
	line-height: 140%;
}

div.lead {
	margin-bottom: 40px;
}

div.lead p {
	text-align: center;
	font-size: 14px;
	line-height: 150%;
	margin: 0 0 10px 0;
}

.section {
	margin: 0 0 30px 0;
}

.section h3 {
	font-size: 18px;
	border: none;
	background: url(/images/rainbow.png) no-repeat top left;
	min-height: 29px;
	padding: 5px 0 0 45px;
}

.section p {
	margin: 0 0 20px 0;
	line-height: 160%;
}

.section dl {
	line-height: 150%;
}
.section dt {
	font-weight: bold;
}
.section dd {
	margin: 0 0 10px 0;
}

.section ul {
	list-style-type: square;
	line-height: 150%;
	margin: 0 0 0 20px;
}

.section ul li {
	margin: 0 0 10px 0;
}

.section ol {
	list-style-type: decimal;
	line-height: 150%;
	margin: 0 0 0 30px;
}

.section ol li {
	margin: 0 0 10px 0;
}

.section ol li strong {
	display: block;
	font-weight: bold;
	margin: 0 0 5px 0;
}

dl.spec {
	line-height: 150%;
	border-top: 1px solid #ddd;
	margin: 0 0 40px 0;
}

dl.spec dt {
	float: left;
	text-align: right;
	padding: 5px 0;
	width: 250px;
	margin: 0 10px 0 0;
}

dl.spec dd {
	padding: 5px 0;
	border-bottom: 1px solid #ddd;
}


#footer {
	border-top: 1px solid #ddd;
	padding: 10px 0 0 0;
}

#footer p {
	font-size: 12px;
	text-align: center;
	line-height: 150%;
	margin: 0 0 10px 0;
}

table.form {
	width: 100%;
	margin: 0 0 30px 0;
	border: 1px solid #ddd;
}

table.form th, 
table.form td {
	padding: 16px;
	vertical-align: middle;
	border: 1px solid #ddd;
}

table.form th {
	width: 130px;
	text-align: right;
	background: #efefef;
}

table.form th span {
	color: #ff0000;
}

table.form td {
	background: #fff;
}

ul.errors {
	list-style-type: none;
	color: #ff0000;
	margin: 0 0 20px 0;
	padding: 4px 6px;
	background: #ffdada;
	border: 2px solid #ff0000;
	font-size: 13px;
	line-height: 150%;
}

/**
 * form
 */
input[type=checkbox],input[type=radio]{
	cursor:pointer;
}

input,textarea,select {
	display:inline-block;
	height:18px;
	padding:4px;
	font-size:13px;
	line-height:18px;
	color:#333;
	border:1px solid #ccc;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	border-radius:3px;
}

input[type=checkbox],input[type=radio]{
	width:auto;
	height:auto;
	padding:0;
	margin:3px 0;
	*margin-top:0;
	line-height:normal;
	border:none;
}

input[type=file]{
	background-color:#ffffff;
	padding:initial;
	border:initial;
	line-height:initial;
	-webkit-box-shadow:none;
	-moz-box-shadow:none;
	box-shadow:none;
}

input[type=button],input[type=reset],input[type=submit]{
	width:auto;
	height:auto;
}

select,input[type=file]{height:27px;line-height:27px;*margin-top:4px;}
select[multiple]{height:inherit;}
textarea{height:auto;}
input,textarea{
	-webkit-transition:border linear 0.2s,box-shadow linear 0.2s;
	-moz-transition:border linear 0.2s,box-shadow linear 0.2s;
	-ms-transition:border linear 0.2s,box-shadow linear 0.2s;
	-o-transition:border linear 0.2s,box-shadow linear 0.2s;
	transition:border linear 0.2s,box-shadow linear 0.2s;
	-webkit-box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.1);
	-moz-box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.1);
	box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.1);
}

input:focus,textarea:focus{
	outline:0;border-color:rgba(82, 168, 236, 0.8);
	-webkit-box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.1),0 0 8px rgba(82, 168, 236, 0.6);
	-moz-box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.1),0 0 8px rgba(82, 168, 236, 0.6);
	box-shadow:inset 0 1px 3px rgba(0, 0, 0, 0.1),0 0 8px rgba(82, 168, 236, 0.6);
}

input[type=file]:focus,input[type=checkbox]:focus,select:focus{
	-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;outline:1px dotted #666;
}

.button {
	cursor:pointer;
	display:inline-block;
	background-color:#e6e6e6;
	background-repeat:no-repeat;
	background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), color-stop(25%, #ffffff), to(#e6e6e6));
	background-image:-webkit-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
	background-image:-moz-linear-gradient(top, #ffffff, #ffffff 25%, #e6e6e6);
	background-image:-ms-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
	background-image:-o-linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
	background-image:linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0);
	padding:5px 18px 6px;
	text-shadow:0 1px 1px rgba(255, 255, 255, 0.75);
	color:#333;
	font-size:13px;
	line-height:normal;
	border:1px solid #ccc;
	border-bottom-color:#bbb;
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
	border-radius:4px;
	-webkit-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2),0 1px 2px rgba(0, 0, 0, 0.05);
	-moz-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2),0 1px 2px rgba(0, 0, 0, 0.05);
	box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2),0 1px 2px rgba(0, 0, 0, 0.05);
	-webkit-transition:0.1s linear all;
	-moz-transition:0.1s linear all;
	-ms-transition:0.1s linear all;
	-o-transition:0.1s linear all;
	transition:0.1s linear all;
	height: auto;
	text-decoration: none;
}

.button:hover{background-position:0 -15px;color:#333;text-decoration:none;}
.button:focus{outline:1px dotted #666;}

.button.small {
	font-size: 10px;
	padding:3px 10px 3px;
}