@charset "utf-8";
/* CSS Document */

/**

1. common
2. override bootstrap
3. header
4. navi
5. toppage section
6. footer

7. breadcrumb
8. sidebar
9. main_content


main colors: 

#0E1446
#dedede


**/

/***************************************************************
 1. common
 **************************************************************/


body{
	font-family:"メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;	
	line-height:1.6em;
}

a:hover img{
	opacity:0.8;	
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
}

.wrapper{
	width:1024px;
	margin:0px auto; 
}

.left,
.left_column{
	float:left;	
}

.right,
.right_column{
	float:right;	
}

.current{
	background-color:#dedede;	
}

h3{
	background-color:#dedede;
	font-size:18px;
	padding:15px 8px;
	margin:30px 0px 20px 0px;	
}

h4{
	border-left:3px solid #dedede;
	padding:10px 20px;
	margin:20px 0px;
	font-size:16px;
}

h5{
	font-size:14px;
	padding:20px 10px;
	border-bottom: 1px solid #dedede;
}

ul{
	padding-left:0px;
}

ol{
	padding-left:23px;
}

ul li{
	list-style:none;
	
}

p{
	padding:4px;	
}

img.center{
	display: block;
	margin:0 auto;
}

a:focus{
	color:#aaa;	
}

a.more{
	float:right;
	border: 1px solid #ccc;
	padding: 4px 15px;
}

a:hover.more{
	background-color: #eee;
	text-decoration: none;
}

a.more:before{
	font-family: FontAwesome;
	content: '\f039';
	padding-right: 6px;
}

.pagetop{
	border:1px solid #ccc;
	padding:5px 10px;
	float:right;
	margin-bottom: 20px;
}

.pagetop:before{
	font-family: FontAwesome;
 	content: '\f0aa';
	padding-right:5px;
}

table.norborder,
table.norborder th,
table.norborder td{
	border:none;
}

.alignleft {
display: block;
margin: 0 auto 0 0;
}

.aligncenter {
display: block;
margin: 0 auto;
}

.alignright {
display: block;
margin: 0 0 0 auto;
}

span.date{
	font-size: 12px;	
}

h2 .btn, h3 .btn, h4 .btn, h5 .btn
{
	float:right;
}

/***************************************************************
 2. override bootstrap
 **************************************************************/
 
.btn-info{

}

.label{
	padding:4px;
	background-color:#ccc;
}

table.full{
		width: 100%;
	}


/***************************************************************
 3. header
 **************************************************************/

header{
	border-bottom:2px solid #0a1054;
	min-height: 102px;
}

header h1{
	display:none;	
}

header div#search_area{
	padding:10px 10px;
	text-align:right;
}

header div#search_area ul li{
	float:right;
	padding:5px;
}
header div#search_area .btn-default{
	padding:4px 10px;
	border-radius:0px;
	margin-left:0px;
	float:right;
}

header div#search_area input[type=text]{
	height:30px;
	margin-right:0px;
	float:right;
}



#home header{
	
}

#sub header{

}

header div#logo_area img{
	width: 320px;
	margin-top: 20px;
	}


header div.wrapper{
	position: relative;
}

/***************************************************************
4 nav
***************************************************************/


nav{
	height:44px;
	min-width:1024px;
	position: absolute;
	top: -2px;
}

nav div{
	margin:0px;
	padding:0px;
}

nav div ul{
	margin:0px;
	padding:0px;
}

nav div ul li{
	height:44px;
	padding:0px;
	margin:0px;
}

nav div > ul > li{
	float:left;	
}

nav div ul li a{
	margin:2px 0px;
	display:block;
	min-width:76px;
	min-height: 100px;
	padding:0px;
	color:#666;
	font-size:11px;
	text-align:center;	
	height:40px;
}


nav div ul li:nth-child(1) a{
	background: url(./images/menu01.png) no-repeat;
	background-size: 45px;
	background-position: 20px 20px;
}

