@charset "UTF-8";


/* =Global Elements
-------------------------------------------------------------- */

body {
	font-size: 63%;
	text-align: center;
	line-height: 140%;
	color: #333333;
	margin: 0px;
	padding: 0px;
	font-family: 'メイリオ',Meiryo,'ＭＳ Ｐゴシック','Lucida Grande',Verdana,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',Osaka,sans-serif;
}

body.top {
	background: url(../images/bg_top.jpg) repeat-x left top;
}

body.sub {
	background: url(../images/common/bg_sub.jpg) repeat-x left top;
}


/* =Global Layout
-------------------------------------------------------------- */

#container {
	background-color: #fff;
	padding:7px 0px 0px;
	width: 960px;
	margin: 0 auto 7px;
	_zoom:1;
	text-align: left;
}

#header {
	background-repeat: no-repeat;
	background-position: center top;
	width: 100%;
}

#wrapper {
	_zoom:1;
	width: 920px;
	padding: 20px 0;
	margin:0 auto;
}

#wrapper:after { 
	content: url("../images/common/spacer.gif");
	display: block;
	clear: both;
	height: 0;
}

.top #wrapper {
	width: 940px;
}

#content {
	_zoom:1;
	width: 640px;
	float: left;
}

.top #content {
	width: 680px;
}

#entry {
	_zoom:1;
}

#entry:after { 
	content: url("../images/common/spacer.gif");
	display: block;
	clear: both;
	height: 0;
}

#primary {
	float: right;
	width: 240px;
}

#footer {
	border-top: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
	background: #EAEBEC url(../images/common/bg_footer.gif) repeat-x left top;
	margin-top: -5px;
}

#foot_copylight {
	_zoom:1;
	margin: 0 auto;
	width: 920px;
}

#foot_copylight:after { 
	content: url("../images/common/spacer.gif");
	display: block;
	clear: both;
	height: 0;
}

/* -- Sub Title -- */

#container h1 {
	background: url(../images/common/h1_sub.jpg) no-repeat left top;
	height: 71px;
	width: 920px;
	margin:0 auto;
}

#container h1 span {
	display: block;
	padding: 26px 0 0 26px;
}

/* -- Page Top -- */

p.pagetop {
	margin: 0 auto;
	width: 920px;
	text-align: right;
}


/* =Header
-------------------------------------------------------------- */


/*-- SUB Main Visual --*/

/* Common */

.top #header {
	height: 476px;
	width: 100%;
	position: relative;
}

.sub #header {
	padding-top: 100px;
}

/* page */

#header.base {
	background-image: url(../images/common/visual.jpg);
}

#header.company {
	background-image: url(../company/images/visual.jpg);
}

#header.ourfeature {
	background-image: url(../ourfeature/images/visual.jpg);
}

#header.works {
	background-image: url(../works/images/visual.jpg);
}

#header.products {
	background-image: url(../products/images/visual.jpg);
}

#header.recruit {
	background-image: url(../saiyo/images/visual.jpg);
}

#header.inquiry {
	background-image: url(../inquiry/images/visual.jpg);
}

#header.threefeature {
	background-image: url(../threefeature/images/visual.jpg);
}


/*-- g_navi --*/

.top #header .h_box {
	bottom: 0px;
	position: absolute;
	width: 100%;
	clear: both;
	left: 0px;
}

#header dl.g_navi {
	background-image: url(../images/common/bg_naviikage.png);
	background-repeat: no-repeat;
	background-position: left top;
	width: 972px;
	height: 102px;
	margin: 0 auto;
}

#header dl.g_navi dt,
#header dl.g_navi dd {
	float: left;
}

#header dl.g_navi dt {
	height: 102px;
	width: 234px;
	margin-left: 6px;
}

#header dl.g_navi dd {
	float: left;
	height: 86px;
	width: 145px;
	margin-top: 16px;
}


/* --Bread Crumb
-------------------------------------------------------------- */

ul.breadcrumb {
	_zoom:1;
	background-image: url(../images/common/bg_breadcrumb.jpg);
	background-repeat: repeat-y;
	background-position: left top;
	padding: 7px 10px;
	width: 900px;
	_width: 920px;
	margin: 0 auto;
}

