@charset "utf-8";
/* CSS Document */

/*====================================================================

common.css

======================================================================

01.format
02.body
03.header
04.nav
05.main
06.footer
07.other
08.index
09.level2

=====================================================================*/


/*--------------------------------------------------------------------/
	01.format
/--------------------------------------------------------------------*/

/* html5reset-1.6.1.css */
html, 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, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	border-collapse: collapse; /* added */
	-webkit-text-size-adjust: none; /* added */
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {display: block;}

nav ul {list-style: none;}
ul li {list-style: none;} /* added */

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;
}

/* change colours to suit your needs */
ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}

/* change colours to suit your needs */
mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}

del {text-decoration:  line-through;}

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

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

/* change border colour to suit your needs */
hr {
	display: block;
	height: 1px;
	border: 0;  
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}

input, select {vertical-align: middle;}



/*--------------------------------------------------------------------/
	02.body
/--------------------------------------------------------------------*/
body {
	background: url(img/common_footer_bg.gif) repeat-x 0 100%; /* added */
	line-height: 1;
	font-size: 12px;
	font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'Meiryo', 'メイリオ', 'ＭＳ Ｐゴシック', 'ＭＳ ゴシック', Osaka, Osaka-等幅, sans-serif;
	text-align: center;
	color: #2e2d2d;
}

/* a
----------------------------------------------------------------*/
a { outline:none;}

a:link,
a:visited,
a:hover,
a:active{
	color:#e32e2b;
	outline:none;
}

a:link   {text-decoration: underline;}
a:visited{text-decoration: underline;}
a:hover  {text-decoration: none;}
a:active {text-decoration: none;}


/* wrapper
----------------------------------------------------------------*/
div#wrapper,
div#main,
header,
nav#global,
footer {
	margin-left: auto;
	margin-right: auto;
	width: 880px;
	text-align: left;
}

div#wrapper { background: url(img/common_wrapper_bg.gif) repeat-y 0 0;}


/*--------------------------------------------------------------------/
	03.header
/--------------------------------------------------------------------*/
header {
	margin-bottom: 10px;
	background: url(img/common_header_bg.gif) no-repeat;
	height: 90px;
}
header h1 {
	display: inline;	
	color: #9f9d9d;
	line-height: 1.3;
	font-size: 10px;
	font-weight: normal;
}

/* primary
-----------------------------------------------------------------*/
header div#primary {
	float: right;
	padding-top: 30px;
	padding-right: 15px;
	width: 550px;
}
header div#primary a {
	float: right;
	margin-top: -6px;
}

/* logo
-----------------------------------------------------------------*/
header div#logo a {
	display: block;
	width: 280px;
	height: 80px;
	overflow: hidden;
	text-indent: -9999px;
}

/*--------------------------------------------------------------------/
	04.nav global
/--------------------------------------------------------------------*/
nav#global {
	margin: 0 auto;
	width: 850px;
	height: 60px;
}
nav#global ul {
	height: 60px;
	background: url(img/common_g_navi.gif) no-repeat;
}
nav#global ul li { float: left;}
nav#global ul li a {
	position: relative;
	background :url(img/common_g_navi.gif) no-repeat scroll top left;
	display: block;
	width: 170px;
	height: 60px;
	text-indent:-9999px;
}
nav#global ul li a#gn1 {background-position: 0px 0px;}
nav#global ul li a#gn2 {background-position: -170px 0px;}
nav#global ul li a#gn3 {background-position: -340px 0px;}
nav#global ul li a#gn4 {background-position: -510px 0px;}
nav#global ul li a#gn5 {background-position: -680px 0px;}
nav#global ul li a span {
	background: url(img/common_g_navi.gif) no-repeat scroll bottom left;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	z-index: 100;
}

/* hover */
nav#global ul li a span:hover {cursor: pointer;}
nav#global ul li a#gn1 span {background-position: 0px -60px;}
nav#global ul li a#gn2 span {background-position: -170px -60px;}
nav#global ul li a#gn3 span {background-position: -340px -60px;}
nav#global ul li a#gn4 span {background-position: -510px -60px;}
nav#global ul li a#gn5 span {background-position: -680px -60px;}

