.header {
    background-color: #EBE4D9;
    display: flex;
    justify-content: space-between;
	padding: 22px 32px;
    position: fixed;
    top: 0;
    z-index: 15;
    width: 100%;
    min-height: 100px;
	transition:0.8s;
}
.head-logo {
    width: 190px;
    display: block;
}
@media screen and (min-width:801px){
	header.scrolled {
		padding: 9px 39px;
		min-height: 46px;
	}

	header.scrolled .header-logo {
		width: 270px;
	}
}
.head-contents {
    width: 716px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-left: auto;
    z-index: 0;
}
.head-contents__nav {
    width: 540px;
    max-width: 100%;
}

.head-contents__nav ul{
    display: flex;
    justify-content: space-between;
}

.head-nav__list a{
    font-size: .18rem;
    color: #000;
    font-family: "Cormorant Garamond", serif;
    position: relative;
    padding-bottom: 7px;
}


.head-nav__list a::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 100%;
  height: 2px;
  background-color: #006339;
  transform: translateX(-50%) scaleX(0);
  transform-origin: center;
  transition: transform 0.3s ease;
}

.head-nav__list a:hover::after {
  transform: translateX(-50%) scaleX(1);
}

.home .n-home a::after{
  transform: translateX(-50%) scaleX(1);
}
.page-about .n-about a::after,
.page-abouten .n-about a::after{
  transform: translateX(-50%) scaleX(1);
}
.page-brand .n-brand a::after,
.page-branden .n-brand a::after{
  transform: translateX(-50%) scaleX(1);
}
.single-news .n-news a::after,
.archive-news .n-news a::after,
.tax-news_cat .n-news a::after{
  transform: translateX(-50%) scaleX(1);
}
.page-contact .n-contact a::after,
.page-contacten .n-contact a::after{
  transform: translateX(-50%) scaleX(1);
}

.head-nav__list a:hover{
    opacity: 1;
}





/* 言語切り替え */
.language-block{
    display: flex;
    align-items: center;
    width: 120px;
}
.language-icon {
    width: 23px;
    margin-right: 10px;
    margin-top: 3px;
}
.nav-language__box span{
    padding: 0 4px;
}

.nav-language__box a {
    color: #000;
    font-size: .16rem;
	font-weight: 500;
}


.language-jp,
.language-en{
    padding-bottom: 7px;
	position: relative;
}
.en .language-jp::after,
.jp .language-en::after{
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 100%;
  height: 2px;
  background-color: #006339;
  transform: translateX(-50%) scaleX(0);
  transform-origin: center;
  transition: transform 0.3s ease;
  opacity:0;
}
.en .language-jp:hover::after,
.jp .language-en:hover::after{
    transform: translateX(-50%) scaleX(1);
	opacity:1;
}
.jp .language-jp::after {
    content: "";
    position: absolute;
    left: -1px;
  bottom: 0;
  width: 100%;
  height: 2px;
  background-color: #006339;
  transform-origin: center;
  transition: transform 0.3s ease;
}
.en .language-en::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 2px;
  background-color: #006339;
  transform-origin: center;
  transition: transform 0.3s ease;
}


/*ロゴアニメーション*/
.logo-move__anime {
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
}

.logo-move__anime--back{
  background-color: #fff;
  height: 100vh;
  z-index: 3;
  position: relative;

  /* all だと他まで巻き込むので明示推奨 */
  transition: background-color 1s ease, height 0.3s ease;
  transition-delay: 3s; /* 高さ制御はJS側のタイミングでやる */
}

.logo-move__anime--back.fv-back{
  background-color: transparent;
}

/* ロゴ移動が終わった後に高さを変える */
.logo-move__anime--back.is-collapsed{
  height: 0;              /* 例：消す */
  overflow: hidden;       /* 0にするなら入れとくと安全 */
}


.logo-anime-img {
    position: absolute;
    width: 20%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
    transition:
        opacity 1s ease,
        top 0.8s ease,
        left 0.8s ease,
        transform 0.8s ease,
        width 0.8s ease;
        z-index: 10;
}

.logo-anime-img.is-visible {
    opacity: 1;
}

.logo-anime-img.move-img {
    width: 300px;
    top: 20px;
    left: 30px;
    transform: translate(0, 0);
}
.header-logo {
    width: 300px;
    top: 20px;
    left: 20px;
    transform: translate(0, 0);
	transition:0.8s;
}



/*スマホ時 言語切り替え */
.accordion-language__container {
    display: flex;
    /*justify-content: space-between;*/
    width: 100%;
    margin: 40px auto 40px;
}

.accordion-language__container a {
    border: solid 1px #006339;
    padding: 1px 30px;
    margin-right: 10px;
    font-size: .15rem;
}

.nav-icon {
    width: 207px;
    display: block;
    margin-bottom: 52px;
}
.nav-icon-img{
	width: 100%;
}
/* メニュー */

#toggle{
	display:none;
}

#toggle-box {
  position: relative;
  width: 82%;
  height: 100%;
  cursor: pointer;
  margin: 0px auto 0;
  border-radius: 9px;
}


#toggle-box>span {
  width: 100%;
  height: 2px;
  border-radius: 0px;
  left: 0;
  right: 0;
  margin: auto;
  display: block;
  background: #006339;
  position: absolute;
  transition: transform .6s ease-in-out, top .5s ease, bottom .5s ease;
}

#toggle-box>span:nth-child(1) {
  top: 0px;
}

#toggle-box>span:nth-child(2) {
  top: 50%;
  transform: translatey(-50%);
}

