@charset 'UTF-8';

/*==========================
　　　　　　common
==========================*/
html {
    overflow-y: scroll;
    height: 100%;
    font-size: 62.5%;
	scroll-behavior: smooth;
}

/*==========================
　　　　　　sp_nav
==========================*/
.globalMenuSp {
  position: fixed;
  z-index:-10;
  top: 0;
  left: 0;
  transition: all 1.0s;
  color: #000;
  text-align: center;
  width: 100%;
  height: auto;
  min-height: 100vh;
  opacity: 0.0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 10px 0px 0px;
  background-color: rgba(255, 255, 255, 1);
  background-size: cover;
  background-position: top center;
}
@media screen and (min-width:1000px) {
  .globalMenuSp {
    display: none;
    z-index: -100;
  }
}
.globalMenuSp>div {
   width: 92%;
  }
.globalMenuSp ul.sp_nav {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  width: 78%;
  overflow: hidden;
}
@media screen and (max-width: 380px) {
.globalMenuSp ul.sp_nav {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  width: 92%;
  overflow: hidden;
}
	}
.globalMenuSp ul.sp_nav > li {
  text-align: left;
  position: relative;
  width: 100%;
  display: block;
  overflow: hidden;
  margin: 0;
  margin-top: 0;
  margin-bottom: -1px;
  padding: 0;
}

.globalMenuSp ul.sp_nav > li+li a {
 background-image : linear-gradient(to right, rgba(0,0,0,0.35) 2px, transparent 1px);
 background-size: 8px 1px;
 background-repeat: repeat-x;
}

.globalMenuSp ul.sp_nav > li:first-child {
  border-top: 1px solid rgba(255, 255, 255, 0.0);
}
.globalMenuSp ul.sp_nav > li a {
  font-size: 1.8rem;
  color: #000;
  text-decoration: none;
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-setting: "palt";
  padding: 17px 0;
  margin-top: 0;
  margin-bottom: 0;
  width: 100%;
  text-align: left;
	display: block;
	font-family: "dnp-shuei-mincho-pr6n", sans-serif;
font-weight: 600;
font-style: normal;
	display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display:flex;
	align-items: center;
}
@media screen and (max-width: 480px) {
  .globalMenuSp ul.sp_nav > li a {
    font-size: 1.7rem;
    transition-duration: 0.3s;
  }
}
@media screen and (max-width: 380px) {
  .globalMenuSp ul.sp_nav > li a {
    font-size: 1.5rem;
    transition-duration: 0.3s;
  }
}
.globalMenuSp ul.sp_nav > li a:hover {
  color: #D0081D;
}
.globalMenuSp ul.sp_nav > li i {
  margin-right: 6px;
  color: #BDA345;
  transition-duration: 0.3s;
}
.globalMenuSp ul.sp_nav > li + li {
}
.globalMenuSp ul.sp_nav > li a:hover i {
  color: #FFF;
}
.globalMenuSp ul.sp_nav > li a:before {
  content: "";
	display: block;
	height: 1px;
	width: 2em;
	background-color: rgba(0,0,0,0.5);
	margin-right: 0.8em;
}
.globalMenuSp ul.sp_nav > li a:hover:before {
	background-color: #D0081D;
}
.globalMenuSp ul.sub_nav {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  width: 78%;
  overflow: hidden;
margin-top: 30px;
}
@media screen and (max-width: 380px) {
.globalMenuSp ul.sub_nav {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  width: 92%;
  overflow: hidden;
margin-top: 15px;
}
	}
.globalMenuSp ul.sub_nav > li {
  text-align: left;
  position: relative;
  width: 100%;
  display: block;
  overflow: hidden;
  margin: 0;
  margin-top: 0;
  margin-bottom: -1px;
  padding: 0;
}
.globalMenuSp ul.sub_nav > li a {
  font-size: 1.6rem;
  color: #000;
  text-decoration: none;
  -moz-font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  font-feature-setting: "palt";
  padding: 10px 0;
  margin-top: 0;
  margin-bottom: 0;
  width: 100%;
  text-align: left;
	display: block;
	font-family: "adobe-caslon-pro", serif;
font-weight: 400;
font-style: normal;
}
@media screen and (max-width: 380px) {
.globalMenuSp ul.sub_nav > li a {
  font-size: 1.4rem;
}
	}
