@charset "utf-8";

@-ms-viewport {
  width: device-width;
}

@viewport {
  width: device-width;
}

* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.pc{display:block;}
.sp{display:none;}

/*Contents layout
----------------------------------------------------*/
#wrapper{
	height:100%;
	margin:0 auto;
}

section{
	width:100%;
	display:block;
	clear:both;
}

.contents{
	position:relative;
	width:1200px;
	margin:0 auto;
}

#wrapper:after,
#wrapper_contents:after,
section:after,
.contents:after,
dl:after{
	visibility: hidden;
	display: block;
	font-size: 0px;
	content: " ";
	clear: both;
	height: 0;
}

.contentsBox{
	width:1000px;
	margin:0 auto;
}
.contentsBox h1{
	position:relative;
	margin-bottom:1em;
}
.logoBox{
	width:30%;
	position:absolute;
	top:0;
	right:0;
	margin-bottom:1em;

}
.logoBox img{
	width:80%;
}
.pankuzu{
	width:1200px;
	margin:0 auto;
	font-size:14px;
	font-weight:100;
}
.pankuzu a{
	color:#333;
	font-weight:500;
}
.pankuzu dd{
	float:left;
	margin-right:5px;
	margin-left:5px;

}
.pankuzu dd.current{
	font-weight:900;
}

.pankuzu a:link {color:#333;text-decoration:none;}
.pankuzu a:visited {color:#333;text-decoration:none;}
.pankuzu a:focus{outline:none;}
.pankuzu a img {text-decoration:none;}
.pankuzu a:hover {
	color:#087642;
	text-decoration:underline;
	transition:0.5s;
	-webkit-transition:0.5;
	-moz-transition:0.5s
}
.imgBox{
	width:100%;
	position:relative;
}
.imgBox img{
	width:100%;
}

/*flexbox
----------------------------------------------------*/
.flexbox{
	display:flex;
	flex-direction:row;
	width:100%;
	height:auto;
}
.box-item{
	width:50%;
	text-align:left;
}
.box-item a{
	color:#333;
}
.box-item a:hover{
	color:#087642;
}

/*header
----------------------------------------------------*/
header{
	height:100px;
}

header .flexbox{
	z-index:9999;
	background:#fff;
}

header .box-item{
	padding:10px 60px 10px 60px;
}
header .box-item img{
	width:20%;
}

/*sec01
----------------------------------------------------*/
#sec01{
	padding:80px 0;
}
#sec01 .contents{
	width:1200px;
	margin:0 auto;
}

/*sec02
----------------------------------------------------*/
#sec02{
	padding:0 0 30px 0;
}
#sec02 .contents{
	width:1200px;
	margin:0 auto;
}
.caption{
	margin-top:5px;
	margin-bottom:10px;
}
.gallery > ul {
	margin-bottom: 0;
}
.gallery > ul > li {
	float: left;
	margin-bottom: 15px;
	margin-right: 20px;
	width: 200px;
}
.gallery > ul > li a {
	border: 3px solid #000;
	border-radius: 3px;
	display: block;
	overflow: hidden;
	position: relative;
	float: left;
}
.gallery > ul > li a > img {
	-webkit-transition: -webkit-transform 0.15s ease 0s;
	-moz-transition: -moz-transform 0.15s ease 0s;
	-o-transition: -o-transform 0.15s ease 0s;
	transition: transform 0.15s ease 0s;
	-webkit-transform: scale3d(1, 1, 1);
	transform: scale3d(1, 1, 1);
	height: 100%;
	width: 100%;
}
.gallery > ul > li a:hover > img {
	-webkit-transform: scale3d(1.1, 1.1, 1.1);
	transform: scale3d(1.1, 1.1, 1.1);
}
.gallery > ul > li a:hover .gallery-poster > img {
	opacity: 1;
}
.gallery > ul > li a .gallery-poster {
	background-color: rgba(0, 0, 0, 0.1);
	bottom: 0;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	-webkit-transition: background-color 0.15s ease 0s;
	-o-transition: background-color 0.15s ease 0s;
	transition: background-color 0.15s ease 0s;
}
.gallery > ul > li a .gallery-poster > img {
	left: 50%;
	margin-left: -10px;
	margin-top: -10px;
	opacity: 0;
	position: absolute;
	top: 50%;
	-webkit-transition: opacity 0.3s ease 0s;
	-o-transition: opacity 0.3s ease 0s;
	transition: opacity 0.3s ease 0s;
}
.gallery > ul > li a:hover .gallery-poster {
	background-color: rgba(0, 0, 0, 0.5);
}
.gallery .justified-gallery > a > img {
	-webkit-transition: -webkit-transform 0.15s ease 0s;
	-moz-transition: -moz-transform 0.15s ease 0s;
	-o-transition: -o-transform 0.15s ease 0s;
	transition: transform 0.15s ease 0s;
	-webkit-transform: scale3d(1, 1, 1);
	transform: scale3d(1, 1, 1);
	height: 100%;
	width: 100%;
}
.gallery .justified-gallery > a:hover > img {
	-webkit-transform: scale3d(1.1, 1.1, 1.1);
	transform: scale3d(1.1, 1.1, 1.1);
}
.gallery .justified-gallery > a:hover .gallery-poster > img {
	opacity: 1;
}
.gallery .justified-gallery > a .gallery-poster {
	background-color: rgba(0, 0, 0, 0.1);
	bottom: 0;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	-webkit-transition: background-color 0.15s ease 0s;
	-o-transition: background-color 0.15s ease 0s;
	transition: background-color 0.15s ease 0s;
}
.gallery .justified-gallery > a .gallery-poster > img {
	left: 50%;
	margin-left: -10px;
	margin-top: -10px;
	opacity: 0;
	position: absolute;
	top: 50%;
	-webkit-transition: opacity 0.3s ease 0s;
	-o-transition: opacity 0.3s ease 0s;
	transition: opacity 0.3s ease 0s;
}
.gallery .justified-gallery > a:hover .gallery-poster {
	background-color: rgba(0, 0, 0, 0.5);
}
.gallery .video .gallery-poster img {
	height: 48px;
	margin-left: -24px;
	margin-top: -24px;
	opacity: 0.8;
	width: 48px;
}
.gallery.dark > ul > li a {
	border: 3px solid #04070a;
}
.home .gallery {
	padding-bottom: 80px;
}
h2 {
	position: relative;
	padding: 1rem .5rem;
	margin-bottom:20px;
  }
  
  h2:after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 6px;
	content: '';
	border-radius: 3px;
	background-image: -webkit-gradient(linear, right top, left top, from(#087642), to(#087642));
	background-image: -webkit-linear-gradient(right, #2af598 0%, #087642 100%);
	background-image: linear-gradient(to left, #2af598 0%, #087642 100%);
  }
/*footer
----------------------------------------------------*/
footer{
	padding: 0;
	background: #087642;
}

footer ul{
	margin-bottom:20px;
	margin-left:50px;
}

footer ul li{
	float:left;
	width:380px;
	margin-left:30px;
	font-size:14px;
}

footer ul li:first-child{
	margin-left:0;
}

footer ul li img{
	width:100%;
	height:auto;
}

footer .box_copyright{
	padding:20px 0;
	font-size:12px;
	color:#fff;
	text-align:left;
}
footer a:link {color:#fff;text-decoration:none;font-weight:bold;}
footer a:visited {color:#fff;text-decoration:none;}
footer a:focus{outline:none;}
footer a img {text-decoration:none;}
footer a:hover {
	text-decoration:underline;
	transition:0.5s;
	-webkit-transition:0.5;
	-moz-transition:0.5s
}