ul.breadcrumb:after { 
	content: url("../images/common/spacer.gif");
	display: block;
	clear: both;
	height: 0;
}

ul.breadcrumb li {
	background: url(../images/common/bg_blatest.gif) no-repeat left center;
	margin-right: 5px;
	padding-left: 11px;
	float: left;
}

ul.breadcrumb li.latest {
	padding-left: 0px;
	background-image: none;
}

ul.breadcrumb li a {
	color: #333;
	text-decoration: underline;
}

ul.breadcrumb li a:hover {
	text-decoration: none;
}


/* =entry
-------------------------------------------------------------- */

/* -- TITLE -- */

#entry h2{
	margin-bottom:15px;
}

#entry h3{
	margin-bottom:15px;
}


/* -- IMAGE -- */

#entry .image_alert strong {
	font-size: 1.3em;
	font-weight: bolder;
	color: #063092;
	display: block;
	margin-bottom: 10px;
}

#entry .image_alert {
	font-size: 1.2em;
	color: #333;
}


/* -- TEXT END -- */

#entry .btm_line {
	padding-bottom: 35px;
	border-bottom: 1px solid #CCCCCC;
}



/* -- INDEX TYPE
--------------------------- */

/* -- ind_2col -- */

#entry .ind_2col {
	_zoom:1;
	width: 540px;
	background-image: url(../images/common/bg_ind2column.jpg);
	background-repeat: no-repeat;
	background-position: left bottom;
}

#entry .ind_2col:after { 
	content: url("../images/common/spacer.gif");
	display: block;
	clear: both;
	height: 0;
}

#entry .ind_2col dl {
	background-repeat: no-repeat;
	background-position: left top;
	padding-top: /*105*/27px;
	padding-bottom: 40px;
	width: 260px;
	text-align: left;
}

#entry .ind_2col dl.left {
	float: left;
}

#entry .ind_2col dl.right {
	float: right;
}

#entry .ind_2col dl dt {
	font-size: 1.5em;
	line-height: 120%;
	color: #1745A5;
	padding: 0 20px 15px 20px;
	font-weight: bold;
}

#entry .ind_2col dl dd {
	font-size: 1.3em;
	line-height: 120%;
	background: url(../images/common/bg_linktype01.jpg) no-repeat left center;
	margin: 0 20px 10px 20px;
	padding-left: 18px;
}

#entry .ind_2col dl dd a {
	color: #333;
	text-decoration: none;
}

#entry .ind_2col dl dd a:hover {
	text-decoration: underline;
}


/* =sidenavi
-------------------------------------------------------------- */

#primary {}

#primary ul.global_btn {
	_zoom:1;
}

#primary ul.global_btn:after { 
	content: url("../images/common/spacer.gif");
	display: block;
	clear: both;
	height: 0;
}

#primary ul.global_btn li {
	float: left;
	padding-bottom: 15px;
}

#primary ul.global_btn li.sitemap {
	float: right;
}

/* -- inq btn
------------------------------------------------ */

#primary p.inq {
	padding: 0 0 11px 0;
}

/* -- Search
------------------------------------------------ */

#primary #search {
	display: none;
}

/* -- Menu
------------------------------------------------ */

/* 1st Menu */

#primary dl.menu {
	background-image: url(../images/common/bg_menu.jpg);
	background-repeat: repeat-y;
	background-position: left top;
	border-bottom: 1px solid #AFC8E4;
	margin-bottom:27px;
}

#primary dl.menu dt {
	width: 240px;
	margin-bottom: 10px;
}

#primary dl.menu dd {
	width: 238px;
	margin:0 1px;
	padding-top:1px;
	background: url(../images/common/bg_dotted.gif) repeat-x left top;
	font-size: 1.3em;
	line-height: 120%;
}

#primary dl.menu dd.latest {
	background-image: none;
	background-repeat: repeat-x;
	background-position: left top;
}

#primary dl.menu dd.this {
	background: url(../images/common/bg_menu_latest.jpg) repeat-x left top;
}

