@charset "UTF-8";

@media only screen and ( max-width : 768px ) {
  .pc {display: none;}
/*  .pc-sub {display: none;} */
  .nav {position:relative;top:0;left:0;width:960px;height:0px;}	/* smartphone menu 高さ */
  .nav *{line-heiht:1.0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;}
  .gnav {margin:0;padding:0;}
  .gnav li{float:left;margin-left:5px;margin-right:5px;padding:0;position:relative;text-align:center;vertical-align:middle;}
  .gnav li + li{margin-left:5px;margin-right:5px;margin-bottom:10px;}
  .gnav li span{display:inline-block;}
  .gnav li > a{padding-left:5px;padding-right:5px;display:block;width:102px;height:90px;font-size:1em;color:#fff;text-align:center;vertical-align:middle;text-decoration:none;border:1px solid #9CB939;background-repeat:no-repeat:no-repeat;background-position:center 15px;border-radius: 8px;}	/* width:110→102 */
  .gnav li > a:hover{background-color:#EAF1D1;border:1px solid #9CB939;color:#000;}
  .gnav li > a.current{background-color:#008837;border:1px solid #008837;color:#fff;}

/*  .pc-sub ul{margin-top:-10px;margin-left:20px;padding-left:0;} */
/*  .pc-sub ul li{list-style-image:none;margin:0;padding:0;display:inline;} */
/*  .pc-sub li a{float:left;display:inline-block;width:286px;margin:10px 0 0 10px;} */
}

@media print, screen and ( min-width : 769px ) {
  .mobile {display: none;}
/*  .mobile-sub {display: none;} */
  .nav {position:relative;top:0;left:10px;width:1340px;height:90px;}
  .nav *{line-heiht:1.0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;}
/*  .gnav {width:920px;margin:0;padding:0;} */
  .gnav {width:1090px;margin:0 auto;padding:0;text-align:center; /* ここで指定する（モーダル内） */}
  .gnav li{float:left;margin:0;position:relative;text-align:center;vertical-align:middle;}
  .gnav li + li{margin-left:0px;}
  .gnav li span{display:inline-block;margin-top:10px;vertical-align:middle;}
/*  .gnav li > a{padding-left:10px;padding-right:10px;display:block;width:145px;height:70px;font-size:1em;color:#fff;text-align:center;text-decoration:none;border:1px solid #9CB939;background-repeat:no-repeat:no-repeat;background-position:center 15px;border-radius: 8px;} */
  .gnav li > a{display:block;width:145px;height:70px;font-size:1em;color:#fff;text-align:center;text-decoration:none;border:1px solid #9CB939;background-repeat:no-repeat:no-repeat;background-position:center 15px;border-radius: 8px;}
  .gnav li > a:hover{background-color:#EAF1D1;border:1px solid #9CB939;color:#000;}
  .gnav li > a.current{background-color:#008837;border:1px solid #008837;color:#fff;}
/* モーダル画面用追加 */
/*  .gnav li > a.icon00{background-color:#336699;border:1px solid #008837;color:#fff;} */
/*  .gnav li > a.icon00:hover{background-color:#ffffcc;border:1px solid #9CB939;color:#000;} */
/* モーダル画面用追加 ここまで*/

/*  .pc-sub ul{margin-top:-10px;margin-left:20px;padding-left:0;} */
/*  .pc-sub ul li{list-style-image:none;margin:0;padding:0;display:inline;} */
/*  .pc-sub li a{float:left;display:inline-block;width:256px;margin:10px 0 0 10px;} */
}

/*ブロック全体の設定*/
#sec01 dl, #sec04 dl{
	padding-left: 15px;
	padding-right: 15px;
/*	margin-bottom: 15px; */
}
/*日付設定*/
#sec01 dt, #sec04 dt {
	font-weight: bold; 	/*太字にする設定。*/
	float: left;
	width: 100%; /* 年月日と記事の間（確定） */
}
#sec01 dd span{
	box-sizing: border-box;
	display: inline-blck;
	font-weight: bold; 	/*太字にする設定。*/
}

/*記事設定*/
#sec01 dd, #sec04 dd {
	margin-left: 1em;
}

/* RESET
----------------------------------------------------------------------------------------------------*/
a,article,body,dd,div,dl,dt,em,form,footer,header,h1,h2,h3,h4,h5,h6,html,i,iframe,img,label,legend,li,nav,ol,p,section,main,span,table,tbody,tfoot,thead,time,tr,th,td,ul,video{ 
  font-family:inherit;
  font-size:100%;
  font-weight:inherit;
  font-style:inherit;
  vertical-align:baseline;
  white-space:normal;
  margin:0;
  padding:0;
  border:0;
  outline:0;
  background:transparent;
  line-height:1.6;
  text-align:left;
}
textarea{
  font-family:inherit;
  font-size:100%;
  font-weight:inherit;
  font-style:inherit;
  vertical-align:baseline;
  margin:0;
  padding:0;
  border:0;
  outline:0;
  background:transparent;
  line-height:1.6;
  text-align:left;
}
article,footer,header,nav,section,main{
	display:block;
}
ol,ul{
	list-style:none;
}
table{
	border-collapse:collapse;
	border-spacing:0;
}

/*table-style2より追加 */
table th:first-child{
/*  border-radius: 6px 0 0 0; */
}

table th:last-child{
/*  border-radius: 0 6px 0 0; */
  border-left: 0.6px solid #ffffff;
}

table tr{
  padding: 5px;
}

table th{
  border-radius: 6px 6px 0 0;
  text-align: center;
/*  color:white; */
  border-left: 1px solid #c3c3c3;
  border-right: 1px solid #c3c3c3;
  border-bottom: 1px solid #c3c3c3;
  border-top: none;
  box-shadow: 0px -3px 8px 1px #eee inset;
}

table td{
  background: white;
  border-left: 1px solid #c3c3c3;
  border-right: 1px solid #c3c3c3;
  border-bottom: 1px solid #c3c3c3;
  border-top:none;
  box-shadow: 0px -3px 8px 1px #eee inset;
}

table td:last-child{
  border-right: 1px solid #c3c3c3;
}

table tr:last-child td:first-child {
  border-radius: 0 0 0 5px;
}

table tr:last-child td:last-child {
  border-radius: 0 0 5px 0;
}
/*table-style2より追加 ここまで */

body {
	margin: 0 auto;
	padding: 0;
	font-size: 16px;
	line-height: 1.6em;
	font-family:  "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro";
	font-weight: 500;
	color: #535761;
	background: #FFF ; /* #999 */
	-webkit-text-size-adjust: 100%;
	/* スクロールの出る画面と出ない画面でずれるのを防止するため出しっ放しにする */
	/*  overflow-y: scroll; */
	padding-right: 0px !important;
	/*  width: calc(100vw - 15px); */ /* 追加 */
}
body.fixed {
	position: fixed;
	width: 100%;
	height: 100%;
	left: 0;
}
iframe {
/*	  position:relative; */
	display: block;
	margin: 0 auto;
	border: none;
	width: 100%;
/*	  overflow-y: scroll; */
/*	overflow-y: hidden; */
	overflow-y: auto;
	z-index: 10500;
}
.main_c {
	text-align: center;
}

#contents {
	clear: both;
/*	width: 1080px; */
/*	width: 1300px; */
        max-width: 100%;
        height: auto;
        word-break: break-all;
	padding: 0px 0px;
	margin: 0 auto;
	background: #FFF;
}

#main {
	float: left;	/*左側に回り込み*/
}

