@font-face {
    font-family: 'Noto Sans Japanese';
    font-style: normal;
    font-weight: 400;
    src: url('font/NotoSansCJKjp-DemiLight.eot');
    src: url('font/NotoSansCJKjp-DemiLight.eot?#iefix') format('embedded-opentype'),
    url('font/NotoSansCJKjp-DemiLight.woff') format('woff'),
    url('font/NotoSansCJKjp-DemiLight.ttf')  format('truetype');
}




* {
	font: 300 15px 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','Noto Sans Japanese',sans-serif;
}

body {
	margin: 0;
	padding: 0;
	text-align: left;
	font-size: 16px;
	color: #333;
	line-height: 1.8;
	letter-spacing: 0.05em;
	}

h1,h2,h3,h4,h5,h6 {
	/*font-size: 12px;*/
	margin: 0;
	font-weight:normal
	}

blockquote {
		color:#666666;
		background:#E8F9FF;
		margin-right:auto;
		margin-left:auto;
		padding:10px;
		border:1px dotted #ccc;
	}

img {
	border-style: none;
	margin: 0;
	padding: 0;
	}
form {
	margin: 0;
	padding: 0;
	}

object {
	margin: 0;
	padding: 0;
	}

param {
	margin: 0;
	padding: 0;
	}

p{
	margin: 0;
	padding: 0;
}

ul{
	margin: 0;
	padding: 0;
	list-style-type: none;
}

li{
	margin: 0;
	padding: 0;
}

dl,dt,dd{
	margin: 0;
	padding: 0;
}

.bullet{
background:url(img/bullet.gif) no-repeat 0px 6px;
padding:0 0 0 10px;
margin:0 0 10px 0px;
}

label {
    zoom: 1;
}



.ma_all_width{
max-width: 950px;
margin-left: auto;
margin-right: auto;
}





.link_btn_blue p{
	background: #1E87F0;
	color: #fff;
	padding: 15px 10px;
	font-size: 1.1em;
	text-align: center;
}
.link_btn_blue:hover {
	opacity:0.6;}

@media screen and (max-width: 480px){
.ma_all_width{
	padding: 0 2%;
}
}


.menu_btn {
	width:40px;
	position:absolute;
	top:10px;
	right:10px;
}

.a_blue{
	color: #253F52;
}

.gr_bg{
	background: #F3F3F3;
}

.link_btn{
    border-radius: 35px;        /* CSS3草案 */
    -webkit-border-radius: 35px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 35px;   /* Firefox用 */
	background: #46B8D8;
	color: #fff;
	padding: 15px 10px;
	font-size: 1.1em;
	margin: 30px auto 50px;
	text-align: center;
}
.link_btn:hover {
	opacity:0.6;
  text-decoration: none !important;
}

.link_b a{
  display: block;
  text-decoration: none !important;
}

/* @group fixedTop */

#fixedTop {
	right:10px;
	width:70px;
	height:70px;
	position:fixed;
	z-index:9999;
	opacity:0.8;
}
.b_pdg{bottom:10px;}


#fixedTop:hover {
    opacity: 0.4;
    filter: alpha(opacity=60);
}

/* @end */


/* @group TOP page */

