@charset "utf-8";

* {
    /* outline: 1px solid magenta; */
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

ul {
    list-style: none;
}

a {
    color: inherit;
    text-decoration: none;
}

body {
    width: 100%;
    color: #4d4428;
    font-family: "Shippori Mincho", serif;
  font-weight: 400;
  font-style: normal;
}

/* ハンバーガー */
.hum-menu {
    display: none;
    background-color: #fff;
    width: 100%;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    /* padding-top: 50px; */
    text-align: center;
    z-index: 1500;
}
.menu-lists{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.menu-lists ul {
    width: 60%;
}

/* .menu-lists li {
    margin-bottom: 5%;
} */

.hum-logo-gold {
  width: 40%;
  margin-top: 5%;
  margin-bottom: 5%;
}

.hum-logo-off {
  display: none;
}



.hum-img img {
    width: 100%;
    height: 100vh;
    object-fit: cover;
}

.nav-gold {
  font-family: "Lora", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  color: #c0a963;
  font-size: .9em;
}

.nav-off {
    font-size: 1.2em;
    padding-bottom: 4%;
}

.hum-btn {
    width: 250px;
    margin: 5% auto 5%;
    padding: 1% 0 2%;
	display: block;
	text-align: center;
	/* vertical-align: middle; */
	border: 0.5px solid #c0a963;
	background: #c0a963;
	color: #fff;
	transition: 0.5s;
}
.hum-btn:hover {
	color: #c0a963;
	background: #fff;
}

.hum-btn-en {
    font-size: 0.8em;
    font-family: "Lora", serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
  }

.hum-btn-ja {
    font-size: 1.2em;
    line-height: 1em;
}

/* ハンバーガー　ボタン */
.btn-trigger {
    position: relative;
    position: absolute;
    right: 3%;
    top: 3%;
    width: 45px;
    height: 44px;
    cursor: pointer;
  }

  .btn-trigger:before {
    content: "";
    position: absolute;
    top: -15px;
    bottom: -15px;
    right: -15px;
    left: -15px;
    z-index: 1700;
  }

  .btn-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 1.5px;
    background-color: #fff;
    border-radius: 4px;
    z-index: 1600;
    box-shadow: 2px 3px 3px rgba(0, 0, 0, 0.2);
  }
  .btn-trigger, .btn-trigger span {
    display: inline-block;
    transition: all .5s;
    box-sizing: border-box;
  }
  .btn-trigger span:nth-of-type(1) {
    top: 0;
  }
  .btn-trigger span:nth-of-type(2) {
    top: 15px;
  }
  .btn-trigger span:nth-of-type(3) {
    bottom: 12px;
  }



#btn07 span:nth-of-type(1) {
    -webkit-animation: btn07-bar01 .75s forwards;
    animation: btn07-bar01 .75s forwards;
  }
  @-webkit-keyframes btn07-bar01 {
    0% {
      -webkit-transform: translateY(20px) rotate(45deg);
    }
    50% {
      -webkit-transform: translateY(20px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(0) rotate(0);
    }
  }

  @keyframes btn07-bar01 {
    0% {
      transform: translateY(20px) rotate(45deg);
    }
    50% {
      transform: translateY(20px) rotate(0);
    }
    100% {
      transform: translateY(0) rotate(0);
    }
  }
  #btn07 span:nth-of-type(2) {
    transition: all .25s .25s;
    opacity: 1;
  }
  #btn07 span:nth-of-type(3) {
    -webkit-animation: btn07-bar03 .75s forwards;
    animation: btn07-bar03 .75s forwards;
  }

  @-webkit-keyframes btn07-bar03 {
    0% {
      -webkit-transform: translateY(-20px) rotate(-45deg);
    }
    50% {
      -webkit-transform: translateY(-20px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(0) rotate(0);
    }
  }

  @keyframes btn07-bar03 {
    0% {
      transform: translateY(-20px) rotate(-45deg);
    }
    50% {
      transform: translateY(-20px) rotate(0);
    }
    100% {
      transform: translateY(0) rotate(0);
    }
  }
  #btn07.active span:nth-of-type(1) {
    -webkit-animation: active-btn07-bar01 .75s forwards;
    animation: active-btn07-bar01 .75s forwards;
  }

  @-webkit-keyframes active-btn07-bar01 {
    0% {
      -webkit-transform: translateY(0) rotate(0);
    }
    50% {
      -webkit-transform: translateY(20px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(20px) rotate(45deg);
    }
  }

  @keyframes active-btn07-bar01 {
    0% {
      transform: translateY(0) rotate(0);
    }
    50% {
      transform: translateY(20px) rotate(0);
    }
    100% {
      transform: translateY(20px) rotate(45deg);
    }
  }
  #btn07.active span:nth-of-type(2) {
    opacity: 0;
  }
  #btn07.active span:nth-of-type(3) {
    -webkit-animation: active-btn07-bar03 .75s forwards;
    animation: active-btn07-bar03 .75s forwards;
  }

  @-webkit-keyframes active-btn07-bar03 {
    0% {
      -webkit-transform: translateY(0) rotate(0);
    }
    50% {
      -webkit-transform: translateY(-20px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(-11px) rotate(-45deg);
    }
  }
  @keyframes active-btn07-bar03 {
    0% {
      transform: translateY(0) rotate(0);
    }
    50% {
      transform: translateY(-20px) rotate(0);
    }
    100% {
      transform: translateY(-11px) rotate(-45deg);
    }
  }

/* header */


.fixed-header {
    visibility: hidden;
}

.fixed-header.is-show {
    top: 0;
    visibility: visible;
  }

.site-header{
    /* display: none; */
    background: #fff;
    /* background: rgba(255,255,255,0.8); */
    padding: 20px;
    position: fixed;
    top: 0;
    transition: .5s;
    width: 100%;
    z-index: 10;
}

.site-header.hide{
    transform: translateY(-100%);
}

.nav-1 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 3vh;
    text-align: center;
}