h2 {
	clear: both;
	margin-bottom: 15px;
	font-size: 110%;
	color: #FFF;
	/* background: #009603; */
	background: #27609b;
	padding: 5px 15px;
	border-radius: 8px;
}

h3 {
	clear: both;
	font-size: 100%;
	padding: 4px 15px;	
	margin-bottom: 15px;
}

h4 a {
	clear: both;
	font-size: 100%;
	padding: 4px 5px;	
	margin-left: 24px;
	margin-bottom: 5px;
}

h5 {
	clear: both;
	font-size: 110%;
	color: #FFF;
}

.h_logo {
	color: #FFF;
/*  float: left; */
}

@media only screen and ( max-width : 768px ) {
body {
	font-size: 14px;
}

}

table {
  margin : 0;
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
}

img {
  vertical-align: middle;
  border: none;
}


/* ----------------------------------------------

 * アンカータグの設定

---------------------------------------------- */
a:hover {
  color: red;
  text-decoration: none;
}

a {
  outline:none;
  color: darkblue;
  font-weight: bold;
  /* text-decoration: none; */
}

a span{
  color: #fff;
}

button span{
  color: #fff;
}

.h_nav #gNav a{
   /*text-decoration: none; ここ */
}

a,a:hover,a:hover img {
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
/*  text-decoration: none; */
}

