@charset "UTF-8";
/*
    スマホ用フォントサイズ
    PCのフォントサイズを数字で指定して同じ比率で縮小表示する
*/
.kv {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100svh;
  height: 100vh;
  z-index: 2;
  transition: opacity 2s;
  background-color: #000; }
  .kv img.kv {
    object-fit: cover;
    width: 100%;
    height: 100%;
    z-index: 0; }
  .kv .news-box {
    position: absolute;
    z-index: 1;
    top: 35px;
    left: 35px; }
    @media screen and (max-width: 767px) {
      .kv .news-box {
        top: auto;
        left: 15px;
        bottom: 200px;
        width: 100%; } }
    @media screen and (min-width: 768px) {
      .kv .news-box a {
        opacity: 0.5;
        transition: opacity 0.4s; }
        .kv .news-box a:hover {
          opacity: 1; } }
    .kv .news-box li a {
      display: inline-block;
      color: #fff;
      font-size: 12px;
      line-height: 1;
      margin-bottom: 0.7em;
      padding: 0 0.5em 0.9em 0;
      border-right: 1px solid #fff;
      border-bottom: 1px solid #fff; }
      @media screen and (max-width: 767px) {
        .kv .news-box li a {
          max-width: 63%;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis; } }
    @media screen and (max-width: 767px) {
      .kv .news-box li:nth-child(3), .kv .news-box li:nth-child(4) {
        display: none; } }
    .kv .news-box .btn-news {
      display: inline-block;
      font-size: 12px;
      line-height: 1;
      color: #fff;
      padding: 0.8em 0 0 0.8em;
      margin-top: 1em;
      border-left: 1px solid #fff; }
  .kv .kv-lead {
    position: absolute;
    z-index: 1;
    width: 213px;
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
    transition: opacity 2s;
    opacity: 0; }
    @media screen and (max-width: 767px) {
      .kv .kv-lead {
        width: 29.3333333333%;
        top: calc( (100vh - 240px) * 0.43); } }
  .kv .kv-bn {
    position: absolute;
    z-index: 1; }
    @media screen and (min-width: 768px) {
      .kv .kv-bn {
        left: 40px;
        bottom: 40px; } }
    @media screen and (max-width: 767px) {
      .kv .kv-bn {
        left: 15px;
        bottom: 80px; }
        .kv .kv-bn:before {
          content: "Fuji Resort Group";
          display: block;
          font-size: 11px;
          color: #fff;
          margin-bottom: 8px; } }
    .kv .kv-bn a {
      position: relative;
      margin-bottom: 15px;
      background-size: cover;
      background-position: center;
      display: flex;
      justify-content: center;
      align-items: center; }
      @media screen and (min-width: 768px) {
        .kv .kv-bn a {
          width: 50px;
          height: 120px;
          border: 0.5px solid #fff;
          opacity: 0.5; }
          .kv .kv-bn a.shinmeikan {
            background-image: url("../../common/img/bn-shinmeikan-bg.jpg"); }
          .kv .kv-bn a.miyamasansou {
            background-image: url("../../common/img/bn-miyamasansou-bg.jpg"); } }
      @media screen and (max-width: 767px) {
        .kv .kv-bn a {
          width: auto;
          height: auto;
          border-bottom: 1px solid #fff;
          border-right: 1px solid #fff;
          padding: 0 0.5em 0.7em 0;
          line-height: 1;
          min-width: 122px; } }
      .kv .kv-bn a span {
        color: #fff;
        font-weight: 500;
        font-size: 13px;
        position: relative; }
        @media screen and (min-width: 768px) {
          .kv .kv-bn a span {
            -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
            display: flex;
            justify-content: center;
            align-items: center;
            flex-direction: column-reverse; } }
        @media screen and (max-width: 767px) {
          .kv .kv-bn a span {
            display: flex;
            justify-content: space-between;
            align-items: center;
            width: 100%; } }
        .kv .kv-bn a span:after {
          content: "";
          display: block;
          width: 8px;
          height: 8px;
          border-top: 1px solid #fff;
          border-right: 1px solid #fff;
          transform: rotate(45deg); }
      @media screen and (min-width: 768px) {
        .kv .kv-bn a img {
          display: none;
          position: relative;
          width: auto;
          height: 109px; } }
  @media screen and (min-width: 768px) and (max-width: 767px) {
    .kv .kv-bn a img {
      width: 41.3333333333%;
      height: auto; } }
      @media screen and (min-width: 768px) {
        .kv .kv-bn a:before {
          content: "";
          display: block;
          width: 100%;
          height: 100%;
          position: absolute;
          left: 0;
          top: 0;
          background-color: rgba(0, 0, 0, 0.75);
          transition: opacity 0.4s;
          opacity: 1; }
        .kv .kv-bn a:hover {
          opacity: 1;
          width: auto;
          aspect-ratio: 1280/311; }
          .kv .kv-bn a:hover:before {
            opacity: 0.1; }
          .kv .kv-bn a:hover span {
            display: none; }
          .kv .kv-bn a:hover img {
            display: inline-block; } }
      @media screen and (max-width: 767px) {
        .kv .kv-bn a img {
          display: none; } }

body.onload .kv-lead {
  opacity: 1; }

.intro-box {
  position: fixed;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  background: #b1d5d5;
  display: flex;
  justify-content: center;
  align-items: center; }
  .intro-box img.intro {
    transition: opacity 2s;
    width: calc(563 * 100vw / 1280); }
  @media screen and (max-width: 767px) {
    .intro-box img.intro {
      width: 75%; } }

#header {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 1s, transform 1s; }
  #header.fadeIn {
    opacity: 1;
    transform: translateY(0); }

#contents {
  margin-top: 350vh;
  position: relative;
  z-index: 2;
  padding-top: 50px;
  background: #b1d5d5;
  background: linear-gradient(180deg, #b1d5d5 0%, #dddddd 25%, #b1d5d5 50%, #dddddd 75%, #b1d5d5 100%); }

.bg-multi {
  position: relative; }
  @media screen and (min-width: 1290px) {
    .bg-multi {
      margin-top: -50px;
      margin-left: auto;
      margin-right: auto;
      max-width: 1190px; } }
  @media screen and (min-width: 768px) and (max-width: 1289px) {
    .bg-multi {
      margin-top: -50px;
      margin-left: 50px;
      margin-right: 50px; } }
  @media screen and (max-width: 767px) {
    .bg-multi {
      margin-top: 0;
      margin-left: 0;
      margin-right: 0; } }
  .bg-multi:before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    background-color: #bdbdbd;
    mix-blend-mode: multiply;
    height: calc(100% - 120px); }
    @media screen and (max-width: 767px) {
      .bg-multi:before {
        display: none; } }
  .bg-multi > div {
    position: relative; }
  .bg-multi .shift-left {
    transform: translateX(-50px);
    position: relative;
    top: -50px;
    margin-bottom: 230px; }
    .bg-multi .shift-left .img {
      width: 69.9152542373%; }
    .bg-multi .shift-left .lead {
      position: absolute; }
    .bg-multi .shift-left .lead2 {
      position: absolute; }
    .bg-multi .shift-left:nth-of-type(5) {
      margin-bottom: 0; }
    @media screen and (max-width: 767px) {
      .bg-multi .shift-left {
        transform: translateX(0);
        top: -50px;
        margin-bottom: 25px;
        padding-bottom: 57px;
        position: relative; }
        .bg-multi .shift-left .img {
          width: 100vw;
          max-width: initial; }
        .bg-multi .shift-left .lead {
          position: relative; }
        .bg-multi .shift-left .lead2 {
          position: relative; }
        .bg-multi .shift-left:before {
          content: "";
          display: block;
          position: absolute;
          left: 0;
          top: 0;
          width: calc(100% - 25px);
          height: 100%;
          background-color: rgba(84, 84, 84, 0.4);
          z-index: -1; } }
  .bg-multi .shift-right {
    transform: translateX(50px);
    position: relative;
    top: -50px;
    margin-bottom: 230px;
    text-align: right; }
    @media screen and (max-width: 767px) {
      .bg-multi .shift-right {
        transform: translateX(0); } }
    .bg-multi .shift-right .img {
      width: 69.9152542373%; }
    .bg-multi .shift-right .lead {
      position: absolute; }
    .bg-multi .shift-right .lead2 {
      position: absolute; }
    @media screen and (max-width: 767px) {
      .bg-multi .shift-right {
        top: -50px;
        margin-bottom: 25px;
        padding-bottom: 57px;
        text-align: left;
        position: relative; }
        .bg-multi .shift-right .img {
          width: 100vw;
          max-width: initial; }
        .bg-multi .shift-right .lead {
          position: relative; }
        .bg-multi .shift-right .lead2 {
          position: relative; }
        .bg-multi .shift-right:before {
          content: "";
          display: block;
          position: absolute;
          left: 25px;
          top: 0;
          width: calc(100% - 25px);
          height: 100%;
          background-color: rgba(84, 84, 84, 0.4);
          z-index: -1; } }
  .bg-multi .box1 .lead {
    width: 39.5762711864%;
    left: 60.1694915254%;
    top: 18.1012658228%; }
  .bg-multi .box1 .lead2 {
    width: 28.4745762712%;
    left: 62.1186440678%;
    top: 65.5696202532%; }
  @media screen and (max-width: 767px) {
    .bg-multi .box1 .lead {
      width: 54.9333333333%;
      left: 20px;
      top: 0;
      margin-top: calc( -56 * 100vw / 750 );
      margin-bottom: 23px; }
    .bg-multi .box1 .lead2 {
      width: 58.1333333333%;
      left: 23px;
      top: 0; } }
  .bg-multi .box2 .lead {
    width: 41.3559322034%;
    left: 0;
    top: 19.6202531646%; }
  .bg-multi .box2 .lead2 {
    width: 27.9661016949%;
    left: 0;
    top: 52.7848101266%; }
  @media screen and (max-width: 767px) {
    .bg-multi .box2 .lead {
      width: 57.4666666667%;
      left: 72px;
      top: 0;
      margin-top: calc( -50 * 100vw / 750 );
      margin-bottom: 23px; }
    .bg-multi .box2 .lead2 {
      width: 57.0666666667%;
      left: 75px;
      top: 0; } }
  .bg-multi .box3 .lead {
    width: 48.8983050847%;
    left: 51.1016949153%;
    top: 14.1772151899%; }
  .bg-multi .box3 .lead2 {
    width: 24.406779661%;
    left: 73.0508474576%;
    top: 75.6962025316%; }
  @media screen and (max-width: 767px) {
    .bg-multi .box3 .lead {
      width: 67.8666666667%;
      left: 20px;
      top: 0;
      margin-top: calc( -153 * 100vw / 750 );
      margin-bottom: 23px; }
    .bg-multi .box3 .lead2 {
      width: 49.8666666667%;
      left: 23px;
      top: 0; } }
  .bg-multi .box4 .lead {
    width: 47.4576271186%;
    left: 0;
    top: 17.7215189873%; }
  .bg-multi .box4 .lead2 {
    width: 20%;
    left: 0;
    top: 79.4936708861%; }
  @media screen and (max-width: 767px) {
    .bg-multi .box4 .lead {
      width: 65.8666666667%;
      left: 48px;
      top: 0;
      margin-top: calc( -250 * 100vw / 750 );
      margin-bottom: 23px; }
    .bg-multi .box4 .lead2 {
      width: 40.8%;
      left: 51px;
      top: 0; } }
  .bg-multi .box5 .lead {
    width: 31.1016949153%;
    left: 66.186440678%;
    top: 22.7848101266%; }
  .bg-multi .box5 .lead2 {
    width: 24.1525423729%;
    left: 66.186440678%;
    top: 68.7341772152%; }
  @media screen and (max-width: 767px) {
    .bg-multi .box5 .lead {
      width: 43.2%;
      left: 20px;
      top: 0;
      margin-top: calc( -164 * 100vw / 750 );
      margin-bottom: 23px;
      margin-right: 10%; }
    .bg-multi .box5 .lead2 {
      width: 49.3333333333%;
      left: 23px;
      top: 0; } }

a.btn-gallery {
  display: inline-block;
  color: #666;
  font-weight: 400;
  line-height: 27px;
  letter-spacing: 0.7em; }
  @media screen and (max-width: 767px) {
    a.btn-gallery {
      display: flex;
      justify-content: center;
      align-items: center;
      position: relative;
      top: -25px; } }

.footer-top-nav {
  text-align: center; }
  .footer-top-nav .title {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 150px;
    padding-bottom: 150px; }
    @media screen and (max-width: 767px) {
      .footer-top-nav .title {
        padding-top: 55px;
        padding-bottom: 23px; } }
    .footer-top-nav .title .logo-icon {
      width: 51px;
      margin-bottom: 90px; }
    .footer-top-nav .title .text01 {
      width: 220px; }
    .footer-top-nav .title .text02 {
      width: 157px; }
    @media screen and (max-width: 767px) {
      .footer-top-nav .title .logo-icon {
        width: 34px;
        margin-bottom: 27px; }
      .footer-top-nav .title .text01 {
        width: calc(187 * 100vw / 750); }
      .footer-top-nav .title .text02 {
        width: calc(166 * 100vw / 750); } }
  .footer-top-nav .reserve-box {
    width: calc( 100% + 90px );
    transform: translateX(-45px);
    background-color: #c8c8c8;
    padding: 50px 0 35px; }
    @media screen and (max-width: 767px) {
      .footer-top-nav .reserve-box {
        width: calc( 100% + 50px );
        transform: translateX(-25px);
        margin: 40px 0;
        padding: 30px 0; } }
    @media screen and (min-width: 768px) {
      .footer-top-nav .reserve-box:nth-of-type(4) {
        margin-bottom: 150px; } }
    .footer-top-nav .reserve-box .reserve-box-title {
      background-color: #666;
      font-size: 26px;
      color: #fff;
      text-align: center;
      width: 350px;
      position: absolute;
      left: 50%;
      top: 0;
      transform: translate3d(-50%, -50%, 0);
      z-index: 1; }
      @media screen and (max-width: 767px) {
        .footer-top-nav .reserve-box .reserve-box-title {
          font-size: 12px;
          width: 145px; } }
    .footer-top-nav .reserve-box.bynet .inner {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 15px; }
      .footer-top-nav .reserve-box.bynet .inner a {
        width: 50%;
        height: 64px;
        background-color: #fff;
        font-size: 30px;
        font-weight: 400;
        font-family: "Shippori Mincho", serif;
        display: flex;
        justify-content: center;
        align-items: center; }
        .footer-top-nav .reserve-box.bynet .inner a:hover {
          opacity: 0.7; }
      @media screen and (max-width: 767px) {
        .footer-top-nav .reserve-box.bynet .inner {
          flex-direction: column; }
          .footer-top-nav .reserve-box.bynet .inner a {
            width: 234px;
            height: 29px;
            font-size: 15px; } }
    .footer-top-nav .reserve-box.bytel {
      margin-bottom: 0; }
      .footer-top-nav .reserve-box.bytel .inner {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 15px; }
        .footer-top-nav .reserve-box.bytel .inner .tel {
          font-family: "Shippori Mincho", serif;
          font-size: 52px;
          font-weight: 500; }
        .footer-top-nav .reserve-box.bytel .inner .hours {
          font-family: "Shippori Mincho", serif;
          font-size: 20px;
          font-weight: 400;
          position: relative;
          top: 0.5em;
          margin-left: 0.5em; }
        @media screen and (max-width: 767px) {
          .footer-top-nav .reserve-box.bytel .inner {
            gap: 5px; }
            .footer-top-nav .reserve-box.bytel .inner .tel {
              font-size: clamp(10px, 5.3vw, 23px); }
            .footer-top-nav .reserve-box.bytel .inner .hours {
              font-size: 10px; } }

footer .inner-links {
  display: none !important; }

@media (min-width: 768px) {
  .movie_box {
    margin: 100px 0 250px;
    text-align: center;
    opacity: 0; } }
@media (max-width: 767px) {
  .movie_box {
    margin: 50px 15px 150px;
    text-align: center;
    opacity: 0; }

  .top_youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%; }

  .top_youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%; } }
