@charset "UTF-8";
/* CSS Document */
/* ---------------------
  - 
  - 
  - 
  - 
  - 
--------------------- */
/* ==========================================
common
========================================== */
#content a:hover {
	opacity: 0.5 ;
}
.inner{
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
.btn a{
	display: inline-block;
	background: #85cd62;
	border-radius: 60px;
	color: #fff;
	padding: 15px 40px;
}
.btn a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 600;
  content: '\f061';
	margin-right: 10px;
}

@media screen and (max-width: 780px) {
.inner{
	margin-left: 20px;
	margin-right: 20px;
}
}

@media screen and (max-width: 480px) {
}

/* ==========================================
header
========================================== */
header{
	background-color: #fffef3;
	background-image: url("../img/head_bg.png");
	background-repeat: repeat-x;
	background-position: center top;
	padding-top: 40px;
	padding-bottom: 30px;
}
header .head{
	padding-left: 10px;
	padding-right: 10px;
}
header h1{
	display: inline-block;
	font-size: 12px;
}
header .subNav{
	float: right;
	font-size: 12px;
	text-align: right;
}
header .subNav i.fas{
	color: #85cd62;
}
	.sp_logo{
		display: none;
		text-align: center;
		padding-bottom: 10px;
	
	}
@media screen and (max-width: 780px) {
header{
	padding-top: 10px;
	padding-bottom: 10px;
}
header .subNav{
	display: none;
}
header h1{
	display: block;
	font-size: 11px;
	text-align: center;
}
	.sp_logo{
		display: block;
	
	}
	.sp_logo img{
		width: 80px;
	
	}
}

@media screen and (max-width: 480px) {
}

/* ==========================================
  gNav
========================================== */
.gNav{
}
.gNav ul{
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  align-items: flex-end;
}
.gNav li{
	text-align: center;
  background-image: url("../img/sen.png");
  background-repeat: no-repeat;
  background-position: center left;
}
.gNav li:hover{
	background:rgba(206,238,190,0.2);
	border-radius: 10px;
}
.gNav li:nth-child(4){
	text-align: center;
	background: none;
}
.gNav li:last-child, .gNav li:nth-child(3){
  background-image: url("../img/sen.png"), url("../img/sen.png");
  background-repeat: no-repeat, no-repeat;
  background-position: center right, center left;
}
.gNav li.logo {
	padding-left: 20px;
	padding-right: 20px;
}
.gNav li.logo img{
	width: 140px;
	height: auto;
}
.gNav li a{
	display: block;
	text-align: center;
}
.gNav li.flex-item{
	flex: 1;
}
@media screen and (max-width: 780px) {
.overlay {
	content: "";
	display: block;
	width: 0;
	height: 0;
	background-color: rgba(0, 0, 0, 0.3);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	opacity: 0;
	transition: opacity .5s;
}
.overlay.open {
	width: 100%;
	height: 100%;
	opacity: 1;
}
.menu-trigger {
	display: inline-block;
	width: 36px;
	height: 28px;
	vertical-align: middle;
	cursor: pointer;
	position: fixed;
	top: 40px;
	right: 10px;
	z-index: 100;/*   transform: translateX(0);
  transition: transform .5s;
 */
}
/* .menu-trigger.active {
  transform: translateX(-250px);
}
 */.menu-trigger span {
	display: inline-block;
	box-sizing: border-box;
	position: absolute;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: #efa81c;
	transition: all .5s;
}
.menu-trigger.active span {
	background-color: #fff;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger.active span:nth-of-type(1) {
	transform: translateY(12px) rotate(-45deg);
}
.menu-trigger span:nth-of-type(2) {
	top: 12px;
}
.menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}
.menu-trigger.active span:nth-of-type(3) {
	transform: translateY(-12px) rotate(45deg);
}
nav.menu {
	width: 100%;
	height: 100%;
	padding-top: 100px;
	padding-left: 30px;
	background-color:rgba(133,205,98,0.9);
	position: fixed;
	top: 0;
	right: 0;
	z-index: 10;
	transform: translate(100%);
	transition: all .5s;
    overflow-y: scroll;
}
nav.open {
	transform: translateZ(0);
}
.gNav ul{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.gNav li, .gNav li:last-child, .gNav li:nth-child(3){
  background-image: none;
	background-color: #fffef3;
	border-radius: 10px;
}
.gNav li:hover{
	background-color: #fffef3;
}
.gNav li.flex-item{
	flex: auto;
}
.gNav li{
	margin: 10px;
	padding: 20px;
}
	
}
@media screen and (max-width: 480px) {
}