a:hover {
  filter: alpha(opacity=80);
  -moz-opacity:0.80;
  opacity:0.80;
}


/* ----------------------------------------------

 * 要素を左右中央寄せ

---------------------------------------------- */

.taC {
  text-align: center !important;
}

.taR {
  text-align: right !important;
}

.taL {
  text-align: left !important;
}

*{
  -webkit-box-sizing:border-box;
-moz-box-sizing:border-box;box-sizing:border-box;
*behavior:url(/scripts/boxsizing.htc)}
.container{  margin:0 auto;}
.clr:after,
.col:after,
.container:after,
.group:after,
.row:after{  content:"";display:table;clear:both}
.row{  padding-bottom:0;}
.col{  display:block;
  float:left;
  width:100%;
}

@media (min-width:769px),print{
  .gutters
 .col{
margin-left:2%}
.gutters
 .col:first-child{
  margin-left:0}
.gutters .colR:first-child{margin-right:0}
.sp{display:none}
}
@media(max-width:768px){
.sp_none{display:none !important;
}
}


img {
    max-width: 100%;
    height: auto;
    width /***/:auto;　/*IE8のみ適用*/
}

@media only screen and ( max-width : 768px ) {
.main_b {
	position: relative;
	display: block;
/*	display: inline-block; */
	margin: 0 auto;
	border: none;
        max-width: 100%;
/*        height: auto; */
        word-break: break-all;
	z-index: 0;
      overflow:auto;
      -webkit-overflow-scrolling:touch;
}

  #contents {
	padding-top: 70px;
  }
  .sbox {
    margin-bottom: 20px;
  }
  #sec00 {
    padding: 10px 10px 30px;
  }
  #sec01 {
    padding: 10px 10px 30px;
  }
  #sec02{
    padding: 10px 10px 20px;
  }
  #sec03{
    padding: 10px 10px 20px;
  }
  #sec04{
    padding: 10px 10px 30px;
  }
}

/* @media only screen and ( max-width : 480px ) { */
/*  .container { */
/*    padding: 0 20px; */
/*  } */
/* } */
/* @media only screen and ( max-width : 374px ) {
  .container {
    padding: 0 10px;
  }
 } */

@media print, screen and ( min-width : 769px ) {
.main_b {
	position: relative;
	display: block;
	margin: 0 auto;
	border: none;
	width: 960px;
	z-index: 0;
}
  #contents {
	padding-top: 130px;
  }
  .sbox {
    margin-bottom: 25px;
  }
  .container {
/*    position: fixed; */
/*    width: 960px; モーダルに影響があるため、ここで指定しない */
  }
  #sec00 {
    padding: 10px 10px 30px;
  }
  #sec01 {
    padding: 10px 10px 30px;
  }
  #sec02{
    padding: 10px 10px 20px;
  }
  #sec03{
    padding: 10px 10px 20px;
  }
  #sec04{
    padding: 10px 10px 80px;
  }
  #sec05{
    padding: 10px 10px 10px; /* hoto モーダル */
  }
  #sec06{
    padding: 10px 10px 10px; /* gyoumu モーダル*/
  }

}

/* ---------------------------------------------------------------------------------------------

　   HEADER

--------------------------------------------------------------------------------------------- */

#header {
  box-shadow: 0px 3px 15px rgba(0,0,0,0.2);
/*  z-index: 99; */
  z-index: 10000;
  width: 100%;
