body {
	margin: 0;
	padding: 0;
	font-family:Helvetica,sans-serif;
	font-size: 14px;
	line-height: 1.6;
	color: #000;
	background-color: #fff;
	-webkit-text-size-adjust: 100%;
}
img {
	height: auto;
}
p {
	margin: 0;
}
#main-box p {
	margin-bottom: 10px;
	line-height: 2.0;
}
hr {
	clear: both;
}
.clearfix {
	clear: both;
}
ol li {
	margin-bottom: 10px;
	margin-left: -10px;
}
.page-header {
	padding: 0;
	margin: 0;
	border: none;
}
.moduletable {
	margin-bottom: 0;
	padding: 0;
}
/*=======================================================================
  共通
=======================================================================*/

html {
	overflow: auto;
}
#wrap {
	overflow-x: hidden;
	position: relative;
	margin: 0 auto 0;
	padding: 0 0 0;
}
/* header
____________________________________________________________________ */
.header {
	line-height: 1;
}
#header .container {
	position: relative;
}
.navbar-default {
	background-color: transparent;
	border: none;
}
.navbar {
	border: 1px solid transparent;
	margin-bottom: 0;
	min-height: 50px;
	position: relative;
}
/* guide
_____________________________________________________________________ */
.lan {
	position: absolute;
	top: 0;
	left: 0;
	width: 192px;
	line-height: 1;
	z-index: 99;
}
/* search
_____________________________________________________________________ */

.search-box {
	position: absolute;
	top: 0;
	right: 202px;
	width: 190px;
	line-height: 1.4;
	z-index: 90;
}
.input-wrap {
	box-sizing: border-box;
	background-color: #e6e6e6;
	height: 30px;
	padding: 2px;
}
.input-wrap span.icon-search {
	margin: 5px 0 0 5px;
	color: #afafaf;
}
.input-wrap input.inputbox {
	border: none;
	background-color: #e6e6e6;
}
.navbar-header {
	position: relative;
}
#brand {
	float: none;
	margin: 20px auto 10px;
	padding-left: 0;
	padding-top: 0;
	width: 290px;
}
#brand img {
	width: 290px !important;
	padding: 0;
}


/*
.navbar-collapse {
	border-top: 2px solid #00468c !important;
	border-bottom: 2px solid #00468c !important;
	margin: 0 -250% !important;
	padding: 0 250% !important;
}
*/

.navigation {
	margin: 0 auto;
}
.breadcrumb {
	background-color: #fff;
	text-align: right;
	padding: 12px 15px;
}
.breadcrumb a {
	color: #0085c7;
}





/*=======================================================================
  footer
=======================================================================*/
#footer {
	color: #333;
	background-color: #fff;
	min-height: 100px;
	padding:0 0 20px 0;
	overflow: hidden;
}
#footer ul.infonav {
	color:#fff;
	background-color:#005ca0;
	text-align:center;
	margin: 0 -250% 20px!important;
	padding: 8px 250% !important;
	}
#footer ul.infonav li {
	border-right: 1px solid #ccc;
	display: inline;
	list-style-type: none;
	margin: 0 3px 0 0;
	padding: 0 2px 0 0;
	text-decoration: none;
	font-size: 13px;
}
#footer ul.infonav li:first-child {
	border-left: 1px solid #ccc;
	padding-left: 2px;
}
#footer ul.infonav li a {
	color: #fff;
	text-decoration: none;
	display: inline;
}
#footer ul.infonav li a:hover {
	color: #3487c9;
	text-decoration: none;
}
#footer .f-logo img {
	width: 295px;
	margin-bottom: 15px;
}
#footer .copy {
	margin-bottom: 10px;
	color: #333;
	font-size: 11px;
	clear: both;
}



@media screen and (max-width:480px) {
#brand { /* template css */
	float: left;
	margin: 50px auto 20px;
	padding-left: 50px;
}
#footer .address {
	text-align: left;
	margin: 0 auto;
	line-height: 1.2;
	display: inherit;
}
#footer .address p {
	display: inherit;
	vertical-align: middle;
	text-align: center;
}
}

