@charset "utf-8";
/* CSS Document */

html, body {
	font-family: "Hiragino Sans", "Noto Sans Japanese", "Helvetica Neue", "Yu Gothic", YuGothic, Arial, "メイリオ", Meiryo, sans-serif;
	font-weight: 200;
}
html { font-size: 62.5%; }
body {
	padding-top: 80px;
	font-size: 1.8rem;
}
@media screen and (max-width: 767px) {
	body {
		padding-top: 70px!important;
		font-size: 1.6rem;
	}
}


@font-face {
  font-family: "Hiragino Sans";
  src: local(HiraginoSans-W0);
  font-weight: 100;
}
@font-face {
  font-family: "Hiragino Sans";
  src: local(HiraginoSans-W1);
  font-weight: 200;
}
@font-face {
  font-family: "Hiragino Sans";
  src: local(HiraginoSans-W2);
  font-weight: 300;
}
@font-face {
  font-family: "Hiragino Sans";
  src: local(HiraginoSans-W3);
  font-weight: 400;
}
@font-face {
  font-family: "Hiragino Sans";
  src: local(HiraginoSans-W4);
  font-weight: 500;
}
@font-face {
  font-family: "Hiragino Sans";
  src: local(HiraginoSans-W5);
  font-weight: 600;
}
@font-face {
  font-family: "Hiragino Sans";
  src: local(HiraginoSans-W6);
  font-weight: 700;
}
@font-face {
  font-family: "Hiragino Sans";
  src: local(HiraginoSans-W7);
  font-weight: 800;
}
@font-face {
  font-family: "Hiragino Sans";
  src: local(HiraginoSans-W8);
  font-weight: 900;
}
@font-face {
  font-family: "Hiragino Sans W9";
  src: local(HiraginoSans-W9);
  font-weight: 900;
}

img {
	max-width: 100%;
	width /***/: auto; /* IE8のみ */
	height: auto;
	vertical-align: bottom;
}

.clearfix:after {
    content:"";
    display:block;
    clear:both;
}

a, a:link, a:visited {
	text-decoration: none;
	color: #004818;
	transition: 0.5s;
}
a:hover {
	color: #6fba2c;
}
a:hover, a:hover img { opacity: 0.7; }


.innerBox {
	margin: 0 auto;
	width: 890px;
	height: auto;
}
@media screen and (max-width: 768px) {
	.innerBox {
		margin: 0 auto;
		width: 95%;
		height: auto;
	}
}

/*-------------------------------------
	gnavi
--------------------------------------*/
header.pcHeader,
header.smpHeader {
	width: 100%;
	height: 80px;
	background: #ffffff;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99;
	-moz-transition: height 0.3s;
	-o-transition: height 0.3s;
	-webkit-transition: height 0.3s;
	transition: height 0.3s;
}
header.scl {
	height: 60px;
}

.pcHeader #gnavi {
	margin: 0 auto;
	width: 1200px;
	height: 80px;
}

.pcHeader #gnavi ul {
	margin: 0;
	padding: 0;
	width: 100%;
	height: 80px;
}
.pcHeader #gnavi ul li {
	padding: 15px;
	position: relative;
}
#gnavi ul li.hlogo {
	padding: 10px 0;
	width: 110px;
	-moz-transition: height 0.3s;
	-o-transition: height 0.3s;
	-webkit-transition: height 0.3s;
	transition: height 0.3s;
}

#gnavi ul li span.naviBox {
	padding: 0 35px;
	height: 50px;
	line-height: 50px;
	display: block;
	border-right: 1px solid #004818;
	-moz-transition: height 0.3s;
	-o-transition: height 0.3s;
	-webkit-transition: height 0.3s;
	transition: height 0.3s;
}


/* dropdown */
.pcHeader #gnavi ul li > ul {
  display: none;
  position: absolute;
  top: 80px;
  left: -15px;
  padding: 0;
  width: 100%;
  height: auto;
  background: rgba(255,255,255,1);
  box-sizing: border-box;
  z-index: 200;
}
.pcHeader #gnavi ul li > ul li {
    margin: 0;
    text-align: center;
    width: auto;
    border: none;
    display: block;
    border: 1px solid #666;
    padding: 0;
}
.pcHeader #gnavi ul li > ul li:not(:first-child) {
  border-top: none;
}
.pcHeader #gnavi ul li > ul li a {
    display: block;
    padding: 10px 0;
}
.pcHeader #gnavi ul li > ul li a:hover {
    color: #333;
    background: #efefef;
}