#primary dl.menu dd a {
	padding: 10px 10px 10px 40px;
	display: block;
	background: url(../images/common/bg_linktype01.jpg) no-repeat 20px center;
	color: #333;
	text-decoration: none;
}

#primary dl.menu dd a:hover {
	filter: alpha(opacity=70);
	opacity: 0.7;
	background-color: #8CAFD9;
	color: #fff;
}

#primary dl.menu dd .nolink {
	padding: 10px 10px 10px 40px;
	display: block;
	background: url(../images/common/bg_linktype01.jpg) no-repeat 20px center;
	color: #333;
	text-decoration: none;
}

/* 2nd Menu */

#primary dl.menu dd ul {
	margin: 1px 1px 0 1px;
	background-color: #F7F7F7;
	display: block;
}

#primary dl.menu dd ul li {
	padding-top:2px;
	background: url(../images/common/bg_side_dottod.gif) repeat-x left top;
}

#primary dl.menu dd ul li a {
	color: #999999;
	padding: 8px 5px 8px 48px;
	display: block;
	background: url(../images/common/bg_linktype02.gif) no-repeat 38px 1.2em;
}

#primary dl.menu dd ul li a.this {
	color: #1745A5;
}

#primary dl.menu dd ul li a:hover {
	filter: alpha(opacity=100);
	opacity: 1;
	background-color: #F7F7F7;
	color: #1745A5;
}

/* -- spcial
------------------------------------------------ */

#primary ul.spcial {
	padding-bottom: 15px;
}

#primary ul.spcial li.li01 {
	height: 65px;
	width: 240px;
}

#primary ul.spcial li.li02 {
	height: 73px;
	width: 240px;
}

#primary ul.spcial a:hover img {
	filter: alpha(opacity=70);
	opacity: 0.7;
}

/* Bnr */

#primary p.bnr {
	padding-bottom: 10px;
}

#primary p.bnr a:hover img {
	filter: alpha(opacity=70);
	opacity: 0.7;
}

/* = footer 
-------------------------------------------------------------- */

#footer #ft_ul {
	_zoom:1;
	margin: 0 auto;
	padding:30px 0;
	width: 920px;
	text-align: left;
	background-image: url(../images/common/bg_ftalea.jpg);
	background-repeat: no-repeat;
	background-position: right bottom;
}

#footer #ft_ul:after { 
	content: url("../images/common/spacer.gif");
	display: block;
	clear: both;
	height: 0;
}

#footer #ft_ul dl {
	float: left;
}

#footer #ft_ul dl dt {
	font-size: 1.2em;
	line-height: 120%;
	font-weight: bolder;
	color: #1745A5;
	padding-bottom: 15px;
}

#footer #ft_ul dl dt a {
	color: #1745A5;
	text-decoration: none;
}

#footer #ft_ul dl dd a {
	color: #333;
	text-decoration: none;
}

#footer #ft_ul dl dt a:hover,
#footer #ft_ul dl dd a:hover {
	text-decoration: underline;
}

#footer #ft_ul dl dd {
	padding-bottom: 10px;
}

#footer #ft_ul dl.list_01 {
	width: 155px;
}

#footer #ft_ul dl.list_02 {
	width: 213px;
}

#footer #ft_ul dl.list_03 {
	width: 163px;
}

#footer #ft_ul dl.list_04 {
	width: 123px;
}

#footer #ft_ul dl.list_05 {
	width: 95px;
}

#footer #ft_ul dl.list_06 {
	width: 169px;
}

/* foot_copylight */

#foot_copylight h2 {
	padding: 23px;
	float: left;
}

#foot_copylight p.inq {
	padding: 10px 20px 20px 20px;
	float: right;
}

#foot_copylight small {
	display: block;
	clear: both;
	text-align: right;
	font-size: 1.1em;
	padding-bottom: 10px;
}

/*=========================================================
	heading element
=========================================================*/
#content h3.title01 {
	background: url(../images/common/h3_title01bg.jpg) no-repeat left bottom;
	padding: 5px 0 5px 11px;
}

#content h3.title01 span {
	background: url(../images/common/h3_title01icon.jpg) no-repeat left 5px;
	display: block;
	padding: 6px 0 5px 10px;
	font-weight: bold;
	font-size: 1.5em;
}

