@media print {
	a[href]:after {
		content: ""!important;
	}
	abbr[title]:after {
		content: ""!important;
	}
}

*{
	outline: none;
}

html{
	overflow-y: scroll;
}
body{
	font-family: verdana,"メイリオ","Meiryo",verdana,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic","Helvetica Neue",Helvetica,Arial,sans-serif;
	font-size: 16px;
	line-height: 160%;
	background: #ffffff;
}
a{
	cursor: pointer;
	color: #1633CC;
}
a:hover{
	color: #337ab7;
}

ul{
	list-style-type: none;
	margin-left: 0;
	padding-left: 0;
}
select,
textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
.uneditable-input {
	height: 30px;
}

/*文字色*/
.text-red{ color: #FF0000;}
.text-blue{ color: #5c95c5;}

.text-xsmall{ font-size: 10px;}
.text-small{ font-size: 12px;}
.text-large{ font-size: 18px;}
.text-xlarge{ font-size: 22px;}

.text-top{ vertical-align: top;}
.text-middle{ vertical-align: middle}
.text-bottom{ vertical-align: bottom;}

.text-underline{ text-decoration: underline;}

/*アイコン画像（PDF・Word・Excel・PowerPoint）*/
img.icon, img.icon_pdf, img.icon_word, img.icon_excel,
.main-contents a + img[src$="icon_pdf.png"],
.main-contents a + img[src$="icon_s_docx.png"],
.main-contents a + img[src$="icon_s_xlsx.png"],
.main-contents a + img[src$="icon_s_pptx.png"],
.main-contents a > img[src$="icon_pdf.png"],
.main-contents a > img[src$="icon_s_docx.png"],
.main-contents a > img[src$="icon_s_xlsx.png"],
.main-contents a > img[src$="icon_s_pptx.png"]{
	width: 16px;
	height: 16px;
	margin: 0 3px 3px 5px;
}
.main-contents a + img[src$="icon_pdf.png"] + span,
.main-contents a + img[src$="icon_s_docx.png"] + span,
.main-contents a + img[src$="icon_s_xlsx.png"] + span,
.main-contents a + img[src$="icon_s_pptx.png"] + span{
	font-size: 0.9em;
	margin-left: 0px;
}
a + .fa.fa-external-link{
	margin: 0px 3px 0px 8px;
	font-size: 1.05em;
	vertical-align: middle;
	color: #003399;
}
/* 改行させない */
.one-line{
	display: inline-block;
}
.container{
	margin-top: 0px;
	width: 1560px;
}

/*------------------------------------------------------------*/
/* navbar ヘッダ領域全般　　　　　　　　　　　　　　　　　　　*/
/*------------------------------------------------------------*/
.navbar{
}
.navbar,
.navbar-default{
	margin-bottom: 0;
	border-radius: 0;
	border-bottom: 0px none;
	background-color: #FFFFFF;
	background-image: url("../img/header/header_back.png");
	background-repeat: no-repeat;
	background-position: top right;
	z-index: 3;
	border-top: 22px solid #efefef;
	border-left: 0px none;
	border-right: 0px none;
}
.navbar .navbar-header{
	float: none;
}
.navbar .navbar-header .container{
	margin-left: auto;
	margin-right: auto;
	padding-left: 0;
	padding-right: 0;
	position: relative;
}

/*ヘッダエリア内　タイトルエリア*/
.navbar .navbar-brand {
	text-shadow: none;
	color: #000000;
	height: 51px;
	padding: 2px 0 0;
	line-height: 120%;
	white-space: nowrap;
	font-size: 13px;
}
.navbar .navbar-brand:hover{
	color: #666666;
}
.navbar .navbar-brand img{
	vertical-align: top;
	display: inline-block;
	margin-right: 10px;
	margin-top: 0px;
	width: auto;
	height: 49px;
}
.navbar .navbar-brand div.title{
	display: inline-block;
}
.navbar .navbar-brand div.title span{
}
.navbar .navbar-brand div.title span.title-01{
	display: block;
	margin-top: 2px;
	margin-left: 2px;
}
.navbar .navbar-brand div.title span.title-02{
	display: inline-block;
	margin-top: 8px;
	margin-left: 0px;
	font-size: 24px;
	height: auto;
}
.navbar .navbar-brand div.title span.title-03{
	display: inline-block;
	margin-top: 8px;
	margin-left: 0.5em;
	font-size: 24px;
	height: auto;
}
/*MyPage*/
.navbar .navbar-mypage {
	position: absolute;
	top: 8px;
	right: 0px;
	background-color: transparent;
}
.navbar .navbar-mypage a{
	padding: 6px 10px;
	display: block;
	background: linear-gradient(#DE392E, #FF3636);
	border-radius: 4px;
	border-left: 0px none;
	box-shadow: 0 0 4px 0 #933;
	border: 1px solid #C33;
	text-shadow: 1px 1px 2px #600;
	color: #FFFFFF;
}
.navbar .navbar-mypage a:hover{
	background: linear-gradient(#FF3636, #FF7A7A);
	text-shadow: -1px -1px 2px #600;
	text-decoration: none;
}
.navbar .navbar-mypage > a .fa{
	margin-right: 0.25em;
	font-size: 1.2em;
	margin-top: -2px;
}
/*検索*/
.nav-search-box {
	background-color: #efefef;
	padding: 15px;
	margin: 10px;
	text-align: center;
}
.search-win{
	width: 400px;
}
.search-btn{
	border: solid 1px #666666;
	background-color: #013693;
	color: #FFFFFF;
	font-size: 14px;
	padding: 5px 10px;
}

/*ヘッダメニュー領域*/
.navbar .navbar-menu {
	float: none;
	border-top: 1px solid #dceefa;
	border-bottom: 1px solid #0d4166;
	background: #01649c;
	background: linear-gradient(to top, #01649c, #3499cc);
	margin-bottom: 0;
	list-style: none;
	height: 24px;
}
.navbar .navbar-menu .container{
	margin-left: auto;
	margin-right: auto;
	padding-left: 0;
	padding-right: 0;
	position: relative;
}

/*ユーザーネーム表示*/
.navbar .navbar-menu .navbar-login{
	position: absolute;
	top: -80px;
	right: 0;
	height: calc( 1em + 16px);
	font-weight: bold;
	text-align: right;
}
.navbar .navbar-menu .navbar-login p{
	text-align: right;
	margin: 0;
	padding: 4px 8px;
	display: inline-block;
	color: #003399;
	font-size: 0.9em;
}

/*ヘッダメニュー：リスト*/
.navbar-nav{
	float: right;
	border-right: 1px solid #FFFFFF;
	margin: 0;
}
.navbar-nav > li{
	padding: 0;
	float: left;
}
.navbar-nav > li.active{
	background-color: #003A67;
}
.navbar-nav > li.active:hover,
.navbar-nav > li:hover{
	background: linear-gradient(to bottom, #01649c, #3499cc);
}
.navbar-default .navbar-nav > li > a {
	color: #FFFFFF;
	margin-top: 0px;
	padding: 2px 1.25em 0;
	font-size: 0.9em;
	border-left: 1px solid #FFFFFF;
	background-color: transparent;
	display: block;
	text-shadow: none;
	height: 24px;
}
@-moz-document url-prefix() { /*For Firefox*/
	.navbar-default .navbar-nav > li > a {
		padding-top: 0px;
	}
}
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover {
	box-shadow: none;
	background-color: transparent;
	background-image: none;
	color: #FFF;
}
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > li > a:hover {
	color: #FFF;
}
.navbar-nav > li > a.dropdown-toggle{
	border-right: 0px solid #666666;
}
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus,
.navbar-default .navbar-nav > .active > a{
	background: linear-gradient(to bottom, #01649c, #3499cc);
	color: #FFFFFF;
}

/*navbar ドロップダウンメニュー*/
.nav > li {
	position: relative;
	display: block;
}
.nav > li > a {
	position: relative;
	display: block;
	margin-top: -1px;
	margin-bottom: -1px;
	height: 22px;
}
.nav > li > a:hover,
.nav > li > a:focus {
	text-decoration: none;
	background-color: #eee;
}
.nav > li.disabled > a {
	color: #777;
}
.nav > li.disabled > a:hover,
.nav > li.disabled > a:focus {
	color: #777;
	text-decoration: none;
	cursor: not-allowed;
	background-color: transparent;
}
.nav .open > a,
.nav .open > a:hover,
.nav .open > a:focus {
	background-color: #eee;
	border-color: #337ab7;
}
.nav .nav-divider {
	height: 1px;
	margin: 9px 0;
	overflow: hidden;
	background-color: #e5e5e5;
}
.nav > li > a > img {
	max-width: none;
}
.navbar-nav > li > a.dropdown-toggle{
}
.navbar-inverse .navbar-brand,.navbar-inverse .navbar-nav>li>a{
	text-shadow: none;
}
.dropdown-menu .sub{
	padding-left: 4px;
}

/*フッター*/
footer{
	text-align: center;
	margin-top: 0px;
	background-color: #FFFFFF;
	height: 17px;
}
footer #footer_in{
	border-top: 5px solid #efefef;
	padding: 8px;
}
footer #footer_in .box_footer_navi{
	vertical-align: middle;
	padding-top: 15px;
}
footer #footer_in .box_footer_navi li{
	display: inline-block;
	margin-left: 1em;
}
footer #footer_in .box_secretariat{
	text-align: left;
	line-height: 1.8;
	padding: 15px;
}
footer #footer_in .box_secretariat i{
	font-size: 1.5em;
	margin-right: 2px;
	margin-bottom: -4px;
	display: inline-block;
	position: relative;
	top: 2px;
}
footer #footer_copyright{
	background-color: #319cce;
}
footer #footer_copyright p{
	padding-top: 2px;
	padding-bottom: 2px;
	margin: 0 auto;
	font-size: 0.85em;
	color: #FFFFFF;
}