nav div ul li:nth-child(1) a:hover{
	background: url(./images/menu01_o.png) no-repeat;
	background-size: 45px;
	background-position: 20px 20px;
	background-color: #eee;
}

nav div ul li:nth-child(2) a{
	background: url(./images/menu02.png) no-repeat;
	background-size: 50px;
	background-position: 15px 20px;
}

nav div ul li:nth-child(2) a:hover{
	background: url(./images/menu02_o.png) no-repeat;
	background-size: 50px;
	background-position: 15px 20px;
	background-color: #eee;
}

nav div ul li:nth-child(3) a{
	background: url(./images/menu03.png) no-repeat;
	background-size: 50px;
	background-position: 15px 25px;
}

nav div ul li:nth-child(3) a:hover{
	background: url(./images/menu03_o.png) no-repeat;
	background-size: 50px;
	background-position: 15px 25px;
	background-color: #eee;
}

nav div ul li:nth-child(4) a{
	background: url(./images/menu04.png) no-repeat;
	background-size: 50px;
	background-position: 15px 20px;
}

nav div ul li:nth-child(4) a:hover{
	background: url(./images/menu04_o.png) no-repeat;
	background-size: 50px;
	background-position: 15px 20px;
	background-color: #eee;
}


nav div ul li:nth-child(5) a{
	background: url(./images/menu05.png) no-repeat;
	background-size: 35px;
	background-position: 25px 20px;
}

nav div ul li:nth-child(5) a:hover{
	background: url(./images/menu05_o.png) no-repeat;
	background-size: 35px;
	background-position: 25px 20px;
	background-color: #eee;
}

nav div ul li:nth-child(6) a{
	background: url(./images/menu06.png) no-repeat;
	background-size: 50px;
	background-position: 15px 20px;
}

nav div ul li:nth-child(6) a:hover{
	background: url(./images/menu06_o.png) no-repeat;
	background-size: 50px;
	background-position: 15px 20px;
	background-color: #eee;
}

nav div ul li:nth-child(7) a{
	background: url(./images/menu07.png) no-repeat;
	background-size: 40px;
	background-position: 20px 20px;
}

nav div ul li:nth-child(7) a:hover{
	background: url(./images/menu07_o.png) no-repeat;
	background-size: 40px;
	background-position: 20px 20px;
	background-color: #eee;
}

nav div ul li:nth-child(8) a{
	background: url(./images/menu09.png) no-repeat;
	background-size: 50px;
	background-position: 15px 22px;
}

nav div ul li:nth-child(8) a:hover{
	background: url(./images/menu09_o.png) no-repeat;
	background-size: 50px;
	background-position: 15px 22px;
	background-color: #eee;
}

nav div ul li:nth-child(9) a{
	background: url(./images/menu08_eng.png) no-repeat;
	background-size: 40px;
	background-position: 20px 25px;
}

nav div ul li:nth-child(9) a:hover{
	background: url(./images/menu08_o_eng.png) no-repeat;
	background-size: 40px;
	background-position: 20px 25px;
	background-color: #eee;
}


header div#logo_area.col-sm-4{
	width: 31.5%;
}

nav#menu div.col-sm-8{
	width: 68.5%;
}

nav#menu div.col-sm-4{
	width: 31.5%;
}



nav div > ul > li > a{
	border-left:1px solid #ccc;	
	
}

nav div ul ul{
	display:none;
	position:absolute;
	z-index:100;
	background-color:#333;
	color:#fff;	
}

nav div ul li a span{
		position: relative;
		top: 70px;
		display: block;
		line-height: 1.0em;
	}

nav div ul li:last-child a{
	border-right:1px solid #ccc;
}

nav div ul li a:hover{
	background-color:#eee;
	color:	#0a1054;
	text-decoration:none;
}

nav#menu .col-sm-8{
	padding-right: 0;
}

nav#menu .col-sm-8 ul li{

}



/***************************************************************
5 toppage section
***************************************************************/

/* autoHeight.jquery */

div.item{
	margin-bottom:10px;
	height:auto;
}