/* ==========================================
  mv
========================================== */
#mv{
	height: 640px;
	background-image:url("../img/main_img_bg.png"),  url("../img/main_img_01.jpg");
  background-repeat: repeat-x, no-repeat;
  background-position: bottom center, center center;
	background-size: auto, cover;
}
#mv .inner{
	height: inherit;
	position: relative;	
}
#mv h3{
	position: absolute;
	top: 20px;
	right: 100px;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
	text-align: right;
}
#mv h3 span{
	display: inline-block;
	background: rgba(243,151,0,.8);
	border-radius: 4px;
	font-size: 30px;
	color: #fff;
	padding: 20px 10px;
	margin-left: 20px;	
}
@media screen and (max-width: 780px) {
#mv h3 span{
	font-size: 26px;
}
}
@media screen and (max-width: 480px) {
#mv{
	height: 460px;
}
#mv h3{
	right: 20px;
}
#mv h3 span{
	font-size: 20px;
}
}
.slick__bg {
    background-size: cover;
    background-repeat: no-repeat;
  background-position: center center;
}
.slick__bg01 {
	background-image:url("../img/main_img_bg.png"),  url("../img/main_img_01.jpg");
  background-repeat: repeat-x, no-repeat;
  background-position: bottom center, center center;
	background-size: auto, cover;
}
.slick__bg02 {
	background-image:url("../img/main_img_bg.png"),  url("../img/main_img_02.jpg");
  background-repeat: repeat-x, no-repeat;
  background-position: bottom center, center center;
	background-size: auto, cover;
}
.slick__bg .inner{
    padding-bottom: 640px;
	height: inherit;
	position: relative;	
}
.slick__bg .inner h3{
	position: absolute;
	top: 20px;
	right: 100px;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
	text-align: right;
}
.slick__bg .inner h3 span{
	display: inline-block;
	background: rgba(243,151,0,.8);
	border-radius: 4px;
	font-size: 30px;
	color: #fff;
	padding: 20px 10px;
	margin-left: 20px;	
}
@media screen and (max-width: 780px) {
.slick__bg .inner h3{
	right: 10px;
}
.slick__bg .inner span{
	font-size: 26px;
}
}
@media screen and (max-width: 480px) {
.slick__bg .inner{
    padding-bottom: 480px;
}
.slick__bg .inner h3 span{
	font-size: 20px;
}
}
/* ==========================================
  top news
========================================== */

#news{
	background-color: #fffef3;	
	padding: 50px 0;
}

#news .ttl{
	color: #85cd62;
	font-size: 24px;
	font-weight: 500;
	text-align: center;
}
#news .ttl span{
	display: block;
	font-size: 14px;
}
#news h2::after, #news h2::before{
  content: url("../img/icon_grass.png");
  vertical-align: middle;
  padding-left: 20px;
  padding-right: 20px;
}
#news ul{
	position: relative;
	background: #fff;
	border: 3px solid #85cd62;
	border-radius: 10px;
	margin: 20px 60px;
	padding: 25px 50px;
}
#news ul .wood_left{
	position: absolute;
	left: 10px;
	top: -100px;
}
#news ul .wood_right{
	position: absolute;
	right: -50px;
	bottom: 0;
}
#news ul li{
	padding: 20px;
	border-bottom: 2px dotted #f1f1f1;
}
#news ul .date{
	font-size: 14px;
	font-weight: 600;
	margin-right: 20px;
}
#news ul .ctg{
	border-radius: 2px;
	color: #555;
	font-size: 12px;
	margin-right: 10px;
	  padding: 3px 6px;
}
  #news ul .ctg.news{
	  background: #FEECED;
}
  #news ul .ctg.guide{
	  background: #FDF5E5;
}
  #news ul .ctg.guardian{
	  background: #DFEDF4;
}
#news ul p{
	display: inline-block;
}
#news .btn {
	text-align: right;
	margin-right: 60px;
}