.top_about{
	margin: 0 0 30px 0;
	background: url(../a_images/about_bg.png) no-repeat center center fixed;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.fade {
    -webkit-transition: 0.3s ease-in-out;
       -moz-transition: 0.3s ease-in-out;
         -o-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out;
}
.fade:hover {
    opacity: 0.4;
    filter: alpha(opacity=60);
}
.top_setsubi{
	background: linear-gradient(#E9F8EE, #FFFFFF);
}
.top_setsubi ul{
	padding-top: 30px;
	background: url(../a_images/top_setsubi_bg.jpg) no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.top_shisetsu{
	margin: 30px 0;
	background: url(../a_images/top_shisetsu_bg.jpg) no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.top_news{
	background: linear-gradient(#BEEBFB, #DBEEF9);
}
.top_b_date{
	color: #789BA6;
	padding-bottom: 5px;
	margin-bottom: 10px;
}

.top_news{
	font-size: 0.9em;
	font-weight: normal;
}
.top_news ul{
	margin-left: 0;
}
.top_news ul li{
	padding-bottom: 20px;
}
.top_news a:link{
color:#173346;
text-decoration: none;
}
.top_news a:visited{
color:#173346;
text-decoration: none;
}
.top_news a:hover{
color:#46B9D8;
text-decoration: none;
}
.top_news a:active{
color:#173346;
text-decoration: none;
}


.top_cap{
	clear: both;
	color: #1574b5;
	text-align: center;
	line-height: 1.3em;
}
@media screen and (max-width: 640px) {
.top_cap{
	font-size: 1.1em;
	padding: 30px 0;
}
}

@media screen and (min-width: 641px) and (max-width: 960px){
.top_cap{
	font-size: 1.4em;
	padding: 50px 0;
}
}

@media screen and (min-width: 961px) {
.top_cap{
	font-size: 1.6em;
	padding: 80px 0;
}
}



p#calendar{
	font-size: 1.2em;
	font-weight: bold;
	padding: 10px 0 10px 10px;
	color: #253F52;
	border-bottom: dotted 1px #253F52;
	border-left: solid 5px #253F52;
	background: #fff;
}


p.calendar{
	font-size: 1.2em;
	font-weight: bold;
	padding: 10px 0 10px 10px;
	color: #253F52;
	border-bottom: dotted 1px #253F52;
	border-left: solid 5px #253F52;
	background: #fff;
}

/* @end */




/* @group naka */



/* @end */


/* @group fukidashi */

.fukidashi_b {
 	position: relative;
	/*display: inline-block;*/
 	margin: 1.5em 0;
	padding: 20px 10px;
	min-width: 120px;
 	max-width: 100%;
 	color: #ffffff;
 	text-align: center;
	font-size: 1.5em;
	background: #1574b5;
}

.fukidashi_b:before{
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
 	margin-left: -15px;
	border: 15px solid transparent;
	border-top: 15px solid #1574b5;
}

.fukidashi_b p {
	margin: 0;
	padding: 0;
}


.fukidashi_o {
 	position: relative;
	/*display: inline-block;*/
 	margin: 1.5em 0;
	padding: 20px 10px;
	min-width: 120px;
 	max-width: 100%;
 	color: #ffffff;
 	text-align: center;
	font-size: 1.5em;
	background: #f7931e;
}

.fukidashi_o:before{
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
 	margin-left: -15px;
	border: 15px solid transparent;
	border-top: 15px solid #f7931e;
}

.fukidashi_o p {
	margin: 0;
	padding: 0;
}




/* @end */

/* @group header */
header{
	position:relative;
}
.bxslider{
	position:absolute;
	top:0;
	left:0;
	z-index: 1;
}
#head_navi{
	position:absolute;
	top:0;
	z-index: 2;
	width: 100%;
	/*background: rgba(204,204,204,0.5);*/
}
.slider_bg{
	background: rgba(123,203,225, 0.3);
}
.head_bg{
	background-color: rgba(255,255,255,0.9);
}

#head_navi a:link{
color:#000;
text-decoration: none;
}


#head_navi a:visited{
color:#000;
text-decoration: none;
}

#head_navi a:hover{
color:#4E4E4E;
text-decoration: none;
}


#head_navi a:active{
color:#000;
text-decoration: none;
}

#gloval_navi{
	padding-left: 40px;
}
#gloval_navi li:nth-child(n+2){
	border-left: solid 1px #ccc;
}

#head_navi li a{
	display: block;
	width: 100%;
	color: #666;
	padding: 2px 0;
}
#head_navi li a:hover{
	background-color: #7BC3D3 ;
	color: #fff;

}
#yoyaku a{
	padding-top: 0 !important;
}
#yoyaku a:hover{
	background : none !important;
}

.sub_menu ul{
padding: 0px 10px 0px;

	}

.sub_menu li a{
	display: block;
	width: 100%;
	color: #fff !important;
	border-bottom: 1px dotted #ccc;
	padding: 6px 0!important;
	font-size:14px;
	line-height: 15px;
	}

.sub_menu li a:hover{
	background-color: rgba(123,203,225, 0.9) !important;
	color: #fff;

}

.sub_menu{
	background-color: rgba(115,180,220, 0.9) !important;

}
.sub_menu li{
	border-left: none !important;
}
.sub_menu .uk-nav-header{
	color: #fff;
	padding-bottom: 15px;

}