div.item div{
	border:1px solid #ccc;
	padding:2px 4px;
}

/* nivo-slider */

.theme-default .nivoSlider {
	margin-bottom: 0px;
}

section#news h2{
	background-color: #e6e6e6;
	padding: 15px;
	text-align: center;
	font-size: 27px;
	color: #0a1054;
}

section#news h2 img{
	width: 30px;
	margin-right: 20px;
}


section#news ul li{
	border-bottom: 1px dashed #ccc;
	padding: 10px 0;
}

section#news ul li:after{
	clear: both;
	content: '';
	display: table;
}

div#main_content section#news ul li:before{
	content: none;
}

section#banner{
	margin: 40px; 0;
}

section#banner ul li{
	width: 19%;
	float: left;
	margin-right: 1%;
}

section#banner ul li:last-child{
	margin-right: 0;
}

section#banner ul li img{
	width: 100%;
	height: auto;
}

section#content p{
	padding: 30px 30px 10px;
}

section#banner img{
	border: 1px solid #ccc;
}

/***************************************************************
6 footer
***************************************************************/

footer{
	background-color:#0a1054;
	color:#fff;
	text-align:center;
	font-size:12px;	
	padding:6px;
}


/***************************************************************
7 breadcrumb
***************************************************************/
#breadcrumb{
	margin:15px 0px;
}
#breadcrumb ul li{
	float:left;
	margin:0px 10px;
}


/***************************************************************
8 sidebar
***************************************************************/

div#sidebar{
	border:1px solid #0a1054;
	padding:0px;
	margin-bottom:20px;
}

div#sidebar h2{
	color:#0a1054;
	font-size:18px;
	font-weight: bold;
	margin:0px;
	padding:15px 10px;	
}

div#sidebar h2 i{
	display:none;
	float:right;
}

div#sidebar ul{
	margin-bottom:0px;
}

div#sidebar ul li{
	background-color:#fff;	
}

div#sidebar ul li a{
	display:block;
	min-height:40px;	
	padding:10px;
	margin: 0 10px;
	border-bottom:6px solid #eee;
	color:#666;
}

div#sidebar ul.about li a{
	font-size: 12px;
	text-indent: -1.4em;
	padding-left: 2em;	
}

div#sidebar ul.about li a:after{
	left: 18px;
	position: relative;
}

div#sidebar ul li:last-child a{
	border-bottom: none;
}

div#sidebar ul li a:hover{
	background-color:#eee;
	text-decoration:none;	
}

div#sidebar ul li a:after{
	font-family: FontAwesome;
 	content: '\f101';
	float: right;
}


div#sidebar ul li ul li{

}

div#sidebar ul li ul li a{
	background-color:#eee;	
	min-height:40px;
	padding:10px 10px 10px 20px;
	border-bottom:1px solid #ccc;
	color:#666;	
}

div#sidebar ul li ul li a:hover{
	background-color:#eee;
	text-decoration:none;		
}





/***************************************************************
9 main_content
***************************************************************/


div#main_content{
	padding:0px;
}


div#main_content h1{
	padding:20px 10px 10px 0;
	margin-top:0px;
	margin-bottom: 0;
	font-size:24px;
	font-weight: bold;
	color: #0e1446;
}

div#main_content div#content_area{
	padding:10px 0;	
	min-height:500px;
}


div#main_content h2{
	font-size:18px;
	font-weight: bold;
	margin:20px 0px;
	padding:15px;
	background-color: #eee;
	border-left: 4px solid #0a1054;
}

div#main_content h3{
	font-size:18px;
	padding:8px;
	margin:30px 0px 20px 0px;
	border-left: 6px solid #0a1054;
	background-color: transparent;
}

div#main_content h4{
	border-left:3px solid #ccc;
	padding:10px 20px;
	margin:20px 0px;
	font-size:16px;
}

div#main_content h5{
	font-size:14px;
	padding:20px 10px 10px 10px;
	border-bottom: 1px solid #ccc;
}