/*ページトップへ*/
#page-top{
	position: fixed;
	margin:0;
	text-align:center;
	bottom: 10px;
	right: 10px;
	font-size:0.8em;
}
#page-top a{
	display: block;
	color:#FFFFFF;
	background-color: #319cce;
	border:#FFFFFF 2px solid;
	opacity: 0.6;
	padding: 1.57em 0;
	border-radius: 4em;
	width: 7.5em;
	height: 7.5em;
	text-decoration:none;
}
#page-top a:hover{
	color: #FFFFFF;
	text-decoration:none;
	opacity: 1.0;
}
#page-top a span{
	margin-top: -0.25em;
	font-size: 3.25em;
	display: block;
}

/*コンテンツエリア*/
.theme-showcase{
	clear: both;
}
.theme-showcase{
	background: #efefef;
	padding-top: 0px;
	padding-bottom: 0px;
}
.theme-showcase .container{
	padding-left: 0;
	padding-right: 0;
	background-color: #FFFFFF;
	border-left: 1px solid #CCC;
	border-right: 1px solid #CCC;
	box-shadow: 1px 1px 1px #CCC;
	display:flex
}

/*左メニューエリア*/
.leftmenu{
	margin-top: 0px;
	padding: 0px;
	width: 200px;
	vertical-align: top;
	background: #3399cc;
	order:1;
}
.sidemenu {
}
.sidemenu dt {
	list-style: none;
	position: relative;
}
.sidemenu dt a ,
.sidemenu dt.public-search a ,
.sidemenu dt.election a {
	display: block;
	font-size: 1.1em;
	background-color: #0079ba;
	font-weight: bold;
	margin: 0px;
	padding: 0.2em 0.1em 0.2em 0.4em;
	border-top: 1px solid #4cb3e6;
	border-bottom: 1px solid #1a436b;
	color: #ffffff;
	text-decoration: none;
	text-align: left;
	vertical-align: middle;
	overflow: hidden;
	transition:all .5s ease-out;
}
.sidemenu dt.public-search a {
	font-size: 1.05em;
	padding: 0.6em 0.1em 0.4em 0.6em;
	background-color: #558042;
	color: #F6FFEA;
}
.sidemenu dt.election a {
	background-color:#6E7FFF;
	color: #F6FFEA;
}
.sidemenu dt.public-search a span.public-search-indent{
	margin-left: 1.3em;
}
.sidemenu dt a:hover ,
.sidemenu dt.public-search a:hover {
	background-color: hsla(201,100%,45%,1.00);
	transition:all .5s ease-out;
}
.sidemenu dt.public-search a:hover {
	background-color: hsla(111, 65%, 44%, 0.74);;
}
.sidemenu dt span.one-line-small{
	font-size: 0.98em;
	letter-spacing: -1px;
}
.sidemenu dt ul {
	position: absolute;
	left: 200px;
	top: 0px;
	display: none;
	margin: 0;
	padding: 0;
}
.sidemenu dt ul li a {
	display: block;
	margin-top: 0;
	padding: 6px 10px 7px 15px;
	white-space: nowrap;
	transition:all .5s ease-out;
	background: #f8f8ff;
	background-image: url(../img/list_arrow.gif);
	background-repeat: no-repeat;
	font-weight: normal;
	font-size: 0.85em;
	color: #003399;
	border-top: 0px none;
	border-right: 1px solid #1a436b;
	border-bottom: 1px solid #1a436b;
	/*width: 200px;*/
	width: 250px;
	height: auto;
	overflow: auto;
	z-index: 5;
}
.sidemenu dt ul li:first-child a {
	border-top: 1px solid #1a436b;
}
.sidemenu dt li a:hover{
	background: #3399cc;
	color: #FFFFFF;
	transition:all .5s ease-out;
	background-image: url(../img/list_arrow.gif);
	background-repeat: no-repeat;
}
.sidemenu dt:hover ul{
	display: block;
}
.sidemenu dd{
}
.sidemenu dd.jmsb-title{
	background-color: #00a199;
	text-align: center;
	color: #FFFFFF;
	padding: 4px;
	font-size: 14px;
	font-weight: 600;
}
.sidemenu dd a{
	background-color: #3399cc;
	display: block;
	margin: 0;
	padding: 0.15em 0.1em 0.15em 15px;
	border-top: 1px solid #4cb3e6;
	border-bottom: 1px solid #2880ac;
	list-style-type: none;
	background-image: url(../img/list_arrow.gif);
	background-position: 0px -2px;
	background-repeat: no-repeat;
	color:#FFFFFF;
	text-decoration: none;
	font-size: 0.9em;
	line-height: 150%;
}
.sidemenu dd a:hover{
	background: #DFDFFF;
	background-image: url(../img/list_arrow.gif);
	background-position: 0px -2px;
	background-repeat: no-repeat;
	color: #003399;
}
.sidemenu dd a span{
	display: inline-block;
}
/* 基本領域メニュー用 */
/* サブスぺメニュー用 */
.sidemenu dd.basic-field a,
.sidemenu dd.sub-field a{
	background-color: #FFFFFF;
	display: block;
	margin: 0;
	padding: 0.15em 0.1em 0.15em 15px;
	border-top: 1px solid #00a199;
	border-right: 1px solid #00a199;
	border-bottom: 1px solid #1A9E6A;
	border-left: 5px solid #00a199;
	list-style-type: none;
	background-position: 2px 50%;
	background-repeat: no-repeat;
	color:#111111;
	text-decoration: none;
	font-size: 0.9em;
	line-height: 115%;
}
.sidemenu dd.basic-field a{
	background-image: url(../img/list-sq-blue.png);
}
.sidemenu dd.sub-field a{
	background-image: url(../img/list-sq-yellow.png);
}
.sidemenu dd.basic-field a:hover ,
.sidemenu dd.sub-field a:hover{
	background-position: 2px 50%;
	background-repeat: no-repeat;
	color: #444444;
}
.sidemenu dd.basic-field a:hover{
	background: #dbe7ff;
	background-image: url(../img/list-sq-blue.png);
	background-position: 2px 50%;
	background-repeat: no-repeat;
}
.sidemenu dd.sub-field a:hover{
	background: #f7ecd0;
	background-image: url(../img/list-sq-yellow.png);
	background-position: 2px 50%;
	background-repeat: no-repeat;
}
.sidemenu dd.basic-field a span.basic-field-title,
.sidemenu dd.sub-field a span.sub-field-title{
	margin-left: 0;
	font-size: 0.75em;
}
.sidemenu dd.sub-field a span.sub-field-title{
	font-size: 0.75em;
	letter-spacing: -0.5px;
}
.sidemenu dd.basic-field a span.basic-field-menu,
.sidemenu dd.sub-field a span.sub-field-menu{
	font-size: 0.9em;
	margin-left: 5px;
}
.sidemenu dd.sub-field a span.sub-comment{
	font-size: 0.7em;
	font-weight: 600;
	color: #ed5e00;
	margin-left: 5px;
}
/*メインコンテンツエリア*/
.main-contents{
	width: calc( 100% - 200px);
	order:2;
	padding: 0px 15px;
	margin: 0 0px 30px;
}
.main-contents a{
	text-decoration: underline;
}