.globalMenuSp ul.sub_nav > li a:hover {
  color: #D0081D;
}
.globalMenuSp ul.sub_nav > li i {
  margin-right: 4px;
	color: #D0081D;
}
.globalMenuSp ul.sub_nav > li a img {
  width: 20px;
	height: 20px;
	margin-right: 6px;
}




.globalMenuSp ul.sp_ban {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: auto;
  margin-top: 20px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 92%;
}
@media screen and (max-width: 600px) {
  .globalMenuSp ul.sp_ban {
    display: block;
  }
}
.globalMenuSp ul.sp_ban > li {
  width: 48%;
  margin-top: 3%;
}
@media screen and (max-width: 600px) {
  .globalMenuSp ul.sp_ban > li {
    width: 100%;
    margin-top: 3%;
  }
}
.globalMenuSp ul.sp_ban > li > a {
  padding: 0.5em 0 0.5em;
  display: block;
  font-size: 1.8rem;
  color: #1B3B1C;
  background-color: #FFF;
	text-decoration: none;
	
}
@media screen and (max-width: 800px) {
  .globalMenuSp ul.sp_ban > li > a {
    display: block;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 480px) {
  .globalMenuSp ul.sp_ban > li > a {
    padding: 0.6em 0 0.6em;
    display: block;
    font-size: 1.5rem;
  }
}
.globalMenuSp ul.sp_ban > li > a:hover {
  background-color: #009259;
  color: #FFF;
}
.globalMenuSp ul.sp_ban > li > a i {
  font-size: 1.2em;
  margin-right: 6px;
}
/* このクラスを、jQueryで付与・削除する */
.globalMenuSp.active {
  transition: all 1.0s;
  opacity: 1.0;
  z-index: 300;
}
.navToggle {
  display: block;
  position: fixed; /* bodyに対しての絶対位置指定 */
  right: 0px;
  top: 0px;
  width: 74px;
  height: 74px;
  cursor: pointer;
  z-index: 5000;
  text-align: center;
  transition: all 1.0s;
	background-color: #F8E300;
	display: none;
}

@media screen and (max-width:1000px) {
  .navToggle {
    right: 0px;
    top: 0px;
	  display: block;
  }
}
@media screen and (max-width: 600px) {
  .navToggle {
    right: 0px;
    top: 0px;
  }
}
@media screen and (max-width: 380px) {
  .navToggle {
	  right: 0px;
    top: 0px;
    width: 60px;
    height: 60px;
  }
}
.navToggle span {
  display: block;
  position: absolute; /* .navToggleに対して */
  width: 40px;
  border-bottom: solid 3px #003705;
  -webkit-transition: .35s ease-in-out;
  -moz-transition: .35s ease-in-out;
  transition: .35s ease-in-out;
  left: 17px;
}
@media screen and (max-width: 380px) {
  .navToggle span {
    display: block;
    position: absolute; /* .navToggleに対して */
    width: 32px;
    border-bottom: solid 3px #003705;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
    left: 14px;
  }
}
html[theme='dark-mode'] .navToggle span {
  border-bottom: solid 3px #003705;
}
.navToggle span:nth-child(1) {
  top: 20px;
}
.navToggle span:nth-child(2) {
  top: 35px;
}
.navToggle span:nth-child(3) {
  top: 50px;
}
.navToggle span:nth-child(4) {
  border: none;
  color: #eee;
  font-size: 9px;
  font-weight: bold;
  top: 65px;
}
@media screen and (max-width: 380px) {
.navToggle span:nth-child(1) {
  top: 17px;
}
.navToggle span:nth-child(2) {
  top: 29px;
}
.navToggle span:nth-child(3) {
  top: 41px;
}
.navToggle span:nth-child(4) {
  border: none;
  color: #eee;
  font-size: 9px;
  font-weight: bold;
  top: 65px;
}
	}
.navToggle.active {
	background-color: #46AF35;
}
/* 最初のspanをマイナス45度に */
.navToggle.active span:nth-child(1) {
  top: 35px;
  left: 17px;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  transform: rotate(-45deg);
  border-bottom: solid 3px #FFF;
}
/* 2番目と3番目のspanを45度に */
.navToggle.active span:nth-child(2), .navToggle.active span:nth-child(3) {
  top: 35px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg);
  border-bottom: solid 3px #FFF;
}
@media screen and (max-width: 380px) {
/* 最初のspanをマイナス45度に */
.navToggle.active span:nth-child(1) {
  top: 29px;
  left: 14px;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  transform: rotate(-45deg);
  border-bottom: solid 3px #FFF;
}
/* 2番目と3番目のspanを45度に */
.navToggle.active span:nth-child(2), .navToggle.active span:nth-child(3) {
  top: 29px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg);
  border-bottom: solid 3px #FFF;
}
	}