div#main_content div.clearfix{
	margin-bottom:30px;	
}

div#main_content table tr td{
	border:1px solid #ccc;
	padding:15px 10px;
}

div#main_content table tr th{
	font-weight: 400;
	background-color: #eee;
	color:#000;
	padding:15px 20px;	
	border:1px solid #ccc;
}

div#main_content table.bgcolor tr:nth-child(2n)
{
	background-color:#efefef;
}

div#main_content ul li:before{
	font-family: FontAwesome;
 	content: '\f101';
	padding-right: 10px;
}


div#main_content ul li ul{
	margin-left:20px;	
}


div#main_content table.responsive{
	
}

div#main_content table.responsive th,
div#main_content table.responsive td{
	padding: 6px 2px;
	text-align:center;
}

div#main_content table.responsive th,
div#main_content table.toggle_next th,
div#main_content table.toggle_nextall th{
	font-weight:bold;
	border-bottom:1px solid #fff;
	border-right: 1px solid #fff;
}



div#main_content table.toggle_next tr td,
div#main_content table.toggle_next tr th,
div#main_content table.toggle_nextall tr td,
div#main_content table.toggle_nextall tr th  {
    padding: 5px 20px;
}

div#main_content table.toggle_next th,
div#main_content table.toggle_nextall th{
	text-align:center;
}

div#main_content table.toggle_next .toggle,
div#main_content table.toggle_nextall .toggle{
	cursor:pointer;
}


div#main_content div.slider-wrapper{
	width:50%;
	margin:10px auto;
}

div#main_content div.slider-wrapper div.nivo-controlNav{
	display:none;	
}

div#main_content div.about img{
	margin: 20px auto;

}

div.staff img{
	width: 220px;
}

div#main_content table.access tr td{
	width: 50%;
}

div#main_content table.access tr td:nth-child(1){
	padding-left: 50px;
}

div#main_content div.profile div.name{
	font-size: 20px;
	color: #0e1446;
	background-color: transparent;
	border: none;
	font-weight: bold;
	margin-bottom: 20px;
}

div#main_content div.profile tr td.profile_right{
	padding-left: 30px;
}

div#main_content div.profile table tr td.style2{
	padding: 15px 0 0 0;
	border-left: none;
	border-right: none;
}

div#main_content div.profile table tr td h1{
	font-size: 20px;
}

div#main_content div.profile table tr td h2{
	margin: 20px 0 0;
	border-left: 1px solid #ccc;
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
}

div#main_content div.profile table tr td{
	padding: 6px;
}

div.publication h3{
	font-style: italic;
}

ul.line{
	border-bottom: 1px dashed #ccc;
	padding-bottom: 4px;
}

div.publication img{
	width: 500px;
	height: auto;
	border: 1px solid #ccc;
	padding: 10px;
	margin-bottom: 4px;
	margin-top: 10px;
}

/********************************************************************
10 PC
********************************************************************/

@media (min-width: 768px) {
	
	.sp_none{
		
	}
	
	.pc_none{
		display:none;
	}
	
	body{
		min-width:1024px;
	}
	
	div#sp_menu{
		display:none;	
	}
}


/********************************************************************
10 SP
********************************************************************/

