@charset "UTF-8";
.font-s {
  font-size:1.2rem;
}
#heading > h1 br {
  display:none;
}
.sep {
  width:100%;
  height:11.5%;
  position:absolute;
  bottom:-11.5%;
  left:0;
  z-index:1;
}
.ttl > p {
  font-size:5rem;
}
.ttl > h2 {
  font-size:1.4rem;
}
/*----------------------------------------------------
  #fv
----------------------------------------------------*/
.fv {
  width:100%;
  height:auto;
  position:relative;
  margin-top:100px;
}
.fv::before {
  display:block;
  content:'';
  width:100%;
  height:0;
  padding-top:35.4%;
}
.fv__body {
  width:90%;
  height:100%;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  z-index:1;
}
.fv-img {
  width:80%;
  height:100%;
  position:absolute;
  top:0;
  right:0;
}
.fv-img::after {
  display:block;
  content:'';
  width:100%;
  height:100%;
  position:absolute;
  top:0;
  left:0;
  background:rgba(0,0,0,.3);
}
.fv-img picture,
.fv-img img {
  height:100%;
  object-fit:cover;
}
.fv-ttl {
  width:auto;
  height:auto;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  line-height:1.4;
  position:absolute;
  top:50%;
  left:5%;
  transform:translate(0,-50%);
}
.fv-ttl > span {
  order:1;
  background:linear-gradient(45deg, #959595 0%, #545454 25%, #adadad 50%, #1a1a1a 100%);
  color:#fff;
  border-radius:50vh 50vh 50vh 0;
  padding:5px 40px;
  margin-bottom:5px;
}
.fv-ttl > h2 {
  font-size:1.2rem;
  font-weight:normal;
  line-height:1.8;
  padding-left:20px;
  box-sizing:border-box;
  order:3;
  position:relative;
  z-index:1;
}
.fv-ttl > h2::before {
  display:block;
  content:'';
  width:4px;
  height:100%;
  position:absolute;
  top:50%;
  left:5px;
  transform:translate(0,-50%);
  background:linear-gradient(to bottom,#ccc 0%,#545454 50%,#3b3b3b 50%,#3b3b3b 100%);
}
.fv-ttl > p {
  font-size:7rem;
  font-family: "Cormorant Garamond", serif;
  font-style: normal;
  letter-spacing:0;
  color:#545454;
  background:linear-gradient(to right, #474747, #adadad, #f2f2f2);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color: transparent;
  order:2;
}
.fv-ttl-bg {
  width:50%;
  position:absolute;
  top:50%;
  left:62.5%;
}
.fv-logo {
  width:90%;
  height:auto;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  mix-blend-mode:multiply;
  opacity:.05;
}
/*----------------------------------------------------
  breadcrumbs
----------------------------------------------------*/
.breadcrumbs {
  width:100%;
}
.breadcrumbs-body {
  width:90%;
  max-width:1280px;
  height:60px;
  background:rgba(255,255,255,.8);
  padding:0 5%;
  margin:0 auto;
  box-sizing:border-box;
  border-radius:50vh;
}
.breadcrumb__list {
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  list-style:none;
  letter-spacing:.1em;
  font-size:1.2rem;
}
.breadcrumb__item {
  display:inline-flex;
  justify-content:center;
  align-items:center;
  width:auto;
}
.breadcrumb__item:not(:last-child)::after {
  display:inline-block;
  content:'';
  width:14px;
  height:auto;
  border-top:1px solid #7b7b7b;
  margin:0 10px;
}
.breadcrumb__current::before {
  display:inline-block;
  content:'';
  width:8px;
  height:8px;
  background:linear-gradient(to right,#9C6926 0%,#B7822E 25%,#CA8540 50%,#E0AF3E 100%);
  border-radius:50vh;
  margin-right:5px;
}
/*----------------------------------------------------
  #booking
----------------------------------------------------*/
#booking {
  width:100%;
  height:auto;
  padding:150px 0;
  background: linear-gradient(to bottom, #939393, #CECECE);
  position:relative;
}
.booking-body {
  width:90%;
  max-width:1440px;
  margin:0 auto;
  position:relative;
  z-index:1;
}
.menu-bg__img2 {
  width:35%;
  position:absolute;
  bottom:45%;
  right:0;
}
.menu-bg__img2 > img {
  position:absolute;
  top:0;
  left:0;
}
.bg-anima {
  mix-blend-mode:multiply;
}
.bg-anima,
.bg-anima2 {
  transition: all 5s cubic-bezier(0,.91,1,1);
}
.bg-anima2 {
  transition-delay:.2s;
}
.menu-bg {
  width:100%;
  height:auto;
  position:absolute;
  top:0;
  left:0;
  mix-blend-mode:luminosity;
  opacity:.6;
}

@media screen and (max-width:1280px) {
}
@media screen and (max-width:1024px) {
  .fv::before {
    padding-top:45%;
  }
}
@media screen and (max-width:896px) {
  .fv::before {
    padding-top:60%;
  }
}
@media screen and (max-width:786px) {
}
@media screen and (max-width:680px) {
  .fv::before {
    padding-top:75%;
  }
}
@media screen and (max-width:480px) {
  /*---ここから共通項目---*/
  #booking {
    padding:120px 0 100px 0;
  }
  .sep {
    width:110%;
    left:50%;
    bottom:-11%;
    transform:translateX(-50%);
  }
  /*---ここまで---*/
  #heading {
    top:0;
  }
  #heading::after {
    display:block;
    content:'';
    width:100%;
    height:0;
    padding-top:100%;
  }
  #heading > h1 {
    width:90%;
    height:auto;
    color:#1a1a1a;
    position:absolute;
    left:5%;
    bottom:5%;
  }
  #heading > h1 br {
    display:block;
  }
  #heading > h1 > span {
    display:none;
  }
  .ttl {
    margin-bottom:30px;
  }
  .ttl > p {
    font-size:4rem;
  }
  .fv {
    margin-top:0;
  }
  .fv::before {
    padding-top:100%;
  }
  .fv-img {
    width:100%;
  }
  .fv-ttl {
    width:90%;
    top:52.5%;
    line-height:1.6;
  }
  .fv-ttl > p {
    font-size:4.6rem;
    background: linear-gradient(to right, #fff, #adadad, #f2f2f2);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
  }
  .fv-ttl > h2 {
    color:#d4d4d4;
  }
  .fv-ttl > h2 br {
    display:block;
  }
  .fv-ttl-bg {
    width:37.5%;
    left:70%;
    top:60%;
  }
  .breadcrumbs-body {
    width:100%;
    padding:0 10%;
    background: rgba(255, 255, 255, 1);
  }
  .breadcrumb__list {
    font-size:1.2rem;
  }
  #booking {
    padding:120px 0 100px 0;
  }
  .sep {
    width:110%;
    left:50%;
    bottom:-11%;
    transform:translateX(-50%);
  }
}