.globalMenuSp h1 {
 margin-right: auto;
	margin-left: auto;
	 width: 160px;
	height: 66px;
	text-align: center;
	display: block;
	margin-bottom: 20px;
		background-image: url("../img/common/head_logo.png");
	background-size: cover;
	display: block;
	margin-left: 4%;
	}
@media screen and (max-width: 800px) {
.globalMenuSp h1  {
	 width: 130px;
	height: 54px;
	}
	}
@media screen and (max-width: 380px) {
.globalMenuSp h1 {
	 width: 97px;
	height: 40px;
	}
	}
.globalMenuSp h1 a {
  font-size: 12px;
  line-height: 12px;
  padding: 0px;
  background-attachment: scroll;
  background-repeat: no-repeat;
  background-position: center center;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  display: block;
  width: 100%;
  height: 100%;
}


/*==========================
　　　　　　header
==========================*/
header {
  box-sizing: border-box;
  padding: 20px 0;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 2;
}
@media screen and (max-width: 1000px) {
header {
  padding: 10px 0 15px;
}
	}
@media screen and (max-width: 800px) {
header {
  padding: 10px 0 10px;
}
	}
@media screen and (max-width: 600px) {
header {
  padding: 10px 0 10px;
}
	}
header .inner {
  box-sizing: border-box;
  padding-top: 0px;
	padding: 0;
  position: relative;
	width: 92%;
	max-width: 5000px;
		display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display:flex;
	-webkit-box-pack: justify;     -ms-flex-pack: justify;   justify-content: space-between;
	align-items: center;
}
@media screen and (max-width: 1000px) {
header .inner {
display: block;
}
	}
@media screen and (max-width: 800px) {
header .inner {
display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display:flex;
}
	}
header .inner h1 {
  width: 288px;
	height: 91px;
	background-image: url("../img/common/head_logo.png");
	background-size: cover;
	display: block;
	}
@media screen and (max-width: 1400px) {
header .inner h1 {
  width: 262px;
	height: 83px;
	}
	}
@media screen and (max-width: 1200px) {
header .inner h1 {
  width: 209px;
	height: 66px;
	}
	}
@media screen and (max-width: 1100px) {
header .inner h1 {
 margin-right: auto;
	margin-left: auto;
	 width: 171px;
	height: 54px;
	text-align: center;
	display: block;
	margin-bottom: 15px;
	}
	}
@media screen and (max-width: 800px) {
header .inner h1 {
	margin-bottom: 0px;
	margin-left: 0;
	 width: 171px;
	height: 54px;
	}
	}
@media screen and (max-width: 380px) {
header .inner h1 {
	margin-bottom: 0px;
	margin-left: 0;
	 width: 126px;
	height: 40px;
	}
	}
header .inner h1 a {
  font-size: 12px;
  line-height: 12px;
  padding: 0px;
  background-attachment: scroll;
  background-repeat: no-repeat;
  background-position: center center;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  display: block;
  width: 100%;
  height: 100%;
  margin: 0px auto;
}
header .inner>div {
	-webkit-flex: 1;  flex: 1;
}
input, select {
  -webkit-appearance: none;
  appearance: none;
}

header #snav .selectbox-001 {
    position: relative;
font-family: "adobe-caslon-pro", serif;
font-weight: 400;
font-style: normal;
}

header #snav .selectbox-001::before,
header #snav .selectbox-001::after {
    position: absolute;
    content: '';
    pointer-events: none;
}



header #snav .selectbox-001::after {
    position: absolute;
    top: 50%;
    left: 1%;
	margin-top: 1px;
    transform: translate(110%, -80%) rotate(45deg);
    width: 5px;
    height: 5px;
    border-bottom: 3px solid #D0081D;
    border-right: 3px solid #D0081D;
}
@media screen and (max-width: 800px) {
header #snav .selectbox-001::after {
    position: absolute;
    top: 50%;
    left: 2%;
    transform: translate(110%, -80%) rotate(45deg);
    width: 4px;
    height: 4px;
    border-bottom: 2px solid #D0081D;
    border-right: 2px solid #D0081D;
}
}
header #snav .selectbox-001 select {
    appearance: none;
    min-width: auto;
    height: 28px;
    padding: .4em 0.7em .4em 2.0em;
    border: solid 1px #CCCCCC;
    border-radius: 3px;
    background-color: #FFF;
    color: #333;
    font-size: 14px;
    cursor: pointer;
	font-family: "dnp-shuei-mincho-pr6n", sans-serif;
