@charset "utf-8";
/* CSS Document */

body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 14px;
	line-height: 140%;
	color: #1b1b1b;
	margin:0px;          /* ページ全体のmargin */
    padding:0px;         /* ページ全体のpadding */
    
}

* {
	font-size: 100%;
	margin: 0;
}


img {
	border: none;
	padding: 0px;
	margin-right: 2.5px;
	margin-bottom: 2.5px;
}

p {
   padding-left: 1em;
}

.red {
    font-size: 1em;
	color: red;
}


/* 見出し */


h2 {
	font-size: 1.5em;
	color: #1b1b1b;
	border-top: solid 3px #83a80f;/*上線*/
	border-bottom: solid 3px #83a80f;/*下線*/
	padding-top: 10px;
	padding-right: 1px;
	padding-bottom: 5px;
	padding-left: 5px;
	margin-top: 10px;
	margin-bottom: 5px;
}

h3 {
	font-size: 1.125em;
	color: #1b1b1b;/*文字色*/
	background: transparent;/*背景透明に*/
	border-left: solid 5px #83a80f;/*左線*/
	padding-top: 5px;
	padding-bottom: 10px;
	padding-right: 1px;
	padding-bottom: 5px;
	padding-left: 5px;
	margin-top: 10px;
	margin-right: 10px;
	margin-bottom: 10px;
	margin-left: 5px;
}

h4 {
	font-size: 1em;
	margin-left:20px;
	margin-top: 5px;
	margin-bottom: 5px;
}

.kakomi {
	border: solid 2px #83a80f;/*線色*/
    padding: 0.1em;/*文字周りの余白*/
}
   

/* 段落 */
b{
	color: #1b1b1b;
}

strong{
	font-size: 1.2em;
	color: red;
}



/*スライド*/
.zzz {
		width: 960px;
		height: 355px;
		position: relative;
		top:0px;
		bottom: 0;
		left: 0;
		right: 0;
		margin: 0;
	}

	.image {
	position: absolute;
	display: block;
	width: 960px;
	height: 355px;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0;
	}

	@keyframes slide1 {
		0%{opacity: 0;}
		6%{opacity: 1;}
		25%{opacity: 1;}
		40%{opacity: 0;}
		100%{opacity: 0;}
	}

	.aa {
		animation-name:slide1;
		animation-duration:12s;
		animation-iteration-count:infinite;
	}

	.bb {
		animation-name:slide1;
		animation-delay:3s;
		animation-duration:12s;
		animation-iteration-count:infinite;
		opacity: 0;
	}

	.cc {
		animation-name:slide1;
		animation-delay:6s;
		animation-duration:12s;
		animation-iteration-count:infinite;
		opacity: 0;
	}

	.dd {
		animation-name:slide1;
		animation-delay:9s;
		animation-duration:12s;
		animation-iteration-count:infinite;
		opacity: 0;
	}
	
	
/* ドロップメニュー */

#dropmenu{
  list-style-type: none;
  width: 960px;
  height: 40px;
  margin: 0;
  padding: 0;
  background: #66b42A ;
  border-bottom: 1px solid #919191;
  border-radius: 3px 3px 0 0;
}
#dropmenu li{
  position: relative;
  width: 14.1%;
  float: left;
  margin: 0;
  padding: 0;
  text-align: center;
  border-right: 1px solid #919191;
}
#dropmenu li a{
  display: block;
  margin: 0;
  padding: 15px 0 11px;
  color: #fff;
  font-size: 14px;
  font-weight: bolder;
  line-height: 1;
  text-decoration: none;
}
#dropmenu li:hover > a{
  opacity: 0.85;
  color: #1b1b1b;
}
#dropmenu > li:hover > a{
  border-radius: 3px 3px 0 0;
}
#dropmenu li ul{
  list-style: none;
  position: absolute;
  top: 100%;
  left: 0;
  margin: 0;
  padding: 0;
  border-radius: 0 0 3px 3px;
  z-index: 100;
}
#dropmenu li:last-child ul{
  left: -100%;
  width: 100%
}
#dropmenu li ul li{
  overflow: hidden;
  width: 120%;
  height: 0;
  color: #fff;
  -moz-transition: .2s;
  -webkit-transition: .2s;
  -o-transition: .2s;
  -ms-transition: .2s;
  transition: .2s;
}
#dropmenu li ul li a{
  padding: 13px 15px;
  background: #66b42A ;
  text-align: left;
  font-size: 12px;
  font-weight: normal;
}
#dropmenu li:hover ul li{
  overflow: visible;
  height: 38px;
  border-top: 1px solid #919191;
  border-bottom: 1px solid #919191;
}
#dropmenu li:hover ul li:first-child{
  border-top: 0;
}
#dropmenu li:hover ul li:last-child{
  border-bottom: 0;
}
#dropmenu li:hover ul li:last-child a{
  border-radius: 0 0 3px 3px;
}


