@charset "utf-8";

.fp-section.fp-table,
.fp-slide.fp-table {
  width: 101%;
}

/* ----------------------------------------------------------------------
 * - UTILITY -
 * ---------------------------------------------------------------------- */

/* ----------------------------------------------------------------------
 * - GLOBAL -
 * ---------------------------------------------------------------------- */
.g-container {
  background: none;
  padding: 0;
}

/* ----------------------------------------------------------------------
 * FOOTER
 * ---------------------------------------------------------------------- */
.g-footer_nav {
  display: none;
}
.g-footer_copyright {
  color: #221814;
  background: none;
  padding: 0;
  position: absolute;
  right: 2em;
  top: 0;
  -webkit-transform: rotate(90deg) translate(100%, 0);
  transform: rotate(90deg) translate(100%, 0);
  -webkit-transform-origin: right top;
  transform-origin: right top;
  width: 100vh;
}
.g-footer_copyright small {
}

/* ----------------------------------------------------------------------
 * SIDEMENU
 * ---------------------------------------------------------------------- */
.sideMenu {
  box-sizing: border-box;
  position: absolute;
  width: 24vw;
  height: 100vh;
  top: 0;
  left: 0;
}
.sideMenu-inner {
  width: 100%;
  height: 100%;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
.sideMenu-block {
  width: 100%;
  position: relative;
  z-index: 5;
}
.sideMenu-logo {
  line-height: 0;
  margin: 0 auto;
  text-align: center;
}
.sideMenu-logo img {
  max-width: 404px;
  width: 60%;
}
.sideMenu-title {
  font-size: 1.25vw;
  letter-spacing: 0.12em;
  line-height: 1.8;
  width: 63%;
  margin: 20px auto 0;
}

.sideMenu-open {
  position: relative;
  font-size: 2.05vw;
  letter-spacing: 0.038em;
  line-height: 1.4;
  width: 62%;
  margin: 20px auto 40px;
  font-weight: bold;
  text-decoration: underline;
}

/* ----------------------------------------------------------------------
 * FULLPAGE
 * ---------------------------------------------------------------------- */
.fullpage {
  margin-left: 24vw;
  text-align: center;
}
.fullpage #sectionAbout {
}
.fullpage #sectionTopics {
}
.fullpage #sectionService {
}
.fullpage #sectionBreakfast {
}
.fullpage #sectionStay {
}
/*.fullpage #sectionService,
.fullpage #sectionBreakfast,
.fullpage #sectionStay {
 padding-left: 11vw;
}*/
.fullpage-wrap {
}
.fullpage-btn {
  background-repeat: no-repeat;
  background-size: 20px auto;
  background-position: center;
  cursor: pointer;
  position: absolute;
  bottom: 15px;
  right: 20px;
  display: block;
  width: 20px;
  height: 20px;
  z-index: 2;
  -webkit-transition: 0.2s ease-out;
  transition: 0.2s ease-out;
}
.fullpage-btn.btn-down {
  background-image: url(../../img/common/arrow_b_down_black.png);
}
.fullpage-btn.btn-up {
  background-image: url(../../img/common/arrow_b_up_black.png);
}
.fullpage-btn.btn-down:hover {
  bottom: 10px;
}
.fullpage-btn.btn-up:hover {
  bottom: 20px;
}

/* ----------------------------------------------------------------------
 * SECTION
 * ---------------------------------------------------------------------- */
.section {
  position: relative;
}
.section-block-inner {
  width: calc(100% - 83px);
}
.section-title {
  font-size: 1.4vw; /*18px*/
  letter-spacing: 0.32em;
  line-height: 3;
  text-align: left;
}
.section-text {
  font-size: 1.01vw; /*13px*/
  letter-spacing: 0.12em;
  line-height: 2;
  text-align: left;
}
.section-img {
  line-height: 0;
  max-height: 65vh;
  overflow: hidden;
}
.section-btn a {
  font-size: 0.95vw; /*12px*/
  letter-spacing: 0.23em;
}

/* ----------------------------------------------------------------------
 * Key Visual
 * ---------------------------------------------------------------------- */
