@charset "utf-8";

/* ===================
clearfix
===================*/
.clearfix:after {
	visibility:hidden;
	height:0;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
}


/* ===================
link
===================*/
a {
	outline: none;
}
a:link {
	text-decoration: none;
	color: #3c2f20;
}
a:visited {
	text-decoration: none;
	color: #3c2f20;
}
a:hover{
	text-decoration: underline;
	color: #63513c;
	opacity: 0.7;
	-webkit-transition: all .5s ease-in-out;
	-moz-transition: all .5s ease-in-out;
	-o-transition: all .5s ease-in-out;
	transition: all 0.5s ease-in-out;
}
a:hover img{
	text-decoration: none;
	opacity: 0.7;
	-webkit-transition: all .7s ease-in-out;
	-moz-transition: all .7s ease-in-out;
	-o-transition: all .7s ease-in-out;
	transition: all 0.7s ease-in-out;
}
a:active {
	text-decoration: none;
	color: #3c2f20;
}

.main a:link {
	text-decoration: underline;
}

img{
	vertical-align:top;
  max-width: 100%;
  height: auto;
}


/*==========================================
 body
===========================================*/
html {
	font-size: 62.5%;
}
body {
	font-size:1.6rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-style: normal;
	/*font-family: "Tsukushi A Round Gothic","筑紫A丸ゴシック";*/
	/*font-family: 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;*/
	color: #3c2f20;
	/*letter-spacing: 0.1rem;*/
}
@media (max-width: 992px){
	h1 {
		font-size:1.6rem;
	}
	h2 {
		font-size:1.8rem;
	}
	h3 {
		font-size:1.6rem;
	}
	h4 {
		font-size:1.4rem;
	}
	h5 {
		font-size:1.4rem;
	}
	p,ul,ol,dl,address{
		font-size:1.4rem;
	}
	table{
		font-size:1.4rem;
	}
}
@media (min-width: 993px){
	h1 {
		font-size:4.5rem;
	}
	h2 {
		font-size:2.4rem;
	}
	h3 {
		font-size:2.0rem;
	}
	h4 {
		font-size:1.6rem;
	}
	h5 {
		font-size:1.6rem;
	}
	p,ul,ol,dl,address{
		font-size:1.6rem;
	}
	table{
		font-size:1.6rem;
	}
}

@media (max-width: 992px){
	.hiden_sp {
		display: none;
	}
}
@media (min-width: 993px)  {
	.hiden_pc {
		display: none;
	}
}

/*
.content {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
*/


/*==========================================
[header] common
===========================================*/
.header{
	z-index: 99999;
	background: rgba(255,255,255,1.0);
	position: fixed;
	transition: .4s;
	width: 100%;
	box-shadow: 0 3px 6px rgba(0,0,0,0.2);
}


/*==========================================
[header] sp
===========================================*/
/*	header
------------------------------------------ */
@media (max-width: 992px)  {
	.header {
		background-color: #80b019;
		height: 50px;
	}
}

/*	logo
------------------------------------------ */
.header .logo a {
	text-decoration: none;
}
@media (max-width: 992px){
	.header .logo {
		float: left;
		margin-top: 5px;
		margin-left: 10px;
	}
	.header .logo a {
		display: inline-block;
	}
	.header .logo img.logo_main {
		width: 35px;
		height: auto;
	}
	.header .logo img.logo_txt {
		width: auto;
		height: 15px;
		margin-top: 15px;
		margin-left: 0.5em;
	}
}

/* SP-nav
------------------------------------------ */
@media (max-width: 992px){
	.PC-nav {
		display: none;
	}

	.head-bar {
		box-sizing: border-box;
		height: 50px;
		padding: 10px 15px;
	}

	/* menu-btn */
	.menu-btn,
	.menu-btn span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}
	.menu-btn {
		display: block;
		float: right;
		margin: 0 auto;
		position: relative;
		width: 30px;
		height: 30px;
	}
	.menu-btn span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 2px;
		background-color: #fff;
	}
	.menu-btn span:nth-of-type(1) {
		top: 5px;
	}
	.menu-btn span:nth-of-type(2) {
		top: 15px;
	}
	.menu-btn span:nth-of-type(3) {
		bottom: 3px;
	}

	/* sp-menu */
	.sp-menu {
		display: none;
		background: #f7ee81;
	}
	.sp-menu li {
		box-sizing: border-box;
		border-bottom: 1px solid #fff;
	}
	/*
	.sp-menu li:first-child {
		border-top: 1px solid #fff;
	}
	*/
	.sp-menu li a {
		background: #f7ee81;
		box-sizing: border-box;
		display: block;
		padding: 10px 10px;
		text-decoration: none;
		width: 100%;
		font-size: 1.2rem;
	}
	.sp-menu li a img {
		width: 20px;
		height: auto;
		margin-right: 0.5em;
	}
}



/*==========================================
[header] pc
===========================================*/
/*	header
------------------------------------------ */
@media (min-width: 993px)  {
	.header {
		background-color: #80b019;
		height: 60px;
	}
}


