body {
	margin: 0;
	padding: 0;
	font-family: Helvetica, 'メイリオ', Meiryo,'YuGothic', 'Yu Gothic', '游ゴシック', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', sans-serif;
	font-size: 16px;
	line-height: 1.6;
	color: #4d4d4d;
	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;
}
/* header
____________________________________________________________________ */
#header {
	background-color:#fff;
}
.header {
	line-height: 1;
}
#header .container {
	position: relative;
}
.navbar-default {
	background-color: transparent;
	border: none;
}
.navbar {
	margin-bottom: 0;
	min-height: 50px;
	position: relative;
}


.navbar-header {
	position: relative;
}


#brand {
	float: none;
	margin: 0 auto;
	padding-top: 0;
	width: 280px;
}
#brand img {
	width: 280px !important;
	padding: 0;
}
.navigation {
	margin: 0 auto;
}
.breadcrumb {
	background-color: #fff;
	text-align: right;
	padding: 12px 15px;
}
.breadcrumb a {
	color: #0085c7;
}

/*=======================================================================
  home
=======================================================================*/
#cat-home #feature {
	padding-top: 30px;
	margin-bottom: 30px;
	text-align:center;
}


#cat-home .leading-0{
	padding:0;
	overflow: hidden;
  zoom: 1;
}

@media (min-width: 768px) {

#cat-home .leading-0{
	padding:40px 0;
}
}


#cat-home .leading-1,
#cat-home .leading-2{
  margin: 0 -250% !important;
  padding: 20px 250% 30px !important;
	background-color:#eefbff;
	overflow: hidden;
  zoom: 1;
}

/*=======================================================================
  footer
=======================================================================*/
#footer {
	border-top:#ccc 1px solid;
	min-height: 100px;
	padding:0 0 20px 0;
}


#footer ul.infonav {
	color:#fff;
	background-color:#555091;
	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: 410px;
	margin-bottom: 15px;
}
#footer .copy {
	margin-bottom: 10px;
	color: #666;
	font-size: 11px;
	clear: both;
}

@media screen and (max-width:480px) {
#brand { /* template css */
	float: left;
	margin: 0 auto;
	padding-left: 15px;
}
#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;
}

#header {
	background-color:#fff;
	border-bottom:#ccc 1px solid;}


section {
	margin-top: auto;
	padding-top: inherit;
}
#container {
	padding-top: 30px;
	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: #2b388f 1px solid;
	width: 100%;
	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 #2b388f;
	border-right: solid 2px #2b388f;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	content: "";
}
ul.sp-gnav li a:hover {
	background-color: #ccc;
	text-decoration: underline;
	color: #2b388f;
}
/*=======================================================================
  home
=======================================================================*/

}


@media (min-width: 768px) {

.headroom--unpinned {
	transform: translateY(-100%);
}

#header {background:#fff url(../images/header_bg.png) repeat-x scroll 0 46px;}


.navbar-header { /* bootstrap css */
	float: none;
}
section {
	margin-top: auto;
/*	padding-top: 108px; */
}
#brand {
	float: none;
	margin: 0;
	padding-top: 0;
	width: 400px;
}
#brand img {
	width: 400px !important;
	padding: 0;
}



#breadcrumbs {
	text-align: right;
	display: inherit;
}
.breadcrumb {
	list-style: outside none none;
	margin-bottom: 0;
	background-color: transparent;
	font-size: 12px;
}
.breadcrumb a {
	color: #2b388f;
}




/* global nav
_____________________________________________________________________ */

header .navbar-collapse.collapse {
    background:transparent url(../images/header_bg.png) no-repeat scroll 0 0;
    line-height: 50px;
}
header .nav > li > a {
    color: #fff;
		padding: 0 2px;
		font-size:12px;
}
header .nav > li > a:hover,
header .nav > li > a:focus,
header .nav > li.current {
    background:transparent url(../images/header_bg_ov.png) repeat-x scroll 0 0;
    color: #fbb03b;
}

}

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

#cat-home #container.col-md-9 {	width: 670px;}
#cat-home #sidebar-2.col-md-3 {	width: 330px;}
*/


#header {background:#fff url(../images/header_bg.png) repeat-x scroll 0 58px;}


section {
	margin-top: auto;
/*	padding-top: 110px; */
}

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




/* global nav
_____________________________________________________________________ */

header .nav > li > a {
    color: #fff;
		padding: 0 4px;
		font-size:16px;
}





#footer ul.infonav {
	margin: 0 0 10px;
}
#footer .copy {
	text-align: right;
}


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

@media (min-width: 1200px) {

/*.container {
	width: 1000px;
}
*/
}
/*=======================================================================
  main 
=======================================================================*/



/* h1
_____________________________________________________________________ */