@media (max-width: 767px) {
.header--fixed {
	position: relative;
}
section {
	margin-top: auto;
	padding-top: inherit;
}
#container {
	padding-bottom: 30px;
}
.nav-justified > li > a {
	margin-bottom: 5px;
	text-align: left;
	border-bottom: solid 1px #333;
}
/* nav menu
_____________________________________________________________________ */
ul.sp-gnav {
	margin: 0;
	overflow: hidden;
	padding: 0;
	width: 100%;
	background-color: #f2f2f2;
}
ul.sp-gnav li {
	list-style-type: none;
	margin: 0;
	padding: 0;
	border-top: #00468c 1px solid;
	width: 50%;
	display: inline-block;
	background-color: #f2f2f2;
	vertical-align:top;
}
ul.sp-gnav li a {
	position: relative;
	padding: 12px 16px 12px 10px;
	color: #222;
	display: block;
	font-weight: bold;
	line-height: 1.5;
	text-decoration: none;
	
}
ul.sp-gnav li a:after {
	display: block;
	position: absolute;
	top: 50%;
	right: 10px;
	width: 7px;
	height: 7px;
	margin-top: -4px;
	border-top: solid 2px #00468c;
	border-right: solid 2px #00468c;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	content: "";
}
ul.sp-gnav li a:hover {
	background-color: #ccc;
	text-decoration: underline;
	color: #00468c;
}

}


@media (min-width: 768px) {
	#navigation{background-color:#fff;}

/*fixed */
.headroom--unpinned .navbar-collapse {
    position:fixed;
}

.headroom--unpinned {
	transform: translateY(-121px);
}

section {
	margin-top: auto;
	padding-top: 121px;
}

.container > .navbar-header {
	padding: 0;
}
.navbar-header { /* bootstrap css */
	float: none;
}

#brand {
	float: none;
	margin: 20px 0;
	padding-left: 0;
	padding-top: 0;
	width: 380px;
}
#brand img {
	width: 380px !important;
	padding: 0;
}
.lan {
	position: absolute;
	top: 0;
	left: inherit;
	right: 0;
}


/* cat-home tmp */

#cat-home header .navbar {
	background-color: #fff;
}
#breadcrumbs {
	text-align: right;
	display: inherit;
}
.breadcrumb {
	list-style: outside none none;
	margin-bottom: 0;
	background-color: transparent;
	font-size: 12px;
}
.breadcrumb a {
	color: #6293c9;
}
/* global nav
_____________________________________________________________________ */

ul.globalnav {
	margin: 0 auto 14px;
	padding: 0;
	width: 720px;
	zoom: 1;
}


ul.globalnav:after{
  height:0;
  visibility:hidden;
  content: ".";
  display:block;
  clear:both;
}

ul.globalnav li{
	margin:0;
  padding:0;
  display:inline;
  float:left;
  list-style-type:none;
  width:122px;
  line-height:1;
}
ul.globalnav li.gnav01{width:111px;}
ul.globalnav li.gnav05{width:121px;}


ul.globalnav li a{
  display:block;
  background:transparent url(../images/en_gnav_bg.png) no-repeat scroll 0 0;
	background-size:720px;
}

ul.globalnav li.gnav01 a{ background-position:0 0;}
ul.globalnav li.gnav02 a{ background-position:-111px 0;}
ul.globalnav li.gnav03 a{ background-position:-233px 0;}
ul.globalnav li.gnav04 a{ background-position:-355px 0;}
ul.globalnav li.gnav05 a{ background-position:-477px 0;}
ul.globalnav li.gnav06 a{ background-position:-598px 0;}

ul.globalnav li a:hover{background-color:transparent;}

ul.globalnav li a:hover img,
#cat-home ul.globalnav li.gnav01 a img,
#cat-messages ul.globalnav li.gnav02 a img,
#cat-outline ul.globalnav li.gnav03 a img,
#cat-field ul.globalnav li.gnav04 a img,
#cat-access ul.globalnav li.gnav05 a img,
#cat-contact ul.globalnav li.gnav06 a img{
  visibility:hidden;
}




h1.pagetitle{
	margin:0;
	padding:0;
	background: url(../images/pagetitle_bg02.png) no-repeat scroll 0 0 transparent;
	line-height:1;
	color:#fff;
	height:100px; 
}
h1.pagetitle img{
    width:250px
}

}