/* PC-nav
------------------------------------------ */
@media (min-width: 993px){
	.SP-nav {
		display: none;
	}

	.PC-nav {
		max-width: 1920px;
		margin-left: auto;
		margin-right: auto;
	}

	.PC-nav .pc-menu {
		display: flex;
		/*justify-content: space-around;*/
		justify-content: center;
		align-items: center;
		list-style: none;
	}

	.PC-nav .pc-menu li {
		/*display: flex;
		justify-content: center;*/
		/*	width: 100%;
		height: 100%;*/
	}
	.PC-nav .pc-menu li a {
		width: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		text-decoration: none;
		border-right: 1px #fff solid;
	}
	.PC-nav .pc-menu li:first-child a {
		border-left: 1px #fff solid;
	}
	.PC-nav .pc-menu li a img {
		height: auto;
	}
	.PC-nav .pc-menu li a:hover {
		background-color: #f7ee81;
	}
	.PC-nav .pc-menu li a.current {
		background-color: #f7ee81;
	}
	body.home .PC-nav .pc-menu li a.current {
		background-color: #80b019;
	}
	body.home .PC-nav .pc-menu li:first-child a.current,
	body.home .PC-nav .pc-menu li a:hover {
		background-color: #f7ee81;
	}

	/* for Firefox */
	@-moz-document url-prefix() {
		/*.PC-nav .pc-menu {
			height: 59px;
		}*/
		.PC-nav .pc-menu li,
		.PC-nav .pc-menu li a {
			height: 60px;
		}
		.PC-nav .pc-menu li a:hover,
		.PC-nav .pc-menu li a.current {
			height: 60px;
		}
		body.home .PC-nav .pc-menu li:first-child a.current,
		body.home .PC-nav .pc-menu li a:hover {
			height: 60px;
		}
	}

}

@media (min-width: 993px) and (max-width: 1120px) {
	.PC-nav .pc-menu li {
		width: auto!important;
	}
	.PC-nav .pc-menu li a {
		font-size: 1.2rem;
		padding-top:13px;
		padding-bottom: 12px;
		padding-left: 12px;
		padding-right: 12px;
	}
	.PC-nav .pc-menu li a br {
		display: block;
	}
	.PC-nav .pc-menu li a img {
		width: 20px;
		margin-right: 0.25em;
	}
	.PC-nav .pc-menu li.menu_top a img {
		width: 30px;
		margin-right: 0.25em;
	}
}

@media (min-width: 1121px) and (max-width: 1210px) {
	.PC-nav .pc-menu li a {
		font-size: 1.2rem;
		padding-top:13px;
		padding-bottom: 12px;
		padding-left: 12px;
		padding-right: 12px;
	}
	.PC-nav .pc-menu li a br {
		display: block;
	}
	.PC-nav .pc-menu li a img {
		width: 20px;
		margin-right: 0.25em;
	}
	.PC-nav .pc-menu li.menu_top a img {
		width: 30px;
		margin-right: 0.25em;
	}
}

@media (min-width: 1211px){
	.PC-nav .pc-menu li a {
		font-size: 1.4rem;
		padding-top:10px;
		padding-bottom: 10px;
		padding-left: 16px;
		padding-right: 16px;
	}
	.PC-nav .pc-menu li a br {
		display: block;
	}
	.PC-nav .pc-menu li a img {
		width: 25px;
		margin-right: 0.5em;
	}
	.PC-nav .pc-menu li.menu_top a img {
		width: 35px;
		margin-right: 0.25em;
	}
}

@media (min-width: 1560px){
	.PC-nav .pc-menu li {
		width: 14.28%;
	}
	.PC-nav .pc-menu li a {
		font-size: 1.4rem;
	}
	.PC-nav .pc-menu li a br {
		display: block;
	}
	.PC-nav .pc-menu li a img {
		width: 40px;
		margin-right: 0.5em;
	}
}



/*==========================================
 [main]
===========================================*/




/*==========================================
[footer]
===========================================*/
.footer {
	background-color: #80b019;
}

/*-------------------------------------------
footer_inner
-------------------------------------------*/
.footer_inner {
	padding-top: 16px;
	padding-bottom: 16px;
	padding-left: 15px;
	padding-right: 15px;
}

/* address */
.footer_inner address {
	/*font-family: 'メイリオ', Meiryo;*/
	text-align: center;
	font-style: normal;
	/*font-size: 1.25rem;*/
}
.footer_inner address strong{
	font-weight: normal;
}
@media (max-width: 992px)  {
	.footer_inner address strong,
	.footer_inner address span {
		display: block;
	}
    .footer_inner address {
        font-size: 1.2rem;
    }
}
@media (min-width: 993px)  {
	.footer_inner address strong,
	.footer_inner address span {
		padding: 0 0.5em;
	}
    .footer_inner address {
        font-size: 1.3rem;
    }
}
