html,
body {
	width: 100%;
	background: #f8f8ff;
	font-family: lora;
	font-weight: 400
	font-size: 1.8vh;
	letter-spacing: 0.06em;
	color: #222;
}
.footer-copy {
	padding-bottom: 2em;
	margin: 0;
	text-align: center;
	font-size: 0.4em;
	letter-spacing: .04em;
}
.fadeIn{
	animation-name:fadeInAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
	opacity:0;
}
@keyframes fadeInAnime{
	from {
		opacity: 0;
	}
	
	to {
		opacity: 1;
	}
}
/*===================================
	スマホメニュー
=====================================*/
/*　　　sp btn
-------------------------------------*/
.spmenu-opener {
  transition: all 400ms cubic-bezier(0.25, 0.1, 0.25, 1);
}
@media screen and (min-width: 751px) {
  .spmenu-opener {
    position: absolute;
    z-index: 2100;
    padding: 20px 40px 0 0;
    top: 0;
    right: 0;
  }
}
@media screen and (max-width: 750px) {
  .spmenu-opener {
    margin-left: 5.1282051282vw;
    position: absolute;
    z-index: 2100;
    padding: 3.8461538462vw 5.1282051282vw;
    top: 0;
    right: 0;
  }
}
.spmenu-opener .hamburger {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  width: 34px;
  height: 23px;
  cursor: pointer;
}
@media screen and (max-width: 750px) {
  .spmenu-opener .hamburger {
    width: 8.7179487179vw;
    height: 5.3846153846vw;
  }
}
.spmenu-opener .hamburger.is-open .hamburger-item:nth-child(1) {
  background-color: #222222;
  transform: translateY(0px) rotate(45deg);
}
.spmenu-opener .hamburger.is-open .hamburger-item:nth-child(2) {
  transform: translateX(11.3333333333px);
  opacity: 0;
}
.spmenu-opener .hamburger.is-open .hamburger-item:nth-child(3) {
  background-color: #222222;
  transform: translateY(0px) rotate(-45deg);
}
.spmenu-opener .hamburger-item {
  position: absolute;
  display: block;
  width: 34px;
  height: 1px;
  top: 11px;
  left: 0;
  right: 0;
  margin: auto;
  transition: .2s ease-out;
}
@media screen and (max-width: 750px) {
  .spmenu-opener .hamburger-item {
    width: 8.7179487179vw;
    height: 1px;
    top: 11px;
  }
}
.spmenu-opener .hamburger-item:nth-child(1) {
  background-color: #222222;
  transform: translateY(-10px);
}
.spmenu-opener .hamburger-item:nth-child(2) {
  background-color: #222222;
}
.spmenu-opener .hamburger-item:nth-child(3) {
  background-color: #222222;
  transform: translateY(10px);
}
.spmenu-opener.scrolled {
  opacity: 0;
}
.spmenu-opener.fixed {
  position: fixed;
  opacity: 1;
}
.sp-menu-open .spmenu-opener {
  position: fixed;
  opacity: 1;
}