header.scl #gnavi ul li > ul {
  top: 50px;
}

/* scroll */
header.scl #gnavi ul li {
	padding: 10px 15px;
}
header.scl #gnavi ul li.hlogo {
	padding: 0;
	width: 110px;
}

header.scl #gnavi ul li span.naviBox {
	padding: 0 35px;
	height: 40px;
	line-height: 40px;
	display: block;
	border-right: 1px solid #004818;
}


/* hunberger */
.naviBox .icon-burger {
	-moz-transition:all 0.3s;-o-transition:all 0.3s;
	-webkit-transition:all 0.3s;transition:all 0.3s;
	border-top:2px solid #004818;
	display:inline-block;
	height:7px;
	margin-left:15px;
	position:relative;
	top:-3px;
	width:22px;
}

.naviBox .icon-burger:before {
	-moz-transition:all 0.3s;
	-o-transition:all 0.3s;
	-webkit-transition:all 0.3s;
	transition:all 0.3s;
	border-top:2px solid #004818;
	bottom:-3px;
	content:'';
	display:block;
	margin:4px 0 0 0;
	position:absolute;
	right:0;
	width:22px;
}
.naviBox .icon-burger:after {
	-moz-transition:all 0.3s;
	-o-transition:all 0.3s;
	-webkit-transition:all 0.3s;
	transition:all 0.3s;
	border-top: 2px solid #004818;
	content:'';
	display:block;
	left: 0;
	margin: 3px 0 0 0;
	position:absolute;
	width:22px;
}


.naviBox:hover .icon-burger { border-top: 0 ;}
.naviBox:hover .icon-burger:before {
	-moz-transform:rotate(-45deg);
	-ms-transform:rotate(-45deg);
	-webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
	bottom: 2px;
	width: 13px;
}
.naviBox:hover .icon-burger:after {
	-moz-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
	width: 13px
}

@media screen and (max-width: 767px) {
	.pcHeader { display: none; }
}

.smpHeader, #smpNavi {
	display: none;
}
@media screen and (max-width: 767px) {
	.smpHeader, #smpNavi { display: block;}
}

header > ul > li > ul{
	display: -webkit-flex;display: flex;
	-webkit-flex-direction: column;flex-direction: column;
	position: absolute;}
 
header  > ul > li:hover > ul{
	z-index:3;
	width:100%;margin:0 auto;
	}
 
header > ul > li > ul > li{
	overflow: hidden;
	height: 0;
	transition: .2s;}
header  > ul > li:hover > ul li{
	overflow: visible;
	height: 38px;
	border-bottom:1px solid #ccc;
	}
header  > ul > li:hover > ul li:first-child{
	border-top:1px solid #ccc;
	}
 
header > ul > li > ul > li a{background:#ededed;}

.smpHeader {
	margin: 0;
	width: 100%;
	height: 70px;
}
.smpHeader .hlogo {
	padding: 5px;
	width: 85%;
	-moz-transition: height 0.3s;
	-o-transition: height 0.3s;
	-webkit-transition: height 0.3s;
	transition: height 0.3s;
}
.smpHeader.scl .hlogo {
	padding: 0;
}

#smpNavi {
	margin: 0 0 0 auto;
	width: 20%;
	position: relative;
}


/*-------------------------------------
	.fbArea
--------------------------------------*/
.fbArea {
	text-align: center;
	padding-bottom: 80px;
}


/*-------------------------------------
	fban
--------------------------------------*/
#fban {
	padding: 20px 10px 80px 10px;
	width: 100%;
	height: auto;
	text-align: center;
}
#fban .fb-page {
	width: 400px;
}
#fban .fbwrap + .fbwrap {
	margin-left: 50px;
}
#fban p + p {
    margin-top: 10px;
}
#fban .fbwrap p {
	font-weight: 700;
    margin-bottom: 10px;
    font-size: 2.4rem;
    color: #004818;
}
#fban .fbwrap p::before {
	display: inline-block;
	content: "—";
	margin-right: 10px;
}
#fban .fbwrap p::after {
	display: inline-block;
	content: "—";
	margin-left: 10px;
}
/*
#fban .fb-page a {
    margin: 0 auto;
    padding: 15px;
    font-size: 2.0rem;
    color: #ffffff;
    text-align: center;
    width: 40%;
    background: #004818;
    display: block;
}
@media only screen and (max-width: 480px) {
    #fban .fb-page a {
        font-size: 1.6rem;
        width: 80%;
    }
}*/

