body {
	font-family: Verdana, "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	color:#333333;
}
h1, h2, h3, h4, h5, h6, p{
	line-height:inherit;
}
ol, ul, li {
	list-style: none;
	padding:0;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
a{
	color:#666666;
}
a:hover{
	color:#999999;
}
sup,sub{
	line-height: 1em;
	font-size:5px;
}
form.search-form,
form.search-form label{
	vertical-align: top;
}

/*---------------------------------------------
 HTML
---------------------------------------------*/
html{
	 -webkit-text-size-adjust: none;
}

/*------------------------------------------------------------------------------------------
 body
------------------------------------------------------------------------------------------*/
body{
	font-size:14px;
	font-family:"游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

/*---------------------------------------------
 Common Layout Utilities
---------------------------------------------*/

.clearfix:after {
  content: "&nbsp;";
  display: block;
  height: 0;
  height/***/:1px\9;
  clear: both;
  visibility: hidden;
}
.alignleft{	float: left;}
.alignright{	float: right;}
.aligncenter{
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}
img.aligncenter{
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.u-left{
	text-align: left;
}
.u-center{
	text-align: center;
}
.u-right{
	text-align: right;
}

.u-mt0 {margin-top:0px !important;}
.u-mt5 {margin-top:5px !important;}
.u-mt10 {margin-top:10px !important;}
.u-mt15 {margin-top:15px !important;}
.u-mt20 {margin-top:20px !important;}
.u-mt25 {margin-top:25px !important;}
.u-mt30 {margin-top:30px !important;}
.u-mt35 {margin-top:35px !important;}
.u-mt40 {margin-top:40px !important;}
.u-mt45 {margin-top:45px !important;}
.u-mt50 {margin-top:50px !important;}

.u-mb0 {margin-bottom:0px !important;}
.u-mb5 {margin-bottom:5px !important;}
.u-mb10 {margin-bottom:10px !important;}
.u-mb15 {margin-bottom:15px !important;}
.u-mb20 {margin-bottom:20px !important;}
.u-mb25 {margin-bottom:25px !important;}
.u-mb30 {margin-bottom:30px !important;}
.u-mb35 {margin-bottom:35px !important;}
.u-mb40 {margin-bottom:40px !important;}
.u-mb45 {margin-bottom:45px !important;}
.u-mb50 {margin-bottom:50px !important;}

.clear{
	clear:both;
}

/*------------------------------------------------------------------------------------------
  Layout / Modules
------------------------------------------------------------------------------------------*/

/*------------------------------------------------------------------------------------------
  Header 
------------------------------------------------------------------------------------------*/

.l-header{
	padding-top:50px;
	position: relative;
}
.l-header .tagline{
	font-size:0.8em;
	padding-left:0;
	padding-right: 0;
}
nav.header-sub-menu{
	padding-right: 0;
}
nav.header-sub-menu ul>li{
	display: inline-block;
	margin-left:10px;
}
nav.header-sub-menu input.form-control{
	max-width:180px;
}
.navbar-brand.navbar-brand-img{
	padding:0;
	margin-left:-15px;
	height: 50px;
	vertical-align: middle;
}
.navbar-brand.navbar-brand-img img{
	max-height: 50px;
	width: auto;
}
.l-header-menu{
	border-top:none;
}
.l-header-menu li a:hover{
	background-color:rgba(255,255,255,0.2);
	border-radius: 3px 3px;
	padding-top:10px;
	margin-top:5px;
	padding-bottom:10px;
	margin-bottom:5px;
}
.l-header .navbar-wrapper{
	margin-left:0px;
	margin-right: 0px;
	padding-left: 0px;
	padding-right: 0px;
}
.l-header .navbar-toggle{
	margin-right: 0;
}
.l-header .logo{
	margin-bottom: 0;
	margin-top: 0;
	padding-left:0;
	padding-right: 0;
}
.logo-img{
	max-width: 100%;
	height: auto;
}
.key-visual-carousel{
	overflow: hidden;
	white-space: nowrap;
	width:100%;
	position: relative;
}
.key-visual-carousel-inner{
	min-width:10000px;
	position: relative;
}
.key-visual-carousel .key-visual-item{
	float:left;
}

.key-visual{
}
.key-visual img {
	max-width: 100%;
	height: auto;
}

/*------------------------------------------------------------------------------------------
  Footer
------------------------------------------------------------------------------------------*/
.l-footer{
}
.l-footer-menu-wrapper{
	padding-top:5px;
	padding-bottom: 5px;
}
.l-footer-upper{
	padding-top:10px;
	margin-bottom:20px;
}
.l-footer-menu-wrapper li{
	display: inline-block;
	margin-right:20px;
}
.l-footer-sub-menu-wrapper li{
	display: inline-block;
	margin-right:10px;
	font-size:0.8em;
}
.l-footer .copyright{
	font-size:0.6em;
	text-align: right;
	line-height: 3em;
}
.l-footer-menu .menu-item{
	border-top:1px solid rgba(255,255,255,0.3);
}
.l-footer-menu .menu-item:first-child{
	border-top:0px;
}


/*------------------------------------------------------------------------------------------
  Middle
------------------------------------------------------------------------------------------*/
.l-main{
	padding-top: 20px;
	padding-bottom: 50px;
	position: relative;
}
.l-home-main .home-parts .title{
	font-size:1.4em;
	border-bottom: 1px solid #cccccc;
}
.l-home-main .home-parts ul>li.u-date-fixed>.rss-date,
.l-home-main .home-parts ul>li.u-date-fixed>.post-date{
	float:left;
	width:8.5em;
	white-space: nowrap;
}
.l-home-main .home-parts ul>li>a{
	display: block;
}
.l-home-main .home-parts ul>li.u-date-fixed>a{
	margin-left:9em;
}
.l-home-main .home-parts ul>li{
	padding-top:3px;
	padding-bottom: 3px;
	clear:left;
}
.breadcrumb span>span{
	font-weight: bold;
}

/* WIDGET
-------------------------------------------------- */
.widget-item img{
	max-width: 100%;
	height: auto;
}
.widget-item table{
	width:90%;
	margin:10px auto;
}
.widget-item table td,
.widget-item table th{
	text-align: center;
}

.widget-item-sidebar{
	margin:0 auto 30px;
	padding:10px 15px;
	border-radius: 5px;
	background-color:rgba(0,0,0,0.05);
	max-width:360px;
}
.widget-item-sidebar .title{
	margin-top:0;
	font-size:18px;
	font-weight: bold;
	padding:10px 15px;
	margin:-10px -15px 10px -15px;
	border-radius: 5px 5px 0 0;
	background-color:rgba(0,0,0,0.05);
}
.widget-item-sidebar>div>ul{
	padding-left:20px;
}
.widget-item-sidebar>div>ul ul{
	margin-top:5px;
	padding-left:20px;
}
.widget-item-sidebar>div>ul li{
	padding:5px 0 5px 0;
	position: relative;
}

.widget-item-sidebar ul>li>.rss-date,
.widget-item-sidebar ul>li>.post-date{
	font-size:0.8em;
}
.widget-item-sidebar ul>li>.rss-date:before,
.widget-item-sidebar ul>li>.post-date:before{
	content:'（';
}
.widget-item-sidebar ul>li>.rss-date:after,
.widget-item-sidebar ul>li>.post-date:after{
	content:'）';
}
.widget-item-sidebar>div>ul li:before{
	display: block;
	position: absolute;
	content: '●';
	font-size:0.7em;
	line-height:2.4em;
	left:-20px;
	top:2px;
}
.widget-item-footer>div{
	margin:0 0 30px;
	padding:10px 15px;
	border-radius: 5px;
	background-color:rgba(255,255,255,0.2);
}
.widget-item-footer>.title{
	margin-top:0;
	font-size:18px;
	font-weight: bold;
	padding:10px 15px;
	margin:0;
	border-radius: 5px 5px 0 0;
	background-color:rgba(255,255,255,0.3);
}
.widget-item-footer>.title+div{
	border-radius: 0 0 5px 5px;
}

.footer-parts{
	margin-top:20px;
	min-height: 50px;
}


/* FIXED PAGES
-------------------------------------------------- */


.l-page-panel-left{
	margin-bottom:30px;
}
.page-children{
	margin:15px -15px 15px;
}
.page-child-item{
	margin-bottom: 30px;
}
.page-child-item a{
	display: block;
	text-decoration: none;
	border-radius: 5px;
	border:1px solid #cccccc;
	max-width:350px;
	margin-left:auto;
	margin-right: auto;
}
.page-child-item a div.upper{
	position: relative;
	padding:20px 30px 20px 15px;
	border:1px solid #ccccc;
	font-weight: bold;
}
.page-child-item a div.upper span{
	position: absolute;
	right:15px;
	top:24px;
	height:auto;
}
.page-child-item a div.lower img{
	max-width: 100%;
	height: auto;
	border-radius: 0 0 5px 5px;
}
.page-child-item a:hover div.lower img{
	opacity: 0.7;
}

/* CUSTOMIZE THE NAVBAR
-------------------------------------------------- */

/* Special class on .container surrounding .navbar, used for positioning it into place. */
.l-header .navbar-wrapper {
  top: 0;
  right: 0;
  left: 0;
  z-index: 20;
}
/* Flip around the padding for proper display in narrow viewports */
.l-header .navbar-wrapper > .container {
  padding-right: 0;
  padding-left: 0;
}

.l-header .navbar-wrapper .navbar {
  padding-right: 15px;
  padding-left: 15px;
  margin-bottom: 0px;
}
.l-header .navbar-wrapper .navbar .container {
  width: auto;
}
.l-header nav.navbar{
	border-width:0;
	position:absolute;
	top:0px;
	left:0;
	right:0;
}
.l-header .navbar-nav>li>a:hover,
.l-header .navbar-nav>li>a:focus,
.l-footer .navbar-nav>li>a:hover,
.l-footer .navbar-nav>li>a:focus{
	background-color: rgba(255,255,255,0.3);
}
.l-header .navbar-nav>li.current_page_item a,
.l-header .navbar-nav>li.current-page-ancestor a,
.l-header .navbar-nav>li.current_page_item a:hover,
.l-header .navbar-nav>li.current-page-ancestor a:hover{
	background-color: rgba(255,255,255,0.8);
	color:#333333;
}



/* PAGE CSS
-------------------------------------------------- */
.page-heading {
	font-size: 30px;
	margin-bottom:30px;
}
.page-content img{
	max-width: 100%;
	height: auto;
}
.page-content {
	line-height:1.75em;
}
.page-content+.page-children{
	margin-top:40px;
}
.page-content h2{
	line-height:1.75em;
	font-weight: 600;
	margin-top:35px;
}
.page-content h4,
.page-content h5,
.page-content h3{
	line-height:1.75em;
	font-weight: 600;
	margin-top:20px;
}
.page-content>*:first-child{
	margin-top:0;
}
.page-content p{
	margin-bottom: 20px;
}
.page-content h2+p,
.page-content h3+p,
.page-content h4+p,
.page-content h5+p{
	margin-top:10px;
}
.page-content h2+ul,
.page-content h3+ul,
.page-content h4+ul,
.page-content h5+ul{
	margin-top:10px;
}
.page-content ul{
	padding-left:20px;
}
.page-content ol{
	padding-left:20px;
}
.page-content ol li{
	list-style: decimal;
}
.page-content ul>li{
	position: relative;
}
.page-content ul>li:before{
	display: block;
	position: absolute;
	content: '●';
	font-size:0.7em;
	line-height:2.4em;
	left:-20px;
	top:2px;
}
.page-content ul#sitemap_list li:before{
	display: none;
}
.page-content nav.page-children ul{
	padding-left: 0;
}
.page-content nav.page-children li:before{
	content: '';
	display: none;
}
.page-content .sd-content li:before{
	content: '';
	display: none;
}
.page-content>*{
	margin-top:0px;
}
.page-content table{
	
}
.page-content input,
.page-content select,
.page-content textarea{
	max-width: 100%;
}
.page-content .gallery {
	overflow: hidden;
	margin-bottom: 30px;
}
.page-content .gallery:after{
	content:' ';
	display: block;
	height:0;
}
.page-content .gallery figure {
	float: left;
	margin: 0 5px;
}
.page-content dl{
	clear:both;
}
.page-content dl>dt{
	clear:both;
	float:left;
	width:30%;
	
	margin-bottom:5px;
}
.page-content dl>dd{
	float:right;
	width:68%;
	margin-bottom:5px;
}
.page-content dl:after{
  content: "&nbsp;";
  display: block;
  height: 0;
  height/***/:1px\9;
  clear: both;
  visibility: hidden;
}
/* RESPONSIVE CSS -lv1
-------------------------------------------------- */
@media (max-width: 767px) {

/* header */	
	.key-visual-fixed-wrapper{
		padding-left:0;
		padding-right: 0;
	}
	.l-header-menu{
		position: absolute;
		width:auto;
		top:50px;
		left:0;
		right:0;
		box-shadow: 0px 5px 10px rgba(0,0,0,0.2);
		z-index: 500;
	}
	.l-header-menu>ul>li{
		border-top: 1px solid rgba(255,255,255,0.4);
	}
	.l-header .navbar-nav{
		margin:0 0;
	}
	.l-header .container>.navbar-header,
	.l-header .container-fluid>.navbar-header,
	.l-header .container>.navbar-collapse,
	.l-header .container-fluid>.navbar-collapse{
		margin-left: 0;
		margin-right: 0;
		padding-left:0;
		padding-right: 0;
	}
	.l-header-menu>ul>li>a{
		padding-left:30px;
		padding-right:30px;
	}
	
	.l-home-main .home-parts ul>li.u-date-fixed>.rss-date,
	.l-home-main .home-parts ul>li.u-date-fixed>.post-date{
		float:none;
		width:a;
		white-space: nowrap;
	}
	.l-home-main .home-parts ul>li>a{
		display: block;
	}
	.l-home-main .home-parts ul>li.u-date-fixed>a{
		margin-left:0;
		font-size:1.2em;
		padding-top:5px;
		padding-bottom: 5px;
		
	}
	.l-home-main .home-parts ul>li.u-date-fixed>a:focus,
	.l-home-main .home-parts ul>li.u-date-fixed>a:hover,
	.l-home-main .home-parts ul>li.u-date-fixed>a:active{
		border-radius: 5px;
		background-color: rgba(0,0,0,0.1);
	}
	.l-home-main .home-parts ul>li{
		padding-top:5px;
		padding-bottom: 5px;
		clear:left;
		border-bottom:1px dotted rgba(0,0,0,0.1);
	}
}

/* RESPONSIVE CSS -lv2
-------------------------------------------------- */

@media (min-width: 768px) {


	
	
	body{	font-size:16px;	}
	.l-header .navbar-wrapper {	margin-top: 0px;	}
	.l-header .navbar-wrapper.container {
		left:auto;
		right: auto;
		top:auto;
		margin-left:auto;
		margin-right: auto;
	}
	.l-header .navbar-wrapper .navbar {
		padding-right: 0;
		padding-left: 0;
	}
	.l-header-globalnavi{
		margin-left:15px;
		margin-right: 15px;
	}
	.l-header {	padding-top: 0px;	}
	.l-header-container{	padding-top:20px;	}
	.l-header nav.navbar{
		position: relative;
		left:auto;
		right: auto;
		top:auto;
	}
	.l-header .navbar-wrapper .navbar {	border-radius: 4px;	}
/* main */
	.page-heading {	font-size: 50px;	}
	.breadcrumb{	font-size:0.8em;	}
	
	.l-header .navbar-nav>li.current_page_item a,
	.l-header .navbar-nav>li.current-page-ancestor a,
	.l-header .navbar-nav>li.current_page_item a:hover,
	.l-header .navbar-nav>li.current-page-ancestor a:hover{
		border-radius: 3px 3px;
		padding-top:10px;
		margin-top:5px;
		padding-bottom:10px;
		margin-bottom:5px;
	}
	
	.l-pages-nav.navbar,
	.l-pages-nav .navbar-default .navbar-collapse,
	.l-pages-nav .navbar-default .navbar-form{
		background-color: transparent;
		border:0;
	}
	.l-pages-nav.navbar>.container .navbar-brand,
	.l-pages-nav.navbar>.container-fluid .navbar-brand{
		padding:0;
		margin-left:none;
		height: auto;
		margin-right:10px;
	}
	.l-pages-nav.navbar{
		border-bottom:1px solid #cccccc;
		border-radius: 0;
		min-height: 0px;
		padding-bottom:15px;
	}
	
	.l-pages-menu{
	}
	.l-pages-menu .l-pages-menu-item a{
		display: block;
		text-decoration: none;
		padding:0px 10px ;
		border-top:1px solid transparent;
		border-left:1px solid #cccccc;
		font-size: 0.9em;
		line-height: 1.1em;
	}
	.l-pages-menu .l-pages-menu-item.l-pages-menu-item-1 a{
		font-size:1em;
		line-height: 1em;
		letter-spacing: 0.05em;
	}
	.l-pages-menu .l-pages-menu-item.is-active a{
		font-weight: bold;
	}
	.l-pages-menu .l-pages-menu-item:first-child a{
		/* border-left:1px solid transparent; */
	}
	
}

/* RESPONSIVE CSS -lv3
-------------------------------------------------- */
@media (min-width: 992px) {

	.widget-item-sidebar{
		margin:0 0 30px auto;
	}

}

.article-excerpt.article-excerpt-event{
	margin:0 0 30px;
	border-top:1px solid #cccccc;
	padding-top:5px;
}