@charset "utf-8";


/*------------------------------------------------------------------
  共通 
----------------------------------------------------------------- */
/* ===========================
	link
=========================== */
a:link{ color:rgb(32,32,32); text-decoration:none; }
a:visited{ color:rgb(32,32,32); text-decoration:none; }
a:hover{ color:rgb(102,102,102); text-decoration:none; }
a:active{ color:rgb(102,102,102); text-decoration:underline; }

/* ===========================
	margin
=========================== */
.mt5  { margin-top:5px; }
.mt10 { margin-top:10px; }
.mt15 { margin-top:15px; }
.mt20 { margin-top:20px; }
.mt30 { margin-top:30px; }
.mr5  { margin-right:5px; }
.mr10 { margin-right:10px; }
.mr15 { margin-right:15px; }
.mr20 { margin-right:20px; }
.mr30 { margin-right:30px; }
.mb5  { margin-bottom:5px; }
.mb10 { margin-bottom:10px; }
.mb15 { margin-bottom:15px; }
.mb20 { margin-bottom:20px; }
.mb30 { margin-bottom:30px; }
.mb40 { margin-bottom:40px; }
.mb50 { margin-bottom:50px; }
.mb60 { margin-bottom:60px; }
.ml5  { margin-left:5px; }
.ml10 { margin-left:10px; }
.ml15 { margin-left:15px; }
.ml20 { margin-left:20px; }
.ml30 { margin-left:30px; }

/* ===========================
	padding
=========================== */
.pt5  { padding-top:5px; }
.pt10 { padding-top:10px; }
.pt15 { padding-top:15px; }
.pt20 { padding-top:20px; }
.pt30 { padding-top:30px; }
.pr5  { padding-right:5px; }
.pr10 { padding-right:10px; }
.pr15 { padding-right:15px; }
.pr20 { padding-right:20px; }
.pr30 { padding-right:30px; }
.pb5  { padding-bottom:5px; }
.pb10 { padding-bottom:10px; }
.pb15 { padding-bottom:15px; }
.pb20 { padding-bottom:20px; }
.pb30 { padding-bottom:30px; }
.pb40 { padding-bottom:40px; }
.pb50 { padding-bottom:50px; }
.pb60 { padding-bottom:60px; }
.pl5  { padding-left:5px; }
.pl10 { padding-left:10px; }
.pl15 { padding-left:15px; }
.pl20 { padding-left:20px; }
.pl30 { padding-left:30px; }

/* ===========================
	div 全体ボックス
=========================== */
.boxlink { cursor:pointer; }



/*------------------------------------------------------------------
  ヘッダー 
----------------------------------------------------------------- */
#header {
	width:964px; margin:0 auto; position:relative; padding:15px 0 30px 0; overflow:hidden; _zoom:1;
}
#header h1 {
	float:left;
}

/* ===========================
	ナビゲーション
=========================== */
#header #g-nav {
	position:absolute; right:0; bottom:20px; width:486px; margin:30px 0 0 0; background:url(../images/common/line_g-nav.gif) no-repeat 0 0;
}
#header #g-nav ul {
	width:486px; margin:1px 0 0 0; overflow:hidden; _zoom:1;
}
#header #g-nav ul li {
	float:left; font-size:0; line-height:0;
}
#header #g-nav ul li a {
	display:block; text-indent:-9999px; height:28px; background:url(../images/common/sprite_g-nav.gif) no-repeat 0 0;
}

/* home */
#header #g-nav ul a.home {
	background-position:0 0; width:51px;
}
#header #g-nav ul a.home:hover {
	background-position:0 -28px;
}
#header #g-nav ul a.home.current {
	background-position:0 -56px;
}

/* news */
#header #g-nav ul a.news {
	background-position:-51px 0; width:60px;
}
#header #g-nav ul a.news:hover {
	background-position:-51px -28px;
}
#header #g-nav ul a.news.current {
	background-position:-51px -56px;
}

/* about */
#header #g-nav ul a.about {
	background-position:-111px 0; width:91px;
}
#header #g-nav ul a.about:hover {
	background-position:-111px -28px;
}
#header #g-nav ul a.about.current {
	background-position:-111px -56px;
}

/* service */
#header #g-nav ul a.service {
	background-position:-202px 0; width:61px;
}

#header #g-nav ul a.service:hover {
	background-position:-202px -28px;
}
#header #g-nav ul a.service.current {
	background-position:-202px -56px;
}

/* works */
#header #g-nav ul a.works {
	background-position:-263px 0; width:61px;
}
#header #g-nav ul a.works:hover {
	background-position:-263px -28px;
}

#header #g-nav ul a.works.current {
	background-position:-263px -56px;
}

/* faq */
#header #g-nav ul a.faq {
	background-position:-324px 0; width:80px;
}
#header #g-nav ul a.faq:hover {
	background-position:-324px -28px;
}
#header #g-nav ul a.faq.current {
	background-position:-324px -56px;
}

/* contact */
#header #g-nav ul a.contact {
	background-position:-404px 0; width:82px;
}
#header #g-nav ul a.contact:hover {
	background-position:-404px -28px;
}
#header #g-nav ul a.contact.current {
	background-position:-404px -56px;
}



/*------------------------------------------------------------------
  フッター 
----------------------------------------------------------------- */
#footer {
	border-top:1px solid rgb(218,218,218); padding:20px 0;
}
#footer .inner {
	width:964px; margin:0 auto; font-size:77%; overflow:hidden; _zoom:1;
}
#footer .inner p.copyright {
	float:left; margin-right:20px; 
}
#footer .inner ul.nav {
	float:left; width:400px; overflow:hidden; _zoom:1;
}
#footer .inner ul.nav li {
	float:left; border-right:1px solid rgb(160,160,160); padding-right:5px; margin-right:5px;
}
#footer .inner ul.nav li:last-child {
	padding:0; margin:0; border:none;
}
#footer .inner a.back-to-top {
	float:right; background:url(../images/common/arrow_back-to-top.png) no-repeat 10px 50% rgb(51,51,51); padding:5px 10px 5px 25px; display:block; border-radius:6px; -moz-border-radius:6px; -webkit-border-radius:6px; color:rgb(210,210,210); _zoom:1;
}
#footer .inner a.back-to-top:hover {
	background:url(../images/common/arrow_back-to-top.png) no-repeat 10px 50% rgb(120,120,120);
}
#footer {}