@media (min-width: 992px) {
.container {
	width: 1000px;
}
#container.col-md-9 {
	width: 730px;
}
#sidebar-2.col-md-3 {
	width: 270px;
}

/*fixed */
.headroom--unpinned .navbar-collapse {
    position: relative;
}



.headroom--unpinned {
	transform: translateY(-130px);
}

section {
	margin-top: auto;
	padding-top: 130px;
}



#brand {
	float: none;
	margin: 20px 0 20px;
	padding-left: 0;
	padding-top: 0;
	width: 380px;
}
#brand img {
	width: 380px !important;
	padding: 0;
}


/* global nav
_____________________________________________________________________ */

ul.globalnav{
	margin:0 0 10px;
  padding:0;
  width:970px;
  zoom:1;
}

ul.globalnav:after{
  height:0;
  visibility:hidden;
  content: ".";
  display:block;
  clear:both;
}


ul.globalnav li{
	margin:0;
  padding:0;
  display:inline;
  float:left;
  list-style-type:none;
  width:164px;
  line-height:1;
}
ul.globalnav li.gnav01{width:150px;}
ul.globalnav li.gnav05{width:164px;}


ul.globalnav li a{
  display:block;
  background:transparent url(../images/en_gnav_bg.png) no-repeat scroll 0 0;
}

ul.globalnav li.gnav01 a{ background-position:0 0;}
ul.globalnav li.gnav02 a{ background-position:-150px 0;}
ul.globalnav li.gnav03 a{ background-position:-314px 0;}
ul.globalnav li.gnav04 a{ background-position:-478px 0;}
ul.globalnav li.gnav05 a{ background-position:-642px 0;}
ul.globalnav li.gnav06 a{ background-position:-806px 0;}



#footer .copy {
	text-align: right;
}





/*=======================================================================
  bottom
=======================================================================*/

/* bottomnav
____________________________________________________________________ */

ul.bottomnav {
	margin: 0;
	padding: 0;
	clear: both;
	list-style-type: none;
}
ul.bottomnav li {
	margin: 0 10px 0 0;
	padding: 0;
	text-align: center;
	width: 186px;
	display: inline;
	float: left;
}
ul.bottomnav li:last-child {
	margin: 0;
}
ul.bottomnav li a {
	position: relative;
}
ul.bottomnav li a:hover {
	background-color: transparent;
}



/* 半透明設定
_____________________________________________________________________ */
a:hover img {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}
}

@media (min-width: 1200px) {
.container {
	width: 1000px;
}
}
/*=======================================================================
  main 
=======================================================================*/



/* h1
_____________________________________________________________________ */

#main h1 {
	background: #00468c;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	margin: 0 0 30px;
	padding: 10px 15px;
	line-height: 1.4;
	position: relative;
	clear: both;
}
#main h1:before {
	content: "";
	position: absolute;
	bottom: -23px;
	left: 5%;
	border: 12px solid transparent;
	border-top: 12px solid #00468c;
}
h2 {
	margin: 50px 0 20px;
	padding: 0 0 0 20px;
	color: #00468C;
	font-size: 18px;
	font-weight: bold;
	line-height: 2.78;
	height: 50px;
	background-color: #e6e6e6;
	border-left: 7px solid #00468C;
	overflow: hidden;
	clear: both;
}

#cat-home #main-box{text-align:center;}
#cat-home h2{
	margin:30px auto;
	padding:2px;
	font-family: Garamond , "Times New Roman" , serif;
	font-size:24px;
	height:inherit;
	line-height:1.4;
	background-color:#fff;
	border-bottom:2px solid #00468C;
	border-left: none;
	text-align:center;
	display:inline-block;
}


#main-box h3 {
  margin:40px 0 20px;
  padding:6px 0 6px 40px;
  color:#fff;
  font-size:18px;
  font-weight:bold;
  line-height:1.4;