@media screen and (max-width: 780px) {

#news ul{
	margin: 20px;
	padding: 20px;
}
#news ul .wood_right{
	position: absolute;
	right: -20px;
	bottom: -60px;
}
#news ul .wood_right img{
	width: 100px;
}
#news .btn {
	text-align: center;
	margin-right: 20px;
}
#news ul p{
	display: block;
	padding-top: 10px;
}
}
@media screen and (max-width: 480px) {

#news{
	padding: 30px 0;
}

#news ul{
	margin-left: 0;
	margin-right: 0;
}
#news ul .wood_left{
	position: absolute;
	left: -10px;
	top: -50px;
}
#news ul .wood_left img{
	width: 60px;
}
#news ul .wood_right img{
	width: 60px;
}
}


/* ==========================================
  top menu
========================================== */

#menu{
	background: #fad29a;
	padding: 60px 0;
}
#menu .inner{
	background-image:url("../img/img_mokomoko.png"),  url("../img/img_mokomoko.png");
  background-repeat: repeat-x, repeat-x;
  background-position: bottom center, top center;
	padding: 40px 0;
}
#menu .menubox{
	background: #fff;
	padding: 20px;
}
#menu .box{
	width: 24%;
	margin: 0 0.5%;
	position: relative;
	padding: 10px;
}
#menu .box {
	width: 24%;
	margin: 0 0.5%;
	position: relative;
}
#menu .box a:hover{
	opacity: 1;
}
#menu .box a:hover img.photo01{
	padding: 5px;
	background: #f2a9a8;
	border-radius: 4px;
}
#menu .box a:hover img.photo02{
	padding: 5px;
	background: #89c997;
	border-radius: 4px;
}
#menu .box a:hover img.photo03{
	padding: 5px;
	background: #88abda;
	border-radius: 4px;
}
  #menu .box a:hover img.photo04{
	padding: 5px;
	background: #f8b551;
	border-radius: 4px;
}
#menu .btn{
	border-radius: 4px;
	color: #fff;
	padding: 10px;
	width: 60%;
	text-align: center;
	position: absolute;
	bottom:  -10px;
  right: 0;
  left: 0;
  margin: 0 auto;
}
#menu .nav01{
	background: #f2a9a8;
}
#menu .nav02{
	background: #89c997;
}
#menu .nav03{
	background: #88abda;
}
#menu .nav04{
	background: #f8b551;
}
#menu .btn img{
	vertical-align: middle;
}

@media screen and (max-width: 780px) {
#menu .box{
	width: 48%;
	margin: 20px 1%;
	position: relative;
}
}
@media screen and (max-width: 480px) {
#menu .box{
	width: 98%;
}
}