/*  width: calc(100vw - 15px); */ /* 追加 */
  position: fixed;
  top: 0;
  left: 0;
  background: #aaa url(../images/blue-bg.gif); /* #999 */
}
#gNav a:hover {
  color: #999; 
}
nav li a {
  font-size: 14px;
  letter-spacing: 0.2em;
}
nav .sub-menu,.mean-container .mean-nav ul ul {
  background: #fff;
  background-image: linear-gradient(to top, #fff1eb 0%, #ace0f9 100%);
}
@media only screen and ( max-width : 768px ) {
  #header {
    padding: 10px 0;
    height: 70px;
  }
  .h_logo {
    width: 280px;
    position: absolute;
    top: 18px;
    left: 10px;
/*    z-index: 100; */
    z-index: 1;
  }
  .h_logo a {
    color: #FFFFFF;
  }
  #gNav .nav {
    overflow-y: auto;
    height: 100vh;
  }
  .mean-nav .container {
    padding: 0;
  }
  nav li .fa {
    display: none;
  }
}

@media print, screen and ( min-width : 769px ) {
  #header {
    height: 131px;
  }
  .h_logo {
/*    width: 480px; */
    width: 1080px;
    top: 18px;
    margin: 0 auto; /* ここで指定する */
    text-align: left; /* ここで指定する */
/*    z-index: 100; */
    z-index: 2;
  }
  .h_logo a {
    color: #FFFFFF;
  }
  img {
    width: 80px;
  }
  #h_top {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  #gNav ul {
    position: relative;
    display: flex;
  }
  #gNav li {
    position: relative;
    margin-right: 3em;
  }
  #gNav li:last-child {
    margin-right: 0;
  }
  #gNav li i {
    font-size: 16px;
    margin-left: 5px;
  }
  #gNav li a {
    position: relative;
    display: block;
    text-align: center;
    line-height: 80px;
  }
  #gNav .sub-menu {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
    display: block;
    position: absolute;
    top: 50px;
    left: 50%;
    margin-left: -100px;
    width: 200px;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
  }
  #gNav .sub-menu a {
    padding: 10px;
    display: block;
    border-bottom: none;
    padding: 20px;
    line-height: 1.2em;
  }
  #gNav .sub-menu a:hover:after {
    content: none;
  }
  #gNav .sub-menu li {
    display: block;
    font-size: 16px;
    padding: 0;
    margin: 0;
  }
  #gNav .sub-menu li:last-child {
    border-bottom: none;
  }
  #gNav ul > li:hover {
    -webkit-transition: all .5s;
    transition: all .5s;
  }
  #gNav ul > li:hover a,#gNav .current-menu-item a,#gNav .current-menu-parent a {
    color: #bfd0ff;
  }
  #gNav li:hover ul.sub-menu {
    top: 80px;
    visibility: visible;
    opacity: 1;
/*    z-index: 9999; */
    z-index: 3;
  }
  #gNav li ul li:after {
    content: none;
  }
 #gNav li:hover ul.sub-menu a {
    color: #111; 
  }
  #gNav .sub-menu li a:hover {
    background: #fff; 
  }
  #gNav .contact_btn a:hover {
    color: #fff;
  }
}

/* ---------------------------------------------------------------------------------------------

　   FOOTER

--------------------------------------------------------------------------------------------- */
#footer {
  background-image: linear-gradient(-20deg, #e9defa 0%, #fbfcdb 100%);
  font-size: 14px;
}
.f_logo,.f_logo p {
  text-align: center;
}
.copy {
  text-align: center;
}
@media only screen and ( max-width : 768px ) {
  #footer {
    padding: 10px 0;
  }
  .f_logo {
    padding: 0 20px;
    text-align: center;
  }
  .f_logo p {
    text-align: center;
  }
  .f_logo img {
    margin-bottom: 20px;
    width: 150px;
  }
}

/* @media screen and ( max-width : 480px ) { */
/*トップページ内「更新情報・お知らせ」ブロック
---------------------------------------------------------------------------*/
/* section#sec04 h2.open { 
	background: #27609b url(../images/btn_minus.png) no-repeat right center/34px 34px;
 } 
section#sec04 h2.close {
	background: #27609b url(../images/btn_plus.png) no-repeat right center/34px 34px;
}

} */

@media print, screen and ( min-width : 769px ) {
  #footer {
    padding: 20px 0;
  }
  .f_logo {
  }
  .f_logo img {
    margin-bottom: 20px;
    width: 200px;
  }
  .f_logo {
  }
  .copy {
  }
}

