@charset "utf-8";
/* CSS Document */



/*Header
===================================================*/
#header {
	background:url(../../images/header_bg.jpg) center top no-repeat;
}
#header .header_inr {
	width: 950px;
	margin: 0 auto;
	padding: 15px 0 10px;
}
/*logo*/
div.logo {
	width: 440px;
	float: left;
}
/*search*/
.search {
	/*width: 225px;*/
	width:245px;
	float: right;
}
.search input {
	width: 150px;
	padding: 5px;
	height: 20px;
	margin: 10px 0 0 0;
	background: url(../images/search_bg.gif) 130px center no-repeat #fff;
}
div.search form{
	float:left;}
div.lang{float:right;margin: 10px 0 0;}
div.lang a{
	width:auto;
	min-width:40px;
	text-decoration:none;
	text-align: center;
    width: 60px;
	display:block;
	padding:10px 5px;
	background-color:#24357d;
	color:#fff;
	font-size:11px;
	}
div.lang a:hover{
	opacity:0.7}
/*Navi
===================================================*/
#nav {
	background: url(../../images/navi_bg.gif) left center repeat-x;
}
#nav ul {
	width: 950px;
	margin: 0 auto;
	background: url(../../images/navi.gif) left center no-repeat;
}
#nav ul li {
	display:inline-block;
	float:left;
 *display: inline;
 *zoom: 1;
}
#nav ul li a {
	text-decoration:none;
	color: #fff;
	padding: 19px 30px;
	display: block;
	background: url(../../images/navi.gif) right center no-repeat;
}
div#nav ul li.current a, #nav ul li:hover {
	background: #5464a8;
}
/*Footer
===================================================*/
#footer {
	color: #fff;
	padding: 10px 0;
	background: #24357d;
	text-align: right;
}
.footer_inr {
	display: block;
	width: 950px;
	margin: 0 auto;
}
/*===================================================
TOP/SUB共通
===================================================*/
#main_contents {
	background: url(../../images/main_ontents_bg.jpg) left top repeat-x #fff;
	position: relative;
	margin:0;
	*margin:120px 0 0 0; 
}
#main_contents .main_contents_inr {
	width: 950px;
	margin: 0 auto;
}
.all {
	text-align: right;
	margin: 5px;
	padding-left: 15px;
	background: url(../../images/all.jpg) 615px center no-repeat;
}
/*===================================================
TOP
===================================================*/

/*EYECATCH*/
#main_contents .main_contents_inr p.mv {
	margin-bottom: 15px;
	
	padding-top: 130px;
}
/*fram*/
#main_contents .main_contents_inr .contents_text {
	border: 1px solid #cccccc;
	background: #fff;
	margin-bottom: 30px;
}
.contents_text .contents_text_inr {
	padding: 20px;
}
/*TOP　サイト概要に関する文章*/
h2.intro {
	background: url(../../images/intro_bg.jpg) left center no-repeat;
	margin-bottom: 25px;
	padding: 16px 0 16px 30px;
	color: #23347b;
	font-size: 20px;
}
.intro_inr {
	width: 850px;
	margin: 0 auto 20px;
}
.intro_photo {
	float: right;
	margin-left: 30px;
}
.intro_text {
	margin-bottom:10px;
}
.intro_text,.intro_text a {
	font-size: 14px;
}

/*NEWS*/
.news_events ul li span {
	margin-right: 20px;
	display: inline-block;
}
.news_events {
	width: 674px;
	float: left;
}
.news_events ul {
	width: 674px;
}
.news_events ul li {
	padding: 15px 0 15px 25px;
	border-bottom: 1px dotted #c6c6c6;
	background: url(../../images/news_li.gif) left 20px no-repeat;
	display: inline-block;
}
.news_events ul li a {
	display: block;
	color: #333;
}
.news_events ul li img {
	margin: 0 15px;
}
.news_events ul li span {
	width: 460px;
	display: block;
	float: right;
	font-size: 14px;
}
.news_events ul li span a {
	display: inline;
}
/*.news_events ul li a:after {
	content: " ";
	display: block;
	height: 0;
	font-size: 0;
	clear: both;
	visibility: hidden;
}*/

.all_news_event ul li {
	display: block;
}

.all_news_event ul li a {
	display: inline;
}


/*banner*/
.banner {
	width: 200px;
	float: right;
}
.banner ul li {
	/*margin-bottom: 5px;*/
}
/*===================================================
SUB
===================================================*/


.sub {
	padding: 20px 0;
}
.sub .main_contents_inr {
	width: 900px!important;
	
	margin: 120px auto 0px auto !important;
	position:relative; 
}
.sub_inr {
	padding: 20px;
	border: 1px solid #cccccc;
	background: #fff;
	margin-bottom: 30px;
}
/*サイドメニュー(LEFT)*/

div.sub_inr div.left_box {
	float: left;
	width: 200px;
	margin: 0 20px 0 0px;
}
.sub_inr h1 {
	background: url(../../images/sub_h2_bg_s.gif) left top no-repeat;
	padding: 18px;
	margin-bottom: 10px;
	color: #fff;
	font-weight: bold;
	font-size: 20px;
}
div.sub_inr div.left_box ul {
	margin: 0;
}
div.sub_inr div.left_box ul li {
	padding: 0;
	margin: 0;
	background-image: none;
	border-bottom: 1px dotted #ccc;
}
div.sub_inr div.left_box ul li:hover {
	background-color: #eee;
}
div.sub_inr div.left_box ul li a {
	display:block;
	padding: 15px 20px;
	color: #333;
	text-decoration:none;
}
/*コンテンツ(Right)*/
div.sub_inr div.right_box {
	float: right;
	width: 680px;
	min-height: 650px;
}
.sub_box_inr {
	width: 670px;
	margin: 0 auto;
}
.sub_box_inr a {
	font-size:14px;
}