border-radius: 20px;
-webkit-border-radius: 20px;
-moz-border-radius: 20px;
background: url(../images/tit02.png) no-repeat scroll 15px center #00468c;
  clear:both;
}
#main-box h3.outline{padding:6px 0 6px 50px; background: url(../images/tit02a_bg.png) no-repeat scroll 0 center #00468c;}
#main-box h3.theme{padding:6px 0 6px 50px; background: url(../images/tit02b_bg.png) no-repeat scroll 0 center #00468c;}
#main-box h3.staff{padding:6px 0 6px 50px; background: url(../images/tit02c_bg.png) no-repeat scroll 0 center #00468c;}
#main-box h3.perf{padding:6px 0 6px 50px; background: url(../images/tit02d_bg.png) no-repeat scroll 0 center #00468c;}


.categories-listcat-field h3.page-header,
.blogcat-field h3.page-header{
	background-color:#fff;
    border: 2px solid #ccc;
    margin: 0 0 20px;
    padding:4px 20px;
}

.box-line2 h3 {
	margin: 0 0 10px;
}




#cat-access #main-box h3{
	margin:20px 0 20px;
	padding:0 0 3px;
	border-bottom:2px solid #999;
  color:#00468C;
  font-size:18px;
  font-weight:bold;
  line-height:1.4;
  clear:both;
border-radius:0;
-webkit-border-radius:0;
-moz-border-radius: 0;
	background-color:#fff;
	}
#cat-access h3 img {margin-right:15px;}







#sidebar-2 h3 {
	margin: 0;
	padding: 16px 4px;
	font-size: 16px;
	color: #fff;
	font-weight: normal;
	text-align: center;
	background-color: #00468c;
	clear: both;
}
h4 {
	margin: 30px 0 10px;
	padding: 4px 0 2px 25px;
	color: #000;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.4;
	clear: both;
	background: url(../images/tit01.png) no-repeat scroll 0 0.5em transparent;
}

.well h4 {
    margin: 0;
    padding: 4px 0 2px 25px;
    color: #000;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.4;
    clear: both;
    background: url(../images/tit01.png) no-repeat scroll 0 0.5em transparent;
}



.box-line h4, .box-g h4 {
	margin: 0 0 10px 0;
	padding: 0;
	background-image: none;
	font-size: 20px;
	font-weight: normal;
}
.box-line2 h4 {
	margin: 0 0 10px 0;
	padding: 0;
	background-image: none;
	font-size: 20px;
	color:#00468c;
}


h5 {
	margin:30px 0 10px;
    color:#00468c;
    font-size:16px;
	font-weight:bold;
}

#cat-field h5 {
	margin-top:0;
}



/* font
_____________________________________________________________________ */
.red-b {
	color: #e53828;
	font-weight: bold;
}
.blue-b {
	color: #0096e5;
	font-weight: bold;
}
.green-b {
	color: #8cc63f;
	font-weight: bold;
}
.pink-b {
	color: #fd75a7;
	font-weight: bold;
}
.telno,
.tel {
	font-size: 20px;
	font-weight: bold;
	color:#00468c;
}
/* layout
_____________________________________________________________________ */
.clear {
	clear: both;
}
.right {
	text-align: right;
}
.left {
	text-align: left;
}
.center {
	text-align: center;
}
.float-left {
	float: left;
}
.float-right {
	float: right;
}
.vatop {
	vertical-align: top;
}
.thumbs_left {
	float: left;
	margin: 0 20px 30px 0;
}
.thumbs_right {
	float: right;
	margin: 0 0 30px 20px;
}
/* list
_____________________________________________________________________ */
ul.list-ico {
	margin: 0;
	padding: 0;
	list-style: none outside none;
}
ul.list-ico li {
	margin: 0 0 5px;
	padding: 2px 0 2px 18px;
	background: url(../images/ico_circle1.gif) no-repeat scroll 0 0.4em transparent;
	min-height: 1em;
}
/* more
_____________________________________________________________________ */

.more {
	margin: 0 0 10px 0;
	padding: 0;
	list-style: none outside none;
}
.more a {
	margin: 0 0 5px;
	padding: 4px 0 4px 10px;
	background: url(../images/ico_mnav01.png) no-repeat scroll 0 center transparent;
	line-height: 1.6;
	min-height: 1em;
}

ul.more li {
padding: 0 0 10px 0;
}