#content h3.subtitle01,
#content h4.subtitle01 {
	color: #063092;
	font-size: 1.9em;
	font-weight: bold;
	margin-bottom: 10px;
}

/*=========================================================
	section contents
=========================================================*/
.section {
	clear: both;
	overflow: hidden;
	_zoom: 1;
}

.section .indexcolumn img {
	margin-right: 20px;
}

/*=========================================================
	common table
=========================================================*/
table.common {
	width: 100%;
}

table.common tr {
	vertical-align:top;
}

table.common tr.top th,
table.common tr.top td {
	border-top: 1px solid #E0E0E0;
}

table.common .mark {
	color: #1745A5;
	font-weight: bold;
}

table.common th {
	font-size: 1.3em;
	font-weight: bold;
	background-color: #F5F9FC;
	border-bottom: 1px solid #E0E0E0;
	padding: 10px;
}

table.common td {
	font-size: 1.2em;
	border-bottom: 1px solid #E0E0E0;
	padding: 10px;
	line-height: 1.6;
}

table.common td.sub {
	font-size: 1.3em;
	background-color: #EFEFEF;
}

/*=========================================================
	float element
=========================================================*/
.cleft {
	float: left;
	display: block;
}

.cright {
	float: right;
	display: block;
}

/*=========================================================
	Font Famiry Element
=========================================================*/
.serif {
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
}

.meiryo {
	font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,Verdana,'ＭＳ Ｐゴシック',Arial,Helvetica,sans-serif;
}

/*=========================================================
	txt contents
=========================================================*/
.txt11 {
	font-size: 1.1em;
}

.txt12 {
	font-size: 1.2em;
}

.txt14 {
	font-size: 1.4em;
}

.txt16 {
	font-size: 1.6em;
}

/*=========================================================
	text-align
=========================================================*/
.txt-c {
	text-align: center!important;
}

.txt-r {
	text-align: right!important;
}

.txt-l {
	text-align: left!important;
}

/*=========================================================
	text
=========================================================*/
.sup {
	position: relative;
	vertical-align: top;
	top: 0px;
}

.sub {
	position: relative;
	vertical-align: baseline;
	bottom: -1px;
}

/*=========================================================
	opacity
=========================================================*/
.opacity a:hover img {
	filter: alpha(opacity=70);
	opacity: 0.7;
}

/*=========================================================
	margin style
=========================================================*/
/*margin bottom*/
.mb5 {
	margin-bottom: 5px!important;
}

.mb10 {
	margin-bottom: 10px!important;
}

.mb15 {
	margin-bottom: 15px!important;
}

.mb20 {
	margin-bottom: 20px!important;
}

.mb25 {
	margin-bottom: 25px!important;
}

.mb30 {
	margin-bottom: 30px!important;
}

.mb35 {
	margin-bottom: 35px!important;
}

.mb40 {
	margin-bottom: 40px!important;
}

.mb45 {
	margin-bottom: 45px!important;
}

/*margin top*/
.mt8 {
	margin-top: 8px!important;
}

.mt10 {
	margin-top: 10px!important;
}

.mt20 {
	margin-top: 20px!important;
}

.mt30 {
	margin-top: 30px!important;
}

.mt40 {
	margin-top: 40px!important;
}


/*margin left*/

.ml10 {
	margin-left: 10px!important;
}

.ml20 {
	margin-left: 20px!important;
}

.ml30 {
	margin-left: 30px!important;
}

.ml40 {
	margin-left: 40px!important;
}

.ml60 {
	margin-left: 60px!important;
}

/*margin right*/
.mr0 {
	margin-right: 0px!important;
}

.mr10 {
	margin-right: 10px!important;
}

.mr20 {
	margin-right: 20px!important;
}

/*padding top*/
.pt8 {
	padding-top: 8px!important;
}

.pt10 {
	padding-top: 10px!important;
}

.pt20 {
	padding-top: 20px!important;
}

.pt30 {
	padding-top: 30px!important;
}

.pt40 {
	padding-top: 40px!important;
}
