@charset "utf-8";
/* CSS Document */
/* ------------------------------------*/
/* RESET              　　　　　　       */
/* ------------------------------------*/
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,b,u,i,center,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;vertical-align:baseline;background:transparent}

body{line-height:1}
ol,ul{list-style:none}
blockquote,q{quotes:none}
blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}:focus{outline:0}ins{text-decoration:none}del{text-decoration:line-through}table{border-collapse:collapse;border-spacing:0}

.clear{clear:both;display:block;overflow:hidden;visibility:hidden;width:0;height:0}
.clearfix:after{clear:both;content:'.';display:block;visibility:hidden;height:0}
.clearfix{display:inline-block}
* html .clearfix{height:1%}
.clearfix{display:block}
/*------------------------------------------------------------------
Common
-------------------------------------------------------------------*/
html {  
	background: #000000;  
}
body {
	font-size: 12px;
	font-family:'メイリオ',Meiryo,'Lucida Grande',Verdana,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',Osaka,'ＭＳ Ｐゴシック',sans-serif;
	color:#000000;
	background-color:#000000;
	line-height:150%;
	background-image: url(../images/top_bg.jpg);
	background-repeat: repeat-x;
	background-position: center top;
}

#wrapper{
	background-image: url(../images/top_bg.jpg);
	background-position: center;
	/*_background-position: left 0px;*/
	background-repeat: repeat-x;
	text-align: center;
}


#contents {
	width: 1062px;
	height:620px;
	text-align: center;
	margin: 0 auto;
}

#mainContainer {
	width: 1062px;
	margin-right: auto;
	margin-left: auto;
	margin-top: 0px;
	margin-bottom: 0px;
}
a {
	font-size: 12px;
	color:#D2223E;
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
/*------------------------------------------------------------------
HEADER
-------------------------------------------------------------------*/
#header_top {
	background-color: #000000;
	height: 26px;
}
#header_wrapper {
	background-repeat:repeat;
	background-position: left top;
}
#header {
	height: 112px;
	width: 840px;
	margin-top: 0;
	margin-bottom: 0;
	position: relative;
	text-align: left;
}
h1 a {
	width:335px;
	height:111px;
	background-image:url(../images/logo.jpg);
	background-repeat:no-repeat;
	text-indent:-9999px;
	display:block;
}
#header_top #btn_url {
	position:absolute;
	top:0px;
	left: 20px;
	text-indent: -9999px;
	height: 26px;
	width: 139px;
}
#header_top #btn_url a {
	display: block;
	background-image: url(../images/url.jpg);
	background-repeat: no-repeat;
}
#header #btn_sitemap {
	position:absolute;
	top:0px;
	right: 0px;
	text-indent: -9999px;
	height: 55px;
	width: 111px;
}
#header #btn_sitemap a {
	display: block;
	background-image: url(../images/btn_sitemap.jpg);
	background-repeat: no-repeat;
	background-position: left top;
	height: 55px;
	width: 111px;
}
#header #btn_sitemap a:hover,
.sitemap #header #btn_sitemap a {
	background-position: right top;
}

/*------------------------------------------------------------------
GLOBAL MENU
-------------------------------------------------------------------*/
#gm {
	width:224px;
	height: 336px;
	float: left;
}
#gm ul {
	position:relative;
	height: 336px;
}
#gm ul li a {
	height: 112px;
	width: 112px;
	text-indent:-9999px;
	display: block;
	position: absolute;
	background-repeat: no-repeat;
}
#gm ul .gm_consulting a	{
	left:  0px;
	top:0px;
	background-image: url(../images/gm_consul.jpg);
	background-position:left top;
}
#gm ul .gm_concept a	{
	left:  112px;
	top:0px;
	background-image: url(../images/gm_concept.jpg);
	background-position:left top;
}
#gm ul .gm_case a	{
	left:  0px;
	top: 112px;
	background-image: url(../images/gm_case.jpg);
	background-position:left top;
}
#gm ul .gm_company a	{
	left:  112px;
	top: 112px;
	background-image: url(../images/gm_company.jpg);
	background-position:left top;
}
#gm ul .gm_contact a	{
	left:  0px;
	top: 224px;
	background-image: url(../images/gm_contact.jpg);
	background-position:left top;
}

#gm ul .gm_consulting a:hover,
#gm ul .gm_concept a:hover,
#gm ul .gm_case a:hover,
#gm ul .gm_company a:hover,
#gm ul .gm_contact a:hover	{
	background-position:right top;
}