@media (max-width: 767px) {
	
	.sp_none{
		display:none;
	}
	
	.pc_none{
		
	}
	
	header{
		min-height: auto;
	}
	
	header div#search_area{
		display:none;
	}
	
	#breadcrumb{
		clear: both;
	}
	
	header div#logo_area{
		padding:0px;
	}
	
	header div#logo_area img{
		width:100%;
		margin-top: 10px;
		margin-bottom: 10px;
	}
	
	header div#logo_area.col-sm-4{
		width: 80%;
	}
	
	nav{
		display:none;	
		min-width:100%;
		background-image:none;
		z-index:1000;
		position:absolute;
		
	}
	
	nav ul{
		width:100%;
		background-color: #aaa;
	}

	nav div ul:after{
		clear:both;
		content: '';
		display: table;
	}
	
	nav ul li{
		width:50%;	
		float:left;
		background-color:#aaa;
	}
	
	nav div ul li{
	height: 50px;
	}
	
	nav div ul li a{
		color: #fff;
		font-size: 14px;
		padding-top: 10px;
		min-height: auto;
		padding-top: 15px;
	}

	
	nav div ul li:nth-child(1) a ,
	nav div ul li:nth-child(2) a ,
	nav div ul li:nth-child(3) a ,
	nav div ul li:nth-child(4) a ,
	nav div ul li:nth-child(5) a ,
	nav div ul li:nth-child(6) a ,
	nav div ul li:nth-child(7) a ,
	nav div ul li:nth-child(8) a ,
	nav div ul li:nth-child(9) a {
	background:none;
	}
	
	nav div ul li:nth-child(1) a:hover ,
	nav div ul li:nth-child(2) a:hover ,
	nav div ul li:nth-child(3) a:hover ,
	nav div ul li:nth-child(4) a:hover ,
	nav div ul li:nth-child(5) a:hover ,
	nav div ul li:nth-child(6) a:hover ,
	nav div ul li:nth-child(7) a:hover ,
	nav div ul li:nth-child(8) a:hover ,
	nav div ul li:nth-child(9) a:hover{
	background:none;
	}
	
	nav div ul li a span{
		position: static;
	}
	
	nav div ul li:nth-child(8) a{
		width: auto;
	}
	
	.wrapper{
		width:100% !important;	
		min-width:100% !important;
	}
	
	
	div#main_content{
		border:none;
		padding:0px;
	}
	
	div#main_content h3{
		font-size: 17px;
	}
	
	div#main_content div#content_area{
		padding:0px;
	}
	
	img.full{
	width:100%;
	}

	
	.left, .right, .left_column, .right_column{
		float:none !important;
		margin:0px auto;	
	}


	section#process ul li{
		padding:60px 5px 10px 5px;
		margin:4px 5px;
	}


	div#sp_menu{
		position:absolute;
		right:20px;
		top:20px;
		display:block;	
	}

	div#sidebar ul{
		display:none;	
	}
	
	div#sidebar h2{
		cursor:pointer;	
	}
	
	div#sidebar h2 i{
		display:inherit;
	}
	
	section#eyecatch img{
	width: 100%;
	}
	
	
	header div.wrapper{
	position: static;
	}
	
	nav{
		position: static;
		top: 0px;
	}

	nav#menu div.col-sm-8{
		padding-left: 0;
		width: 100%;
	}

		div#main_content div.staff table tr td{
			display: block;
			text-align: center;
	}

	div#main_content div.profile tr td.profile_left{

	}

	div#main_content div.profile tr td.profile_right{
		padding-left: 4px;
		font-size: 15px;

	}

	div#main_content div.profile div.name{
		font-size: 15px;
	}
	
	div#main_content table.staff{
		border: 1px solid #ccc;
	}
	
	div#main_content table.staff tr th{
		padding: 10px;
		width: 100%;
		display: inline-block;
		border: none;
		border-top: 1px solid #ccc;
	}
	
	div#main_content table.staff tr td{
		padding: 10px;
		width: 100%;
		display: inline-block;
		border: none;
	}
	
	div#main_content table.access tr td{
		display: inline-block;
		width: 100%;
	}
	
	div#main_content table.access tr td:nth-child(1){
		padding-left: 10px;
	}
	
	div.publication img{
		width: 100%;
	}
	
	.profile_right ul li{
		text-indent: -1.3em;
		padding-left: 1.5em;
	}
	
	section#news .col-xs-4{
		width: 100%;
	}
	
	section#banner ul{
		margin-bottom: 0;
	}
	
	section#banner ul li{
		width: 100%;
		margin-bottom: 10px;
	}
	
	section#banner ul li img{
		width: 100%;
	}
	
	section#banner{
		margin: 10% 15%;
	}
	
	iframe{
		width: 100%;
	}
	
}