h1 {
	color: #2b388f;
	font-size: 20px;
	font-weight: bold;
	margin: 0 0 2em;
	padding:0;
	line-height: 1.4;
	text-align:center;
	clear: both;
	letter-spacing:0.1em;
}

h1 img{
	margin:0 auto 10px;
	display:block;
	width:60px;
}


@media (min-width: 992px) {
h1 {
	font-size: 30px;
	margin: 0 0 3em;
	}
h1 img{
	width:100px;
}
}



h2 {
	margin: 30px 0 10px;
	padding:10px 0;
	color: #2b388f;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4;
	border-bottom:#2b388f 1px solid;
	clear: both;
}

#cat-home h2{
	margin: 0 0 20px;
	padding:0;
	font-size:20px;
	color: #2b388f;
	background-image:none;
	border:none;
	clear:inherit;
}



#cat-home .box-locomo h2{
	margin: 0 0 20px;
	color:#fff;
	text-align:left;
	}
	

@media (min-width: 768px) {
#cat-home h2{
	margin: 0 0 20px;
	font-size:30px;
}
}

h3 {
	margin: 40px 0 10px;
	padding: 0;
	color: #2b388f;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.4;
	clear:both;
}
h3:first-child {margin: 0 0 20px;}



h4 {
	margin: 30px 0 10px;
	padding: 4px 0 2px;
	color: #2b388f;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.4;
	clear: both;
}

.box-line h4 {
	margin: 0 0 10px 0;
	padding: 0;
	background-image: none;
	font-size: 20px;
	font-weight: normal;
}

/* font
_____________________________________________________________________ */
.red-b {
	color: #e53828;
	font-weight: bold;
}
.blue-b {
	color: #0096e5;
	font-weight: bold;
}
.green-b {
	color: #8cc63f;
	font-weight: bold;
}

.telno {
	font-size: 20px;
	font-weight: bold;
	color: #2b388f;
	letter-spacing:0.1em;
}


/* 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,
ul.list-ico-f {
	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;
	line-height: 1.4;
	min-height: 1em;
}
ul.list-ico-f li {
	margin: 0 20px 5px 0;
	padding: 2px 0 2px 18px;
	background: url(../images/ico_circle1.gif) no-repeat scroll 0 0.4em transparent;
	line-height: 1.4;
	min-height: 1em;
	display:inline;
	float:left;
}



/* 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.4;
	min-height: 1em;
}




/* 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 {
	position:relative;
	margin: 0;
	padding: 0 3% 20px 0;
	font-size: 17px;
	font-weight:bold;
	list-style-type: none;
	float: left;
	display: inline;
}
ul.mnav-2c li {
	padding: 0 2% 20px 0;
	width: 48%;
}
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: #2b388f;
	border-radius: 6px;
	display: block;
	line-height: 1.3;
	background: url(../images/ico_mnav01.png) no-repeat scroll 15px center #cfd948;
}
ul.mnav li a:hover, ul.mnav-2c li a:hover, ul.mnav-3c li a:hover {
	color: #0078c8;
	background-color: #eaed64;
}



ul.mnav li.ico-ext a:after,
ul.mnav-2c li.ico-ext a:after,
ul.mnav-3c li.ico-ext a:after {
	content: url(../images/ico_link.png);
	position:absolute;
	top:10px;
	right:30px;
	z-index:1;
}





/* clear
_____________________________________________________________________ */

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


.box-locomo {
	margin: 10px 0 30px;
	padding: 20px;
	color:#fff;
	background-color:#2b388f;
	overflow: hidden;
  zoom: 1;
}

@media screen and (max-width:480px) {
.box-locomo {
	margin: 10px 0 10px;
	padding: 10px;
}
}


#main-box .box-line p {
	margin-bottom: 0;
	line-height: 1.8;
}
.box-line ol {
	margin: 0;
}
.box-line ol li:last-child {
	margin-bottom: 0;
}


/* table ta-type1
_____________________________________________________________________ */

table.ta-type1 {
	margin : 5px 0 20px 0;
	border-collapse : collapse;
	border: solid 2px #2b388f;
	width: 100%;
}
table.ta-type1 th {
	color: #000;
	background-color: #e6e6e6;
	font-weight: bold;
	text-align: left;
}
table.ta-type1 th,
table.ta-type1 td {
	padding : 8px 4px;
	border-top: solid 1px #2b388f;
	border-bottom: solid 1px #2b388f;
	border-left: solid 1px #7e9e9b;
	border-right: solid 1px #7e9e9b;
	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 th,
table.ta-line td, table.ta-line-f th, table.ta-line-f td {
	padding : 8px 10px 8px 10px;
	border-top: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
	vertical-align: top;
}
table.ta-line th, table.ta-line-f th {
	color: #333;
}



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