@charset "utf-8";

/*---------------------------------------------
	All
  ---------------------------------------------*/

body {
	background: #00314f;
	color: #FFF;
}


/*---------------------------------------------
	Layout
  ---------------------------------------------*/
  
#container {
	width: 100%;
}

#main {
	width: 960px;
	margin: 40px auto 0 auto;
}
  
#sidebar {
	float: left;
	width: 230px;
	text-align: left;
	background-color: #00314f;
}

#content {
	float: leftt;
	width: 720px;
	overflow: hidden;
	text-align: left;
	margin-left: 10px;
}

#footer {
	clear: both;
	width:100%;
	height: 50px;
	margin-bottom: 50px;
}


/*---------------------------------------------
	Sidebar
  ---------------------------------------------*/
  
#sidebar .navi {
	width: 100%;
}

#sidebar .sitelogo {
	width: 200px;
	height: 39px;
	margin: 29px 15px 0px 15px;
}

#sidebar .sitelogo img{
	width: 100%;
	height: 100%;
}

#sidebar .gNavi {
	width: 230px;
	margin-top: 32px;
}

#sidebar .gNavi li{
	width: 100%;
	text-align: left;
	line-height: 0;
	overflow: hidden;
}

#sidebar .gNavi li.contact {
	margin-top: 20px;
}

#sidebar .gNavi li a{
	display: block;
	width: 460px;
	height: 30px;
}

#sidebar .gNavi li.contact a {
	height: 60px;
}

#sidebar .gNavi li a:link,
#sidebar .gNavi li a:visited {margin-left: 0;}
#sidebar .gNavi li a:hover,
#sidebar .gNavi li a:active,
#sidebar .gNavi li a.current:link,
#sidebar .gNavi li a.current:visited {margin-left: -230px;}

#sidebar .gNavi li a.current {cursor: default;}

/*---------------------------------------------
	Footer
  ---------------------------------------------*/

.sitemap {
	margin: 25px 0px 10px auto;
	float: right;
	line-height: 12px;
}


a.link {
	padding-left: 15px;
	background: url(../img/link_arrow01.gif) no-repeat center left;
}

.adress {
	margin: 25px 203px auto;
	width: 324px;
	height: 12px;
	float: right;
}


/*---------------------------------------------
	Back to the top
  ---------------------------------------------*/

#toTop {
	position: fixed;
	z-index: 4;
	left: auto;
	bottom: 10px;
	width: 165px;
	height: 31px;
	margin-left: 65px;
	overflow: hidden;
}

#toTop a {
	display: block;
	width: 330px;
	height: 31px;
}

#toTop a:link,
#toTop a:visited {margin-left: 0;}
#toTop a:hover,
#toTop a:active {margin-left: -165px;}

/*---------------------------------------------
	Top Content
  ---------------------------------------------*/
  
.listbox {
	width: 720px;
	overflow: hidden;
	margin-left: 10px;
}

.listbox .section{
	width: 230px;
	float: left;
	margin: 0px 10px 10px 0px;
	overflow: hidden;
}

.listbox .image {
	width: 230px;
	height: 230px;
	text-align: left;
	overflow: hidden;
}

.listbox .image a {
	display: block;
	width: 460px;
	height: 230px;
}

.listbox .image a:link,
.listbox .image a:visited {margin-left: 0;}
.listbox .image a:hover,
.listbox .image a:active { margin-left: -230px;}

.listbox .work {
	width: 230px;
	height: 230px;
	text-align: left;
	overflow: hidden;
	background: #FFF;
}

.listbox .work_image {
	width: 220px;
	height: 125px;
	margin: 5px;
	overflow: hidden;
}

.listbox .work_image a{
	display: block;
	width: 440px;
	height: 125px;
}

.listbox .work_image a:link,
.listbox .work_image a:visited {margin-left: 0;}
.listbox .work_image a:hover,
.listbox .work_image a:active { margin-left: -220px;}

.listbox .title {
	width: 220px;
	margin: 0px 5px 5px 5px;
	color: #00314f;
	font-size: 90%;
	line-height: 160%;
}

.listbox .title a {
	display: block;
	width: 220px;
	line-height: 12px;
	outline: none;
}

.listbox .title a:link {
	color: #00314f;
	text-decoration: none;
}

.listbox .title a:visited {
	color: #00314f;
	text-decoration: none;
}

.listbox .title a:hover {
	color: #949596;
	text-decoration: none;
}