font-weight: 600;
font-style: normal;
}
@media screen and (max-width: 1000px) {
header #snav .selectbox-001 select {
    appearance: none;
    min-width: auto;
    height: 24px;
    padding: .4em 0.7em .4em 2.0em;
    border: solid 1px #CCCCCC;
    border-radius: 3px;
    background-color: #FFF;
    color: #333;
    font-size: 12px;
    cursor: pointer;
}
	}
@media screen and (max-width: 800px) {
header #snav .selectbox-001 select {
    font-size: 11px;
	 padding: .4em 0.7em .4em 2.0em;
}
	}
@media screen and (max-width: 600px) {
header #snav .selectbox-001 select {
    font-size: 10px;
	width: 90px;
	}
	}
header #snav .selectbox-001 select:focus {
}

#snav ul {
font-size: 1.4rem;
	display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display:flex;
	justify-content: flex-end;
	align-items: center;
	position: relative;
	z-index: 100;
	}
@media screen and (max-width: 1000px) {
#snav ul {
	justify-content: center;
	}
	}
@media screen and (max-width: 800px) {
#snav ul {
font-size: 1.3rem;
	 justify-content: flex-end;
	}
		}
#snav ul li {
	display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display:flex;
	align-items: center;
	
	}
#snav ul li+li {
margin-left: 1.5em;
	}
#snav ul li a {
font-family: "dnp-shuei-mincho-pr6n", sans-serif;
font-weight: 400;
font-style: normal;
	}
#snav ul li a:hover {
color:#D0081D;
	}

#snav ul li.snav a:after {
font-family: "Font Awesome 5 Free";
  content: '\f105';
  font-weight: 800;
  margin-left: 6px;
  color:#D0081D;
	font-size: 1em;
	}
#snav ul li:nth-last-child(3){
	border-right: solid 1px rgba(0,0,0,0.2);
	margin-right: 0em;
	padding-right: 1.0em;
	}
#snav ul li.sns {
margin-right: 0.5em;
	}
@media screen and (max-width: 800px) {
#snav ul li.sns {
margin-right: 0.3em;
	}
	}
@media screen and (max-width: 600px) {
#snav ul li.sns {
margin-right: 0.1em;
	}
	}
@media screen and (max-width: 800px) {
#snav ul li.sns,#snav ul li.snav {
display: none;
	}
	}
@media screen and (max-width: 800px) {
#snav ul li.sns,#snav ul li:last-child {
margin-right: 70px;
	}
	}
#snav ul li.sns a {
font-size: 1.8rem;
	line-height: 1.1em;
	color: #D0081D;
	display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display:flex;
	align-items: center;
	}
#snav ul li.sns a+a {
	margin-left: 0.5em;
	}
#snav ul li.sns a img {
width: 20px;
	height: 20px
	}
#gnav ul {
font-size: 2.0rem;
	display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display:flex;
	justify-content: flex-end;
	align-items: center;
	margin-top: 1.5em;
	text-align: right;
	margin-left: 2.0em;
	}
#gnav ul {
font-size: 1.9rem;
	display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display:flex;
	justify-content: flex-end;
	align-items: center;
	margin-top: 1.5em;
	text-align: right;
	margin-left: 2.0em;
	}
@media screen and (max-width: 1500px) {
#gnav ul {
font-size: 1.8rem;
	}
	}
@media screen and (max-width: 1300px) {
#gnav ul {
font-size: 1.5rem;
	}
	}
@media screen and (max-width: 1000px) {
#gnav ul {
font-size: 1.4rem;
	justify-content: center;
	}
	}
	@media screen and (max-width: 1000px) {
#gnav ul {
	display: none;
	}
	}
#gnav ul li+li {
margin-left: 1.0em;
	padding-left: 1.0em;
		border-left: solid 1px rgba(0,0,0,0.2);
	}