.consul #gm ul .gm_consulting a,
.consul_feature #gm ul .gm_consulting a,
.consul_flow #gm ul .gm_consulting a,
.concept #gm ul .gm_concept a,
.casestudy #gm ul .gm_case a,
.company #gm ul .gm_company a,
.contact #gm ul .gm_contact a	{
	background-position:right top;
}

/*------------------------------------------------------------------
FOOTER
-------------------------------------------------------------------*/
#footer_wrapper {
	background-color: #000000;
}
#footer {
	position: relative;
	height: 135px;
	width: 840px;
	margin-top: 0;
	margin-bottom: 0;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
	
	min-height:200px
}
#footer #pp {
	position: absolute;
	top: 41px;
	background-image: url(../images/footer_catch.jpg);
	background-repeat: no-repeat;
	height: 30px;
	width: 228px;
	text-indent: -9999px;
	left: 0px;
}
#footer #pagetop a {
	position: absolute;
	background-image: url(../images/btn_pagetop.jpg);
	background-repeat: no-repeat;
	background-position: right top;
	height: 21px;
	width: 90px;
	right: 0px;
	text-indent: -9999px;
	display: block;
	top: 41px;
}
#footer #pagetop a:hover {
	background-position: right bottom;
}

#footer #copyright {
	position:absolute;
	right:0px;
	width:272px;
	height:11px;
	background-image:url(../images/footer_cr.jpg);
	background-repeat:no-repeat;
	text-indent:-9999px;
	background-position: right top;
	display: block;
	bottom: 30px;
}

/*------------------------------------------------------------------
footer MENU
-------------------------------------------------------------------*/
#fm {
	position:absolute;
	width:164px;
	height:30px;
	left: 0px;
	bottom: 30px;
}
#fm ul {
	position:relative;
	width:164px;
	height:30px;
	list-style-type:none;
	background-image:url(../images/fm.jpg);
	background-repeat:no-repeat;
	background-position:left top;
	left: 0px;
}
#fm ul li {
	float:left;
}
#fm ul li a {
	height:31px;
	text-indent:-9999px;
	background-image:url(../images/fm.jpg);
	display: block;
	position: absolute;
	top: 0px;
}
#fm ul .fm_blog a 			{width: 50px; left:   0px; background-position:left top; }
#fm ul .fm_policy a 		{width:115px; left: 50px; background-position:-50px top;}

#fm ul .fm_blog a:hover,
.blog #fm ul .fm_blog a		{width: 50px; left:   0px; background-position:left 30px; }

#fm ul .fm_policy a:hover,
.policy #fm ul .fm_policy a {width:115px; left: 50px; background-position:-50px 30px;}



/*------------------------------------------------------------------
CONTENTS
-------------------------------------------------------------------*/
#contents_wrapper {
	background-repeat: repeat-x;
	_overflow: scroll;
	margin-right: auto;
	margin-left: auto;
}

#right_box {
	width: 559px;
	background-image: url(../images/contents_bg.jpg);
	background-repeat: repeat;
	float: left;
	margin-left: 56px;
	margin-bottom: 30px;
	_margin-bottom: 0px;
	text-align: left;
}
#right_box .item {
	padding-top: 20px;
	padding-right: 20px;
	padding-left: 20px;
}

/*------------------------------------------------------------------
COMMON
-------------------------------------------------------------------*/

.under_line {
	background-image: url(../images/line_dot.gif);
	background-repeat: repeat-x;
	margin-bottom: 20px;
	padding-bottom: 20px;
	background-position: left bottom;
}
.under_line2 {
	background-image: url(../images/line_dot.gif);
	background-repeat: repeat-x;
	margin-bottom: 20px;
	padding-bottom: 20px;
	background-position: left bottom;
	_padding-bottom: 1px;
}
.under_line3 {
	background-image: url(../images/line_dot.gif);
	background-repeat: repeat-x;
	margin-bottom: 20px;
	background-position: left bottom;
	padding-bottom: 1px;
}

.bold {
	font-weight: bold;
}

.margin_bottom10 {
	margin-bottom: 10px;
}
.margin_bottom20 {
	margin-bottom: 20px;
}
.margin_top10 {
	margin-top: 10px;
}
.no_margin {
	margin: 0;
}
.no_m {
	margin: 0;
}
.no_padding {
	padding: 0px;
}