/* act */
nav#global ul#on1 li a#gn1 {background-position: 0px -60px;}
nav#global ul#on2 li a#gn2 {background-position: -170px -60px;}
nav#global ul#on3 li a#gn3 {background-position: -340px -60px;}
nav#global ul#on4 li a#gn4 {background-position: -510px -60px;}
nav#global ul#on5 li a#gn5 {background-position: -680px -60px;}


/*--------------------------------------------------------------------/
	05.main
/--------------------------------------------------------------------*/
div#main {
	margin-left: auto;
	margin-right: auto;
	padding-top: 15px;
	background: url(img/common_main_bg.gif) repeat-y;
	zoom:1;
}
div#main:after {
	content: ".";
	display: block;
	visibility: hidden;
	height: 0.1px;
	font-size: 0.1em;
	line-height: 0;
	clear: both;
}


/*--------------------------------------------------------------------/
	contents
/--------------------------------------------------------------------*/
div#contents {
	float: right;
	width: 615px;
}

/*--------------------------------------------------------------------/
	aside
/--------------------------------------------------------------------*/
aside {
	float: left;
	width: 265px;
}

/* side_bnr
---------------------------------------------------*/
aside ul#side_bnr {
	margin: 0 auto;
	width: 235px;
}
aside ul#side_bnr li {
	padding-bottom: 15px;
}

/* article
---------------------------------------------------*/
aside article {
	margin: 0 auto 15px;
	padding-bottom: 20px;
	background: #ffffff;
	border: 5px solid #ededed;
	width: 225px;
}
aside article img {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/* contact */
aside article#aside_contact h3 img {
	margin: 5px auto 13px;
}
aside article#aside_contact p {
	padding-bottom: 10px;
	margin: 0 15px 15px 20px;
	border-bottom: 1px solid #e0dede;
	color: #246c95;
	line-height: 1.8;
}
aside article#aside_contact a {
	margin-top: 13px;
	margin-left: 20px;
}

/* company */
aside article#aside_company h3 {
	margin-bottom: 15px;
}
aside article#aside_company p {
	padding: 0 20px;
	line-height: 2;
}


/*--------------------------------------------------------------------/
	06.footer
/--------------------------------------------------------------------*/
footer {
	margin-top: 15px;
	height: 90px;
}

/* list
--------------------------------------------------------------------*/
footer ul {
	float: left;
	margin-left: 10px;
}
footer ul li {
	display: block;
	float: left;
	padding-left: 10px;
	padding-right: 10px;
	border-right: 1px solid #d4d4d4;
}
footer ul li.nb { border:none;}

footer ul a:link,
footer ul a:visited,
footer ul a:hover,
footer ul a:active {
	color: #171717;
	text-decoration: none;
}
footer ul a:hover {
	color: #171717;
	text-decoration: underline;
}

/* pagetop
--------------------------------------------------------------------*/
footer div#pagetop {
	width: 870px;
	margin-bottom: 28px;
}
footer div#pagetop img {
	float: right;
}
footer div#pagetop:after {
	content: ".";
	display: block;
	visibility: hidden;
	height: 0.1px;
	font-size: 0.1em;
	line-height: 0;
	clear: both;
}

/* p
--------------------------------------------------------------------*/
footer p {
	clear: both;
	padding-top: 20px;
	line-height: 1.3;
	color: #ffffff;
	text-align: center;
	font-size: 10px;
}