@media screen and (max-width: 1400px) {
#gnav ul li+li {
margin-left: 0.7em;
	padding-left: 0.7em;
	}
	}
@media screen and (max-width: 1200px) {
#gnav ul li+li {
margin-left: 0.5em;
	padding-left: 0.5em;
	}
	}
@media screen and (max-width: 1100px) {
#gnav ul li+li {
margin-left: 0.3em;
	padding-left: 0.3em;
	}
	}
@media screen and (max-width: 1000px) {
#gnav ul li+li {
margin-left: 1.0em;
	padding-left: 1.0em;
	}
	}
	@media screen and (max-width: 920px) {
#gnav ul li+li {
margin-left: 0.7em;
	padding-left: 0.7em;
	}
	}
#gnav ul li a {
font-family: "adobe-caslon-pro", serif;
font-weight: 400;
font-style: normal;
	}
#gnav ul li a:hover {
color:#D0081D;
	background-color: rgba(255,255,255,0);
	}
#top_nav {
  margin: auto auto 50px;
}
@media screen and (max-width: 1200px) {
#top_nav {
  margin: auto auto 40px;
}
	}
@media screen and (max-width: 800px) {
#top_nav {
  margin: auto auto 20px;
}
	}

#top_nav ul {
width: 92%;
	margin: auto;
	max-width: 1100px;
	display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display:flex;
	-ms-flex-wrap: wrap;      flex-wrap: wrap;
	-webkit-box-pack: justify;     -ms-flex-pack: justify;   justify-content: space-between;
	}
#top_nav li {
width: 32%;
	border: solid 2px #E6E6E6;
	box-sizing: border-box; -webkit-box-sizing: border-box;       -moz-box-sizing: border-box;         -o-box-sizing: border-box;
	}
@media screen and (max-width: 800px) {
#top_nav li {
width: 49%;
	border: solid 2px #E6E6E6;
	margin-bottom: 1.8%;
	}
	}
@media screen and (max-width: 600px) {
#top_nav li {
width: 49%;
	}
	}
@media screen and (max-width: 480px) {
#top_nav li {
width: 100%;
	}
	}
@media screen and (max-width: 480px) {
#top_nav li a br {
display: none;
	}
	}
@media screen and (max-width: 900px) {
#top_nav ul:after {
width: 32%;
	content: "";
	}
	}
#top_nav li a {
	display: block;
	height: 100%;
	line-height: 100%;
	font-size: 1.8rem;
	line-height: 1.5em;
	padding: 0.8em 1.0em;
	box-sizing: border-box; -webkit-box-sizing: border-box;       -moz-box-sizing: border-box;         -o-box-sizing: border-box;
	font-family: "dnp-shuei-mincho-pr6n", sans-serif;
font-weight: 500;
font-style: normal;
	display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display:flex;
	justify-content: space-between;
	align-items: center;
	}
@media screen and (max-width: 1200px) {
	#top_navv li a {
	font-size: 1.6rem;
	}
	}
@media screen and (max-width: 1100px) {
	#top_nav li a {
	font-size: 1.5rem;
	}
	}
@media screen and (max-width: 1000px) {
	#top_nav li a {
	padding: 0.7em 0.7em;
	}
	}
@media screen and (max-width: 600px) {
	#top_nav li a {
	padding: 0.5em 0.7em;
	}
	}
#top_nav li a:hover {
	background-color: #F8E300;
	}
#top_nav li a:after {
font-family: "Font Awesome 5 Free";
  content: '\f105';
  font-weight: 800;
  margin-left: 4px;
  color:#D0081D;
	}
#page_nav {
  margin: auto auto 0;
	margin-bottom: 10px;
}
@media screen and (max-width: 1200px) {
#page_nav {
  margin: auto auto 0;
}
	}
@media screen and (max-width: 800px) {
#page_nav {
  margin: auto auto 0px;
}
	}

#page_nav ul {
width: 92%;
	margin: auto;
	max-width: 1100px;
	display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display:flex;
	-ms-flex-wrap: wrap;      flex-wrap: wrap;
	-webkit-box-pack: justify;     -ms-flex-pack: justify;   justify-content: space-between;
	}
#page_nav li {
width: 32%;
	border: solid 2px #E6E6E6;
	box-sizing: border-box; -webkit-box-sizing: border-box;       -moz-box-sizing: border-box;         -o-box-sizing: border-box;
	margin-bottom: 1.8%;
	}