/* ==========================================
  top report
========================================== */
#report{
	padding-top: 100px;
}
#report .ttl{
	text-align: center;
}
#report ul{
	margin: 50px 0;
}
#report ul li{
	background: #fffbf4;
	border-radius: 2px;
	width: 22%;
	margin: 0 1.5%;
	padding: 15px;
	position: relative;
}
#report ul li p{
	font-size: 15px;
	margin-bottom: 50px;
	margin-top: 10px;
}
#report .date{
	font-size: 12px;
	margin-top: 6px;
}
#report .arrow{
	position: absolute;
	bottom: 10px;
	right: 10px;	
}
@media screen and (max-width: 780px) {
#report ul li{
	width: 48%;
	margin: 10px 1%;
}
}
@media screen and (max-width: 480px) {
#report ul li{
	width: 48%;
}
}
/* ==========================================
page
========================================== */
.page_main{
	padding-top: 100px;
}
.page_header{
	height: 340px;
	background: url("../img/page_title_blog.jpg") no-repeat center center;
	background-size: cover;

}
.pagetitle{
	max-width: 1200px;
	height: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
    display: flex;
    align-items: center;     /*上下中央揃え*/
}
.pagetitle h2{
	display: inline-block;
	background:rgba(255,255,255,0.6);
	border-radius: 10px;
	font-size: 60px;
	padding: 40px 60px;
	text-align: center;
}
.pagetitle h2 span{
	display: block;
	font-size: 24px;
	font-weight: 400;
	margin-top: -10px;
}
h3.title{
	color: #85cd62;
	font-size: 36px;
	font-weight: 500;
  position: relative;
	margin-bottom: 60px;
	background: url("../img/bg_tama_04.png") no-repeat bottom left;
	background-size: contain;
	padding-left: 60px;
	
}
h3.title:before {
content: "";
    display: inline-block;
    position: absolute;
    left: 0;
    bottom: -7px;
    width: 100%;
    height: 5px;
    border-radius: 5px;
  background: #85cd62;
}
h3.title span{
	font-size: 18px;
	margin-left: 5px;
}
h4.title{
	color: #ba9668;
	font-size: 24px;
	font-weight: 500;
	margin-bottom: 20px;
}
h4.title:before {
    background-color: #ba9668; /* 線色 */
    border-radius: 3px; /* 線幅の半分 */
    content: "";
    display: inline-block;
    height: 28px; /* 線の長さ */
    margin-right: 10px; /* 線右の余白 */
    vertical-align: middle;
    width: 6px; /* 線幅 */
}
.h2box{
	height: 260px;
	background: url("../img/h2_bg_02.jpg") no-repeat center center;
	background-size: cover;
	position: relative;
	margin-bottom: 150px;
}
.h2box.bg01{
	background: url("../img/h2_bg_01.jpg") no-repeat center center;
	background-size: cover;
}
.h2box.bg02{
	background: url("../img/h2_bg_02.jpg") no-repeat center center;
	background-size: cover;
}
.h2box.bg03{
	background: url("../img/h2_bg_03.jpg") no-repeat center center;
	background-size: cover;
}
.h2box.bg04{
	background: url("../img/h2_bg_04.jpg") no-repeat center center;
	background-size: cover;
}
.h2box h2.title{
	width: 40%;
	background: #fff;
	border-radius: 10px;
	font-size: 40px;
	font-weight: 600;
	padding: 40px 20px 0;
	text-align: center;
    position: absolute;
    bottom: -20px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
.h2box h2.title span{
	display: block;
	color: #efa81c;
	font-size: 14px;
	font-weight: 500;
}
h3.lead{
	font-size: 36px;
	font-weight: 600;
	line-height: 2;
	margin-left: 10px;
	margin-right: 10px;
}
h4.lead{
	font-size: 20px;
	font-weight: 600;
	line-height: 2;
	margin-left: 10px;
	margin-right: 10px;
}
.tama01{
      background: url("../img/bg_tama_01.png") no-repeat left top;
}
.tama02{
      background: url("../img/bg_tama_02.png") no-repeat right top;
}
.tama03{
      background: url("../img/bg_tama_03.png") no-repeat right top;
}
.page_main .hr_dotted{
	border-bottom: 2px dashed #85cd62;
	height: 1px;
	margin: 0;
}
.page_main .hr_left{
	border-bottom: 2px dashed #85cd62;
	height: 1px;
	margin: 0;
	margin-right: 20%;
}
.page_main .hr_right{
	border-bottom: 2px dashed #85cd62;
	height: 1px;
	margin: 0;
	margin-left: 20%;
}
.txtBox, .phBox{
	width: 47%;
	margin-left: 2%;
	margin-right: 1%;
}
.phBox{
	text-align: center;
}
.txtBox h5{
	display: inline-block;
	color: #6cbd44;
	font-size: 32px;
	font-weight: 600;
  letter-spacing: 0.18em;
	line-height:inherit;
    background: linear-gradient(transparent 75%, #edf7e7 75%);
display: inline;
}
.txtBox p{
	font-weight: 600;
  letter-spacing: 0.18em;
	line-height: 2;
	margin-top: 40px;
}
.block_y{
	background: #fffef3;
	padding: 60px;
	position: relative;
}
.block_y .hat{
	position: absolute;
	top: -40px;
	left: 0;
}
.block_y .shoes{
	position: absolute;
	bottom: -30px;
	right: 0;
}
.block_y table{
  border-spacing: 0;
  width: 60%;
	margin: auto;
  border-collapse: inherit;
	border-spacing: 15px;
}
.block_y table th, .block_y table td {
	font-weight: 600;
  text-align: left;
  overflow-wrap: break-word;
  word-wrap: break-word;
  padding: 10px 20px;
}
.block_y table th {
  text-align: left;
border-right: 1px solid #333;
}
.block_y dl dt {
	display: inline-block;
	background: #d9f4cc;
	border-radius: 4px;
	font-weight: 600;
	padding: 4px 15px;
	margin-bottom: 10px;
	margin-top: 10px;
}
.box_01{
	background: #f9fef7;
	border: 2px dotted #85cd62;
	padding: 40px;
	border-radius: 4px;
}
.box_01 h4{
	font-size: 20px;
	font-weight: 500;
	color: #85cd62;
  align-items: center; /* 横線を上下中央 */
  display: flex; /* 文字と横線を横並び */
}
.box_01 h4::after {
  background-color: #85cd62; /* 横線の色 */
  content: "";
  height: 2px; /* 横線の高さ */
  width: 60px; /* 横線の長さ */
}
.box_01 h4::after {
  margin-left: 15px; /* 文字との余白 */
}
@media screen and (max-width: 780px) {
.page_main{
}
.pagetitle h2{
	font-size: 48px;
}
.pagetitle h2 span{
	font-size: 20px;
}
.h2box h2.title{
	width: 60%;
}
.txtBox, .phBox{
	width: 98%;
	margin-left: 1%;
	margin-right: 1%;
	margin-top: 20px;
}
.txtBox{
  order: 1;
}
	.phBox{
  order: 2;
}
.block_y{
	padding: 20px;
}
.block_y table{
  width: 98%;
}
.block_y table.spBlock th, .block_y table.spBlock td {
	display: block;
}
.block_y table.spBlock th {
  border: 1px solid #333;
}
}
@media screen and (max-width: 480px) {
.pagetitle h2{
	font-size: 36px;
}
.pagetitle h2 span{
	font-size: 18px;
}
h3.lead{
	font-size: 26px;
}
h4.lead{
	font-size: 17px;
}
.h2box{
	margin-bottom: 80px;
}
.h2box h2.title{
	font-size: 30px;
	width: 80%;
	padding: 20px 0;
}
.h2box h2.title span{
	font-size: 12px;
}
.txtBox h5{
	font-size: 22px;
}
}
/* ==========================================
  page about
========================================== */
.about .hat{
	position: absolute;
	top: -40px;
	left: 0;
}
.about .shoes{
	position: absolute;
	bottom: -30px;
	right: 0;
}
.about .phBox {
	position: relative;
}
.about .car{
	position: absolute;
	bottom: -30px;
	right: 10px;
	z-index: 999;
}
.about .txtBox dt{
	display: inline-block;
	border-radius: 4px;
	background: #edf7e7;
	padding: 5px 10px;
	margin-top: 15px;
	margin-bottom: 5px;
}
.about .class_h h5{
	color: #6cbd44;
	font-size: 24px;
	font-weight: 500;
	margin-bottom: 20px;
}
.about .class_h {
	text-align: center;
}
.about .class_h.block_y table {
	background: #fff;
  border-collapse: collapse;
	border-spacing: 0;
  width: 60%;
  margin: 15px auto;
}
.about .class_h.block_y table th, .about .class_h.block_y table td {
  border-collapse: collapse;
  border: 1px solid #e5e5e5;
  font-weight: normal;
  line-height: 1.5;
  text-align: left;
  overflow-wrap: break-word;
  word-wrap: break-word;
  padding: 15px 20px;
}
.about .class_h.block_y table th {
  background: #f1f1f1;
  text-align: center;
  text-align: left;
}
.about_2c .block_y table{
  width: 80%;
}
.about_2c .block_y table th {
	white-space: nowrap;
}
.about_2c .voice .box{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 50px;
	margin-top: 50px;
}
.about_2c .voice .box h5{
	font-weight: 600;
	margin-bottom: 20px;
	width: 20%;
	text-align: center;
}
.about_2c .voice .box  p{
	width: 80%;
	padding: 20px;
	line-height: 1.8;
}
@media screen and (max-width: 780px) {
.about .overview{
	padding: 20px;
}
.about table{
  width: 90%;
}
.about_2c .block_y table{
  width: 98%;
}
.about_2c .voice .box h5, .about_2c .voice .box  p{
	width: 100%;
}
}
@media screen and (max-width: 480px) {
.about .class_h h5{
	font-size: 18px;
}
.about table, .about .class_h.block_y table{
  width: 98%;
}
.about table th {
  border: 1px solid #333;
}
}
/* ==========================================
  page guide
========================================== */
.guide .block_y table {
	background: #fff;
  border-collapse: collapse;
	border-spacing: 0;
  width: 100%;
  margin: 15px 0;
}
.guide .block_y table th, .guide .block_y table td {
  border-collapse: collapse;
  border: 1px solid #e5e5e5;
  font-weight: normal;
  line-height: 1.5;
  text-align: left;
  overflow-wrap: break-word;
  word-wrap: break-word;
  padding: 15px 20px;
}
.guide .block_y table th {
  background: #f1f1f1;
  text-align: center;
  text-align: left;
}
.bnt_block {
	margin-top: 50px;
}
.bnt_block .ttl h3{
	background: url("../img/guide_btn_open.png") no-repeat ;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
	height: 96px;
}
.bnt_block .ttl.close h3{
	background: url("../img/guide_btn_close.png") no-repeat;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
	height: 96px;
}
.bnt_block .inner {
display: none;
	background: #fff9ee;
	border-radius: 10px;
	margin-top: 20px;
	padding: 60px;
}
.bnt_block .inner p{
	line-height: 2;
	letter-spacing: 0.1rem;
}
@media screen and (max-width: 480px) {
.bnt_block .inner {
	padding: 20px;
	margin: 0;
}
}
/* ==========================================
  page education
========================================== */
.education .txtBox{
	border: 2px dotted #85cd62;
	border-radius: 6px;
	padding: 20px;
	margin: 20px 0;
	
}
.education .txtBox h5{
	display: inline;
	color: #6cbd44;
	font-size: 28px;
	font-weight: 600;
  letter-spacing: 0.18em;
	line-height:inherit;
    background: linear-gradient(transparent 75%, #edf7e7 75%);
}
.education .txtBox p{
	margin-top: 20px;
}
.education .block_y table{
  width: 90%;
}
.education .block_y table th{
white-space: nowrap;
}
.education .block_y table td{
	text-align: left
}
/* ==========================================
  page privacy
========================================== */
.privacy dl {
	margin: 60px 10px;
	background: #fffef3;
	padding: 60px;
}
.privacy dl dt{
	color: #6cbd44;
	font-weight: 600;
	margin-bottom: 20px;
	padding-bottom: 5px;
	border-bottom: 2px dotted #6cbd44;
	display: block;
}
.privacy dl dd{
	margin-bottom: 40px;
}
@media screen and (max-width: 780px) {
.privacy dl {
	padding: 30px;
}
}
/* ==========================================
  page contact
========================================== */
.inline-frame {
	height: 900px;
}
@media screen and (max-width: 480px) {
.inline-frame {
	height: 1500px;
}
}
/* ==========================================
  page sitemap
========================================== */
.sitemap ul{
}
.sitemap ul li {
	width: 31.3333%;
	margin: 10px 1%;
}
.sitemap ul li a{
	display: inline-block;
	border-bottom:  1px dashed #ba9668;
	color: #85cd62;
	padding: 15px 20px;
	width: 100%;
}
.sitemap ul li ::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 600;
  content: '\f061';
	margin-right: 10px;
}
@media screen and (max-width: 780px) {
.sitemap ul li {
	width: 48%;
}
}
@media screen and (max-width: 480px) {
.sitemap ul li {
	width: 98%;
}
}
/* ==========================================
  blog
========================================== */
.single h3.wp-block-post-title{
	font-size: 26px;
	margin-bottom: 20px;
	padding-bottom: 10px;
	border-bottom: 3px dashed #85cd62;
}
.single .wp-block-post-content p{
	margin-bottom: 20px;
	line-height: 2;
}
.single .wp-block-post-date{
	color: #85cd62;
	font-size: 15px;
	font-weight: 700;
}
.single .taxonomy-category{
	display: inline-block;
	font-size: 13px;
	color: #fff;
	background: #85cd62;
	padding: 3px 6px;
	margin-top: 10px;
}
.single .wp-block-post-content{
	padding: 30px 0;
}
.post_navigation{
  display: flex;
	font-weight: 600;
  justify-content: space-between;
	padding-top: 20px;
}
.post-navigation-link-previous{
	padding: 20px;
	
}
.post-navigation-link-next{
	padding: 20px;
	
}
@media screen and (max-width: 680px) {
.post_navigation{
  display: block;
	text-align: center;
}
}
/* ==========================================
  newslist
========================================== */
.newslist h2.wp-block-post-title{
	font-size: 24px;
	margin-bottom: 20px;
	padding-bottom: 10px;
	border-bottom: 3px dashed #85cd62;	
}
.newslist li.wp-block-post {
	padding: 20px;
	margin-bottom: 40px;
}
.newslist li.wp-block-post h2::before{
  content: url("../img/icon_grass.png");
  vertical-align: middle;
  padding-right: 20px;
}
.newslist li .wp-block-post-featured-image{
	width: 200px;
	height: 200px;
	margin-right: 20px;
}
.newslist .wp-block-post-date{
	color: #85cd62;
	font-size: 15px;
	font-weight: 700;
}
.newslist .taxonomy-category{
	display: inline-block;
	font-size: 13px;
	color: #fff;
	background: #85cd62;
	padding: 3px 6px;
	margin-top: 10px;
}
.newslist li.wp-block-post p{
	margin-top: 20px;
}
.newslist .wp-block-post-excerpt__more-text{
	text-align: right;
}
.newslist .wp-block-post-excerpt__more-text a{
	display: inline-block;
	border: 2px solid #85cd62;
	border-radius: 60px;
	padding: 10px 30px;
}
.newslist .wp-block-post-excerpt__more-text a::after{
  font-family: 'Font Awesome 5 Free';
  font-weight: 600;
  content: '\f061';
	margin-left: 10px;
}
@media screen and (max-width: 480px) {
.newslist .wp-block-post-excerpt__more-text{
	text-align: center;
}
}
/* ==========================================
  archive
========================================== */
.archive h3.wp-block-query-title{
	font-size: 26px;
	margin-bottom: 60px;
	padding-bottom: 10px;
	border-bottom: 3px dashed #85cd62;	
}
.archive li.wp-block-post {
	border: 2px solid #d9f4cc;
	border-radius: 6px;
	padding: 20px;
	margin-bottom: 40px;
	display: flex;
}
.archive h2.wp-block-post-title{
	border-radius: 6px;
	font-size: 20px;
}
.archive li .wp-block-post-featured-image{
	width: 200px;
	height: 200px;
	margin-right: 20px;
}
.archive .wp-block-post-date{
	color: #85cd62;
	font-size: 15px;
	font-weight: 700;
}
.archive .taxonomy-category{
	display: inline-block;
	font-size: 13px;
	color: #fff;
	background: #85cd62;
	padding: 3px 6px;
	margin-top: 10px;
}
.archive li.wp-block-post p{
	margin-top: 20px;
}
.archive .wp-block-post-excerpt__more-text{
	text-align: right;
}
.archive .wp-block-post-excerpt__more-text a{
	display: inline-block;
	border: 2px solid #85cd62;
	border-radius: 60px;
	padding: 10px 30px;
}
.archive .wp-block-post-excerpt__more-text a::after{
  font-family: 'Font Awesome 5 Free';
  font-weight: 600;
  content: '\f061';
	margin-left: 10px;
}
@media screen and (max-width: 480px) {
.archive li.wp-block-post {
	display: block;
}
.archive h3.wp-block-query-title{
	font-size: 24px;
}
.archive li .wp-block-post-featured-image{
	width: 100%;
	height: auto;
	margin-right: 0;
}
.archive h2.wp-block-post-title{
	font-size: 18px;
	margin-top: 20px;
}
.archive .wp-block-post-excerpt__more-text{
	text-align: center;
}
}
/* ==========================================
  footer
========================================== */
footer{
	background: url("../img/footer_bg.png") repeat-x top center;
	background-color: #85cd62;
	position: relative;
	padding-bottom: 40px;
	margin-top: 150px;
}
#footer a:hover {
	opacity: 0.5 ;
}
#footer .inner{
	padding-top: 100px;
	display: flex;
	padding-bottom: 80px;
}
#footer .logo{
	margin-right: 120px;
	text-align: center;
}
#footer .img_01{
	position: absolute;
	left: 100px;
	top: -80px;
}
#footer .img_02{
	position: absolute;
	left: 300px;
	top: -20px;
}
#footer .img_03{
	position: absolute;
	left: 500px;
	top: -80px;
}
#footer .img_04{
	position: absolute;
	right: 100px;
	top: -30px;
}
#footer .footNav ul{
}
#footer .footNav li{
	margin: 20px 30px;	
}
#footer .footNav li:before {
    background-color: #ba9668; /* 線色 */
    border-radius: 3px; /* 線幅の半分 */
    content: "";
    display: inline-block;
    height: 28px; /* 線の長さ */
    margin-right: 10px; /* 線右の余白 */
    vertical-align: middle;
    width: 6px; /* 線幅 */
}
#footer .footsub{
	font-size: 13px;
	text-align: center;
}
#footer .copyright{
	color: #fff;
	font-size: 12px;
	text-align: center;
	margin-top: 40px;
}
@media screen and (max-width: 780px) {
#footer .img_01{
	position: absolute;
	left: 10px;
	top: -80px;
}
#footer .img_02{
	position: absolute;
	left: 80px;
	top: -10px;
}
#footer .img_03{
	position: absolute;
	left: 200px;
	top: -80px;
}
#footer .img_04{
	position: absolute;
	right: 10px;
	top: -30px;
}
#footer .inner{
	display: block;
	padding-bottom: 40px;
}
#footer .logo{
	margin-bottom: 40px;
	width: 100%;
}
}
@media screen and (max-width: 480px) {
	footer{
	padding-bottom: 60px;
		
	}
#footer .img_01{
	position: absolute;
	left: 10px;
	top: -80px;
}
#footer .img_02{
	display: none;
}
#footer .img_03{
	position: absolute;
	left: auto;
	right: 10px;
	top: -80px;
}
#footer .img_04{
	position: absolute;
	right: 5px;
	top: -30px;
}
#footer .footsub{
	font-size: 11px;
}

}