/*パンくずリスト*/
div.breadcrumb{
	background-color: transparent;
	padding: 0px;
	margin: 0;
	box-shadow: none;
	border-radius: 0;
	font-size: 0.9em;
	width: 100%;
}
div.breadcrumb ol.breadcrumb{
	width: 100%;
	line-height: 140%;
	background: none;
	padding: 4px 2px;
	margin: 0px;
	font-weight: bold;
	overflow: hidden;
	overflow-x: hidden;
	overflow-y: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
.breadcrumb > li{
	display: inline;
}
.breadcrumb > li a{
	color: #00508C;
	text-decoration: none;
}
.breadcrumb > li a:hover{
	color: #333;
	text-decoration: none;
}
.breadcrumb > li + li:before {
	color: #666;
	content: ">";
}
.breadcrumb > .active {
	color: #000;
}

/*jumbotron*/
.jumbotron {
	padding-top: 5px;
	padding-bottom: 0px;
	margin: 0 50px 20px;
	line-height: 200%;
	border-width: 1px;
	border-style: solid;
	border-color: #5c95c5;
	background-color: #ECF0FF;
}
.container .jumbotron{
	padding: 10px 20px 0px;
	border-radius: 8px;
}
.main-contents .jumbotron{
	margin: 0 0 20px;
}
.jumbotron p,
.main-contents .jumbotron p{
	margin-bottom: 10px;
	margin-left: 0;
	margin-right: 0;
/*	font-size: 13px;*/
	line-height: 170%;
}
.jumbotron-info{
	border-color: #5c95c5;
	background-color: #ECF0FF;
}
.jumbotron-info p{
	color: #444444;
}
.jumbotron-error,
.jumbotron-danger{
	border-color: #E03333;
	background-color: #FFE8E8;
}
.jumbotron-error p,
.jumbotron-danger p{
	color: #E03333;
}
.jumbotron-alert{
	border-color: #FF9933;
	background-color: #FFF0E0;
}
.jumbotron-alert p{
	color: #CC8000;
}
.jumbotron-confirm{
	border-color: #398439;
	background-color: #F0FFE0;
}
.jumbotron-confirm p{
	color: #398439;
}

/* special */
.specialinfo{
	margin: 5px 0 0 0;
	font-weight: 600;
	font-size:1.1em;
	color: #333333;
}
.specialinfo a{
	color: #FFFFFF;
	text-decoration: none;
	background-color: #0F50C3;
	border-radius: 7px;
	padding: 3px 6px;
	font-size:0.7em;
}
.specialinfo a:hover{
	color:#FFC388;
}

/*page-header*/
.page-header {
	border-bottom: 0px none;
	margin: 40px 0 5px;
}
.page-header h1{
	margin: 0;
	font-size: 1.3em;
	line-height: 140%;
	padding: 2px 5px 2px;
	background-color:#F8F8FF;
	border-top: 1px solid #3399CC;
	border-bottom: 1px solid #3399CC;
	font-weight: bold;
}
.breadcrumb + .page-header {
	margin-top: 0;
}
.page-header h1 span.glyphicon, .page-header h1 span.fa, .page-header h1 i.fa{
	margin-right: 12px;
	margin-left: 6px;
	font-size: 1.5em;
	position: relative;
	top: 2px;
	color: #444499;
}

h2,
h2.impotant-info{
	margin: 0.75em 0 5px;
	font-size: 1.25em;
	line-height: 125%;
	border-bottom: 1px solid #3399CC;
	border-left: 4px solid #3399CC;
	padding: 0.1em 0.3em 0.15em;
	font-weight: bold;
}
h2.impotant-info{
	border-bottom: 1px solid #FF0000;
	border-left: 4px solid #FF0000;
}
h2:first-child{
	margin: 0.25em 0 5px;
}
h2 a{
	color: #2f5797;
}
h2 a:hover{
	color: #0d4166;
	text-decoration: none;
}
a:first-child + h2,
h2:first-child,
.jumbotron + h2,
.page-header + h2{
	margin-top: 0.3em;
}

h3{
	font-weight: bold;
	font-size: 1.15em;
	margin: 1.8em 0.15em 0px;
	color: #003399;
	line-height: 140%;
}
h3:first-child,
.page-header + h3,
.jumbotron + h3,
h2 + h3{
	margin-top: 0.75em;
}

h4 {
	line-height: 160%;
	font-weight: bold;
	font-size: 1.1em;
	margin: 1.6em 0.25em 0px
}
h4:first-child,
.page-header + h4,
.jumbotron + h4,
h2 + h4,
h3 + h4{
	margin-top: 1em;
}

h5 {
	line-height: 160%;
	font-weight: bold;
	font-size: 1.05em;
	margin: 1.4em 0.75em 5px;
	color: #000000;
}
.page-header + h5,
.jumbotron + h5,
h2 + h5,
h3 + h5,
h4 + h5{
	margin-top: 1em;
}

h6 {
	line-height: 160%;
	font-weight: bold;
	font-size: 1em;
	margin: 1.3em 0.5em 5px;
	color: #000000;
}
.page-header + h6,
.jumbotron + h6,
h2 + h6,
h3 + h6,
h4 + h6,
h5 + h6{
	margin-top: 1em;
}

.main-contents p,
.main-contents ul,
.main-contents ol,
.main-contents dl,
.main-contents table{
	margin: 1em 1em 0px;
}
.main-contents h2 + p, .main-contents h3 + p, .main-contents h4 + p, .main-contents h5 + p,
.main-contents h2 + ul, .main-contents h3 + ul,
.main-contents h2 + ol, .main-contents h3 + ol, 
.main-contents h2 + dl, .main-contents h3 + dl, 
.main-contents h2 + table, .main-contents h3 + table{
	margin-top: 0.5em;
}
.main-contents h3.text-center + p{
	margin-top: 2em;
}
.main-contents h6 + p{
	margin-top: 0.25em;
}

.main-contents p img{ max-width: 100%; }

.main-contents ul li,
.main-contents ol li{
	margin-top: 3px;
}
.main-contents ul.disc{
	list-style-type: disc;
}
.main-contents ul.disc li{
	margin-left: 1.15em;
}
.main-contents ul.non-mark{}
.main-contents ul.non-mark li{
	text-indent: -1.5em;
	margin-left: 1.5em;
}

.main-contents ol{
	padding-left: 1.5em;
}

.main-contents dl{}
.main-contents dl dt{}
.main-contents dl dd{
	padding: 8px 8px 8px 28px;
	margin-bottom: 20px;
}

.main-contents .table {
	background-color: #FFFFFF;
	width: calc(100% - 2em);
	border-collapse: collapse;
}
.table td, .table th {
	background-color: #F4F4F4;
}
/*最終更新日取得の日付*/
/*最終更新日取得の日付 表示*/
	div#lasttime{
		text-align: right;
		margin: 1em 1em 0px;
	}
/*最終更新日取得の日付 非表示*/
	div#lasttime-dn{
		text-align: right;
		display: none;
		margin: 1em 1em 0px;
	}