@media screen and (max-width: 800px) {
#page_nav li {
width: 49%;
	}
	}
@media screen and (max-width: 600px) {
#page_nav li {
width: 100%;
	}
	}
#page_nav ul.nav2 li {
width: 49%;
	border: solid 2px #E6E6E6;
	box-sizing: border-box; -webkit-box-sizing: border-box;       -moz-box-sizing: border-box;         -o-box-sizing: border-box;
	margin-bottom: 1.8%;
	}
@media screen and (max-width: 800px) {
#page_nav ul.nav2 li {
width: 49%;
	}
	}
@media screen and (max-width: 600px) {
#page_nav ul.nav2 li {
width: 100%;
	}
	}
#page_nav ul.nav2_sp li {
width: 32%;
	border: solid 2px #E6E6E6;
	box-sizing: border-box; -webkit-box-sizing: border-box;       -moz-box-sizing: border-box;         -o-box-sizing: border-box;
	margin-bottom: 1.8%;
	}
@media screen and (max-width: 800px) {
#page_nav ul.nav2_sp li {
width: 49%;
	}
	}
@media screen and (max-width: 600px) {
#page_nav ul.nav2_sp li {
width: 49%;
	}
	}


@media screen and (max-width: 600px) {
#page_nav li a br {
display: none;
	}
	}
#page_nav ul:after {
width: 32%;
	content: "";
	}
@media screen and (max-width: 800px) {
#page_nav li:nth-last-child(-n+2)  {
	margin-bottom: 1.8%;
	}
	}
@media screen and (max-width: 800px) {
	#page_nav li:nth-child(1) {
	margin-bottom: 1.8%;
	}
#page_nav li:nth-child(2) {
	margin-bottom: 1.8%;
	}
	}
@media screen and (max-width: 600px) {
#page_nav li:nth-child(4),#page_nav li:nth-child(5) {
	margin-bottom: 1.8%;
	}
	}
#page_nav li a {
	display: block;
	height: 100%;
	line-height: 100%;
	font-size: 1.7rem;
	line-height: 1.5em;
	padding: 0.8em 1.0em;
	box-sizing: border-box; -webkit-box-sizing: border-box;       -moz-box-sizing: border-box;         -o-box-sizing: border-box;
	font-family: "dnp-shuei-mincho-pr6n", sans-serif;
font-weight: 600;
font-style: normal;
	display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display:flex;
	justify-content: space-between;
	align-items: center;
	}
@media screen and (max-width: 1200px) {
	#page_nav li a {
	font-size: 1.6rem;
	}
	}
@media screen and (max-width: 1100px) {
	#page_nav li a {
	font-size: 1.5rem;
	}
	}
@media screen and (max-width: 1000px) {
	#page_nav li a {
	padding: 0.7em 0.7em;
	}
	}
@media screen and (max-width: 600px) {
	#page_nav li a {
	padding: 0.5em 0.7em;
		font-size: 1.4rem;
	}
	}
@media screen and (max-width: 380px) {
	#page_nav li a {
		font-size: 1.3rem;
	}
	}
#page_nav li a:hover {
	background-color: #F8E300;
	}
#page_nav li a:after {
font-family: "Font Awesome 5 Free";
  content: '\f105';
  font-weight: 800;
  margin-left: 4px;
  color:#D0081D;
	}


/*==========================
　　　　　　section
==========================*/
section {
	width: 100%;
	height: auto;
}
section.bg01 {
	background-color: #F2F2F2;

}
@media screen and (max-width: 800px) {
section.bg01 {
	
}
	}
@media screen and (max-width: 480px) {
section.bg01 {

}
	}
section.last {
	padding-bottom: 40px;
}
@media screen and (max-width: 800px) {
section.last {
	padding-bottom: 30px;
}
	}
@media screen and (max-width: 480px) {
section.last {
	padding-bottom: 20px;
}
	}
section>div {
	width: 92%;
	max-width: 1100px;
	margin: auto;
	height: auto;
	padding-top: 55px;
	padding-bottom: 55px;
}

@media screen and (max-width: 1000px) {
section>div  {
	padding-top: 40px;
	padding-bottom: 40px;
}
	}
@media screen and (max-width: 600px) {
section>div  {
	padding-top: 35px;
	padding-bottom: 35px;
}
	}
@media screen and (max-width: 480px) {
section>div  {
	padding-top: 25px;
	padding-bottom: 25px;
}
	}