/* アドレス */

address {
	text-align: center;
	padding: 20px;
}


/* ボックス */

#wrap {
	width: 960px;
     margin-left:auto;    /* 左側マージンを自動的に空ける */
     margin-right:auto;
	 overflow: hidden;   /* 右側マージンを自動的に空ける */
}



p img {
	vertical-align: bottom;
	margin-bottom: 5px;
}

.basicinfo {
	padding: 15px;
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	background-color: #237b4b;
	color: #FFF;
	text-decoration: none;
}

#header a {
	font-size: 1.2em;
	font-weight: bold;
	color: #fff;
	text-decoration: none;	
}
#header a:hover {
	color: #1b1b1b;
}
#header img{
	vertical-align: middle;
}



#footer {
	margin-top: 20px;
}
#footer ul {
	border-bottom-width: 0px;
	width: 960px;
	list-style-type: none;
	margin-top: 0px;
	padding-top: 0px;
	padding-right: 20px;
	padding-bottom: 20px;
	padding-left: 0px;
	height: 10px;
}
#footer ul li {
	float: left;
	width: 120px;
	padding-right: 40px;
	color: #FFF;

}
#footer ul li a {
	font-size: 12px;
	color: #fff;
	text-decoration: none;
	
}
#footer ul li a:hover {
	color: #1b1b1b;
}

.pagetop
    {
	position: fixed;
	bottom: 16px;
	right: 16px;
}
 
.pagetop a
    {
	display: block;
	text-decoration: none;
	width: 80%;
	height: auto;
    }
 
.pagetop:hover
{
    opacity: 0.85 ;
}


#headimage{
	margin-bottom: 0px;
	margin-top: 0px;
	padding-top: 0px;

}

#main {
	overflow: hidden;
	width: 960px;
	margin-top: 10px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
}



#main #content {
	float: left;
	width: 700px;
}


/*サイドメニュー*/
#sidebar ul {
	list-style-type: none;;
	margin-left: 0px;
	display: block;
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	padding-left: 30px;
}
#sidebar {
	float: right;
	width: 240px;
}
#sidebar ul li {
	float: none;
	border: 1px solid #666;
	margin-bottom: 10px;
	background-color: #ababab ;
	padding-left: 30px;
	margin-right: 0px;
	margin-left: 0px;
}

#sidebar ul li a {
	font-size: 14px;
	color: #fff;
	text-decoration: none;
	line-height: 40px;
	text-align: left;
	display: block;
	width: 240px;
}

#sidebar ul li:hover {
	opacity: 0.85;
}
#sidebar ul li a:hover {
	color: #1b1b1b;
	opacity: 0.85;
}


/*index*/
#topinfo {
	width: 960px;
	border-bottom-width: 3px;
	border-bottom-style: solid;
	border-bottom-color: #83a80f;
	margin-top: 20px;
	margin-bottom: 10px;
}




#info {
	float: left;
	width: 680px;
}
#info th{
	text-align: top;
}

#sideinfo {
	float: right;
	width: 220px;
	border: 1px solid #5f5f5f;
	padding: 10px;
}
#sideinfo ul li a {
	font-size: 12px;
	color: #1b1b1b;
	
}
#sideinfo ul li {
	margin-bottom: 10px;
}
#sideinfo ul {
	margin-left: 0px;
	padding-left: 20px;
	float: left;
}

#sideinfo ul li a:hover{
color:#1b1b1b;
text-decoration:underline;
}

#sideinfo img{
	vertical-align: middle;
}


.subject {
	width: 225px;
	float: left;
	margin-right: 16px;
	position: relative;
	height: 300px;
	}

.subject p {
    width:		100%;
	font-size:	140%;
	font-weight: bold; /*太字に*/
	text-align:	center;
	bottom:		175px;/*文字の位置　下からの距離*/
	margin:		0;
	padding:	0;
	color:		#fff;
	background:	rgba(0,0,0,0.4); /* 帯の透明度 */
	position:	absolute; /* 絶対位置指定 */
  }

