@charset "utf-8";

/*===========================================================================================================================================
=============================================================================================================================================

	タブレット

=============================================================================================================================================
===========================================================================================================================================*/
@media screen and (max-width: 1200px){

.toggle-btn{
	display: block;
    position: fixed;
    top: 24px;
    right: 10px;
    width: 60px;
    height: 60px;
    background-color: #93BA36;
    border-radius: 10px;
    z-index: 100;
}

.toggle-btn__line{
	display: block;
    position: absolute;
    top: 45%;
    left: 50%;
    width: 24px;
    height: 2px;
    margin: -1px 0 0 -12px;
    background-color: #fff;
    transition: .3s;
}

.toggle-btn__line:before, .toggle-btn__line:after{
	content: " ";
	position: absolute;
	top: 50%;
    left: 0;
	width: 100%;
    height: 2px;
    background-color: #fff;
	transition: .3s;
}

.toggle-btn__line:before{
	margin-top: -10px;
}

.toggle-btn__line:after{
	margin-top: 8px;
}

.toggle-btn:after {
	content: "menu";
    color: #fff;
    font-size: 1.1rem;
    position: absolute;
    bottom: 6px;
    left: 0;
    right: 0;
    text-align: center;
}



.toggle-btn.active .toggle-btn__line{
	background: transparent;
}

.toggle-btn.active .toggle-btn__line:before, .toggle-btn.active .toggle-btn__line:after{
	margin-top: 0;
}

.toggle-btn.active .toggle-btn__line:before{
	transform: rotate(-45deg);
}

.toggle-btn.active .toggle-btn__line:after{
	transform: rotate(-135deg);
}

.toggle-btn.active:after {
	content: "close";
}





.gnav-sp{
	position: fixed;
	top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    overflow: auto;
    z-index: 10;
    background-color: #F9FBF2;
}

.gnav-sp__inner{
	padding: 80px 20px;
    overflow: auto;
    max-width: 700px;
    margin: auto
}

.gnav-sp__list{
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border-bottom: 1px solid rgba(102,102,102,0.2);
}

.gnav-sp__list:last-of-type{
    border-bottom: none;
}

.gnav-sp__item{
	width: 47%;
}

.gnav-sp__item a{
	display: block;
	font-size: 1.7rem;
	padding: 15px 0;
	position: relative;
}

.gnav-sp__item a:after{
	content: '';
    border-top: solid 2px #333;
    border-right: solid 2px #333;
    width: 10px;
    height: 10px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
}



.gnav-sp.is-open {
	display: block;
}

.gnav-sp .gnav-sp__list{
	animation-name:gnaviAnime;
	animation-duration:1s;
	animation-delay:.2s;
	animation-fill-mode:forwards;
	opacity:0;
}

@keyframes gnaviAnime{
from{
	opacity: 0;
}
to{
	opacity: 1;
}
}

	}

/*===========================================================================================================================================
=============================================================================================================================================

	スマホ

=============================================================================================================================================
===========================================================================================================================================*/
@media screen and (max-width: 767px){

.toggle-btn{
	display: block;
    position: fixed;
    top: 14px;
    right: 5px;
    width: 45px;
    height: 45px;
    background-color: #93BA36;
    border-radius: 10px;
    z-index: 100;
}

.toggle-btn__line{
	display: block;
	position: absolute;
    top: 43%;
    left: 50%;
	width: 20px;
    height: 2px;
    margin: -1px 0 0 -10px;
    background-color: #fff;
	transition: .3s;
}

.toggle-btn__line:before, .toggle-btn__line:after{
	content: " ";
	position: absolute;
	top: 50%;
    left: 0;
	width: 20px;
    height: 2px;
    background-color: #fff;
	transition: .3s;
}

.toggle-btn__line:before{
	margin-top: -8px;
}

.toggle-btn__line:after{
	margin-top: 6px;
}

.toggle-btn:after {
	content: "menu";
    color: #fff;
    font-size: 1rem;
    position: absolute;
    bottom: 4px;
    left: 0;
    right: 0;
    text-align: center;
}



.toggle-btn.active .toggle-btn__line{
	background: transparent;
}

.toggle-btn.active .toggle-btn__line:before, .toggle-btn.active .toggle-btn__line:after{
	margin-top: 0;
}

.toggle-btn.active .toggle-btn__line:before{
	transform: rotate(-45deg);
}

.toggle-btn.active .toggle-btn__line:after{
	transform: rotate(-135deg);
}

.toggle-btn.active:after {
	content: "close";
}





.gnav-sp{
	position: fixed;
	top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    overflow: auto;
    z-index: 10;
    background-color: #F9FBF2;
}

.gnav-sp__inner{
	padding: 55px 20px;
	overflow: auto;
	max-width: 650px;
    margin: auto
}

.gnav-sp__list{
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border-bottom: 1px solid rgba(102,102,102,0.2);
}

.gnav-sp__list:last-of-type{
    border-bottom: none;
}

.gnav-sp__item{
	width: 47%;
}

.gnav-sp__item a{
	display: block;
	font-size: 1.5rem;
	padding: 15px 0;
	position: relative;
}

.gnav-sp__item a:after{
	content: '';
    border-top: solid 2px #333;
    border-right: solid 2px #333;
    width: 8px;
    height: 8px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
}



.gnav-sp.is-open {
	display: block;
}

.gnav-sp .gnav-sp__list{
	animation-name:gnaviAnime;
	animation-duration:1s;
	animation-delay:.2s;
	animation-fill-mode:forwards;
	opacity:0;
}

@keyframes gnaviAnime{
from{
	opacity: 0;
}
to{
	opacity: 1;
}
}

	}