/*--------------------------------------------------------------------/
	07.others
/--------------------------------------------------------------------*/
.right {float:  right;}
.left {float: left;}
.center {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.clear {clear: both;}
.clearfix:after {
	content: ".";
	display: block;
	visibility: hidden;
	height: 0.1px;
	font-size: 0.1em;
	line-height: 0;
	clear: both;
}
.clearfix {zoom: 1;}
.hover a:hover img {
	opacity: 0.8;
	filter: alpha(opacity=80);
}
.ws-n {white-space: nowrap;}


/* txt
----------------------------------------------------------------*/
.txt_l {text-align: left;}
.txt_r {text-align: right;}
.txt_c {text-align: center;}

strong.st {font-weight: bold;}

/* size
----------------------------------------------------------------*/
.fs_s {
	font-size:  80%;
	line-height: 100%;
}
.fs_m {
	font-size: 100%;
	line-height: 120%;
}
.fs_l {
	font-size: 120%;
	line-height: 140%;
}
.msgoth-s {
	font-family: 'ＭＳ ゴシック',sans-serif;
	font-size: 10px;
}


/* letter spacing
----------------------------------------------------------------*/
.ls_s {letter-spacing: -1pt;}
.ls_m {letter-spacing: 0pt;}
.ls_l {letter-spacing: 1em;}


/* padding
----------------------------------------------------------------*/
.ps {padding: 5px;}
.ps_t {padding-top: 5px;}
.ps_b {padding-bottom: 5px;}
.ps_h {padding: 5px 0px;}
.ps_w {padding: 0px 5px;}

.pm {padding: 10px;}
.pm_t {padding-top: 10px;}
.pm_b {padding-bottom: 10px;}
.pm_h {padding: 10px 0px;}
.pm_w {padding: 0px 10px;}


/* margin
----------------------------------------------------------------*/
.ms {margin: 10px;}
.ms_t {margin-top: 10px;}
.ms_b {margin-bottom: 10px;}
.ms_l {margin-left: 10px;}
.ms_r {margin-right: 10px;}
.ms_h {margin: 10px 0px;}
.ms_w {margin: 0px 10px;}

.mm {margin: 15px;}
.mm_t {margin-top: 15px;}
.mm_b {margin-bottom: 15px;}
.mm_l {margin-left: 15px;}
.mm_r {margin-right: 15px;}
.mm_h {margin: 15px 0px;}
.mm_w {margin: 0px 15px;}

.ml {margin: 20px;}
.ml_t {margin-top: 20px;}
.ml_b {margin-bottom: 20px;}
.ml_l {margin-left: 20px;}
.ml_r {margin-right: 20px;}
.ml_h {margin: 20px 0px;}
.ml_w {margin: 0px 20px;}

.m_a {margin: 0px auto;}



/*--------------------------------------------------------------------/
	08.index
/--------------------------------------------------------------------*/

/* h2
----------------------------------------------------------------*/
div#top_h2 img{
	display: block;
}

/* news
----------------------------------------------------------------*/
article#news {
	margin-bottom: 15px;
	background: url(img/top_news_bg.gif) no-repeat 0 0;
	width: 600px;
	height: 230px;
	position: relative;
}
article#news h3 {
	float: left;
}
article#news div {
	margin-left: 155px;
	/margin-left: 10px;
	position: absolute;
	top: 5px;
	width: 440px;
	height: 220px;
	overflow: hidden;
	overflow-y: scroll;
}
article#news div table {
	width: 420px;
}
article#news div table th,
article#news div table td {
	padding: 18px 10px;
	border-bottom: 1px dotted #9ccff3;
	line-height: 1.4;
}
article#news div table th {
	width: 60px;
	color: #ea5348;
	font-weight: normal;
	font-family: Tahoma, Geneva, Arial, Helvetica, sans-serif;
	font-size: 11px;
}

/* top_bnr
----------------------------------------------------------------*/
ul#top_bnr {
	width: 598px;
}
ul#top_bnr:after {
	content: ".";
	display: block;
	visibility: hidden;
	height: 0.1px;
	font-size: 0.1em;
	line-height: 0;
	clear: both;
}
ul#top_bnr li { float:left;}


/*--------------------------------------------------------------------/
	09.level2
/--------------------------------------------------------------------*/

/* common elements
----------------------------------------------------------------*/

/* pagetitle */
div#page_title {
	width: 100%;
	height: 140px;
	background: url(img/common_h2_bg.jpg) no-repeat center;
}
div#page_title h2 {
	padding-left: 45px;
	padding-top: 55px;
	/padding-top: 45px;
	color: #ef2213;
	font-size: 36px;
}
div#page_title h2 span {
	padding-left: 15px;
	vertical-align: baseline;
	color: #07a9ed;
	font-size: 18px;
}