.c-kv_lead {
  position: absolute;
  bottom: 5%;
  right: 10%;
  z-index: 1;
}
@media all and (-ms-high-contrast: none) {
  .c-kv_lead {
    height: 45%;
  }
}
.c-kv_lead-text {
  font-size: 1.1vw; /*14px*/
  letter-spacing: 0.12em;
  line-height: 3.5;
  text-align: left;
  vertical-align: top;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
.c-kv_lead-text span {
  background: #fff;
  padding: 0.5em 0.2em;
}
/*.c-kv_title {
 position: absolute;
 bottom: 22%;
 left: -7vw;
 z-index: 1;
}*/
.c-kv_title {
  position: relative;
  z-index: 1;
  width: 100%;
  margin: 50px auto 0;
  padding-left: 30px;
}
/*.c-kv_title:after {
 background: rgba(34, 23, 20, 0.4);
 content: "";
 display: block;
 width: 20vw;
 height: 1px;
 position: absolute;
 top: -1vw;
 left: -5vw;
 transform: rotate(-35deg);
}*/
.c-kv_title:after {
  background: rgba(34, 23, 20, 0.4);
  content: "";
  display: block;
  width: 20vw;
  height: 1px;
  position: absolute;
  top: 0.8vw;
  left: 2.2vw;
  transform: rotate(-35deg);
}
.c-kv_title .e-text {
  font-size: 2.4vw;
  letter-spacing: 0.15em;
  text-align: center;
  line-height: 1;
}
.c-kv_bg {
  display: block;
  position: relative;
  height: 100vh;
  z-index: 0;
}
.c-kv_bg-inner {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
}
.c-kv_bg-slides {
  display: block;
  height: 100%;
}
.c-kv_bg-slide {
  display: block;
  height: 100%;
  background: no-repeat center center;
  background-size: cover;
}
.c-kv_bg-slide--item_01 {
  background-image: url(../../img/top/mv_01.jpg);
}
.c-kv_bg-slide--item_02 {
  background-image: url(../../img/top/mv_02.jpg);
}
.c-kv_bg-slide--item_03 {
  background-image: url(../../img/top/mv_03.jpg);
}
.c-kv_bg-slide--item_04 {
  background-image: url(../../img/top/mv_04.jpg);
}
/*
.c-kv_bg-slide--item_03 {
 background-image: url(../../img/home/kv_slide_03.jpg);
}
.c-kv_bg-slide--item_04 {
 background-image: url("../../img/home/banner_goto_rkt.jpg");
 background-position: top center;
}
.c-kv_bg-slide--item_05 {
 background-image: url(../../img/home/kv_slide_05.jpg);
}
.c-kv_bg-slide--item_06 {
 background-image: url(../../img/home/kv_slide_06.jpg);
} */

/* ----------------------------------------------------------------------
 * Key Visual -- slick
 * ---------------------------------------------------------------------- */
/* Dots */
.slick-dots {
  right: 24px;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .slick-dots {
    top: auto;
    transform: none;
  }
}

/* ----------------------------------------------------------------------
 * TOPICS
 * ---------------------------------------------------------------------- */
.c-topics {
}
.c-topics-inner {
  padding-top: 25px;
}
.c-topics-item-wrap {
  letter-spacing: -0.5em;
  height: calc(100vh - 25px);
  overflow: hidden;
}
.c-topics-item-wrap ul {
  letter-spacing: 0;
  display: inline-block;
  vertical-align: top;
  width: 25%;
  padding-right: 2.7%;
}
.c-topics-item-wrap li {
  padding-bottom: 60px;
  text-align: left;
}
.c-topics-item a {
  display: block;
}
.c-topics-item a:hover {
  opacity: 1;
}
.c-topics-item .c-topics-item_thumb {
  line-height: 0;
  border: 1px solid #e9e9e8;
  border-radius: 4px;
  margin-bottom: 15px;
  overflow: hidden;
}
.c-topics-item:hover .c-topics-item_thumb {
  background: #221814;
  border: 1px solid #e9e9e8;
}
.c-topics-item .c-topics-item_thumb img {
  transition: 1.2s;
}
.c-topics-item a:hover .c-topics-item_thumb img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
.c-topics-item_text {
  color: #888;
}
.c-topics-item_text .e-category {
  font-size: 0.73vw; /*18px*/
  line-height: 2.2em;
  margin-bottom: 15px;
}
.c-topics-item_text .e-category b {
  font-weight: 200;
  text-align: center;
  display: inline-block;
  position: relative;
  width: 10em;
  z-index: 2;
}
.c-topics-item_text .e-category b:before,
.c-topics-item_text .e-category b:after {
  background: #fff;
  border: 1px solid #d4d3d2;
  content: "";
  display: inline-block;
  width: 10em;
  height: 2.2em;
  position: absolute;
  z-index: 0;
}
.c-topics-item_text .e-category b:before {
  left: 2px;
  top: 2px;
}
.c-topics-item_text .e-category b:after {
  left: 0;
  top: 0;
}
.c-topics-item_text .e-category b span {
  position: relative;
  z-index: 2;
}
.c-topics-item_text .e-category i {
  letter-spacing: 0.08em;
  float: right;
}
.c-topics-item_text .e-title {
  font-size: 0.95vw; /*11px*/
  letter-spacing: 0.08em;
  line-height: 1.7;
  margin-top: 10px;
}

/* animation */
.js-topicsSplit ul:nth-child(odd):hover,
.js-topicsSplit ul:nth-child(even):hover {
  animation-play-state: paused;
}
.js-topicsSplit ul:nth-child(odd) {
  -webkit-animation: loopDown 40s linear infinite;
  animation: loopDown 40s linear infinite;
}
.js-topicsSplit ul:nth-child(even) {
  -webkit-animation: loopUp 40s linear infinite;
  animation: loopUp 40s linear infinite;
}

/* ----------------------------------------------------------------------
 * LOADING
 * ---------------------------------------------------------------------- */
.loading {
  display: none;
}
.loading.is-active {
  display: block;
  position: fixed;
  background: #fff;
  width: 100%;
  height: 100vh;
  z-index: 99999;
}
.loading .loading-content {
  width: 50%;
  -webkit-animation-name: loading;
  animation-name: loading;
  -webkit-animation-duration: 9s;
  animation-duration: 9s;
  opacity: 0;
}
.loading .loading-contentB {
  /* -webkit-animation-delay: 4s;
 animation-delay: 4s;*/
  display: block;
  margin: 0 auto;
  width: 290px;
  height: 185px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
  margin: auto;
}
/*.loading .loading-contentA {
 position: absolute;
 bottom: 0;
 left: 0;
 right: 0;
 top: 0;
 line-height: 2.5;
 text-align: center;
 font-size: 15px;
 font-size: 1.5rem;
 height: 57px;
 width: 100%;
 margin: auto;
}*/
@keyframes loading {
  0% {
    opacity: 0;
  }
  12.5% {
    opacity: 1;
  }
  37.5% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
}
@-webkit-keyframes loading {
  0% {
    opacity: 0;
  }
  12.5% {
    opacity: 1;
  }
  37.5% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
}
.st1 {
  fill: #221814;
  stroke: #999;
  stroke-dasharray: 2000;
  stroke-dashoffset: 0;
  stroke-width: 1;
  -webkit-animation: hello 3s ease-in 0s;
  animation: hello 3s ease-in 0s;
  /*-webkit-animation-delay: 4s;
 animation-delay: 4s;*/
}

@-webkit-keyframes hello {
  0% {
    stroke-dashoffset: 2000;
    fill: transparent;
  }
  10% {
    fill: transparent;
  }
  80% {
    fill: transparent;
  }
  100% {
    stroke-dashoffset: 0;
    fill: #221814;
  }
}

/*
2020/9/1追記 */
.Top_banner {
  position: absolute;
  z-index: 1;
  bottom: 30px;
  right: 20px;
  max-width: 330px;
}
.Top_banner.sm_show {
  display: none !important;
}
@media screen and (max-width: 1024px) {
  .Top_banner.sm_hide {
    display: none !important;
  }
  .Top_banner.sm_show {
    display: block !important;
  }
}
@media screen and (max-width: 1015px) {
  .Top_banner {
    position: relative;
    bottom: inherit;
    left: 0;
    right: 0;
    margin: 30px auto;
  }
}

/* ▼ 県民割バナー */
.Top_banner_02 {
  position: absolute;
  z-index: 1;
  bottom: 134px;
  right: 20px;
  max-width: 330px;
}
.Top_banner_02.sm_show {
  display: none !important;
}
@media screen and (max-width: 1024px) {
  .Top_banner_02.sm_hide {
    display: none !important;
  }
  .Top_banner_02.sm_show {
    display: block !important;
  }
}
@media screen and (max-width: 1015px) {
  .Top_banner_02 {
    position: relative;
    bottom: inherit;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}
/* ▲ 県民割バナー */

/* ▼ 全国旅行支援バナー */
.Top_banner_03 {
  position: absolute;
  z-index: 1;
  bottom: 245px;
  right: 20px;
  max-width: 330px;
}
.Top_banner_03.sm_show {
  display: none !important;
}
@media screen and (max-width: 1024px) {
  .Top_banner_03.sm_hide {
    display: none !important;
  }
  .Top_banner_03.sm_show {
    display: block !important;
  }
}
@media screen and (max-width: 1015px) {
  .Top_banner_03 {
    position: relative;
    bottom: inherit;
    left: 0;
    right: 0;
    margin: 30px auto;
  }
}
/* ▲ 全国旅行支援バナー */