.menu_b{
	border-bottom: solid 2px #1574b5;
}

#ma_offcanvas_list li{
	padding: 15px 0 !important;
}
#sitemap li{
	padding: 15px 0 !important;
}
.block_link a {
  display: block;
}



/* @end */




/* @group footer */
footer{
	border-top: solid 2px #1574b5;
}
.foot_bg{
	background-color: #E8F7FA;
}
/*.f_sinryo{font-size: 0.7em;}*/
.f_sinryo a:link{
color:#999;
text-decoration: none;
font-size: 0.9em;
}
.f_sinryo a:visited{
color:#999;
text-decoration: none;
}
.f_sinryo a:hover{
color:#163347;
text-decoration: none;
}
.f_sinryo a:active{
color:#999;
text-decoration: none;
}

li{
	margin: 0 !important;
	padding: 0!important;
}

.btm_gry{background: #F2F2F2;}
.btm_gry2{background: #F9F9F9;}

.arrow{
position: relative;
display: inline-block;
padding: 0 0 0 16px;
color: #000;
vertical-align: middle;
text-decoration: none;
font-size: 15px;
}
.arrow::before,
.arrow::after{
position: absolute;
top: 0;
bottom: 0;
left: 0;
margin: auto;
content: "";
vertical-align: middle;
}

.triangle::before{
left: 4px;
box-sizing: border-box;
width: 4px;
height: 4px;
border: 4px solid transparent;
border-left: 4px solid #7a0;
}



.sinryo_table{
  width:100%;
	background: #e6e6e6;
	border-right: solid 1px #e6e6e6;
	border-bottom: solid 1px #e6e6e6;
}
table.sinryo_table th{
	background: #e6e6e6;
	padding: 1% 2%;
  text-align: center;
}

.sinryo_table td{
	background: #fff;
	padding: 1% 2%;
  text-align: center;
}
.open{
  color:#1574b5;
}



/* @end */


/* @group pankuzu */
.pankuzu{
	color: #999;
	padding: 20px 0;
	font: 0.9em;
}
.pankuzu a:link{
text-decoration: none;
}


.pankuzu a:visited{
text-decoration: none;
}

.pankuzu a:hover{
text-decoration: none;
}


.pankuzu a:active{
text-decoration: none;
}
/* @end */





/* @group 中ページタブ */
.table-ul {
  background-color: #fff;
  display: table;
  table-layout: fixed;
  text-align: center;
  width: 100%;
  border: solid 1px #1574b5;
}
.table-ul li {
  border-right: 1px solid #1574b5;
  display: table-cell;
  vertical-align: middle;
  background-color: #fff;
  transition: background-color 1s; /*transitionは通常時にセット*/
  -webkit-transition: background-color 1s;
}
.table-ul li:last-child {
  border-right: 0;
}
.table-ul li a {
  color: #1574b5;
  display: block;
  font-size: 12px;
  text-decoration: none;
  padding: 10px 0;
}


.table-ul li:hover {
  background-color: #7EB3D9;
  color: #fff!important;
}


.tav_act {
	background-color:#1574b5!important;
	/*border-radius:5px;*/
	position:relative;
	color: #fff;
}

/*.tav_act:after {
	border:10px solid transparent;
	border-top-color:#1574b5;
	border-bottom-width:0;
	bottom:-10px;
	content:"";
	display:block;
	left:50%;
	margin-left: -10px;
	position:absolute;
	width:0;
}*/

.tav_act a{
	color: #fff !important;
}

/* @end */





/* @group subtitle */
.page_img_title{
	text-align: center;
	color: #ccc;
	/*font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
	z-index: 100000;
	position: relative;
}

.title_h2{
	border-left: solid 7px #1574b5;
	padding-left: 15px;
	font-weight: bold;
}

.title_blue{
	border-top: solid 1px #1574b5;
	background: #d0eaf5;
	color: #333;
	text-align: left;
}

.title_h2_orange{
	border-left: solid 7px #f7931e;
	padding-left: 15px;
	font-weight: bold;
}

.title_orange{
	border-top: solid 1px #f7931e;
	background: #ffe5c5;
	color: #333;
	text-align: left;
}

/* @end */





/* @group detail   arrow */
.detail {
  display: inline-block;
  padding: .3em 5em;
  border: solid 1px #1574b5;
  /*border-radius: 3px;
  color: white;*/
  background-color: #fff;
  text-decoration: none;
  -webkit-transition: background-color .3s, box-shadow .3s, -webkit-transform .3s;
  transition: background-color .3s, box-shadow .3s, transform .3s;
  margin: 0 auto;
  text-align: center;
}
.detail:hover {
	cursor: pointer;
  background-color: #7EB3D9;
  /*box-shadow: 0 5px 0 #dc5f67, 0 10px 3px rgba(0,0,0,.1);
  -webkit-transform: translateY(-5px);
  transform: translateY(-5px);*/
}
/*.detail:active {
  background-color: #1574b5;
  box-shadow: 0 2px 0 #dc5f67, 0 4px 1px rgba(0,0,0,.1);
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
  transition-duration: .1s;
}*/


.arrow {
    position: relative;
    display: inline-block;
    padding-left: 12px;
}
.arrow:before {
    content: '';
    width: 0;
    height: 0;
    border: solid 4px transparent;
    border-left: solid 6px #1574b5;
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -4px;
}



.detail_o {
  display: inline-block;
  padding: .3em 5em;
  border: solid 1px #f7931e;
  /*border-radius: 3px;
  color: white;*/
  background-color: #fff;
  text-decoration: none;
  -webkit-transition: background-color .3s, box-shadow .3s, -webkit-transform .3s;
  transition: background-color .3s, box-shadow .3s, transform .3s;
  margin: 0 auto;
  text-align: center;
}
.detail_o:hover {
	cursor: pointer;
  background-color: #ffe5c5;
  /*box-shadow: 0 5px 0 #dc5f67, 0 10px 3px rgba(0,0,0,.1);
  -webkit-transform: translateY(-5px);
  transform: translateY(-5px);*/
}

.arrow_o {
    position: relative;
    display: inline-block;
    padding-left: 12px;
}
.arrow_o:before {
    content: '';
    width: 0;
    height: 0;
    border: solid 4px transparent;
    border-left: solid 6px #f7931e;
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -4px;
}

.link_o a:link{
color:#f7931e;
text-decoration: none;
}
.link_o a:visited{
color:#f7931e;
text-decoration: none;
}
.link_o a:hover{
color:#f7931e;
text-decoration: none;
}
.link_o a:active{
color:#f7931e;
text-decoration: none;
}



.arrow a:link,.arrow_o a:link{
	font-size: 0.9em;
color:#4E4E4E;
text-decoration: none;
}


.arrow a:visited,.arrow_o a:visited{
color:#4E4E4E;
text-decoration: none;
}

.arrow a:hover,.arrow_o a:hover{
color:#000;
text-decoration: none;
}


.arrow a:active,.arrow_o a:active{
color:#4E4E4E;
text-decoration: none;
}
/* @end */






/* @group app */

.app {
  display: inline-block;
  padding: .3em 5em;
  border: solid 1px #1574b5;
  /*border-radius: 3px;
  color: white;*/
  background-color: #1574b5;
  text-decoration: none;
  -webkit-transition: background-color .3s, box-shadow .3s, -webkit-transform .3s;
  transition: background-color .3s, box-shadow .3s, transform .3s;
  margin: 20px auto;
  text-align: center;
}

.app:hover {
	cursor: pointer;
  background-color: #7EB3D9;
}

.app a{
    display: block;
    width: 100%;
}
.to_app {
    position: relative;
    display: inline-block;
    padding: 10px 0 10px 12px;
    font-size: 1.3em;
}
.to_app:before {
    content: '';
    width: 0;
    height: 0;
    border: solid 4px transparent;
    border-left: solid 6px #fff;
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -2px;
}


.link_fff a:link{
color:#fff;
text-decoration: none;
}


.link_fff a:visited{
color:#fff;
text-decoration: none;
}

.link_fff a:hover{
color:#fff;
text-decoration: none;
}


.link_fff a:active{
color:#fff;
text-decoration: none;
}
/* @end */




/* @group shadow */
.shadow{
	box-shadow: 0px 5px 5px #ccc;
	margin-left: 4px;
}
/* @end */











/* @group table */
.table1{
	background: #e6e6e6;
	border-right: solid 1px #e6e6e6;
	border-bottom: solid 1px #e6e6e6;
}
table.table1 th{
	background: #e6e6e6;
	padding: 2%;
	border-top: solid 1px #ffffff;
}

.table1 td{
	background: #fff;
	padding: 2%;
}
.table1 td:not(:first-child){
	border-top: solid 1px #e6e6e6;
}
.tb_gry{
	background: #f2f2f2 !important;
}

/* @end */









/* @group hover */

.ho {
    position: relative;
}



.ho span {
    display: block;
    position: absolute;
    width:100%;
    height:100%;
    top:0;
    left:0;
    background: rgba(0,0,0,0.5);
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
    -ms-transition: all 0.4s;
    -o-transition: all 0.4s;
    transition: all 0.4s;
    opacity: 0;
}

.demo1 {
    top:50px;
}

.ho a:hover span {
    display: block;
    top:0;
    left:0;
    opacity: 1;
}

.ho a {
    display: block;
}


/* @end */








/* @group 見出し */


.h2_title {
	border-top: 3px solid #253F52;
	color:#253F52;
	padding-top:5px;
	font-size: 30px;
font-family:'Arial',  sans-serif;
font-style: italic;
margin-bottom: 30px;
margin-top: 30px;

	}



.h3_title{
	border-bottom:dotted 1px #999 ;
	margin-bottom: 15px;
	color: #1574b5;
}



.cap{
	font-size: 1.2em;
	color: #666;
	padding-bottom: 10px;
	font-weight: bold;
}



.dt_title{
	color: #FEB000;
	font-size: 1.3em;
}

.dd_title{
	border-bottom:dotted 1px #999 ;
	margin-bottom: 15px;
	color: #1574b5;
	font-size: 1.4em;
}




/* @group 下線グラデーション */
/*.h2_rinen{
padding: .5em;
position: relative;
}
.h2_rinen:after {
content: "";
display: block;
height: 4px;
background-image: linear-gradient(to right, #EB9BBD, #7ED1E6);
}
/* @end */



/* @group 両端に線見出し */
/*.h2_rinen{
	color: #253F52;
position: relative;
display: inline-block;
padding: 0 2.5em;
text-align: center;
}

.h2_rinen:before, .h2_rinen:after{
content: '';
position: absolute;
top: 50%;
display: inline-block;
width: 15%;
height: 3px;
background-color: #7ED1E6;
}

.h2_rinen:before {left:0;}
.h2_rinen:after {right: 0;}
/* @end */


.h2_rinen {
position: relative;
color: #1574b5;
font-size: 20px;
padding: 10px 0;
text-align: center;
margin: 1.5em 0;
}
.h2_rinen:before {
content: "";
position: absolute;
top: -8px;
left: 50%;
width: 150px;
height: 58px;
border-radius: 50%;
border: 1px solid #46B8D8;
border-left-color: transparent;
border-right-color: transparent;
-moz-transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
transform: translateX(-50%);
}



.kadomaru{
    border-radius: 10px;        /* CSS3草案 */
    -webkit-border-radius: 10px;    /* Safari,Google Chrome用 */
    -moz-border-radius: 10px;   /* Firefox用 */
}

/* @end */






/* @group br */
@media screen and (max-width: 480px){
br.br_sp { display: inline; }
br.br_pc { display: none; }
}
@media screen and (min-width: 481px){
br.br_sp { display: none; }
br.br_pc { display: inline; }
}


/* @end */





/* @group list_d */
.list_d {
  margin-left:20px;
}
.list_d li {

	margin-left: 1.2em;
	text-indent: -1.2em;
  list-style: none;
}


.list_d > li::before {
	margin-left: 10px;
  position: relative;
  top: -2px;
  left: -8px;

  display: inline-block;

  width: 6px;
  height: 6px;

  content: '';

  border-radius: 100%;
  background: #2BABDA;
}


/* @end */




.bx-viewport{

	max-height: 70vh !important;

}
.bx-wrapper .bx-caption span{

	font-size: 3em !important;
	font-weight: bold !important;}


#sp_guide {
	bottom:0px;
	position:fixed;
	z-index:9999;
	opacity:.9;
}

#sp_guide li:hover {
	opacity:.5;
}

.f_info{
	background: #fff;
	opacity:.9;
	text-align: center;
	font-size: 0.75em;
	line-height: 1.1em;
	padding: 5px 0;
}