/* h3 h4 p
----------------------------------------------------------------*/
article.box h3 {
	padding-bottom: 22px;
	padding-top: 25px;
	padding-left: 30px;
	background:url(img/common_h3_bg.gif) no-repeat 0 50%;
	border-bottom: 1px solid #e2e2e2;
	color:#1165ad;
	line-height: 1;
	font-size: 23px;
}

article.box h4 {
	clear: both;
	padding: 17px 17px 13px;
	background: url(img/common_bg_02.gif);
	border-bottom: 1px solid #e2e2e2;
	border-top: 1px solid #e2e2e2;
	color:#d40707;
	line-height: 1;
	font-size: 16px;
}
article.box h4.nb { border-top: none;}

/*--------------------------------------------------------------------/
	article, section
/--------------------------------------------------------------------*/
article.box {
	margin-bottom: 20px;
	padding-bottom: 25px;
	border: 1px solid #e2e2e2;
	background: #ffffff;
	width: 598px;
	zoom: 1;
}
article.pb0 { padding-bottom: 0;}
section:after,
article:after {
	content: ".";
	display: block;
	visibility: hidden;
	height: 0.1px;
	font-size: 0.1em;
	line-height: 0;
	clear: both;
}

article.box p {
	padding: 25px 30px 0;
	line-height:1.6;
}
article.box p.pt0 { padding-top: 0;}

article.box p strong {
	border-bottom: 1px solid #e32e2b;
	line-height:2;
}

article.box iframe {
	margin-left: 15px;
	margin-bottom: 10px;
	margin-top: 15px;
	padding: 5px;
	border: 1px solid #dddddd;
}


/*--------------------------------------------------------------------/
	figure
/--------------------------------------------------------------------*/
figure.left {
	display:inline;
	margin-right: 20px;
}
figure.right {
	display:inline;
	margin-left: 20px;
	padding: 9px 9px 7px;
	background: url(img/common_bg_01.gif);
	border-left: 1px solid #e2e2e2;
	border-bottom: 1px solid #e2e2e2;
}

figure.border img {
}

figure.left figcaption {
	padding-top: 5px;
	text-align:center;
	line-height:1.5;
	font-size: 11px;
}


/*--------------------------------------------------------------------/
	ul
/--------------------------------------------------------------------*/
ul.normal {
	margin-top: 10px;
	margin-left: 35px;
}
ul.normal li {
	margin-bottom: 5px;
	padding-left: 17px;
	background: url(img/common_icon_01.gif) no-repeat 0 3px;
	line-height: 1.5;
}

/*--------------------------------------------------------------------/
	ol
/--------------------------------------------------------------------*/
ol.normal  {
	margin-left: 35px;
	margin-top: 10px;
	padding-right: 25px;
}
ol.normal  li {
	list-style: decimal outside;
	margin-left: 15px;
	margin-bottom: 10px;
}

/*--------------------------------------------------------------------/
	dl
/--------------------------------------------------------------------*/
dl.normal {
	margin-left: 5px;
}

dl.normal dt {
	margin-bottom: 7px;
	color: #333333;
	font-size: 13px;
	font-weight: bold;
}
dl.normal dd {
	margin-bottom: 15px;
	padding-bottom: 10px;
	padding-left: 5px;
	border-bottom: 1px dotted #aaaaaa;
}


/*--------------------------------------------------------------------/
	table
/--------------------------------------------------------------------*/
table.table1 {
	margin: 0 auto;
	width: 598px;
}
table.table1 th,
table.table1 td {
	border-bottom: 1px dotted #c4b695;
	vertical-align: top;
	text-align: left;
	line-height: 1.5;
}

table.table1 th {
	padding: 10px 0 10px 20px;
	color: #e32e2b;
	width: 130px;
}
table.table1 td {
	padding: 10px 20px 10px 0;
}

table.table1 .nb { border: none;}

/* table2 */
table.table2 {
	margin: 0 auto;
	width: 598px;
}
table.table2 th,
table.table2 td {
	padding: 10px 20px 10px 20px;
	border-bottom: 1px dotted #c4b695;
	vertical-align: top;
	text-align: left;
	line-height: 1.5;
}