/* ---------------------------------------------------------------------------------------------

　   CONTENTS

--------------------------------------------------------------------------------------------- */
#main p {
  word-break: break-all;
}

section {
  text-align: center;
}

#sec01 {
  background: #cadffa;
/*  background: #aaa url(../images/bk-gmcc.png); /* #999 */
}
#sec02 {
  background: #99c1f3;
}
#sec03 {
  background: #7ea7d9;
}
#sec04 {
  background: #618bbe;
}
#sec05,#sec06 {
  background: #618bbe; /* モーダル画面のボタン外側の背景色 */
}

.btn {
  display: block;
/*  background: #fff; */
/*  color: #618bbe; */
/*  padding: 0.8em 1em; */
  text-align: center;
/*  margin: 0 auto; */
  margin-bottom: 1px;
/*  border-radius: 100px; */
}
.btn:before {
  content: "\f104";
  font-family: "FontAwesome";
  margin-right: 5px;
}
@media only screen and ( max-width : 768px ) {
/*  #main { */
/*    padding-top: 58px; */
/*  } */
.btn {
    width: 100%;
  }
.modal .btn-success {
	background: #27609b; /* モーダル画面のボタン色 */
	padding-left: 5px;
	text-align: left;
}
.modal .modal-body {
	height: calc(100vh - 205px);
	overflow-y:auto;
	background: #7ea7d9; /* モーダル画面のボタン外側の背景色 */
}
.modal .img-responsive {
	width: 40px; /* モーダル画面のアイコンの大きさ */
}

}

@media only screen and ( max-width : 480px ) {
  .btn {
    width: 100%;
  }
}

@media print, screen and ( min-width : 769px ) {
.btn {
/*    width: 300px; */
}
.modal .btn-success {
	background: #27609b; /* モーダル画面のボタン色 */
	padding-top: 8px;
	padding-left: 20px;
	text-align: left;
}
.modal .modal-body {
	height: calc(100vh - 210px);
	overflow-y:auto;
	background: #7ea7d9; /* モーダル画面のボタン外側の背景色 */
}
.modal .img-responsive {
	width: 30px; /* モーダル画面のアイコンの大きさ */
}

}

/* モーダル用追加 */
.modal{
	display: none;
 	height: 100vh;
	position: fixed;
	top: 0;
	width: 100%;
	padding-right: 0px !important;
/*    max-height: 100%; */
    overflow-y: auto;
}
.modal__bg{
	background: rgba(0,0,0,0.8);
	height: 100vh;
	position: absolute;
	margin-left: 0px;
	padding: 0px 0px 0px;
	width: 100%;
}
.modal__content{
	background: #fff;
	left: 50%; 
	position: absolute;
	margin: auto;
	padding: 20px 20px 20px 20px;
	top: 50%;
	transform: translate(-50%,-50%);
}

.modal .modal-content {
/*	overflow-y: initial !important; */
}
.modal .modal-header {
	background: #003333;
}
.modal .modal-footer {
	background: #7ea7d9;
}
.modal .btn-primary, .btn-secondary {
	font-size: 14px;
	padding-left: 0px;
}
/* アコーディオン */
ul,li{
    margin: 0;
    padding: 0;
    list-style: none;
}
#accordion_menu > li {
    border: #ccc 1px solid;
    margin-bottom: -1px;
}
#accordion_menu a{
/*    color: #666; */
    color: #fff;
}
#accordion_menu a[data-toggle="collapse"]{
    display: block;
    padding: 10px;
    text-decoration: none;
  position: relative;
}
#accordion_menu a[data-toggle="collapse"]:hover{
/*    background: #e7e7e7; */
    background: light-blue;
}
#accordion_menu a[data-toggle="collapse"]::after{
    content:"";
    display: block;
    width: 8px;
    height: 8px;
    border-top: #fff 1px solid;
    border-right: #fff 1px solid;
    position: absolute;
    right: 15px;
    top: 0;
    bottom: 0;
    margin: auto;
}
#accordion_menu a[aria-expanded=false]::after{
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    transition-duration: 0.3s;
}
#accordion_menu a[aria-expanded=true]::after{
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
    transition-duration: 0.3s;
}
[id^="menu"] li{
/*    padding: 10px 10px 10px 10px; */
    padding-right: 10px;
    padding-left: 10px;
}