ul.more,
ul.more-4c {
	position: relative;
	margin: 0 0 30px;
	padding: 10px 0 0;
	width: 100%;
	zoom: 1;
}
ul.more {
    margin: 0 0 10px;
}
.well ul.more {
    margin: 0 0 0 20px;
}
ul.more:after,
ul.more-4c:after {
	height: 0;
	visibility: hidden;
	content: ".";
	display: block;
	clear: both;
}
ul.more-4c li {
	margin: 0;
	padding: 0 1% 10px 0;
	font-size: 14px;
	list-style-type: none;
	float: left;
	display: inline;
	width: 24%;
}
ul.more li {
    display:block;
    width:auto;
    float:left;
    margin-right:5px;
    padding:0 10px 5px 0;
}
ul.more li a,
ul.more-4c li a {
	margin: 0 0 2px;
	padding: 4px 10px 4px 10px;
	color: #00468c;
	display: block;
	line-height: 1.6;
	background: url(../images/ico_mnav01.png) no-repeat scroll 0 center transparent;
}
ul.more li a:hover,
ul.more-4c li a:hover {
	color: #0078c8;
	background-color: #efefef;
}


/* more2
_____________________________________________________________________ */

.more2 {
	margin: 20px 0 30px;
	padding: 0;
	list-style: none outside none;
	display: block;
	clear: both;
}
.more2 a {
	padding: 13px 20px 13px 32px;
	background-color: #6690ba;
	line-height: 1.5;
	color: #fff;
	font-weight: bold;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
}
.more2 a:hover {
	background-color: #3e6e96;
}
/* clear
_____________________________________________________________________ */

.box-line2:before, .box-line2:after, .box-line:before, .box-line:after, .box-g:before, .box-g:after {
	display: table;
	content: " ";
}
.box-line2:after, .box-line:after, .box-g:after {
	clear: both;
}
/* box
_____________________________________________________________________ */


.box-line {
	margin: 10px 0 30px;
	padding: 20px;
	border : 1px solid #00468c;
	border-radius: 6px;
}
.box-line2 {
	padding: 20px;
	margin-bottom: 20px;
	border : 2px solid #00468c;
}

#main-box .box-line2 p,
#main-box .box-line p {
	margin-bottom: 0;
	line-height: 1.8;
}
.box-line2 ul.mnav-3c {
	margin-bottom: 0;
}
.box-line2 ol,
.box-line ol {
	margin: 0;
}
.box-line2 ol li {
	margin-bottom: 1px;
}
.box-line2 ol li:last-child, .box-line ol li:last-child {
	margin-bottom: 0;
}
.box-g {
	margin: 10px 0 30px;
	padding: 20px;
	border-radius: 6px;
	background-color: #e5ecf3;
}
/* table ta-type1
_____________________________________________________________________ */

table.ta-type1 {
	margin : 5px 0 20px 0;
	border-collapse : collapse;
	border : 2px solid #00468c;
	width: 100%;
}
#cat-field table.ta-type1 {
  border-right :none;
  border-left : none;
	}

table.ta-type1 th {
	padding : 8px;
	color: #000;
  background-color:#e5ecf3;
  border-bottom : 2px solid #00468c;
	font-weight: bold;
	vertical-align: top;
	text-align: left;
}
table.ta-type1 td {
	padding : 8px;
	border : 2px solid #00468c;
	vertical-align: top;
}

#cat-field table.ta-type1 td {
  padding : 5px 8px;
  border-bottom : 1px solid #00468c;
  border-right :none;
  border-left : none;
  vertical-align:top;
}

/* table ta-line
_____________________________________________________________________ */

table.ta-line {
	margin : 5px 0 10px 0;
	border-collapse: collapse;
	border-spacing: 0;
	empty-cells: show;
	width: 100%;
}
table.ta-line-f {
	margin : 5px 0 10px 0;
	border-collapse: collapse;
	border-spacing: 0;
	empty-cells: show;
}

table.ta-line th,
table.ta-line td,
 table.ta-line-f th,
 table.ta-line-f td {
	padding : 8px 10px 8px 10px;
	border-top: solid 1px #00468c;
	border-bottom: solid 1px #00468c;
	vertical-align: top;
}
table.ta-line th,
table.ta-line-f th {
	background-color: #f4f4f4;
	font-weight: bold;
	color: #000;
}