#toggle-box>span:nth-child(3) {
  bottom: 0px;
}

#toggle {
  position: fixed;
  right: 20px;
  top: 25px;
  width: 50px;
  margin: 0 auto 0px;
  height: 17px;
  justify-content: center;
  align-items: center;
  z-index: 1000;
}

/* OPEN時 */
.is-open #nav-content{
  z-index: 999;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateZ(0) scale(1); /* ほんの少しのスケール戻し */
}

/* CLOSE時（初期） */
#nav-content{
  z-index: 900;
  overflow: auto;
  width: 100%;
  height: 100%;
    background: #ebe4d9;
  color: #000;
  position: fixed;
  top: 0;
  right: 0;
  text-align: center;

  /* スライドはやめる */
  transform: translateZ(0) scale(1.02);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;

  /* ふわっと表示 */
  transition:
    opacity .35s ease,
    transform .45s cubic-bezier(0.215, 0.61, 0.355, 1),
    visibility 0s linear .35s; /* 閉じた後にvisibilityをhiddenへ */
  
  background-size: cover;
  background-repeat: no-repeat;
}

/* OPEN時はvisibility遅延を解除 */
.is-open #nav-content{
  transition:
    opacity .35s ease,
    transform .45s cubic-bezier(0.215, 0.61, 0.355, 1),
    visibility 0s;
}


#nav-content ul {
  list-style: none;
}

#nav-content ul a {
  display: block;
  color: #006339;
  text-decoration: none;
  transition: opacity .6s ease;
  font-size: .20rem;
  text-align: center;
  font-weight: 500;
  position: relative;
}

#nav-content ul a::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    height: 21%;
    width: 1px;
    background-color: #006938;
}


.js-accordion-move {
  padding: 16px 0;
}

#nav-content a:hover {
  opacity: 0.6;
}

.is-open {
  overflow: hidden;
}

.is-open #toggle-box {
  z-index: 1000;
}

.is-open #toggle-box>span {
  background: #006339;
  /* width: 100%; */
  z-index: 3000;
}

.is-open #toggle-box>span:nth-child(1) {
  top: 50%;
  transform: rotate(25deg) translatey(-50%);
  width: 100%;
}

.is-open #toggle-box>span:nth-child(3) {
  width: 0;
}

.is-open #toggle-box>span:nth-child(2) {
  top: 50%;
  transform: rotate(-25deg) translatey(-50%);
  width: 100%;
}





.spnav-logo__link{
	width: 247px;
}
.spnav-logo__img{
	width: 100%;
}



/*.sp-nav-li{
	border-bottom: solid 1px #006339;
}
.sp-nav-li:first-of-type{
	border-top: solid 1px #006339;
}*/
.sp-nav-a{
  padding: 23px 15px;
  font-weight: 400;
}

.sp-nav-span {
    font-size: .18rem;
    margin-left: 35px;
	position: relative;
}



.sp-nav-a__child{
	padding: 10px 30px;
  font-weight: 400;
}
#nav-content nav {
  padding: 15px 18px 30px;
  width: 100%;
  margin: 0 auto;
  text-align: left;
}


.effect-accordion-menu {
  margin: 70px auto 0px;
  max-width: 300px;
  width: 100%;
}

.effect-accordion-menu__title {
  padding: 20px 15px;
  cursor: pointer;
  position: relative;
}

.effect-accordion-menu__title:before {
  position: absolute;
  content: '';
  top: 50%;
  right: 25px;
  height: 1px;
  width: 15px;
  background: #000;
  transform: rotate(90deg);
  transition: all .3s ease-in-out;
}

.effect-accordion-menu__title:after {
  position: absolute;
  content: '';
  top: 50%;
  right: 25px;
  height: 1px;
  width: 15px;
  background: #000;
  transition: all .3s ease-in-out;
}

.effect-accordion-menu__title.open:before {
  transform: rotate(180deg);
}

.effect-accordion-menu__title.open:after {
  opacity: 0;
}


.effect-accordion-menu__contents {
  display: none;
  margin-bottom: 22px;
}

.effect-accordion-menu__list {
  border-bottom: solid 1px #000;
  font-weight: 500;
}

.sp_langs {
    text-align: right;
    margin: -39px 7px 34px;
}
.language-icon-sp {
	vertical-align: sub;
}
	
#nav-content .sp_langs a {
    display: inline-block;
    color: #000000;
    text-decoration: none;
    transition: opacity .6s ease;
    font-size: .20rem;
    text-align: center;
    font-weight: 500;
    position: relative;
}

@media screen and (min-width:801px) and ( max-width:1150px){
	.head-contents{
		display:none;
	}
	
	#toggle {
    display: block;
	    right: 40px;
    top: 40px;
	    transition: 0.8s;
}
header.scrolled #toggle {
    display: block;
    top: 23px;
}

.nav-icon {
    width: 300px;
}

header.scrolled .nav-icon {
    width: 270px;
}

#nav-content nav {
    padding: 20px 30px 30px;
}

header.scrolled #nav-content nav {
    padding: 10px 40px 30px;
}
}


@media screen and (max-width:800px){
	#toggle{
		display:block;
	}
	
    .header {
        position: fixed;
        z-index: 100;
        width: 100%;
        padding: 14px 16px;
        min-height: 70px;
    }
.header-logo {
    width: 207px;
	}
.logo-anime-img.move-img {
    width: 207px;
    top: 16px;
    left: 19px;
    transform: translate(0, 0);
}
.logo-anime-img {
    width: 80%;
}


	.head-contents{
		display:none;
	}
	
	
	
}




