@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: 241px; top: 50%; left: 50%; transform: translate3d(-50%, -50%, 0); transition: opacity 2s; opacity: 0; }
@media screen and (max-width: 767px) { .kv .kv-lead { width: 30.6666666667%; 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.miyamasansou { background-image: url("../../common/img/bn-miyamasansou-bg.jpg"); }
  .kv .kv-bn a.shinmeikan { background-image: url("../../common/img/bn-shinmeikan-bg.jpg"); }
  .kv .kv-bn a.yamamizuki { background-image: url("../../common/img/bn-yamamizuki-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: #281a14; display: flex; justify-content: center; align-items: center; }
.intro-box img.intro { transition: opacity 2s; width: calc(566 * 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: #281a14; /*background: linear-gradient(180deg, rgba(178,195,150,1) 0%, rgba(213,241,221,1) 25%, rgba(178,195,150,1) 50%, rgba(213,241,221,1) 75%, rgba(178,195,150,1) 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 .img.anim { position: absolute; left: 0; top: 0; }
.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: #1c140f; 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 .img.anim { position: absolute; right: 0; top: 0; }
.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: #1c140f; z-index: -1; } }
.bg-multi .box1 .lead { width: 36.8644067797%; left: 64.7457627119%; top: 17.7215189873%; }
.bg-multi .box1 .lead2 { width: 21.186440678%; left: 72.8813559322%; top: 65.3164556962%; }
@media screen and (max-width: 767px) { .bg-multi .box1 .lead { width: 50.9333333333%; left: 20px; top: 0; margin-top: calc( -144 * 100vw / 750 ); margin-bottom: 23px; }
  .bg-multi .box1 .lead2 { width: 43.2%; left: 23px; top: 0; display: block; } }
.bg-multi .box2 .lead { width: 41.7796610169%; left: 0; top: 19.3670886076%; }
.bg-multi .box2 .lead2 { width: 27.6271186441%; left: 0; top: 52.6582278481%; }
@media screen and (max-width: 767px) { .bg-multi .box2 .lead { width: 58.1333333333%; left: 73px; top: 0; margin-top: calc( -56 * 100vw / 750 ); margin-bottom: 23px; }
  .bg-multi .box2 .lead2 { width: 56.2666666667%; left: 76px; top: 0; } }
.bg-multi .box3 .lead { width: 46.186440678%; left: 58.0508474576%; top: 0%; }
.bg-multi .box3 .lead2 { width: 25.5084745763%; left: 72.7118644068%; top: 76.0759493671%; }
@media screen and (max-width: 767px) { .bg-multi .box3 .lead { width: 64.1333333333%; left: 20px; top: 0; margin-top: calc( -346 * 100vw / 750 ); margin-bottom: 23px; }
  .bg-multi .box3 .lead2 { width: 52%; left: 23px; top: 0; } }
.bg-multi .box4 .lead { width: 35.6779661017%; left: 0; top: 31.6455696203%; }
.bg-multi .box4 .lead2 { width: 17.1186440678%; left: 0; top: 78.8607594937%; }
@media screen and (max-width: 767px) { .bg-multi .box4 .lead { width: 49.4666666667%; left: 48px; top: 0; margin-top: calc( -145 * 100vw / 750 ); margin-bottom: 23px; }
  .bg-multi .box4 .lead2 { width: 34.8%; left: 51px; top: 0; display: block; } }
.bg-multi .box5 .lead { width: 47.6271186441%; left: 57.0338983051%; top: 21.6455696203%; }
.bg-multi .box5 .lead2 { width: 23.9830508475%; left: 72.5423728814%; top: 68.4810126582%; }
@media screen and (max-width: 767px) { .bg-multi .box5 .lead { width: 66.1333333333%; left: 20px; top: 0; margin-top: calc( -173 * 100vw / 750 ); margin-bottom: 23px; }
  .bg-multi .box5 .lead2 { width: 48.8%; 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: 79px; 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: 43px; 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; color: #373737; }
.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; color: #373737; }
.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) { .pcnone { display: none !important; }
  .reserve-box.bynet { margin-bottom: 150px; } }
@media (max-width: 767.98px) { .spnone { display: none !important; }
  /* .kv img.kv { object-position: left;}*/ }