/* narrow */

table.narrow th,
table.narrow td {
	padding : 0;
	font-size: 13px;
}
table.narrow th {
	padding: 3px 5px;
	text-align: center;
}
table.narrow th a {
	color: #444;
	text-decoration: underline;
}
table.narrow th a:hover {
	background-color: #444;
	padding-left: 10px;
	padding-right: 10px;
	color: #fff;
	text-decoration: underline;
}
table.narrow td a {
	color: #19448e;
	display: inline-block;
	width: 100%;
	margin: 0;
	padding: 3px 5px;
	position: relative;
}
table.narrow td a:hover {
	display: block;
	background-color: #19448e;
	color: #fff;
	text-decoration: none;
	z-index: 10;
}


/* mnav
_____________________________________________________________________ */
ul.mnav,
ul.mnav-2c,
ul.mnav-3c {
	position: relative;
	margin: 0 0 30px;
	padding: 10px 0 0;
	width: 100%;
	zoom: 1;
}
ul.mnav:after, ul.mnav-2c:after, ul.mnav-3c:after {
	height: 0;
	visibility: hidden;
	content: ".";
	display: block;
	clear: both;
}
ul.mnav li,
ul.mnav-2c li,
ul.mnav-3c li {
	margin: 0;
	padding: 0 1% 10px 0;
	font-size: 14px;
	list-style-type: none;
	float: left;
	display: inline;
}
ul.mnav-2c li {
	width: 49%;
}
ul.mnav-3c li {
	width: 32%;
}
ul.mnav li a,
ul.mnav-2c li a,
ul.mnav-3c li a {
	margin: 0 0 2px;
	padding: 8px 10px 8px 25px;
	color: #00468c;
	border: 1px solid #00468c;
	border-radius: 20px;
	display: block;
	line-height: 1.3;
	background: url(../images/ico_mnav01.png) no-repeat scroll 15px center transparent;
}
#cat-field ul.mnav li{width:25%;}
#cat-field ul.mnav li a{
	padding: 4px 0 4px 10px;
	border:none;
	background: url(../images/ico_mnav02.png) no-repeat scroll 0 center transparent;
}

ul.mnav li a:hover, ul.mnav-2c li a:hover, ul.mnav-3c li a:hover {
	color: #0078c8;
	background-color: #e6e6e6;
}


/*=======================================================================
  listnews
=======================================================================*/
ul.listnews {
	margin: 0;
	padding: 0;
	list-style: none outside none;
	background-color: #fff;
}
ul.listnews li {
	margin: 0;
	padding: 0;
	border-bottom: 1px dotted #0078c8;
	list-style-type: none;
	text-align: left;
	text-decoration: none;
	width: 100%;
}
ul.listnews li a {
	margin: 0;
	padding: 10px 0 4px 0;
	line-height: 1.7;
	display: block;
	position: relative;
	color: #333;
	background-color: transparent;
	text-align: left;
	text-decoration: none;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100%;
}
ul.listnews li a:visited {
	color: #333;
	font-weight: bold;
	text-decoration: none;
}
ul.listnews li a:hover {
	background-color: #f2f2f2;
	color: #583c32;
}
ul.listnews li .postdate {
	padding: 0 15px 0 0;
	color: #007ce9;
}
ul.listnews li img {
	margin: 0;
	padding: 0 0 2px 0;
	vertical-align: middle;
}


@media print { /* 校正印刷用 */
    section {
	padding-top: 0;
    }
    #cat-field .container #main article {
	height: 251mm;
	page-break-after: always;
	position: relative;
    }
    #cat-field .container #main article div.page-header:before {
	position: absolute;
	right: 0;
	top: -20px;
	content: "Print CSS";
    }

header#header,
#breadcrumbs,
.infonav,
.back-to-top,
#sidebar-2,
#bottom {
display: none;
}

#main h1::before{border:none;}
h1{border-bottom:2px solid #333;}

}

/* Search Results */
#filter-search {
	vertical-align: top;
}
.search-box span.highlight {
	background-color: #FFFFCC;
	font-weight: bold;
	padding: 1px 4px;
}