/*フォーム共有*/
form input, form select{
	margin-bottom: 4px;
}
input, select{
	margin-bottom: 4px;
	padding-left: 4px;
}
input[type=text],
input[type=tel],
input[type=email],
input[type=password],
textarea,
select{
	border: 1px solid #1E465A;
	border-radius: 3px;
}
input[type=text]:active, input[type=text]:focus,
input[type=tel]:active, input[type=tel]:focus,
input[type=email]:active, input[type=email]:focus,
input[type=password]:active, input[type=password]:focus,
textearea:active, textearea:focus,
select:active, select:focus{
	border: 1px solid #FF6633;
	box-shadow: 0 0 2px 2px rgba(255,128,0,0.4);
	outline: none;
}
input[type=submit], input[type=button]{
	border: 0px none;
}
input[type=radio], input[type=checkbox]{
	position: relative;
	top: 2px;
	margin-right: 4px;
	margin-top: 0;
}

/*汎用*/
.form_xs,.form_sm,.form_md,.form_lg,.form_xl{ margin-right: 4px;}

input.form_xs{ width: 4.5em; width: calc(4em + 8px);}
select.form_xs{ width: 5em; width: calc(4em + 32px);}
input.form_sm{ width: 10.5em; width: calc(10em + 8px);}
select.form_sm{ width: 11em; width: calc(10em + 32px);}
input.form_md{ width: 20.5em; width: calc(20em + 8px);}
select.form_md{ width: 21em; width: calc(20em + 32px);}
input.form_lg{ width: 70%; width: calc(70% + 8px);}
select.form_lg{ width: 70%; width: calc(70% + 32px);}
input.form_xl{ width: 90%; width: calc(100% - 6em);}
select.form_xl{ width: 90%;}

/*年*/
input[type="text"].form_year{ width: 4.5em; width: calc(4em + 8px);}
select.form_year{ width: 5em; width: calc(4em + 32px);}
/*月*/
input[type="text"].form_month{ width: 3em; width: calc(2em + 8px);}
select.form_day{ width: 3.5em; width: calc(2em + 32px);}
/*日付*/
input[type="text"].form_day{ width: 3em; width: calc(2em + 8px);}
select.form_day{ width: 3.5em; width: calc(2em + 32px);}
/*年月日 ※selectは存在しない*/
input[type="text"].form_ymd{ width: 8.5em; width: calc(8em + 8px);}
/*年齢*/
input[type="text"].form_age{ width: 3.5em; width: calc(3em + 8px);}
select.form_age{ width: 4.5em; width: calc(3em + 32px);}

input[type="text"].form_word_002{ width: 2.5em; width: calc(2em + 8px);}
input[type="text"].form_word_003{ width: 3.5em; width: calc(3em + 8px);}
input[type="text"].form_word_004{ width: 4.5em; width: calc(4em + 8px);}
input[type="text"].form_word_005{ width: 5.5em; width: calc(5em + 8px);}
input[type="text"].form_word_006{ width: 6.5em; width: calc(6em + 8px);}
input[type="text"].form_word_007{ width: 7.5em; width: calc(7em + 8px);}
input[type="text"].form_word_008{ width: 8.5em; width: calc(8em + 8px);}
input[type="text"].form_word_009{ width: 9.5em; width: calc(9em + 8px);}
input[type="text"].form_word_010{ width: 10.5em; width: calc(10em + 8px);}
input[type="text"].form_word_012{ width: 12.5em; width: calc(12em + 8px);}
input[type="text"].form_word_015{ width: 15.5em; width: calc(15em + 8px);}
input[type="text"].form_word_020{ width: 20.5em; width: calc(20em + 8px);}

/*ツールチップ表示*/
.table span.arrow_box {
	/*フォーカスしていないときは非表示に*/
	display: none;
	/*input要素にスタイルを合わせます*/
	box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.4);
}
.table input:focus {
	/*input要素にフォーカスした時の影と枠をつける*/
	/*box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.4);
	border: solid 2px #666;*/
}
.table label:hover + span.arrow_box,
.table select:focus + span.arrow_box,
.table input:focus + span.arrow_box {
	/*フォーカスしたらツールチップを表示させる*/
	display: inline;
}
.table .arrow_box {
	position: absolute;
	background: #c93434;
/*	border: 3px solid #ab2c2c;*/
	margin-left: 16px;
	margin-top: -4px;
	padding: 6px;
	color: #fff;
}
.table .arrow_box:after,
.table .arrow_box:before {
	right: 100%;
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}
.table .arrow_box:after {
	border-color: rgba(201, 52, 52, 0);
	border-right-color: #c93434;
	border-width: 6px;
	margin-top: -6px;
}
.table .arrow_box:before {
/*	border-color: rgba(171, 44, 44, 0);
	border-right-color: #ab2c2c;*/
	border-width: 10px;
	margin-top: -10px;
}

/*tableクラス全般*/
/*table内での余白の策定*/
.table td span + input,
.table td span + label{margin-left: 4px;}
.table td input + span,
.table td label + span{margin-left: 6px;}
.table td label + label{margin-left: 1em;}

.table td span + input.margin_none,
.table td span + label.margin_none,
.table td input + span.margin_none,
.table td label + span.margin_none{margin-left: 0px;}

/*table関連*/
/*主に横幅・横位置に関する記述*/
.table .cell_001{ width: calc( 1em + 18px);}
.table .cell_002{ width: calc( 2em + 18px);}
.table .cell_003{ width: calc( 3em + 18px);}
.table .cell_004{ width: calc( 4em + 18px);}
.table .cell_005{ width: calc( 5em + 18px);}
.table .cell_006{ width: calc( 6em + 18px);}
.table .cell_007{ width: calc( 7em + 18px);}
.table .cell_008{ width: calc( 8em + 18px);}
.table .cell_009{ width: calc( 9em + 18px);}
.table .cell_010{ width: calc( 10em + 18px);}
.table .cell_012{ width: calc( 12em + 18px);}
.table .cell_015{ width: calc( 15em + 18px);}
.table .cell_020{ width: calc( 20em + 18px);}

/*横幅を固定しない場合*/
.table_auto, .main-contents .table_auto{
	width: auto;
}
.table .table_auto, .main-contents .table_auto{
	width: auto;
}

/*テーブルレイアウト1*/
.table_layout_01{
	border: 1px solid #339999;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
 	border-radius: 0px;        /* CSS3草案 */  
	-webkit-border-radius: 0px;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 0px;  /* Firefox用 */  
}
.main-contents .table_layout_01{
	margin-bottom: 20px;
}
.table_layout_01 thead th{
	background-color: #00508C;
	color: #FFFFFF;
	font-weight: normal;
}
.table_layout_01 tbody th{
	background-color: #D2E6E6;
	color: #000000;
	font-weight: normal;
}
.table_layout_01 tbody th a,
.table_layout_01 tbody th a:link,
.table_layout_01 tbody th a:hover,
.table_layout_01 tbody th a:active,
.table_layout_01 tbody th a:visited
.table_layout_01 tbody th a:focus{
	color: #23527c;
	font-weight: bold;
	text-decoration: none;
}
.table_layout_01 thead th a,
.table_layout_01 thead th a:link,
.table_layout_01 thead th a:hover,
.table_layout_01 thead th a:active,
.table_layout_01 thead th a:visited,
.table_layout_01 thead th a:focus{
	color: #FFFFFF;
	text-decoration: none;
}

a:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
.table_layout_01 thead th a, .table_layout_01 tbody th a{
	color: #FFFFFF;
	color: #403D26;
	color: #337ab7;
	font-weight: bold;
}
.table_layout_01 th, .table_layout_01 td {
	padding: 8px;
	line-height: 1.42857143;
	vertical-align: top;
	border-right: 1px solid #339999;
	background-color: #FFF;
}
.table_layout_01 th:last-child , .table_layout_01 td:last-child{
}
.table_layout_01 th:last-child.view_border_01 , .table_layout_01 td:last-child.view_border_01{
	border-right: 0px none;
}
.table_layout_01 th:last-child.view_border_02 , .table_layout_01 td:last-child.view_border_02{
	border-right: 0px none;
}
.table_layout_01 th.hidden_border , .table_layout_01 td.hidden_border,
.table_layout_01 th:last-child.hidden_border , .table_layout_01 td:last-child.hidden_border{
	border-right: 0px none;
}