/*　　　sp menu
-------------------------------------*/
.spmenu {
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: 100vw;
  height: 100%;
  overflow-y: scroll;
  background-color: #fff;
  opacity: 0;
  visibility: hidden;
  z-index: -1;
  transition: all 400ms cubic-bezier(0.25, 0.1, 0.25, 1);
}
.spmenu.is-open {
  visibility: visible;
  z-index: 2000;
  opacity: 1;
}
.spmenu.is-open .wrap {
  visibility: visible;
  opacity: 1;
}
@media screen and (min-width: 751px) {
  .spmenu {
    justify-content: center;
    align-items: center;
  }
}
@media screen and (max-width: 750px) {
  .spmenu {
    padding: 15.3846153846vw 0;
  }
}
.spmenu .wrap {
  box-sizing: border-box;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  opacity: 0;
  visibility: hidden;
}
@media screen and (min-width: 751px) {
  .spmenu .wrap {
    max-width: 1020px;
  }
}
@media screen and (max-width: 750px) {
  .spmenu .wrap {
    padding: 0 5.1282051282vw;
  }
}
.spmenu .nav-wrap {
  display: flex;
}
@media screen and (max-width: 750px) {
  .spmenu .nav-wrap {
    padding: 0 3.8461538462vw;
  }
}
@media screen and (min-width: 751px) {
  .spmenu .nav-wrap .logo {
    margin-right: 120px;
    width: 53px;
  }
}
@media screen and (max-width: 750px) {
  .spmenu .nav-wrap .logo {
    margin-right: 11.5384615385vw;
    width: 10.2564102564vw;
  }
}
.spmenu .nav-wrap .navs {
  flex: 1 1 0;
}
.spmenu .nav-wrap .nav {
  font-family: "Ryumin Regular KL", serif;
}
.spmenu .nav-wrap .nav > .item {
  margin-bottom: 2em;
}
@media screen and (min-width: 751px) {
  .spmenu .nav-wrap .nav > .item {
    font-size: 20px;
    letter-spacing: 0.06em;
    line-height: 160%;
  }
}
@media screen and (max-width: 750px) {
  .spmenu .nav-wrap .nav > .item {
    font-size: 5.1282051282vw;
    letter-spacing: 0.06em;
    line-height: 160%;
  }
}
@media screen and (min-width: 751px) {
  .spmenu .nav-wrap .child-nav {
    padding: 30px 0 0 20px;
    display: flex;
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 750px) {
  .spmenu .nav-wrap .child-nav {
    padding: 7.6923076923vw 0 0 5.1282051282vw;
  }
}
@media screen and (min-width: 751px) {
  .spmenu .nav-wrap .child-nav > .item {
    margin-right: 70px;
    font-size: 16px;
    letter-spacing: 0.06em;
    line-height: 106.25%;
  }
}
@media screen and (max-width: 750px) {
  .spmenu .nav-wrap .child-nav > .item {
    margin-bottom: 2em;
    font-size: 3.5897435897vw;
    letter-spacing: 0.06em;
    line-height: 121.428571429%;
  }
}
.spmenu .nav-wrap .child-nav > .item::before {
  margin-right: .5em;
  content: "-";
}
.spmenu .sub-nav {
  font-family: "Ryumin Regular KL", serif;
}
.spmenu .sub-nav > .item {
  margin-bottom: 2em;
}
@media screen and (min-width: 751px) {
  .spmenu .sub-nav > .item {
    font-size: 16px;
    letter-spacing: 0.06em;
    line-height: 200%;
  }
}
@media screen and (max-width: 750px) {
  .spmenu .sub-nav > .item {
    font-size: 4.1025641026vw;
    letter-spacing: 0.06em;
    line-height: 200%;
  }
}
.spmenu .sub-nav .icon {
  margin-right: .35em;
  display: inline-block;
  width: .75em;
  height: .75em;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.spmenu .sub-nav .icon-instagram {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2210.865%22%20height%3D%2210.865%22%20viewBox%3D%220%200%2010.865%2010.865%22%3E%20%3Cpath%20id%3D%22iconmonstr-instagram-11%22%20d%3D%22M5.433.979c1.451%2C0%2C1.623.005%2C2.2.032A2.041%2C2.041%2C0%2C0%2C1%2C9.855%2C3.238c.026.573.031.745.031%2C2.2s-.005%2C1.623-.031%2C2.2A2.041%2C2.041%2C0%2C0%2C1%2C7.628%2C9.855c-.573.026-.744.032-2.2.032s-1.623-.005-2.2-.032A2.042%2C2.042%2C0%2C0%2C1%2C1.01%2C7.628c-.026-.573-.032-.744-.032-2.2s.006-1.622.032-2.2A2.041%2C2.041%2C0%2C0%2C1%2C3.237%2C1.01c.573-.026.745-.031%2C2.2-.031Zm0-.979c-1.475%2C0-1.66.006-2.24.033a3%2C3%2C0%2C0%2C0-3.16%2C3.16C.006%2C3.773%2C0%2C3.957%2C0%2C5.433s.006%2C1.661.033%2C2.24a3%2C3%2C0%2C0%2C0%2C3.16%2C3.16c.58.026.765.033%2C2.24.033s1.661-.006%2C2.24-.033a3%2C3%2C0%2C0%2C0%2C3.16-3.16c.027-.579.033-.765.033-2.24s-.006-1.66-.033-2.24A3%2C3%2C0%2C0%2C0%2C7.673.033C7.093.006%2C6.908%2C0%2C5.433%2C0Zm0%2C2.643a2.79%2C2.79%2C0%2C1%2C0%2C2.79%2C2.79A2.79%2C2.79%2C0%2C0%2C0%2C5.433%2C2.643Zm0%2C4.6A1.811%2C1.811%2C0%2C1%2C1%2C7.243%2C5.433%2C1.811%2C1.811%2C0%2C0%2C1%2C5.433%2C7.243Zm2.9-5.362a.652.652%2C0%2C1%2C0%2C.651.652A.652.652%2C0%2C0%2C0%2C8.333%2C1.881Z%22%20transform%3D%22translate(0)%22%20fill%3D%22%23222%22%2F%3E%3C%2Fsvg%3E");
}
.spmenu .global-nav {
  font-family: "lora", serif;
  border-top: 1px solid rgba(34, 34, 34, 0.1);
}
@media screen and (min-width: 751px) {
  .spmenu .global-nav {
    display: flex;
    flex-wrap: wrap;
    padding-top: 36px;
  }
}
@media screen and (max-width: 750px) {
  .spmenu .global-nav {
    padding-top: 12.8205128205vw;
  }
}
@media screen and (min-width: 751px) {
  .spmenu .global-nav > .item {
    margin-right: 30px;
    font-size: 11px;
    letter-spacing: 0.06em;
    line-height: 154.545454545%;
  }
}
@media screen and (max-width: 750px) {
  .spmenu .global-nav > .item {
    margin: 0 0 7.6923076923vw 0;
    font-size: 2.8205128205vw;
    letter-spacing: 0.06em;
    line-height: 154.545454545%;
  }
}