/* ロゴ */
.nav-logo {
    width: 20%;
    padding-left: 2%;
}
.nav-logo a img {
    width: 100%;
}

/* ナビメニュー */
.nav-1-items {
    width: 35%;
    display: flex;
    justify-content: space-around;
    align-items: center;
}

.gold {
    color: #c0a963;
    font-size: 0.7em;

  font-family: "Lora", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

.off {
    font-size: 1em;
}

/* 予約ボタン */
.nav-btn {
    width: 15%;
    margin-right: 2%;
	display: block;
	text-align: center;
	/* vertical-align: middle; */
	border: 0.5px solid #c0a963;
	background: #c0a963;
	color: #fff;
	transition: 0.5s;
  padding: .5% 0 .5%;
}

.nav-btn:hover {
	color: #c0a963;
	background: #fff;
}

.nav-btn_p1 {
  font-size: .8em;
  font-family: "Lora", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

.nav-btn_p2 {
  line-height: 1em;
}

/* footer */
footer {
    width: 100%;
    color: #fff;
    background-color: #d1c498;
}

.footer-wrap {
    max-width: 1200px;
    margin: -10% auto 0;
    display: flex;
    justify-content: space-between;
    padding: 0 0 10%;
}

.footer-access {
  width: 20%;
  margin-left: 3%;
}

.footer-access-adress {
  white-space: nowrap;
}

.sns_policy-wrap {
  width: 20%;
  margin-right: 3%;
}

.access-text1,
.access-text2 {
  font-size: 1.2vw;
  padding: 1%;
}

.access-text1 {
  letter-spacing: 0.1em;
}

.access-text2 {
  letter-spacing: 0.08em;
}

.access-text3 {
  font-size: 1.2vw;
  padding-bottom: 10%;
  letter-spacing: 0.08em;
}

.footer-logo {
  margin-bottom: 10%;
}
.footer-menu-wrap {
    display: flex;
    justify-content: center;
    width: 30%;
    line-height: 2.5em;
}

  /* CONTACTボタン */
  .contact-btn-wrap {
    width: 100%;
    margin-top: 10%;
}
  .contact-btn {
      width: 200px;
      margin: 0  auto;
    display: block;
    text-align: center;
    /* vertical-align: middle; */
    padding: 5% 0;
    border: 0.5px solid #fff;
    background: #d1c498;
    color: #fff;
      font-size: 0.9em;
    transition: 0.5s;
  }
  .contact-btn:hover {
    color: #d1c498;
    background: #fff;
  }

/* footerつづき */
.footer-menu2 {
    margin-left: 20%;
}

.footer-menu1 a,
.footer-menu2 a,
.policy-wrap a {
    display: block;
}

.mo_sns-wrap {
  display: none;
}

.sns-wrap {
  margin-bottom: 15%;
}

.policy-wrap {
  line-height: 2em;
}

.policy-wrap a {
  font-size: 1vw;
  padding-left: 3%;
}

.last {
    text-align: center;
    padding-bottom: 1%;
}

.copyright {
    font-size: small;
}



@media screen and (max-width: 800px) {
  .site-header {
    display: none;
  }

  /* ハンバーガー */
  .hum-logo-gold {
    display: none;
  }

  .hum-logo-off {
    display: block;
    padding-bottom: 10%;
  }

  .hum-menu {
    background-color: #c0a963;
}

  .menu-lists ul {
    width: 50%;
    margin: 0 auto;
    margin-top: 20%;
  }
  .nav-gold,
  .nav-off {
    color: #fff;
  }

  .hum-img {
    display: none;
  }

  .hum-btn {
    width: 100%;
	border: 0.5px solid #fff;
	background: #fff;
	color: #c0a963;
}

.hum-btn:hover {
	color: #fff;
	background: #c0a963;
}

.hum-fixed {
  position: relative;
}

.btn-trigger {
  position: fixed;
  z-index: 2200;
}

.btn-trigger span {
  height: 1.5px;
}

  /* animation */
  .btn-trigger span:nth-of-type(1) {
    top: 0;
  }
  .btn-trigger span:nth-of-type(2) {
    top: 15px;
  }
  .btn-trigger span:nth-of-type(3) {
    bottom: 12px;
  }

  #btn07 span:nth-of-type(3) {
    -webkit-animation: btn07-bar03 .75s forwards;
    animation: btn07-bar03 .75s forwards;
  }

  @-webkit-keyframes btn07-bar03 {
    0% {
      -webkit-transform: translateY(-20px) rotate(-45deg);
    }
    50% {
      -webkit-transform: translateY(-20px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(0) rotate(0);
    }
  }

  @keyframes btn07-bar03 {
    0% {
      transform: translateY(-20px) rotate(-45deg);
    }
    50% {
      transform: translateY(-20px) rotate(0);
    }
    100% {
      transform: translateY(0) rotate(0);
    }
  }
  #btn07.active span:nth-of-type(1) {
    -webkit-animation: active-btn07-bar01 .75s forwards;
    animation: active-btn07-bar01 .75s forwards;
  }

  @-webkit-keyframes active-btn07-bar01 {
    0% {
      -webkit-transform: translateY(0) rotate(0);
    }
    50% {
      -webkit-transform: translateY(20px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(20px) rotate(45deg);
    }
  }

  @keyframes active-btn07-bar01 {
    0% {
      transform: translateY(0) rotate(0);
    }
    50% {
      transform: translateY(20px) rotate(0);
    }
    100% {
      transform: translateY(20px) rotate(45deg);
    }
  }
  #btn07.active span:nth-of-type(2) {
    opacity: 0;
  }
  #btn07.active span:nth-of-type(3) {
    -webkit-animation: active-btn07-bar03 .75s forwards;
    animation: active-btn07-bar03 .75s forwards;
  }

  @-webkit-keyframes active-btn07-bar03 {
    0% {
      -webkit-transform: translateY(0) rotate(0);
    }
    50% {
      -webkit-transform: translateY(-20px) rotate(0);
    }
    100% {
      -webkit-transform: translateY(-11px) rotate(-45deg);
    }
  }
  @keyframes active-btn07-bar03 {
    0% {
      transform: translateY(0) rotate(0);
    }
    50% {
      transform: translateY(-20px) rotate(0);
    }
    100% {
      transform: translateY(-11px) rotate(-45deg);
    }
  }
  .menu-lists li {
    margin-bottom: 15%;
  }

  .hum-btn {
    margin: 30% auto 10%;
  }
/* header */
    .nav-1 {
        display: none;
    }
/* footer */


    .footer-wrap {
        flex-direction: column;
        align-items: center;
        text-align: center;
        margin-top: -60%;
        padding: 0;
    }

    .footer-access {
      width: 100%;
      margin-left: 0;
    }

    .footer-logo {
        width: 50%;
    }

    .footer-access p {
      font-size: 1em;
    }

    .contact-btn-wrap {
      margin-top: 0;
      margin-bottom: 5%;
    }

    .contact-btn {
      padding: 2% 0;
    }


    .footer-menu-wrap {
        width: 100%;
        background-color: #fff;
        color: #c0a963;
        padding: 10% 0;
    }

    .footer-menu1,
    .footer-menu2 {
      text-align: start;
    }

    .footer-menu2 {
        margin-left: 8%;
    }

    .sns-wrap {
      display: none;
    }

    .mo_sns-wrap {
      display: block;
      margin-bottom: 20%;
    }

    .mo_sns-wrap img {
      width: 20%;
    }

    .sns_policy-wrap {
      width: 100%;
      margin-right: 0;
    }

    .policy-wrap {
      display: flex;
      justify-content: center;
    }


    .policy-wrap a {
      padding-top: 10%;
      font-size: .4em;
    }

    .copyright {
      font-size: .3em;
    }


}