@media screen and (max-width: 380px) {
section>div  {
	padding-top: 20px;
	padding-bottom: 20px;
}
	}

section>div.container  {
	padding-top: 20px;
	padding-bottom: 20px;
}
section>div+div.container  {
	margin-top: 20px;
}








/*==========================
　　　　　　footer
==========================*/
#foot_banner {
	width: 100%;
	height: auto;
	background-color: #F8E300;
	padding: 14px 0;
}
@media screen and (max-width: 800px) {
#foot_banner {
	padding: 10px 0;
}
	}
#foot_banner>ul {
	display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display:flex;
	-webkit-box-pack: justify;     -ms-flex-pack: justify;   justify-content: space-between;
	-ms-flex-wrap: wrap;      flex-wrap: wrap;
	width: 92%;
	max-width: 1100px;
	margin: auto;
}
#foot_banner>ul>li {
	width: 24%;
	margin: 14px 0;
}
@media screen and (max-width: 600px) {
#foot_banner>ul>li {
	width: 48.5%;
	margin: 10px 0;
}
	}
footer .copyright {
	background-color: #F6F6F6;
	width: 100vw;
  margin: 0 calc(50% - 50vw);
	height: 80px;
	display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display:flex;
	align-items: center;
	align-content: center;
	justify-content: center;
	margin-top: 1.5em;
	font-family: "dnp-shuei-mincho-pr6n", sans-serif;
font-weight: 500;
font-style: normal;
}
@media screen and (max-width: 800px) {
footer .copyright {
	height: 80px;
	margin-top: 1em;
}
	}
@media screen and (max-width: 480px) {
footer .copyright {
	height: 60px;
	padding-bottom: 30px;
}
	}
footer .copyright p {
	font-size: 1.5rem;
	line-height: 1.6em;
}
@media screen and (max-width: 800px) {
footer .copyright p {
	font-size: 1.2rem;
	line-height: 1.5em;
}
	}
@media screen and (max-width: 480px) {
footer .copyright p {
	font-size: 1.0rem;
	line-height: 1.3em;
}
	}
footer .copyright p+p {
	margin-top: 5px;
}
footer .copyright p>span {
	display: inline-block;
	padding: 0;
	margin: 0;
}
@media screen and (max-width: 800px) {
footer .copyright p>span {
	display: block;
	padding: 0;
	margin: 0;
}
	}
#top_b {
 position: fixed;
  bottom: 0;
  right: 0;
	display: none;
}
#top_b a {
  float: right;
  height: 80px;
  width: 80px;
	font-size: 3.0rem;
	line-height: 80px;
 position: fixed;
  bottom: 0;
  right: 0;
	background-color: #F8E300;
	text-align: center;
}
@media screen and (max-width: 600px) {
#top_b a {
  float: right;
  height: 40px;
  width: 40px;
	font-size: 2.0rem;
	line-height: 40px;
 position: fixed;
  bottom: 0;
  right: 0;
	background-color: #F8E300;
	text-align: center;
}
}
@media screen and (max-width: 480px) {
#top_b a {
  float: right;
  height: 30px;
  width: 100%;
	font-size: 1.6rem;
	line-height: 30px;
 position: fixed;
  bottom: 0;
  right: 0;
	background-color: #F8E300;
	text-align: center;
}
}
#top_b a:hover {
	background-color: #D0081D;
	color: #FFF;
}



/*Pagenation*/
.wp-pagenavi {
	clear: both;
	text-align:center;
	margin-top:60px;
	height: auto;
	padding-bottom: 6px;

}
.wp-pagenavi a, .wp-pagenavi span {
	color: #000;
	font-size: 1.3rem;
	background-color: rgba(250,223,0,0.3);
	border: 1px solid rgba(250,223,0,1.0);
	padding: 8px 15px;
	margin: 0 2px;
	white-space: nowrap;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;	
}
.wp-pagenavi a:hover{
	color: #FFF;
	background-color: rgba(208,8,29,1.0);
	border: 1px solid rgba(208,8,29,1.0);
    }
.wp-pagenavi span.current{
	color: #000;
	background-color: rgba(250,223,0,1.0);
	border: 1px solid rgba(250,223,0,1.0);
    }