/*----------見出し---------------*/
.sub_inr h2 {
	background: url(../../images/sub_h3_bg.gif) left top no-repeat;
	padding: 13px 0 13px 25px;
	margin:20px 0;
	font-size: 17px;
}
.sub_inr h2.top {
	
	margin:0 0 20px 0 !important;
	
}
.sub_inr h3 {
	padding: 10px 0 10px 25px;
	
	margin-bottom: 20px;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#4658a4+0,1c2e74+3,4658a4+100 */
background: #4658a4; /* Old browsers */
background: -moz-linear-gradient(top, #4658a4 0%, #1c2e74 3%, #4658a4 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#4658a4), color-stop(3%,#1c2e74), color-stop(100%,#4658a4)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #4658a4 0%,#1c2e74 3%,#4658a4 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #4658a4 0%,#1c2e74 3%,#4658a4 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, #4658a4 0%,#1c2e74 3%,#4658a4 100%); /* IE10+ */
background: linear-gradient(to bottom, #4658a4 0%,#1c2e74 3%,#4658a4 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4658a4', endColorstr='#4658a4',GradientType=0 ); /* IE6-9 */
	text-shadow:#555 1px 1px 1px;
	color: #fff;
	line-height: 1.2;
	font-size:15px;
	border-bottom: solid 2px #1E3076;
	border-right: solid 2px #1E3076;
}

.sub_inr h3 a {
	color:#fff;
	font-size:14px;
}

.sub_inr h4 {
	padding: 10px 0 10px 25px;
	border-bottom: dotted 1px #d0d0d0;
	margin-bottom: 20px;
	background: url(../../images/sub_h4_bg.gif) left center no-repeat;
}

.sub_inr h2,.sub_inr h3,.sub_inr h4,.sub_inr h5{
	display: inline-block;
	width: 95%;
	}
/*----------P style---------------*/
.sub_inr p {
	margin: 10px auto 20px auto;
	width: 95%;
}

.sub_inr p.last {
	margin-bottom: 30px;
}
.sub p.pic {
	width: 80%;
	margin: 10px auto;
}
p.top{
	margin:0 auto 10px auto;}
p.right{
	text-align:right;}
p.space{
	display:block;
	height:10px;
	margin:10px 0;}
/*----------List style---------------*/
.sub_inr ul {
	margin: 0 0 30px 20px;
	margin-left: 20px;
}
.sub_inr ul li {
	background: url(../../images/sub_li.gif) left 4px no-repeat;
	margin-bottom: 10px;
	padding-left: 20px;
}
/*----------Table style---------------*/

.sub_inr table {
	border: 1px solid #c9c9c9;
	width: 100%;
}
.sub_inr table th {
	border-bottom: 1px solid #ccc;
	width: 35%;
	padding: 10px;
	background: #ececec;
}
.sub_inr table td {
	border-bottom: 1px solid #c9c9c9;
	padding: 10px;
}
.sub_inr table tr.last th {
	border: none;
}
.sub_inr table tr.last td {
	border: none;
}
/*noborder*/
table.noborder {
	border: none;
}
table.noborder tbody tr td {
	border: none;
}
table.noborder tbody tr th {
	border: none;
	text-align: center;
	background-color: transparent !important;
}
/*gallery*/
#gallery table {
	border: none;
}
#gallery table tbody tr td {
	border: none;
	width: 25%;
}
#gallery table tbody tr th {
	width: 25%;
	text-align: center;
	border: none;
	background-color: transparent !important;
}

#gallery table th img {
	height: auto !important;
	margin: 0 0 0 10px;
	max-height: 230px;
	max-width: 300px;
	width: auto !important;
}
/*project*/
#gallery table.project_table {
	margin-bottom:0;
}
	
#gallery table.project_table th img{
	margin: 0 0 0 10px;
	width: auto !important;
	height: auto !important;
	max-height: 150px;
	max-width: 200px;}
/*----------動画関連---------------*/
div.movie {
	background: #000 none repeat scroll 0 0;
	height: 180px;
	margin: 0 auto;
	padding: 0;
	width: 250px;
}
/*----------イベントページ---------------*/
.sub_inr .news_events {
	width: 670px;
	float: none;
}
.sub_inr .news_events ul {
	width: 670px;
	margin-left: 0;
}
.sub_inr .news_events ul li {
	background: url(../../images/news_li.gif) left 20px no-repeat;
	paddin-left: 0;
}
.sub_inr .news_events ul li a {
	line-height: 1.5;
}
.sub_inr .news_events ul li span {
	float: none;
	width: 100%;
}



/*-----------サイドナビ追従--------------*/

html body div.navi_fixed {
	position: fixed;
	width: 100%;
	z-index: 10; 
}
div#portamento_container div#panel.left_box.fixed {
	position: fixed;
}
.fixed {
	position: fixed;
}
div.Header_wrp div#header{ width: 100%; background-color:#fff;}
div.Header_wrp div#nav{top: 70px;
    width: 100%;}
div.sub_box_inr h2{margin: 0 0 15px; 
   padding: 10px 0 13px 25px; 
	background-position:left bottom;}
	
/*div.sub_box_inr h2.top{margin:-125px 0 15px !important;}*/

div#portamento_container{
	float:left;}
.pagetop{
	margin: -90px auto 60px !important;
    padding: 90px 0 0;
    text-align: right;}
 p.caption{
	 margin: 0px auto 20px !important;
	 text-indent: 1em;}
html body footer div#footer div.footer_inr p{
	float:left;
	width:auto;
	max-width:50%;}
html body footer div#footer div.footer_inr p a{
	color:#fff;}