div.hum-menu {
	display: grid;
	grid-template-columns: auto 55px 55px;
}
div.btn-contact-sp {
	width: 55px;
	height: 55px;
	color: #fff;
	background: var(--color-brown);
	text-align: center;
}
div.btn-contact-sp a {
	line-height: 55px;
}
div.btn-contact-sp a:before {
	font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands";
	content: '\f0e0';
	font-size: 2rem;
	font-weight: 600;
}

div.bottom-fixed-menu {
	position: fixed;
	width: 100%;
	bottom: 0;
	font-size: 0;
	z-index: 9999999;
	background: var(--color-pink);
}
div.bottom-fixed-menu ul {
	display: flex;
	list-style: none;
	padding:0;
	margin:0;
	width:100%;
}
div.bottom-fixed-menu li{
	justify-content: center;
	align-items: center;
	width: 50%;
	padding: 10px 20px;
	margin:0;
}
div.bottom-fixed-menu li:first-child{
	background: #fff;
	border: solid 2px var(--color-pink);
}

@media (max-width: 576px) {

	.contact table {
		width: 100%;
	}
	.contact table th, .contact table td {
		display: block;
		padding: 1em;
	}
	.contact table th {
		border-right: solid 1px #d5c8c4;
	}
	.contact table td {
		border-left: solid 1px #d5c8c4;
	}
	.contact table tr:first-child th {
		border-top-left-radius: 10px;
		border-top-right-radius: 10px;
	}
	.contact table tr:first-child td {
		border-top-right-radius: 0;
	}
	.contact table tr:last-child th {
		border-bottom-left-radius: 0;
	}
	.contact table tr:last-child td {
		border-bottom-left-radius: 10px;
		border-bottom-right-radius: 10px;
		border-top: none;
		border-bottom: solid 1px #d5c8c4;
	}

	div.container-md {
		padding: 0 20px;
	}

	#box-header {padding: 0;}
	img.logo {max-height: 45px; margin: 5px 0 0 0;}
	div.box-news {margin-top: 50px; margin-bottom: 80px;}
	.box-news th, .box-news td {display: block; border-bottom: none;}
	.box-news th {padding-bottom: 0 !important;}
	.box-news td {padding-top: 0 !important;}
	img.news {max-width: 200px !important;}
	.box-youtube .title {
		font-size: 1.8rem;
	}

	div.right-fixed-menu {display: none;}

	footer {
		background: url(../images/bg-footer-sp.png);
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top;
		background-color: #A9D04F !important;
		margin-top: 100px;
		padding: 0;
	}
	footer > div {
		padding-top: 0px;
	}

	div.footer {
		display: block;
		text-align: center;
		margin-top: 100px;
		margin-bottom: 50px;
	}
	div.box-backnumber img {
		max-width: 300px;
		margin-top: -150px;
	}
	div.copyright {
		margin-bottom: 65px;
	}
	div.copyright p {
		font-size: 1.2rem;
	}

	.main2nd {
		margin-top: 50px;
		padding: 0 1.5em;
	}

	.bg-cloud2 {
		padding: 2em;
	}
	.bg-cloud3 {
		padding: 2em;
	}

	table.kouza {
		width: 100%;
	}
	table.kouza th {
		writing-mode: horizontal-tb;
	}
	table.kouza td {
		padding-left:0;
	}

	.sp-block {
		display: block;
	}

}



/* Hamburger Menu */
.openbtn{
	position: relative;
	cursor: pointer;
	width: 55px;
	height:55px;
}

.openbtn span{
	display: inline-block;
	transition: all .4s;
	position: absolute;
	left: 14px;
	height: 2px;
	border-radius: 5px;
	width: 45%;
}
.openbtn span:nth-of-type(1) {
	background: #4AA636;
	top:13px; 
}
.openbtn span:nth-of-type(2) {
	background: #00A0CB;
	top:19px;
}
.openbtn span:nth-of-type(3) {
	background: #EC8000;
	top:25px;
}
.openbtn span:nth-of-type(3)::after {
	content:"Menu";
	position: absolute;
	top:0;
	left:-2px;
	color: var(--color-brown);
	font-size: 1rem;
	font-weight: 600;
	text-transform: uppercase;
}
.openbtn.active span:nth-of-type(1) {
	top: 14px;
	left: 18px;
	transform: translateY(6px) rotate(-45deg);
	width: 30%;
}
.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}
.openbtn.active span:nth-of-type(3){
	top: 26px;
	left: 18px;
	transform: translateY(-6px) rotate(45deg);
	width: 30%;
}
.openbtn.active span:nth-of-type(3)::after {
	content:"Close";/*3つ目の要素のafterにClose表示を指定*/
	transform: translateY(0) rotate(-45deg);
	top:0px;
	left:2px;
}

nav li {list-style: none;}
.header__nav {
	position: fixed;
	right: 0;
	top: 54px;
	width: 100%;
	height: 100vh;
	transform: translateX(100%);
	background-color: #FFFADC;
	transition: ease .4s;
	overflow: hidden;
	z-index: 99999999;
}
.nav-items {
	position: absolute;
	width: 100%;
	top: 30px;
	left: 0;
	padding: 0;
}
.nav-items a {
	display: block;
	width: 100%;
	font-size: 1.6rem;
	font-weight: 600;
	background: #fff;
	border-radius: 15px;
	padding: 10px 15px;
	margin-bottom: 10px;
}
.nav-items a:after {
	font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands";
	content: '\f0da';
	color: var(--color-brown) !important;
	font-weight: 600;
	float: right;
	margin-right: 10px;
}
.nav-items > div {
	padding: 0 20px;
}
.nav-items div.submenu {
	display: grid;
	grid-template-columns: 1fr 15px 1fr;
}
.nav-items div.main-navi {
	padding: 0;
	margin-top: 10px;
}
.nav-items div.main-navi h3 {
	color: #fff;
	font-size: 1.6rem;
	font-weight: 600;
	background: var(--color-orange);
	padding: 10px 35px;
	margin: 0;
}
.nav-items div.main-navi td {
	padding: 0;
}
.nav-items div.main-navi td a {
	padding: 10px 5px;
	margin-bottom: 0;
}
.nav-items table {
	border: solid 1px var(--color-orange);
}
.nav-items td {
	border: solid 1px var(--color-orange);
	border-right: none;
	border-bottom: none;
}
.nav-items td a {
	font-size: 1.6rem;
letter-spacing: -0.05em;
	color: var(--color-brown);
	border-radius: 0;
	margin: 0;
	padding: 5px;
}
.nav-items td a:after {
	color: var(--color-orange) !important;
}
.nav-items td img {
	height: 28px;
	margin-top: -5px;
	margin-right: 5px;
}
.header__nav.active {
	transform: translateX(0);
}