table.table2 th {
	background: url(img/common_bg_01.gif);
	width: 130px;
	color: #0193d7;
}

/* table3 */
table.table3 {
	margin: 0 auto;
	width: 598px;
}
table.table3 th,
table.table3 td {
	padding: 10px 20px 10px 20px;
	border-bottom: 1px dotted #c4b695;
	vertical-align: top;
	text-align: left;
	line-height: 1.5;
}

table.table3 th {
	background: url(img/common_bg_03.gif);
	width: 130px;
	color: #333;
}


/*--------------------------------------------------------------------/
	business
/--------------------------------------------------------------------*/
article.business_box {
	margin-bottom: 25px;
	background: url(img/business_box_bg.jpg) no-repeat 0 0;
	width: 600px;
	height: 330px;
	color: #ffffff;
}
article.business_box h3 {
	padding: 30px 0 15px 35px;
	font-size: 22px;
	line-height: 1.2;
}
article.business_box p {
	padding-left: 35px;
	width: 320px;
	line-height: 1.6;
}
article.business_box p.list strong {
	font-size: 14px;
}
article.business_box p.list {
	padding-top: 28px;
	padding-left: 55px;
	width: 500px;
	line-height: 1.5;
}

/* h4 */
article.box h4 span { padding: 7px 75px;}
article.box h4 span#bs01 {
	background: url(img/business_img_01.gif) no-repeat 0 3px;
}
article.box h4 span#bs02 {
	background: url(img/business_img_02.gif) no-repeat 0 3px;
}
article.box h4 span#bs03 {
	background: url(img/business_img_03.gif) no-repeat 0 3px;
}
article.box h4 span#bs04 {
	background: url(img/business_img_04.gif) no-repeat 0 3px;
}

/*--------------------------------------------------------------------/
	tool
/--------------------------------------------------------------------*/
div.ktI-T2 {
	margin-bottom: 15px;
	width: 598px;
}
div.ktI-T2:after {
	content: ".";
	display: block;
	visibility: hidden;
	height: 0.1px;
	font-size: 0.1em;
	line-height: 0;
	clear: both;
}
div.ktI-T2 p strong {
	border: none;
	color: #0378f0;
	line-height: 2.5;
}


/*--------------------------------------------------------------------/
	
/--------------------------------------------------------------------*/




/*--------------------------------------------------------------------/
	contact
/--------------------------------------------------------------------*/
div#contact_box {
	margin: 13px auto 20px;
	padding-top: 100px;
	background: url(img/contact_box_bg.gif) no-repeat 0 0;
	width: 570px;
	height: 55px;
}
div#contact_box a { margin-left: 337px;}


article.contact table {
	margin: 20px auto 0;
	border-top: 1px solid #dddddd;
	width: 598px;
}
article.contact table th,
article.contact table td {
	border-bottom: 1px solid #dddddd;
	text-align: left;
	vertical-align: top;
	line-height: 1.4;
	font-weight: normal;
}
article.contact table th {
	padding: 10px 0 10px 15px;
	background: url(img/common_bg_01.gif);
	width: 140px;
}
article.contact table td {
	padding: 10px 15px 10px;
	width: auto;
}
article.contact span {
	padding: 0 5px;
	font-size: 10px;
}
article.contact span {
	background: #e32e2b;
	color: #ffffff;
}

.imeon{ ime-mode:active; }
.imeoff{ ime-mode:disabled; }

input,
textarea,
select { margin: 2px 0; padding: 1px; font-size: 12px;}

input.send {
	margin-top:20px;
	margin-left: 240px;
}
strong#error {color:#fb190e;}




/*--------------------------------------------------------------------/
	common_contact
/--------------------------------------------------------------------*/
section#common_contact {
	margin-top: 25px;
	margin-bottom: 15px;
	padding-top: 105px;
	width: 600px;
	height: 55px;
}

section#common_contact a {
	margin-left: 28px;
}
section.bs_contact {
	background: url(img/business_contact_bg.gif) no-repeat 0 0;
}
section.rc_contact {
	background: url(img/recruitment_contact_bg.gif) no-repeat 0 0;
}