/*Pagenation*/
.pagenation_blog {
	position: relative;
	overflow: hidden;
	width:95%;
	margin-top: 85px;
	margin-right: auto;
	margin-left: auto;
	font-size:1.0rem
}
@media screen and (max-width: 600px) {
.pagenation_blog {
	margin-top: 50px;
}
	}
.pagenation_blog:after, .pagenation_blog ul:after {
	clear: both;
	content: ".";
	display: block;
	height: 0;
	visibility: hidden;
}
.pagenation_blog ul {
	margin: 0;
	position: relative;
	left: 50%; /* リスト全体であるul要素を右に50%移動。つまり先頭を中央に持ってくる感じです。 */
	float: left;
}
.pagenation_blog li {
	float: left;
	list-style: none outside none;
	margin-left: 3px;
	position: relative;
	left: -50%; /* 各リスト項目になるli要素を左に50%移動。 */
}
.pagenation_blog li:first-child {
	margin-left: 0;
}
.pagenation_blog li a.active {
	background-color: rgba(0,0,0,0.4);
	color: #FFF;
}
.pagenation_blog li a {
	background-color: rgba(0,0,0,0.1);
	border-radius: 1px;
	color: #000;
	display: block;
	padding: 10px 15px;
	text-decoration: none;
	font-size: 1.4rem;
}
@media screen and (max-width: 600px) {
.pagenation_blog li a {
	color: #FFFFFF;
	display: block;
	text-decoration: none;
	font-size: 1.4em;
	padding-top: 5px;
	padding-right: 10px;
	padding-bottom: 5px;
	padding-left: 10px;
}
}
.pagenation_blog li:first-child a {
	background: none repeat scroll 0 0 rgba(0,0,0,0.1);
}
.pagenation_blog li:last-child a {
	background: none repeat scroll 0 0 rgba(0,0,0,0.1);
}
.pagenation_blog li a:hover {
	color: #FFF;
	background-color: #db0012;
}
.pager {
	position: relative;
	overflow: hidden;
	width:100%;
	margin-top: 65px;
	margin-right: auto;
	margin-left: auto;
	font-size:1.0rem;
}
.pagenation:after, .pager ul:after {
	clear: both;
	content: ".";
	display: block;
	height: 0;
	visibility: hidden;
}
.pager ul {
	margin: 0;
	position: relative;
	left: 50%; /* リスト全体であるul要素を右に50%移動。つまり先頭を中央に持ってくる感じです。 */
	float: left;
	width:100%;
	display:block
}
.pager li {
	float: left;
	list-style: none outside none;
	margin-left: 0px;
	position: relative;
	left: -50%; /* 各リスト項目になるli要素を左に50%移動。 */
}
.pager li.next {
	float: right;
}
.pager li:last-child {
	margin-left: 0;
	float: right;
}
.pager li:only-child {
	margin-left: 0;
	float: left;
}
.pager li.next:only-child {
	margin-left: 0;
	float: right;
}
.pager li a.active {
	background-color: rgba(133,87,75,1.0);
}
.pager li a {
	background: none repeat scroll 0 0 rgba(133,87,75,0.1);
	border-radius: 3px;
	color: #000;
	display: block;
	padding: 10px 15px;
	text-decoration: none;
	font-size: 1.4rem;
}
@media screen and (max-width: 600px) {
.pager li a {
	border-radius: 3px;
	color: #FFFFFF;
	display: block;
	text-decoration: none;
	font-size: 1.4em;
	padding-top: 5px;
	padding-right: 10px;
	padding-bottom: 5px;
	padding-left: 10px;
}
}
.pager li:first-child a {
	background: none repeat scroll 0 0 rgba(133,87,75,0.1);
}
.pager li:last-child a {
	background: none repeat scroll 0 0 rgba(133,87,75,0.1);
}
.pager li a:hover {
	background-color: rgba(207,74,85,1.0);
	color: #FFF;
}

/* editor */
strong { font-weight: bold; }
em { font-style: italic; }
blockquote {
    display: block;
    -webkit-margin-before: 1em;
    -webkit-margin-after: 1em;
    -webkit-margin-start: 40px;
    -webkit-margin-end: 40px;
}
 
/* img */
.aligncenter {
    display: block;
    margin: 0 auto;
}
.alignright { float: right; }
.alignleft { float: left; }
 
img[class*="wp-image-"],
img[class*="attachment-"] {
    height: auto;
    max-width: 100%;
}
.size-full {
	width:100%;
	height:auto;
	margin-bottom: 20px;
}