.listbox .title img {
	margin-right: 5px;
}

.listbox .text {
	width: 220px;
	margin: 0px 5px 0px 5px;
	color: #949596;
	font-size: 90%;
	line-height: 1.5em;
}

.listbox .link {
	float: right;
	margin: 5px 5px 10px 0;
	color: #00314f;
	padding-left: 15px;
	background: url(../img/link_arrow02.gif) no-repeat center left;
}

.listbox .link a:link {
	color: #00314f;
	text-decoration: none;
}

.listbox .link a:visited {
	color: #00314f;
	text-decoration: none;
}

.listbox .link a:hover {
	color: #949596;
	text-decoration: none;
}

/*---------------------------------------------
	Web Content
  ---------------------------------------------*/
  
.textbox {
	width: 720px;
	overflow: hidden;
	margin-left: 10px;
}

.textbox .keyvisual {
	width: 685px;
	margin: 5px 0px 15px 15px;
}

.textbox .keyvisual img{
	margin-bottom: 15px;
}

.textbox .keyvisual p{
	font-size: 120%;
}

.textbox .text_section {
	width: 685px;
	margin: 5px 0px 15px 15px;
	overflow: hidden;
}

.textbox .text_section h3 {
	width: 685px;
	border-bottom: #b4b2b2 1px solid;
	background: #00314f;
	padding: 0px 0px 2px 2px;
	margin-bottom: 20px;
}

.textbox .text_section p {
	width: 650px;
	margin-left: 30px;
	font-size: 120%;
}

/*---------------------------------------------
	Works Content
  ---------------------------------------------*/

.record {
	width: 690px;
	overflow: hidden;
	margin: 25px 0 15px 35px;
}

.record dl {
	width: 690px;
	float: left;
	overflow: hidden;
	clear: both;
	display: inline;
	margin: 0 0 10px 0;
}

.record dt {
	width: 75px;
	float: left;
	text-align: right;
	margin-right: 10px;
}

.record dd {
	width: 590px;
	float: left;
}

.back {
	float: right;
	margin-right: 15px;
}

.back {
	width: 130px;
	height: 30px;
	text-align: left;
	overflow: hidden;
}

.back a {
	display: block;
	width: 260px;
	height: 30px;
}

.back a:link,
.back a:visited {margin-left: 0;}
.back a:hover,
.back a:active { margin-left: -130px;}

/*---------------------------------------------
	intro
  ---------------------------------------------*/

.intro {
	width: 645px;
	overflow: hidden;
	margin: 15px 0 15px 35px;
}

.intro dl {
	width: 645px;
	float: left;
	overflow: hidden;
	clear: both;
	display: inline;
	margin: 0 0 20px 0;
}

.intro dt {
	width: 75px;
	float: left;
	text-align: right;
}

.intro dd {
	width: 490px;
	float: right;
}

/*---------------------------------------------
	contact
  ---------------------------------------------*/
  
.textbox .mail {
	width: 685px;
	margin: 5px 0px 15px 15px;
}

.textbox .mail table {
	width: 685px;
	margin: 50px 0 50px 0px;
}

.textbox .mail table tr {
	width: 685px;
	height: 50px;
	margin-bottom: 5px;
	padding: 5px 0 5px 0;
}

.textbox .mail .detail {
	width: 685px;
	height: 160px;
	margin-bottom: 5px;
	padding: 5px 0 5px 0;
}


.textbox .mail table th {
	width: 180px;
	text-align: right;
	padding-right: 15px;
}

.textbox .mail table td {
	width: 450px;
	min-height: 50px;
	text-align: left;
}

.textbox .mail table .must {
	background: url(../img/must.gif) left no-repeat;
}

/*---------------------------------------------
	General
  ---------------------------------------------*/
  
h2 {
	width: 710px;
	height: 50px;
	border-bottom: #FFF 1px solid;
	margin-bottom: 15px;
	margin-left: 10px;
}

h2 img {
	float: right;
	margin-top: 17px;
}

.mtmb15 {
	margin-top: 15px;
	margin-bottom: 15px;
	line-height: 1.7em;
}

.text_bold {
	font-weight: bold;
}

.text_gray {
	color: #999;
}

.size120 {
	font-size: 120%;
}

.mb10 {
	margin-bottom: 10px;
}

.mb20 {
	margin-bottom: 20px;
	line-height: 1.71em;
}