@charset "UTF-8";
/* CSS Document */
/* ---------------------
  - common
  - header
  - gNavi
  - 
  - footer
  - page_top
  - @media
--------------------- */
/* ==========================================
  common
========================================== */
html {
  font-size: 62.5%;
}
body {
  font-size: 1.6rem;
  font-weight: 300;
}
body, html {
  background: #fff;
  color: #000;
  height: 100%;
  margin: 0;
  padding: 0;
  letter-spacing: 0.08em;
  line-height: 1.5;
	font-family: 'Figtree', sans-serif;
font-family: 'M PLUS Rounded 1c', sans-serif;
font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
  overflow-wrap: break-word;
  word-wrap: break-word;
}
* {
  box-sizing: border-box;
}
h1, h2, h3, h4, h5 {
	font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.2;
  padding: 0;
  margin: 0;
}
p {
	font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 1.8;
  padding: 0;
  margin: 0;
}
ul, ol {
  list-style: none;
  margin: 0;
  padding: 0;
}
dl, dt, dd {
  margin: 0;
  padding: 0;
}
a {
  color: inherit;
  text-decoration: none;
}
.link_area {
  position: relative;
}
.link_area a {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.link_area a:hover {
  background: #fff;
  opacity: 0.2;
}
img {
  max-width: 100%;
  height: auto;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
  border-spacing: 0;
  width: 100%;
  margin: 15px 0;
}
th, td {
  border-collapse: collapse;
  border: 1px solid #c9c9c9;
  font-weight: normal;
  line-height: 1.5;
  text-align: left;
  overflow-wrap: break-word;
  word-wrap: break-word;
  padding: 15px 20px;
}
th {
  background: #f1f1f1;
  text-align: center;
  text-align: left;
}
.table-scroll {
  overflow: auto; /*スクロールさせる*/
  white-space: nowrap; /*文字の折り返しを禁止*/
}
.table-scroll::-webkit-scrollbar {
  height: 5px;
}
.table-scroll::-webkit-scrollbar-track {
  background: #333;
}
.table-scroll::-webkit-scrollbar-thumb {
  background: #999;
}
.inner {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
}
/* margin padding */
.pd20 {
  padding: 20px;
}
.pdt20 {
  padding-top: 20px;
}
.pdb20 {
  padding-bottom: 20px;
}
.pdb40 {
  padding-bottom: 40px;
}
.mgb10 {
  margin-bottom: 10px;
}
.mgb20 {
  margin-bottom: 20px;
}
.mgb30 {
  margin-bottom: 30px;
}
.mgt10 {
  margin-top: 10px;
}
.mgt20 {
  margin-top: 20px;
}
.mgt30 {
  margin-top: 30px;
}
.mgt40 {
  margin-top: 40px;
}
.mgt60 {
  margin-top: 60px;
}
.mgt100 {
  margin-top: 100px;
}
/*///// ul li /////*/
.list_disc {
  list-style: disc outside;
  margin: 0 20px;
}
.list_disc li {
  padding-bottom: 15px;
}
.list_decimal {
	list-style: decimal outside;
  margin: 0 20px;
  padding-bottom: 15px;
}
.list_decimal li {
  padding-bottom: 15px;
}
/*///// background /////*/
/*///// button /////*/
/*///// txt_align /////*/
.center {
  text-align: center;
}
.left {
  text-align: left;
}
.right {
  text-align: right;
}
/*///// font /////*/
.f14 {
  font-size: 14px;
}
.f18 {
  font-size: 18px;
}
.bold {
  font-weight: 700;
}
/*///// color /////*/
.bg_tsuzuki {
  background-color: #75c671;
}
.bg_houmonkango {
  background-color: #e27533;
}
.bg_wakabagaoka {
  background-color: #a52d33;
}
.bg_wakaba {
  background-color: #31962c;
}
.bg_event {
  background-color: #ead126;
}
.bg_green {
  background-color: #f9fdf4;
}
.c_beige {
  color: #f6f5f1;
}
.c_tsuzuki {
  color: #75c671;
}
.c_houmonkango {
  color: #e27533;
}
.c_wakabagaoka {
  color: #a52d33;
}
.c_wakaba {
  color: #31962c;
}
.c_event {
  color: #ead126;
}
.red {
  color: #FF0004;
}
.blue {
  color: #2025FF;
}
/*///// box /////*/
.box_beige {
  background: #f6f5f1;
  border-radius: 4px;
  padding: 20px;
}
.time_info {
  font-size: 20px;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.time_info li {
  padding: 0 20px;
}
.time_info.menkai li:first-child {
  border-right: 1px solid #f45608;
}
.time_info .date {
  font-size: 30px;
  color: #f45608;
  margin-top: 20px;
  font-weight: 700;
}
/*///// col /////*/
.col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.col-j-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
/*///// align /////*/
.txt_left {
  text-align: left;
}
.txt_center {
  text-align: center;
}
.txt_right {
  text-align: right;
}
/*///// none /////*/
.pc_none {
  display: none;
}
.sp_none {
  display: block;
}
a:hover {
  opacity: 0.6;
}
/*///// pdf /////*/
.pdf a {
  display: block;
  background: #f9fdf4;
  padding: 15px;
  margin-bottom: 10px;
}
.pdf a::before {
  font-family: "Font Awesome 5 Free";
  content: '\f1c1';
  margin-right: 4px;
  font-size: 18px;
}
@media screen and (max-width: 780px) {
  .time_info .date {
    font-size: 24px;
  }
}
@media screen and (max-width: 480px) {
  .table01 th, .table01 td {
    display: block;
    width: 100%;
  }
  .table-scroll img {
    max-width: inherit;
    height: auto;
  }
  .time_info {
    display: block;
  }
  .time_info.menkai li:first-child {
    border-bottom: 1px solid #f45608;
    border-right: none;
    margin-bottom: 20px;
    padding-bottom: 20px;
  }
  /* margin padding */
  .mgt40 {
    margin-top: 20px;
  }
  .mgt60 {
    margin-top: 40px;
  }
  .mgt100 {
    margin-top: 80px;
  }
}
/* ==========================================
  header
========================================== */
header {
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
}
header .logo {
  background: #58ac54;
  border-bottom-left-radius: 6px;
  border-bottom-right-radius: 6px;
  display: inline-block;
  padding: 36px 20px;
  position: absolute;
  top: 0;
  left: 10px;
	z-index: 999;
}
@media screen and (max-width: 1100px) {
  .logo img {
    width: 260px;
  }
  header .logo {
    padding: 36px 20px;
  }
}
@media screen and (max-width: 780px) {
  header {
    padding-top: 60px;
  }
  header .logo {
    padding: 20px;
  }
}
/* ==========================================
  gNavi
========================================== */
nav.Navi {
  text-align: right;
}
.gNavi, .subNavi {
  display: inline-block;
}
nav.Navi ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
nav.Navi ul.menu li{
  position: relative;
}
nav.Navi li a {
  display: block;
  padding: 20px;
  text-align: center;
}
nav.Navi .subNavi li a {
  border-left: 1px solid #cacaca;
  font-size: 12px;
}
nav ul.menu ul {
  display: none;
  position: absolute;
  top: 100%;
  left: -30px;
  background: rgba(255, 255, 255, 0.9);
  z-index: 9999;
  white-space: nowrap;
}
nav ul.menu ul li {
  margin-left: 0;
  width: 100%;
}
nav ul.menu ul li a {
  display: block;
  padding: 20px;
  padding-right: 50px;
	text-align: left;
}
nav ul.menu li:hover > ul {
  display: block;
}
nav ul.menu ul li a:after {
  content: "→";
  font-size: 12px;
  margin-left: 20px;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
@media screen and (max-width: 1100px) {
  nav.Navi li a {
    padding: 20px;
  }
}
@media screen and (max-width: 980px) {
  nav.Navi li a {
    padding: 20px 10px;
  }
}
@media screen and (max-width: 780px) {
  nav.Navi li a {
    padding: 20px 10px;
  }
  .menu-trigger {
    display: inline-block;
    width: 36px;
    height: 28px;
    vertical-align: middle;
    cursor: pointer;
    position: fixed;
    top: 10px;
    right: 10px;
    z-index: 100; /*   transform: translateX(0);
  transition: transform .5s;
 */
	z-index: 9999;
  }
  /* .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: #58ac54;
    transition: all .5s;
  }
  .menu-trigger.active span {
    background-color: #58ac54;
  }
  .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.inner {
    width: 300px;
  }
  nav.Navi .gNavi {
    display: block;
  }
  nav.Navi {
    color: #222;
    width: 340px;
    height: 100%;
    padding-top: 60px;
    padding-right: 10px;
    background-color: #ddeedc;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 10;
    transform: translate(400px);
    transition: all .5s;
	  overflow: scroll;
	z-index: 999;
  }
  nav.open {
    transform: translateZ(0);
  }
  nav.Navi ul {
    display: block;
    margin: 0 10px;
    width: 98%;
  }
  nav.Navi .subNavi{
	  width: 100%;
  }
  nav.Navi .subNavi ul{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  }
  nav.Navi .subNavi li {
	  width: 48%;
	  margin: 0 1%;
  }
  nav.Navi .subNavi li a {
    border: 1px solid #58ac54
  }
  nav.Navi li a {
    display: block;
    border: 1px solid #58ac54;
    border-radius: 6px;
    text-decoration: none;
    margin-bottom: 10px;
  }
  nav ul.menu li > ul {
    width: 98%;
    display: block;
    position: inherit;
    left: 0;
  background: none;
  }
  nav ul.menu ul li a {
    padding: 10px;
    padding-right: 0;
    border: none;
    border-bottom: 1px dotted #58ac54;
    border-radius: 0;
  }
  nav ul.menu ul li a:after {
  font-family: "Font Awesome 5 Free";
  content: '\f138';
    margin-left: 0;
  color: #58ac54;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  }
}
/* ==========================================
  footer
========================================== */
footer {
  margin-top: auto;
  padding: 0 0 60px;
}
footer .col{
	margin: 0 auto;
  flex-wrap: nowrap;
  justify-content: flex-start;
}
.under_dotted{
	border-bottom: 1px dotted #ccc;
	padding-bottom: 15px;
}
.footer-left {
	width: auto;
}
.footer-left p {
  margin-bottom: 10px;
}
.footer-left .map, .footer-left .tel, .footer-left .fax {
  position: relative;
  padding-left: 36px;
}
.footer-left .map::before {
  content: url("../img/icon_map_s.png");
  vertical-align: middle;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -24px;
}
.footer-left .tel::before {
  content: url("../img/icon_tel_s.png");
  vertical-align: middle;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -12px;
}
.footer-left .fax::before {
  content: url("../img/icon_fax_s.png");
  vertical-align: middle;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -12px;
}
.footer-right {
  border-left: 1px solid #ccc;
	margin-left: 20px;
}
.footer05 {
	width: 100%;
	margin-top: 10px;
}
.footer05 h4{
	margin-left: 30px;
	margin-bottom: 10px;
}
footer .footer-right ul {
	padding-bottom: 20px;
	padding-left: 60px;
}
footer li a::before {
  font-family: "Font Awesome 5 Free";
  content: '\f138';
  margin-right: 4px;
  color: #ADADAD;
}
footer li {
  margin-bottom: 15px;
}
.copyright {
  font-size: 12px;
  text-align: center;
  margin-top: 80px;
}
@media screen and (max-width: 980px) {
footer .col{
  flex-wrap: wrap;
}
  .footer-left, .footer-right {
    padding: 10px;
  }
  .footer-left {
    width: 100%;
    margin-bottom: 30px;
    border-bottom: 1px solid #d1d1d1;
  }
  .footer-right {
  border-left: none;
	margin-left: 0;
	padding-left: 0;
  }
  .footer-right {
  border-left: none;
	margin-left: 0;
	padding-left: 0;
  }
.footer05 h4{
	margin-left: 0;
}
footer .footer-right .col div {
	width: 50%;
}
footer .footer-right ul {
	padding-left: 20px;
}
}
@media screen and (max-width: 680px) {
footer .footer-right .col div {
	width: 100%;
}
footer .col{
	display: block;
}
}
/* ==========================================
  blog
========================================== */
.single-blog .inner{
	display: flex;
}
.single-blog .inner .post_cnt{
	flex: 1;
}
.single-blog .inner .post_side{
	width: 225px;
	margin-left: 30px;
}
.single-blog .inner .post_side .sideBox{
	border: 1px solid #CCC;
	padding: 10px 15px;
	margin-bottom: 20px;
}
.single-blog .inner .post_side .sideBox h5{
	font-weight: bold;
	color: #58ac54;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.single-blog .inner .post_side .sideBox li{
	border-bottom: 1px solid#58ac54;
	font-size: 15px;
	padding-bottom: 10px;
	padding-left: 5px;
	margin-bottom: 10px;	
}


/* ==========================================
  single
========================================== */
.single h2.wp-block-post-title {
  font-size: 20px;
  border-bottom: 2px solid #58ac54;
  padding: 10px;
}
.single .wp-block-post-content {
  padding-top: 30px;
}
.single .wp-block-post-content p {
  padding: 10px;
}
.single .wp-block-image {
  padding: 30px 10px;
  width: 100%;
}
.single .wp-block-post-date, .single .taxonomy-category {
  display: inline-block;
  padding: 10px;
}
.pagination, .wp-block-query-pagination {
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 20px 10px;
}
.post-navigation-link-previous a::before, .wp-block-query-pagination-previous::before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f137';
  color: #58ac54;
  line-height: 50px;
  text-align: center;
  padding-right: 6px;
}
.post-navigation-link-next a::after, .wp-block-query-pagination-next::after {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f138';
  color: #58ac54;
  line-height: 50px;
  text-align: center;
  padding-left: 6px;
}
/* ==========================================
  archive
========================================== */
.archive h2.wp-block-post-title, .blog h2.wp-block-post-title  {
  font-size: 20px;
  border-bottom: 2px solid #58ac54;
  padding: 10px;
}
.archive .wp-block-post, .blog .wp-block-post  {
  padding: 10px 10px 30px;
}
.archive .wp-block-post-date, .blog .wp-block-post-date, .blog .taxonomy-category {
  padding: 10px;
	display: inline-block;
}
.archive .blog_inner {
	display: flex;
  align-items: flex-start;
	margin-top: 20px;
}
.archive .blog_inner .inner_ph{
	width: 200px;
	margin-right: 20px;
}
.archive .blog_inner .inner_txt{
	flex: 1; 
}
@media screen and (max-width: 780px) {
.archive .blog_inner{
	display: block;
	}
.archive .blog_inner .inner_ph{
	width: auto;
	margin-right: 0;
}
}
/* ==========================================
  category
========================================== */
.category h1.wp-block-query-title{
	border-radius: 2px;
	display: inline-block;
	color: #fff;
	padding: 10px;
}
.category-tsuzuki h1.wp-block-query-title{
	background: #75c671;
}
.category-houmonkango h1.wp-block-query-title{
	background: #e27533;
}
.category-wakabagaoka h1.wp-block-query-title{
	background: #a52d33;
}
.category-wakaba h1.wp-block-query-title{
	background: #31962c;
}
.category .wp-block-query{
	margin-top: 40px;
}
/* ==========================================
  contact
========================================== */

input{
	border-radius: 2px;
	padding: 10px 20px;
}

input[type=submit]:not(:hover):not(:active):not(.has-background) {
	background-color: #58ac54;
	color: #fff;
}
input[type=submit]:hover, input[type=submit]:active {
	background-color: #31962c;
	color: #fff;
}
input[type=text], input[type=email], input[type=url], input[type=password], input[type=search], input[type=number], input[type=tel], textarea{
	border: 1px solid #ccc;
	border-radius: 2px;
	line-height: var(--global--line-height-body);
	padding: var(--form--spacing-unit);
	margin: 2px;
	width: 100%;
	padding: 10px;
}
select{
	border: 1px solid #ccc;
	border-radius: 4px;
	margin: 5px;
	padding: 10px;
}
select{
  position: relative;
  padding: 10px;
  width: 100%;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}

.select-wrap {
    position: relative;
    width: 300px;
}

.select-wrap:after {
  content: "";
    position: absolute;
    right: 10px;
    top: 25px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #222;
    border-left: 2px solid #222;
    transform: translateY(-50%) rotate(
-135deg
);
  font-size: 20px;
  pointer-events: none;
}
.submit {
	display: inline-block;
}
input[type=submit].back:not(:hover):not(:active):not(.has-background) {
	background-color: #222;
	color: #fff;
}
input[type=submit].back{
	background: #222;
}
.mw_wp_form_preview .select-wrap:after {
  content: none;
}
@media screen and (max-width: 780px) {
	.contact th, .contact td{
		display: block;
	}
}
/* ==========================================
  page_top
========================================== */
#page_top{
  width: 90px;
  height: 90px;
  position: fixed;
  right: 10px;
  bottom: 10px;
  background: #58ac54;
  opacity: 0.8;
  border-radius: 50%;
}
#page_top a{
  position: relative;
  display: block;
  width: 90px;
  height: 90px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -40px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
#page_top a::after{
  content: 'PAGE TOP';
  font-size: 13px;
  color: #fff;
  position: absolute;
  top: 45px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

/* ==========================================
   @media
========================================== */
@media screen and (max-width: 780px) {
  .col-4, .col-6, .col-3, .col-7 {
    width: 100%;
  }
}
@media screen and (max-width: 599px) {
  /* none */
  .pc_none {
    display: block;
  }
  .sp_none {
    display: none;
  }
}