.subject img {
  width: 100%;
  }

.subject p {
	color: #fff;
	text-decoration: none;
	
}
.subject p:hover {
	color: #1b1b1b;
}
.subject:hover {
	opacity: 0.85;
}

#subject04 {
	margin-right: 0px;
}

a:link {
	text-decoration: none;
}
a:visited {
	text-decoration: none;
}


/*ダウンロード*/
.dld li {
	position: relative;
	list-style-type: none!important;/*ポチ消す*/
	padding: 0.5em;
	margin: 10px;
	line-height: 1.5;
	background: #ababab ;
	vertical-align: middle;
	color: #FFF;
	border-radius: 15px 15px 15px 15px;/*左側の角丸く*/
	width: 300px;
}
.dld li a {
	
	color: #fff;
	text-decoration: none;
	
}
.dld li:hover {
	opacity: 0.85;
}
.dld li a:hover {
	color: #1b1b1b;
}

.dld li:before{ /*疑似要素*/
  display:inline-block; 
  vertical-align: middle;
  /*以下白丸つくる*/
  content:'';
  width:1em;
  height: 1em;
  background: #fff;
  border-radius: 50%;
  margin-right: 8px;
}

/*箇条書き*/
.paren{
 counter-reset:item;
 list-style:none;
}
.paren li:before{
 content:"(" counters(item, "-") ")";
 counter-increment:item;
 margin-right:0.5em;
}
.paren li{
 padding-left:1.5em;
 text-indent:-1.5em;
}


.blst li {
	list-style-type: square;
	float: left;
	width: 30%;
	padding: 0px;
	margin-top: 0px;
	margin-right: 2.88%;
	margin-bottom: 2.88px;
	margin-left: 0px;
	height: 30px;
}

.blst2 li{
	padding-top:0px;
    padding-bottom:5px;
}

.slst li {
	list-style-type: square;
	float: left;
	width: 47%;
	padding: 0px;
	margin-top: 0px;
	margin-right: 2.88%;
	margin-bottom: 2.88px;
	margin-left: 0px;
	height: 30px;
}


table.type04 {
	border-collapse: separate;
	border-spacing: 1px;
	text-align: left;
	line-height: 1.5;
	border-top: 1px solid #ccc;
}
table.type04 th {
	width: 50px;
	padding: 10px;
	font-weight: bold;
	vertical-align: top;
	border-bottom: 1px solid #ccc;
}
table.type04 td {
	width: 300px;
	padding: 10px;
	vertical-align: top;
	border-bottom: 1px solid #ccc;
}


table.type11 {
	border-collapse: separate;
	border-spacing: 1px;
	text-align: center;
	line-height: 1.5;
	width: auto;
}
table.type11 th {
	width: auto;
	padding: 10px;
	font-weight: bold;
	vertical-align: top;
	color: #fff;
	background: #ababab;
}
table.type11 td {
	width: auto;
	padding: 10px;
	vertical-align: top;
	border-bottom: 1px solid #ccc;
	background: #e2e2e2;
}



#info iframe {	
	width: 100%;
}
video {
	width: 704px;
	height 358px;	
	border: 1px solid #1b1b1b;
}

.spinfo {
	width: 960px;
	margin-bottom: 20px;
	position: relative;
	height: 200px;
	}

.spinfo p {
    width:		100%;
	font-size:	140%;
	font-weight: bold; /*太字に*/
	text-align:	center;
	bottom:		90px;/*文字の位置　下からの距離*/
	margin:		0;
	padding:	0;
	color:		#fff;
	background:	rgba(0,0,0,0.4); /* 帯の透明度 */
	position:	absolute; /* 絶対位置指定 */
  }

.spinfo img {
  width: 100%;
  }

.spinfo p {
	color: #fff;
	text-decoration: none;
	
}
.spinfo p:hover {
	color: #1b1b1b;
}
.spinfo:hover {
	opacity: 0.85;
}

/*画像拡大*/
.lb {
    display: flex;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    justify-content: center;
    align-items: center;
    background: rgba(0,0,0,.7);
    opacity: 0;
    transition: .3s opacity ease;
    z-index: -1;
}

.lb img {
    width: auto !important;
    max-height: 100%!important;
    transform: scale(.7);
    transition: .4s transform ease;
    pointer-events: none;
}

.lb:target {
    opacity: 1;
    z-index: 103;
}

.lb:target img {
    transform: scale(1);
}