/*テーブルレイアウト2*/
.table_layout_02{
	padding: 0;
	border-spacing: 0;
	border-collapse: collapse;
	margin-bottom: 20px;
}
.table_layout_02 > thead > tr > th{
	background-color: #e7ecf4;
	color: #000;
	font-weight: bold;
}
.table_layout_02 > thead > tr > th,
.table_layout_02 > tbody > tr > th{
}
.table_layout_02 > thead > tr > td,
.table_layout_02 > tbody > tr > td{
	border-top: 0px none;
}
.table_layout_02 tbody th{
	color: #000;
	font-weight: normal;
	width: 6em;
	white-space: nowrap;
}
.table_layout_02 thead th a, .table_layout_01 tbody th a,
.table_layout_02 thead th a:link, .table_layout_01 tbody th a:link,
.table_layout_02 thead th a:visited, .table_layout_01 tbody th a:visited
.table_layout_02 thead th a:hover, .table_layout_01 tbody th a:hover{
	color: #FFFFFF;
}
.table_layout_02 thead th a, .table_layout_02 tbody th a{
	color: #FFFFFF;
}

.table_layout_02 th, .table_layout_02 td {
	padding: 8px 12px;
	line-height: 1.42857143;
	vertical-align: top;
	background-color: #FFF;
}

.table_layout_02 th:last-child , .table_layout_02 td:last-child{
	border-right: 0px none;
}
.table_layout_02 th.right_line, .table_layout_02 td.right_line {
	border-right: 1px solid #dddddd;
}
.table_layout_02 th:last-child.view_border_01 , .table_layout_02 td:last-child.view_border_01{
	border-right: 4px solid #F4F4F4;
}
.table_layout_02 th.view_border_02 , .table_layout_02 td.view_border_02,
.table_layout_02 th:last-child.view_border_02 , .table_layout_02 td:last-child.view_border_02{
	border-right: 1px solid #dddddd;
}
.table_layout_02 th.hidden_border , .table_layout_02 td.hidden_border,
.table_layout_02 th:last-child.hidden_border , .table_layout_02 td:last-child.hidden_border{
	border-right: 0px none;
}
.table_layout_02 tbody th span.required{
	display: inline-block;
	background-color: #FF0033;
	color: #FFFFFF;
	border-radius: 4px;
	margin-left: 4px;
	padding: 1px 4px 1px 3px;
}

/*テーブルクラス全般*/
/*セルの罫線をか設定をborder-bottomに変更*/
.table > thead > tr > th,
.table > tbody > tr > th,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > tbody > tr > td,
.table > tfoot > tr > td {
	border-top: 0px solid #ddd;
	border-bottom: 1px solid #ddd;
}

/*主に横幅・横位置に関する記述*/
.table .date{ width: calc(6em + 24px); text-align: left; white-space: nowrap;} /*開催日*/
.table .venue{ width: calc(4em + 24px); text-align: left; white-space: nowrap;} /*開催地都道府県*/
.table .seminar_title{ width: auto; text-align: left; white-space: normal;} /*研修会タイトル*/
.table .apply_number{ width: calc(3em + 4px); text-align:center; white-space: nowrap;} /*申請番号*/

.table .table_checkbox{ width: calc(1em + 4px); text-align: left; white-space: nowrap; padding-right: 0} /*チェックボックス*/
.table th.table_checkbox{ width: calc(2em + 4px); text-align: left; white-space: nowrap; padding-right: 4px} /*チェックボックス*/