#fban02 {
	margin: 0 auto 80px;
	width: 400px;
	height: auto;
	text-align: center;
}
@media only screen and (max-width: 480px) {
	#fban02 {
        width: 100%;
    }
	#fban .fbwrap {
		width: 100%;
	}
	#fban .fb-page {
		width: 100%;
		margin: 30px 0;
	}
	
	#fban .fbwrap + .fbwrap {
		margin-left: 0;
		margin-top: 30px;
	}

}

/*-------------------------------------
	footer
--------------------------------------*/
footer {
	padding: 40px 0;
	color: #FFFFFF;
	width: 100%;
	height: auto;
	background: #004818;
}

footer .footerBox {
	width: 1200px;
    margin: 0 auto;
	padding: 0px 0 40px;
	border-bottom: 1px solid #336d46;
    display: flex;
}
@media screen and (max-width: 767px) {
    footer {
        padding: 20px 0;
    }
    footer .footerBox {
		margin: 0 auto;
		width: 90%;
        display: block;
	}
}
@media screen and (max-width: 480px) {
	footer .footerBox {
		-webkit-box-direction:normal;
		-moz-box-direction:normal;
		-webkit-box-orient:vertical;
		-moz-box-orient:vertical;
		-webkit-flex-direction:column;
		-moz-flex-direction:column;
		flex-direction:column;
        padding-bottom: 10px;
	}
}

footer .footerBox .flogo {
	width: 30%;
    margin-bottom: 20px;
}
@media screen and (max-width: 480px) {
	footer .footerBox .flogo {
		width: 100%;
        text-align: center;
        margin-bottom: 20px;
	}
    footer .footerBox .flogo img {
		width: 30%;
	}
}

footer .footerBox a {
    color: #fff;
}
footer .footerBox a:hover {
    text-decoration: underline;
}

footer .footerBox .footerMenu {
    margin: 0 0 0 auto;
}
footer .footerBox > ul {
    margin-right: 80px;
}
footer .footerBox > ul > li {
    width: 100%;
    padding-bottom: 20px;
    white-space: nowrap;
}
footer .footerBox .sub_menu {
    margin: 18px 0 0 16px;
}
footer .footerBox .sub_menu li {
    margin-bottom: 10px;
}
@media screen and (max-width: 480px) {
	footer .footerBox .sub_menu {
		display: none;
	}
}
footer.entry-footer {
    display: none;
}

#copy {
    text-align: center;
    color: #fff;
    font-size: 1.4rem;
    margin-top: 30px;
}
@media screen and (max-width: 480px) {
	#copy {
		font-size: 1.2rem;
        margin-top: 20px;
	}
}

#btnPagetop {
	position: fixed;
	right: 10px;
	bottom: 10px;
	cursor: pointer;
}


/*-----------------------------
	common
-------------------------------*/
/* flex */
.fl, .fl-smp {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
}

.fl-jst {
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -webkit-flex-pack: justify;
  -moz-flex-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  justify-content: space-between;
}

.fl-cnt {
	-webkit-box-pack:center;
	-moz-box-pack:center;
	-webkit-flex-pack:center;
	-moz-flex-pack:center;
	-ms-flex-pack:center;
	-webkit-justify-content:center;
	-moz-justify-content:center;
	justify-content:center;
}