/********************************************************************
41 Print
********************************************************************/


@media print {
	

	a[href]:after{
	content: ""!important;
	}

	abbr[title]:after{
	content: ""!important;
	} 	
	
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left;
  }
  .col-sm-12 {
    width: 100%;
  }
  .col-sm-11 {
    width: 91.66666667%;
  }
  .col-sm-10 {
    width: 83.33333333%;
  }
  .col-sm-9 {
    width: 75%;
  }
  .col-sm-8 {
    width: 66.66666667%;
  }
  .col-sm-7 {
    width: 58.33333333%;
  }
  .col-sm-6 {
    width: 50%;
  }
  .col-sm-5 {
    width: 41.66666667%;
  }
  .col-sm-4 {
    width: 33.33333333%;
  }
  .col-sm-3 {
    width: 25%;
  }
  .col-sm-2 {
    width: 16.66666667%;
  }
  .col-sm-1 {
    width: 8.33333333%;
  }
  .col-sm-pull-12 {
    right: 100%;
  }
  .col-sm-pull-11 {
    right: 91.66666667%;
  }
  .col-sm-pull-10 {
    right: 83.33333333%;
  }
  .col-sm-pull-9 {
    right: 75%;
  }
  .col-sm-pull-8 {
    right: 66.66666667%;
  }
  .col-sm-pull-7 {
    right: 58.33333333%;
  }
  .col-sm-pull-6 {
    right: 50%;
  }
  .col-sm-pull-5 {
    right: 41.66666667%;
  }
  .col-sm-pull-4 {
    right: 33.33333333%;
  }
  .col-sm-pull-3 {
    right: 25%;
  }
  .col-sm-pull-2 {
    right: 16.66666667%;
  }
  .col-sm-pull-1 {
    right: 8.33333333%;
  }
  .col-sm-pull-0 {
    right: auto;
  }
  .col-sm-push-12 {
    left: 100%;
  }
  .col-sm-push-11 {
    left: 91.66666667%;
  }
  .col-sm-push-10 {
    left: 83.33333333%;
  }
  .col-sm-push-9 {
    left: 75%;
  }
  .col-sm-push-8 {
    left: 66.66666667%;
  }
  .col-sm-push-7 {
    left: 58.33333333%;
  }
  .col-sm-push-6 {
    left: 50%;
  }
  .col-sm-push-5 {
    left: 41.66666667%;
  }
  .col-sm-push-4 {
    left: 33.33333333%;
  }
  .col-sm-push-3 {
    left: 25%;
  }
  .col-sm-push-2 {
    left: 16.66666667%;
  }
  .col-sm-push-1 {
    left: 8.33333333%;
  }
  .col-sm-push-0 {
    left: auto;
  }
  .col-sm-offset-12 {
    margin-left: 100%;
  }
  .col-sm-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-sm-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-sm-offset-9 {
    margin-left: 75%;
  }
  .col-sm-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-sm-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-sm-offset-6 {
    margin-left: 50%;
  }
  .col-sm-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-sm-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-sm-offset-3 {
    margin-left: 25%;
  }
  .col-sm-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-sm-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-sm-offset-0 {
    margin-left: 0%;
  }
	

  .sp_none{
	display:block !important;
  }
	
  .pc_none{
	display:none !important;
  }
	
  .wrapper{
	width:1024px !important;	
	min-width:1024px !important;
  }	
	
  nav{
	display:block !important;
	float:none !important;
	position:relative !important;
  }
	
  nav ul li{
	width:auto !important;
  }

  div#search_area{
	display:block !important;
  }	
	
  div#sp_menu{
	display:none;	
  }
	
  div#search_area{
	display:block;
  }
	
  div#sidebar ul{
	display:block !important;	
	position: relative;
  }
	
  div#sidebar h2 i{
    display:none !important;
  }	
	
  .left, .left_column{
	float:left !important;
  }
	
  .right, .right_column{
	float:right !important;
  }	
	
}