/*以下は必要か要検討*/
.table .link_detail{ width: 4em; text-align: center; white-space: nowrap;} /*「詳細」ボタン*/
.table .link_bylaw{ width: 4em; text-align: center; white-space: nowrap;} /*規則 アイコン*/
.table .link_bylaw .fa, .table .link_bylaw .glyphicon{ margin-right: 4px; font-size: 16px; color: #FF0000;} /*「詳細」ボタン*/

.table .link_download{ width: 6em; text-align: center; white-space: nowrap;} /*「ダウンロード」ボタン*/

.table .count{ width: 3em; text-align: right; white-space: nowrap; /*カウント（人数・件数・パーセンテージなど）*/}
.table thead tr th.count{ text-align: center;}
.table .number{ width: calc( 5em + 16px); text-align:center; white-space: nowrap;} /*ナンバー（通し番号）*/
.table .name{ width: 10em; text-align: center; white-space: nowrap;} /*氏名*/
.table .report_status{ width: 5em; text-align: center; white-space: nowrap;} /*報告提出状況*/
.table .bunya{ width: 10em; text-align: center; white-space: nowrap;} /*分野*/
.table .province{ width: 5.5em; text-align: center; white-space: nowrap;} /*都道府県*/

.table .facility_number{ width: 5em; text-align: center; white-space: nowrap;} /*施設番号*/
.table .facility_name{ text-align: center;} /*施設名*/
.table .category, .table .facility_category{ width: 4em; text-align: center; white-space: nowrap;} /*施設種別*/
.table thead tr td.category, .table tbody tr td.category{ width: 4em; text-align: center; white-space: nowrap;}
.table thead tr th.state, .table tbody tr td.state{ width: 5em; text-align: center; white-space: nowrap;}
.table .evaluation_item{ width: 14em; text-align: left; white-space: nowrap;}/*評価項目*/

.table .form_checkbox{ width: 2.5em; text-align: center;} /*チェックボックス（削除・選択など）*/
.table th.form_checkbox{ white-space: nowrap;}
.table input[type="checkbox"][disabled]{ background-color: #EEEEEE; border: 1px solid #CCCCCC; cursor:not-allowed;} /* チェックボックス 押下不可処理 */

input[disabled]{ background-color: #CCCCCC; border: 1px solid #999999;}
input:disabled{ background-color: #CCCCCC; border: 1px solid #999999;}

.table tbody tr.sum th, .table tbody tr.sum td{ border-top: double 3px #444;} /*合計*/

/*色などに関する記述*/
.table .table_alert, .table .table_alert_red{ background-color: #FFDFE8; font-weight: bold;}/*注意喚起*/
.table .table_alert a{color: #330000;}
.table .table_alert_red span{color: #FF0000;}
.table .table_alert_red a{color: #5C95C5;}

.table .facility_infrastructure th, .table .facility_infrastructure td{ background-color: #FFF8E8;}/*基幹施設だけ色を変える*/

.table .cell_info,
.table .cell_info td{ background-color: #ECF0FF;}
.table_layout_01 .cell_info,
.table_layout_01 .cell_info td{ background-color: #FFFFE0;}
.table_layout_02 .cell_info,
.table_layout_02 .cell_info td{ background-color: #ECF0FF;}

.table .cell_error,
.table .cell_error td{ background-color: #FFE0E0;}
.table .cell_alert,
.table .cell_alert td{ background-color: #FFF0E0;}
.table .cell_confirm,
.table .cell_confirm td{ background-color: #F0FFE0;}
.table .cell_null,
.table .cell_null td{ background-color: #DDDDDD;}

.view_border{}

.table .text-left{ text-align: left;}

/*横幅を固定しない場合*/
.table_auto, .main-contents .table_auto{
	width: auto;
}
.table .table_auto, .main-contents .table_auto{
	width: auto;
}

/*テーブルレイアウト1*/
.table_layout_01{
/*	border: 4px solid #F4F4F4;*/
	padding: 0;
	width: 100%;
	border-spacing: 0;
	border-collapse:separate;
	margin-bottom: 20px;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
 	border-radius: 4px;        /* CSS3草案 */  
    -webkit-border-radius: 4px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 4px;  /* Firefox用 */  
}
.main-contents .table_layout_01{
	margin-bottom: 20px;
}

.table_layout_01 thead th{
/*	background-color: #FFFFCC;
	color: #000;
	font-weight: normal;*/
	color: #FFFFFF;
}
.table_layout_01 tbody th{
/*	background-color: #FFFFCC;
	color: #000;
	font-weight: normal;*/
}

.table_layout_01 thead th a, .table_layout_01 tbody th a,
.table_layout_01 thead th a:link, .table_layout_01 tbody th a:link,
.table_layout_01 thead th a:visited, .table_layout_01 tbody th a:visited
.table_layout_01 thead th a:hover, .table_layout_01 tbody th a:hover{
	color: #23527c;
	font-weight: bold;
	text-decoration: none;
}
a:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
.table_layout_01 thead th a, .table_layout_01 tbody th a{
	color: #337ab7;
	font-weight: bold;
}

.table_layout_01 th, .table_layout_01 td {
	padding: 8px;
	line-height: 1.42857143;
	vertical-align: top;
	background-color: #FFF;
}
.table_layout_01 th:last-child , .table_layout_01 td:last-child{
/*	border-right: 0px none;*/
}
.table_layout_01 th:last-child.view_border_01 , .table_layout_01 td:last-child.view_border_01{
	border-right: 4px solid #F4F4F4;
}
.table_layout_01 th:last-child.view_border_02 , .table_layout_01 td:last-child.view_border_02{
	border-right: 1px solid #dddddd;
}
.table_layout_01 th.hidden_border , .table_layout_01 td.hidden_border,
.table_layout_01 th:last-child.hidden_border , .table_layout_01 td:last-child.hidden_border{
	border-right: 0px none;
}

/*テーブルレイアウト2*/
.table_layout_02{
	border: 0px none;
	border-top: 1px solid #CCCCCC;
	padding: 0;
	width: 100%;
	border-spacing: 0;
	border-collapse: collapse;
	margin-bottom: 20px;
}
.table_layout_02 > thead > tr > th{
	background-color: #e7ecf4;
	color: #000;
	font-weight: bold;
	border-top: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
}
.table_layout_02 > thead > tr > th,
.table_layout_02 > tbody > tr > th{
	padding: 10px 12px;
}
.table_layout_02 > thead > tr > td,
.table_layout_02 > tbody > tr > td{
	padding: 10px 12px;
	min-height: 54px;
	border-top: 0px none;
	border-bottom: 1px dashed #CCCCCC;
}
.table_layout_02 > tbody > tr:last-child > td{
	border-bottom: 1px solid #CCCCCC;
}

.table_layout_02 tbody th{
	background-color: #e7ecf4;
	color: #000;
	font-weight: normal;
	width: 6em;
	white-space: nowrap;
}
.table_layout_02 > tbody > tr > th,
.table_layout_02 > tbody > tr > td{
	padding: 16px 12px 8px;
	min-height: 54px;
	height: 54px;
	overflow-y: visible;
}
.table_layout_02 .cell_001{ width: calc( 1em + 4px);}
.table_layout_02 .cell_002{ width: calc( 2em + 4px);}
.table_layout_02 .cell_003{ width: calc( 3em + 18px);}
.table_layout_02 .cell_004{ width: calc( 4em + 18px);}
.table_layout_02 .cell_005{ width: calc( 5em + 18px);}
.table_layout_02 .cell_006{ width: calc( 6em + 18px);}
.table_layout_02 .cell_007{ width: calc( 7em + 18px);}
.table_layout_02 .cell_008{ width: calc( 8em + 18px);}
.table_layout_02 .cell_009{ width: calc( 9em + 18px);}
.table_layout_02 .cell_010{ width: calc( 10em + 18px);}
.table_layout_02 .cell_012{ width: calc( 12em + 18px);}
.table_layout_02 .cell_015{ width: calc( 15em + 18px);}
.table_layout_02 .cell_020{ width: calc( 20em + 18px);}

.table_layout_02 > tbody > tr > td{
	padding-bottom: 2px;
}
.table_layout_02 > tbody > tr > td select{
	margin-bottom: 10px;
}
.table_layout_02 > tbody > tr > td select,
.table_layout_02 > tbody > tr > td input{
	margin-top: -4px;
}
.table_layout_02 > tbody > tr > td span + select,
.table_layout_02 > tbody > tr > td span + input{
	margin-left: 6px;
}

.table_layout_02 thead th a, .table_layout_01 tbody th a,
.table_layout_02 thead th a:link, .table_layout_01 tbody th a:link,
.table_layout_02 thead th a:visited, .table_layout_01 tbody th a:visited
.table_layout_02 thead th a:hover, .table_layout_01 tbody th a:hover{
	color: #FFFFFF;
}
.table_layout_02 thead th a, .table_layout_02 tbody th a{
	color: #FFFFFF;
}

.table_layout_02 th, .table_layout_02 td {
	padding: 8px 12px;
	line-height: 1.42857143;
	vertical-align: top;
	background-color: #FFF;
}

.table_layout_02 th:last-child , .table_layout_02 td:last-child{
	border-right: 0px none;
}
.table_layout_02 th.right_line, .table_layout_02 td.right_line {
	border-right: 1px solid #dddddd;
}
.table_layout_02 th:last-child.view_border_01 , .table_layout_02 td:last-child.view_border_01{
	border-right: 4px solid #F4F4F4;
}
.table_layout_02 th.view_border_02 , .table_layout_02 td.view_border_02,
.table_layout_02 th:last-child.view_border_02 , .table_layout_02 td:last-child.view_border_02{
	border-right: 1px solid #dddddd;
}
.table_layout_02 th.hidden_border , .table_layout_02 td.hidden_border,
.table_layout_02 th:last-child.hidden_border , .table_layout_02 td:last-child.hidden_border{
	border-right: 0px none;
}
.table_layout_02 tbody th span.required{
	display: inline-block;
	background-color: #FF0033;
	color: #FFFFFF;
	border-radius: 4px;
	margin-left: 4px;
	padding: 1px 4px 1px 3px;
/*	float: right;*/
}

/*フォームカスタム*/
.table_layout_02 label{
	font-weight: normal;
}
.table_layout_02 select,
.table_layout_02 input {
transition: all 0.5s;
}
.table_layout_02 span.arrow_box {
/*フォーカスしていないときは非表示に*/
display: none;
/*input要素にスタイルを合わせます*/
box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.4);
}
.table_layout_02 input:focus {
/*input要素にフォーカスした時の影と枠をつける*/
/*box-shadow: 0px 5px 10px 0px rgba(0,0,0,0.4);
border: solid 2px #666;*/
}
.table_layout_02 a:hover + span.arrow_box,
.table_layout_02 label:hover + span.arrow_box,
.table_layout_02 select:focus + span.arrow_box,
.table_layout_02 input:focus + span.arrow_box {
/*フォーカスしたらツールチップを表示させる*/
display: inline;
}
.table_layout_02 .arrow_box {
	position: absolute;
	background: #c93434;
/*	border: 3px solid #ab2c2c;*/
	margin-left: 16px;
	margin-top: -4px;
	padding: 6px;
	color: #fff;
}
.table_layout_02 .arrow_box:after,
.table_layout_02 .arrow_box:before {
	right: 100%;
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}
.table_layout_02 .arrow_box:after {
	border-color: rgba(201, 52, 52, 0);
	border-right-color: #c93434;
	border-width: 6px;
	margin-top: -6px;
}
.table_layout_02 .arrow_box:before {
/*	border-color: rgba(171, 44, 44, 0);
	border-right-color: #ab2c2c;*/
	border-width: 10px;
	margin-top: -10px;
}

/*テーブルレイアウト：layout1,2共通　※上の罫線を表示しないとき*/
.table > tbody > tr.noborder > th,
.table > tbody > tr.noborder > td{
	border-top-width: 0px;
	border-left-style: none;
	border-top-color: transparent;
}
.table > tbody > tr.noborder > th,
.table > tbody > tr.noborder > td{
	border-bottom-width: 0px;
	border-bottom-style: none;
	border-bottom-color: transparent;
}

.table_half{
	width: 50%;
}
.table_center{
	margin-left: auto;
	margin-right: auto
}

/* ---------------------------------------------------------------------------------- */
/* ボタン関連 　マイページ共通*/
/* ---------------------------------------------------------------------------------- */
.btn{
	border: 0px none;
	display: inline-block;
	padding: 0.2em 1em;
	border-width: 0px;
	border-style: solid;
	margin: 0;
	color: #FFFFFF;
	text-decoration: none;
	font-size: 1em;
	font-weight: 500;
	border-radius: 1em;
	text-shadow: 1px 1px 3px #069;
	background-color: #319cce;
	box-shadow: 1px 1px 4px rgba(0,0,0,0.1) inset;
}
.btn.btn-sm,
a.btn.btn-sm,
input.btn.btn-sm ,
button.btn.btn-sm{
	font-size: 0.9em;
	text-shadow: none;
/*	margin-top: -4px;*/
}
.btn.btn-xs,
a.btn.btn-xs,
input.btn.btn-xs ,
button.btn.btn-xs{
	font-size: 0.8em;
	text-shadow: 0px none;
	padding: 3px 6px 3px;
}
.btn.btn-lg,
.btn-group-lg > .btn {
	font-size: 1.35em;
	padding: 10px 16px;
}

.btn:active,
.btn:visited,
.btn:link{
	color: #FFFFFF;
}
.btn span{
	font-size: 80%;
}
.btn .glyphicon,
.btn .fa{
	font-size: 100%;
	margin-right: 0.4em;
}


.btn:hover{
	color: #FFFFFF;
	text-shadow: 1px 1px 3px #033;
/*	background-color: #548F91;*/ /*cadetblue*/
	background-color: hsla(199,80%,55%,1.00);
	box-shadow: -1px -1px 4px rgba(0,0,0,0.1) inset;
}
.btn:hover,
.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn.active.focus,
a.btn,
a.btn:hover,
a.btn:active,
a.btn:visited{
	color: #FFFFFF;
	text-decoration: none;
    outline: none;
}

a.btn span{
}
.btn + .btn{
	margin-left: 0.5em;
}

h3 .btn{
	margin-left: 1.5em;
}

.btn-default,
.btn.btn-default{
	background: #666666;
	text-shadow: 1px 1px 3px #000;
}
.btn-default:hover,
.btn.btn-default:hover{
	background: #666666;
	text-shadow: 1px 1px 3px #000;
}
.btn.btn-success{
	background-color: #5cb85c;
	text-shadow: 1px 1px 3px #090;
}
.btn.btn-info{
	background-color: #5bc0de;
}
.btn.btn-warning{
	background-color: #f0ad4e;
	text-shadow: 1px 1px 3px #960;
}
.btn-danger,
.btn.btn-danger{
	background: #D9534F;
	text-shadow: 1px 1px 3px #900;
}
.btn-danger:hover,
.btn.btn-danger:hover{
	background: #D9534F;
}
.btn_back{
	text-shadow: 1px 1px 3px #009;
	background-color: #0066CC;
	box-shadow: 1px 1px 4px rgba(0,0,0,0.2) inset;
}
.btn_back:hover{
	text-shadow: 1px 1px 3px #009;
	background-color: #0058B1;
	box-shadow: 1px 1px 4px rgba(0,0,0,0.2) inset;
}
.btn_next{
	text-shadow: 1px 1px 3px #900;
	background-color: #FF0000;
	box-shadow: 1px 1px 4px rgba(0,0,0,0.1) inset;
}
.btn_next a:hover,
.btn_next input:hover{
	text-shadow: 1px 1px 3px #900;
	background-color: #E50000;
	box-shadow: 1px 1px 4px rgba(0,0,0,0.1) inset;
}

.btn_box{
}
.btn_box.row{
	margin-left: -15px;
	margin-right: -15px;
}
.btn_box .btn{
}
.btn_box .btn:first-child{
}
.btn_box:after {
	content: ".";  /* 新しい要素を作る */
	display: block;  /* ブロックレベル要素に */
	clear: both;
	height: 0;
	visibility: hidden;
}
.btn_box {
	min-height: 1px;
}
* html .btn_box {
	height: 1px;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}

input.btn{
	font-family: verdana,"メイリオ","Meiryo",verdana,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic","Helvetica Neue",Helvetica,Arial,sans-serif;
	cursor: pointer;
	padding: 8px 10px 8px;
	margin-bottom: 1px;
}


.btn_back,
a.btn_back,
button.btn_back{
	background-color: #FFFFFF; /*cadetblue*/
	text-shadow: 1px 1px 2px rgba(0,0,0,0.1);
	box-shadow: 1px 1px 2px rgba(0,0,0,0.1) inset;
	border: 1px solid #319cce;
	color: #319cce;
}
.btn.btn_back:active,
.btn.btn_back:visited,
.btn.btn_back:link {
	color: #319cce;
}
.btn.btn_back:hover,
a.btn.btn_back:hover,
input.btn.btn_back:hover,
button.btn.btn_back:hover{
	background-color: hsla(199,62%,95%,1.00);
	text-shadow: 1px 1px 2px #FFF;
	box-shadow: 1px 1px 2px rgba(0,0,0,0.1) inset;
}

.btn_next a,
.btn_next input,
.btn_next button{
	text-shadow: 1px 1px 3px #900;
	background-color: #FF0000;
	box-shadow: 1px 1px 4px rgba(0,0,0,0.1) inset;
}
.btn_next:hover,
a.btn_next:hover,
button.btn_next:hover{
	text-shadow: 1px 1px 3px #900;
	background-color: #E50000;
	box-shadow: 1px 1px 4px rgba(0,0,0,0.1) inset;
}

.btn_box{
	margin: 40px 0 40px -30px;
}
.btn_box + .btn_box{
	margin: -24px 0 40px -30px;
}
.btn_box .btn{
	margin-left: 30px;
}
.btn_box .btn:first-child{
	/*margin-left: 0*/
}
.btn_box div{
	display: inline;
}
.btn_box.btn_center{ text-align: center; margin-left: auto; margin-right: auto;}

.btn_box .btn.btn_right{ text-align: center; float: right; margin-right: 0px;}

.btn_box .btn{
	width: calc( 9em + 20px);
	overflow-x: visible;
}
.btn_box .btn.btn_auto{
	min-width: calc( 9em + 20px);
	width: auto;
}
.btn-block{
	display: block;
	width: 100%;
}
.btn-primary{
	background: #319cce;
}


/*個別クラス：お知らせ・新着情報*/
.main-contents dl.news{
	width: calc( 100% - 3px);
	margin: 0;
	display: flex;
	flex-wrap: wrap;
}
.main-contents dl.news dt,
.main-contents dl.news dd{
	padding: 0.45em 0.2em 0.4em;
	border-bottom:1px dashed #666699;
	font-size: 0.95em;
	line-height: 170%;
	margin-bottom: 0px;
}
.main-contents dl.news dt{
	width: 10.5em;
	font-weight:bold;
}
.main-contents dl.news dd{
	width: calc(100% - 10.5em);
	margin-left: 0em;
	margin-right: 0em;
}
.main-contents dl.news dt:nth-last-child(2),
.main-contents dl.news dd:nth-last-child(1){
	border-bottom: 0px none;
}
.main-contents dl.news dd a{
	margin-right: 2px;
}
.main-contents dl.news dd p,
.main-contents dl.news dd ul{
	margin-left: 0; margin-right: 0;
}
.main-contents dl.news dd p:first-child{
	margin-top: 0;
}



@media print {
	a[href]:after {
		content: ""!important;
	}
	abbr[title]:after {
		content: ""!important;
	}
	#page-top{
		display: none;
	}
	.jumbotron,
	.main-contents{
		margin-left: 0px;
		margin-right: 0px;
	}
	.container .row .col-md-10{
		width: 100%;
		padding: 0;
	}

	.navbar.navbar-default{
		display: block;
	}
	.btn{
		color: #FFFFFF !important;;
		text-shadow: 1px 1px 3px #009;
		background-color: #0066CC !important;;
		box-shadow: 1px 1px 4px rgba(0,0,0,0.1) inset;
	}
	input.btn{
		font-family: verdana,"メイリオ","Meiryo",verdana,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic","Helvetica Neue",Helvetica,Arial,sans-serif;
	}
	.btn:link{
		color: #FFFFFF;
	}
	.btn_back,
	a.btn_back,
	button.btn_back{
		text-shadow: 1px 1px 3px #033;
		background-color: #70A8AA !important; /*cadetblue*/
		box-shadow: 1px 1px 4px rgba(0,0,0,0.2) inset;
	}
	.btn_next a,
	.btn_next input,
	.btn_next button{
		text-shadow: 1px 1px 3px #900;
		background-color: #FF0000 !important;
		box-shadow: 1px 1px 4px rgba(0,0,0,0.1) inset;
	}
	.btn i.fa{
		color: #FFFFFF !important;
	}
}

/*レスポンシブ対応*/
/*～1600pxの画面（md）*/
@media screen and (max-width: 1600px){
	.container { width: 1170px;}
}
/*～1200pxの画面（md）*/
@media screen and (max-width: 1199px){
	.container { width: 960px;}
}

/*～992pxの画面（sm）*/
@media screen and (max-width:991px){
	.container { width: 100%;}
	.navbar .navbar-mypage { right: 15px;}
	.sidemenu dt ul{ left: 180px;}
	.sidemenu dt ul li a { width: 180px;}
}

/*～768pxの画面（xs）*/
@media screen and (max-width:767px){
	.navbar.navbar-default{ border-top-width: 2px; box-shadow: none; border-bottom: 0px none;}
	.navbar .navbar-header{ border-bottom: 5px solid #0d4166;}
	.navbar .navbar-mypage { right: calc(4em + 48px);}
	.navbar .navbar-mypage a { box-shadow: none;}
	
	.navbar .navbar-toggle{ background-color: #FFFFFF; padding: 6px 10px; margin-bottom: 0;}
	.navbar .navbar-toggle .icon-bar{ display: none;}
	.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus { background-color: #FFFFFF;}
	.navbar .navbar-brand { width: calc( 100% - 240px);}
	.navbar .navbar-brand img{ margin-left: 4px;}
	.navbar .navbar-brand div.title span{ text-shadow: 0 0 1px #FFF, 0 0 2px #FFF;}
	.navbar .navbar-brand div.title span.title-01{ display: inline-block;}
	.navbar .navbar-brand div.title span.title-02{ display: inline-block; margin-top: 2px; font-size: 13px;}
	.navbar .navbar-brand div.title span.title-03{ display: block; margin-left: 0;}

	.navbar-collapse { padding-right: 0px; padding-left: 0px; border: 0px none;}
	.navbar .navbar-menu { height: auto; border-top: 0px none; overflow-y: hidden;}
	.navbar .navbar-menu .navbar-login { margin: 0; height: auto; background: #0d4166; line-height: 110%; position: static;}
	.navbar .navbar-menu .navbar-login p { padding: 0px 12px 4px 4px; color: #FFFFFF;}

/*	.nav > li.mypage { position: static; }*/
	.navbar-default .navbar-nav > li.mypage > a{ font-size: 0.9em; height: 28px; border-left: 0px none; border-top: 1px solid #FFFFFF; padding: 2px 5px 0; background: transparent; border-radius: 0; box-shadow: none; text-shadow: none;}
	.navbar-default .navbar-nav > li.mypage > a:hover{ background: transparent; text-shadow: none;}
	.navbar-default .navbar-nav > li.mypage > a .fa{ display: none;}
	.navbar-default .navbar-nav > li.mypage:hover { background-color: transparent;}
	.navbar-nav > li.mypage:hover{ background: none;}

	.navbar-nav { float: none; border-right: 0px none; background: linear-gradient(to top, #01649c, #3499cc);}
	.navbar-nav > li { float: none;}
	.navbar-default .navbar-nav > li a{ border-left: 0px none; border-top: 1px solid #FFFFFF; padding: 2px 5px 0; height: 28px;}
	.theme-showcase .container{display: flex; flex-direction: column; box-shadow: none; border-left: 0px none; border-right: 0px none;}
	.main-contents { width: 100%; order: 1;}
	.leftmenu{ width: 100%;	order:2;}
	.sidemenu dt ul li a {padding: 6px 10px 6px 15px;height: auto; overflow: auto; border-top: 1px solid #4cb3e6; border-bottom: 1px solid #1a436b;}

	.sidemenu dt ul { display: block; position: static; }
	.sidemenu dt:hover ul{ position: static; left: 0; width: 100%;}
	.sidemenu dt ul li a { width: auto; border-right: 0px none; border-top: 1px solid #4cb3e6; border-bottom: 1px solid #2880ac; background-color: #3399cc; color: #FFFFFF; font-size: 0.9em; padding: 0.15em 0.1em 0.15em 15px; line-height: 150%;}
	.sidemenu dt ul li:first-child a { border-top: 1px solid #4cb3e6;}
	.sidemenu dt ul li a:hover{background-color: #DFDFFF; color: #003399;}

	#page-top a { opacity: 1.0;}

	/*個別クラス：お知らせ・新着情報*/
	.main-contents dl.news{ width: calc( 100% - 3px); margin: 0; display: flex; flex-wrap: wrap; flex-direction: column;}
	.main-contents dl.news dt{ width: auto; padding-bottom: 0.1em;  margin-bottom: 2px; font-weight:bold; border-bottom: 0px none;}
	.main-contents dl.news dd{ width: auto; padding-top: 0; padding-bottom: 0.4em; margin-left: 0em; margin-right: 0em; margin-bottom: 2px;}
	.main-contents dl.news dd a{ margin-right: 2px;}
	.sidemenu dt.public-search a span.public-search-indent{
		margin-left:0;
	}
	br.sp-no-Line-breaks{
		display: none;
	}
}

/*～640pxの画面*/
@media screen and (max-width:640px){
	.navbar .navbar-mypage{ right: 64px;}
	.navbar .navbar-mypage a{ padding: 3px 8px; width: 44px; text-align: center;}
	.navbar .navbar-mypage a span .fa { margin-right: 0;}
	.navbar .navbar-mypage a span span {display: none;}
	.navbar .navbar-toggle{ padding: 9px 10px;}
	.navbar .navbar-toggle .navbar-toggle-text{ display:none;}
	.navbar .navbar-toggle .icon-bar{ display: block;}
	.navbar .navbar-brand { width: calc( 100% - 60px);}
	.navbar .navbar-brand div.title span.title-03{}
	.main-contents { padding: 0px 10px;}
	.main-contents .row { margin-right: -10px; margin-left: -10px;}
	div.breadcrumb{ display: none;}
	.breadcrumb + .page-header { margin-top: 5px;}

}

/*～480pxの画面*/
@media screen and (max-width:480px){
	.navbar, .navbar-default{ background-size: 260px;}
	.navbar .navbar-mypage{ right: 52px;}
	.navbar .navbar-mypage a{ padding: 3px 4px; width: 36px; text-align: center;}
	.navbar .navbar-toggle { padding: 9px 6px; margin-right: 10px;}
	.navbar .navbar-toggle .navbar-toggle-text{ display: none;}
	.navbar .navbar-toggle .icon-bar{ display: block;}
	.navbar .navbar-brand { height: 51px; padding: 2px 0 0; font-size: 13px;}
	.navbar .navbar-brand img{ margin-top: 4px; margin-right: 0;  height: 42px; width: 42px;}
	.navbar .navbar-brand div.title span.title-01{ display: inline-block; margin-top: 4px; margin-left: 2px; font-size: 11px;}
	.navbar .navbar-brand div.title span.title-02{ display: inline-block; margin-top: 4px; margin-left: -2px; font-size: 11px;}
	.navbar .navbar-brand div.title span.title-03{ display: block; margin-top: 4px; margin-left: 0px; font-size: 21px;}

	#page-top { font-size:0.6em;}

	.jumbotron { margin: 0 0px 20px;}
	.container .jumbotron,
	.container-fluid .jumbotron { padding: 6px 10px 0px; border-radius: 8px;}

	.jumbotron {
		margin: 0 0px 20px;
	}
	.container .jumbotron,
	.container-fluid .jumbotron {
		padding: 6px 10px 0px;
		border-radius: 8px;
	}
	

}