.fl-wrap {
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.fl-col {
  -webkit-box-direction: normal;
  -moz-box-direction: normal;
  -webkit-box-orient: vertical;
  -moz-box-orient: vertical;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  flex-direction: column;
}

@media screen and (max-width: 480px) {
	.fl-smp {
		-webkit-box-direction: normal;
		-moz-box-direction: normal;
		-webkit-box-orient: vertical;
		-moz-box-orient: vertical;
		-webkit-flex-direction: column;
		-moz-flex-direction: column;
		flex-direction: column;
	}
}
.pc_hiddn { display: none; }
@media screen and (max-width: 767px) {
	.tab_hiddn { display: none;}
	.pc_hiddn { display: block; }
}
@media screen and (max-width: 480px) {
	.smp_hiddn { display: none;}
}

/* 調整用
---------------------------------------------------------------------------- */
.mt0 { margin-top: 0!important; }
.mt5 { margin-top: 5px!important; }
.mt10 { margin-top: 10px!important; }
.mt15 { margin-top: 15px!important; }
.mt20 { margin-top: 20px!important; }
.mt30 { margin-top: 30px!important; }
.mt35 { margin-top: 35px!important; }
.mt40 { margin-top: 40px!important; }
.mt50 { margin-top: 50px!important; }
.mt100 { margin-top: 100px!important; }
.mr0 { margin-right: 0!important; }
.mr5 { margin-right: 5px!important; }
.mr10 { margin-right: 10px!important; }
.mr15 { margin-right: 15px!important; }
.mr20 { margin-right: 20px!important; }
.mr25 { margin-right: 25px!important; }
.mb0 { margin-bottom: 0!important; }
.mb5 { margin-bottom: 5px!important; }
.mb10 { margin-bottom: 10px!important; }
.mb12 { margin-bottom: 12px!important; }
.mb15 { margin-bottom: 15px!important; }
.mb20 { margin-bottom: 20px!important; }
.mb25 { margin-bottom: 25px!important; }
.mb30 { margin-bottom: 30px!important; }
.mb35 { margin-bottom: 35px!important; }
.mb40 { margin-bottom: 40px!important; }
.mb50 { margin-bottom: 50px!important; }
.mb60 { margin-bottom: 60px!important; }
.mb80 { margin-bottom: 80px!important; }
.ml0 { margin-left: 0!important; }
.ml5 { margin-left: 5px!important; }
.ml10 { margin-left: 10px!important; }
.ml15 { margin-left: 15px!important; }
.ml20 { margin-left: 20px!important; }
.ml25 { margin-left: 25px!important; }
.ml30 { margin-left: 30px!important; }


.ta_cnt { text-align: center;
    margin-top: 30px;
}

.ta_r { text-align: right; }


/* wordpress
---------------------------------------------------------------------------- */
.wrap_article {
    margin-bottom: 40px;
}
.wrap_article .entry-meta {
    text-align: right;
    font-size: 1.6rem;
}
.wrap_article h1 {
    font-size: 3.0rem;
    margin: 40px 0;
}
.wrap_article .photo_center {
    text-align: center;
}
.wrap_article p {
    margin-bottom: 20px;
}
.wrap_article .photo_center img {
    max-width: 100%;
    width /***/: auto;
    height: auto;
    vertical-align: bottom;
}
.wrap_article .screen-reader-text,
.wrap_article .byline {
    display: none;
}
.wrap_article .flex { 
    display: flex;
    justify-content: center;
    margin-bottom: 20px;
}
.wrap_article .flex img {
    margin: 0 2%;
}
.wrap_article .btn_info a {
    margin: 20px auto;
    padding: 15px;
    font-size: 2.0rem;
    color: #ffffff;
    text-align: center;
    width: 40%;
    background: #004818;
    display: block;
}
.nav-links {
    margin-top: 40px;
}
.nav-subtitle {
    position: relative;
    display: inline-block;
    padding-left: 20px;
    margin-right: 20px;
}
.nav-subtitle::after{
  content: '';
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 2px #004818;
  border-right: solid 2px #004818;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -4px;
}

.entry-content img.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.entry-content img.alignright {
	padding: 4px;
	margin: 0 0 2px 10px;
	display: inline;
}
.entry-content img.alignleft {
	padding: 4px;
	margin: 0 10px 2px 0;
	display: inline;
}

@media screen and (max-width: 480px) {
    .wrap_article {
        margin-bottom: 20px;
    }
    .wrap_article .entry-meta {
        font-size: 1.4rem;
    }
    .wrap_article h1 {
        font-size: 1.8rem;
        margin: 15px 0;
    }
    .wrap_article .flex { 
        display: block;
        text-align: center;
    }
    .wrap_article .flex img {
        margin: 0 auto 10px;
    }
    .wrap_article .btn_info {
        margin-bottom: 0;
    }
    .wrap_article .btn_info a {
        width: 80%;
    }
	.nav-links {
		margin-top: 0;
	}
}
    
    
    